Tôi đang làm việc trên một tập lệnh có thể truyền dữ liệu giữa hai máy tính khác nhau có quyền truy cập vào internet. Tôi đang sử dụng mô-đun chuẩn socket của python. Nó hoạt động tốt khi tôi chạy cả máy khách và máy chủ trên một máy tính nhưng tôi không thể làm cho mọi thứ hoạt động khi chúng chạy trên các máy tính khác nhau.Python: gửi dữ liệu giữa hai máy tính qua ổ cắm
Đây là một phần của mã máy chủ của tôi:
import socket, time,os, random
class Server():
def __init__(self,Adress=('',5000),MaxClient=1):
self.s = socket.socket()
self.s.bind(Adress)
self.s.listen(MaxClient)
def WaitForConnection(self):
self.Client, self.Adr=(self.s.accept())
print('Got a connection from: '+str(self.Client)+'.')
s = Server()
s.WaitForConnection()
Và đây là một phần của mã khách hàng của tôi:
import socket
class Client():
def __init__(self,Adress=("Here is the IP of the computer on which the \
server scrip is running",5000)):
self.s = socket.socket()
self.s.connect(Adress)
c = Client()
Khi tôi chạy các kịch bản trên hai máy tính khác nhau với truy cập Internet khách hàng không thể kết nối và gây ra lỗi và máy chủ đang đợi kết nối mãi mãi.
Tôi đang làm gì sai?
Hai máy tính này được kết nối như thế nào? Bất kỳ bộ định tuyến/tường lửa/thiết bị NAT nào trên đường dẫn. –
Cả hai máy tính đều được kết nối với các WiFi khác nhau –
Làm thế nào hai bộ định tuyến wifi này được cấu hình? –