我正在编写一个脚本,该脚本将在两台可以访问互联网的不同计算机之间传输数据。我正在使用 python 的套接字标准模块。当我在单台计算机上同时运行客户端和服务器时它工作正常,但是当它们在不同计算机上运行时我无法使它们工作。
这是我的服务器代码的一部分:
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()
这是我的客户端代码的一部分:
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()
当我在两台具有 Internet 访问权限的不同计算机上运行这些脚本时,客户端无法连接并引发错误,并且服务器将永远等待连接。
我究竟做错了什么?