Интернет-сокеты PythonPython

Программы на Python
Ответить
Anonymous
 Интернет-сокеты Python

Сообщение Anonymous »

Я пытаюсь создать простое приложение на Python с сокетами, но клиенты получают сообщение «Тест», отправленное с сервера, только если они находятся в локальной сети. Я пробовал запустить клиент (сервер работает на моем ПК) с ноутбука и с ПК. В обоих случаях я получил сообщение «Тест», но когда друг пытается подключиться, он не получает сообщение.

Вот мой server.py:

Код: Выделить всё

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(), 7908))
s.listen(5)

while True:
clientsocket, address = s.accept()
print(f"Connection from {address} established")
clientsocket.send(bytes("Test", "utf-8"))
А вот мой client.py:

Код: Выделить всё

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("my_public_ip_address", 7908))

print(s.recv(8).decode("utf-8"))
Я компилирую client.py с помощью pyinstaller перед отправкой, чтобы скрипт мог работать без установки Python на машине (у меня даже нет Python на моем ноутбуке)

Спасибо, что нашли время прочитать и ответить на этот вопрос :) (Извините, если я плохо говорю по-английски, я француз)

Подробнее здесь: https://stackoverflow.com/questions/611 ... on-sockets
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»