Я новичок в python и изучаю сокет. Я хочу попробовать создать соединение с 2-мя географически удаленными компьютерами. Я сообщаю коды клиента и сервера, это дает мне ошибку «OSError: [WinError 10013]». В серверном скрипте server_address = ('', 10000) я пробовал несколько вещей: ('localhost', 10000); ('127.0.0.1', 10000). Но ничего не меняется, спасибо тем, кто может дать мне совет и понять, почему я не могу подключиться.
# client.py
import socket
import sys
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = ('server address', 10000)
print('connection to {} port {}'.format(*server_address))
sock.connect(server_address)
try:
message = b'This is the message. The message is returned.'
print('sending {!r}'.format(message))
sock.sendall(message)
amount_received = 0
amount_expected = len(message)
while amount_received < amount_expected:
data = sock.recv(16)
amount_received += len(data)
print('received {!r}'.format(data))
finally:
sock.close()
# server.py
import socket
import sys
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = ('', 10000)
print(server_address)
print('Starting up {} port {}'.format(*server_address))
sock.bind(server_address)
sock.listen(1)
while True:
print('waiting for a connection')
connection, client_address = sock.accept()
try:
print('connection from', client_address)
while True:
data = connection.recv(16)
print('received {!r}'.format(data))
if data:
print('sending data back to the client')
connection.sendall(data)
else:
print('there is not more data from', client_address)
break
finally:
connection.close()