问题:python / selenium中的套接字错误[地址已在使用中]

|| 我有一个麻烦的问题socket.error错误:[Errno 10048]:地址已在使用中。在使用带有Python的Selenium进行自动测试期间,通常只允许每个套接字地址(协议/ IP地址/端口)使用一种。这个问题非常有趣,以至于它在一台机器(Linux)上运行正常,但是在另一台机器(WindowsXP)上却产生此错误。 我要补充一点,该问题是在重新安装系统并重新设置之后出现的-使用先前的配置,一切正常。 也许我忘记了什么?有人曾提出过这样的问题吗? 有谁知道如何处理这个问题? 当前配置/库: python 2.7,numpy,selenium.py     
已邀请:
        如果您多次打开/关闭套接字,则它可能处于TIME_WAIT状态。这可以解释为什么它在单独的平台上有不同的行为(不同的TIME_WAIT设置和TCP堆栈)。如果要控制套接字对象,则可以在绑定之前设置SO_REUSEADDR以解决该问题。 例如:
sock = socket.socket()
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, server.getsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR) | 1)
您可以在命令提示符下运行
netstat -b
,以提供带有状态和拥有过程的打开套接字列表。     
        我在下面的帖子中找到了答案: Python urllib2。 URLError: 原来,此问题是Windows的限制     
        有几种可能性。如果您的测试都不能在某个端口上侦听(您不说什么端口),则说明您的Windows计算机正在您先前打开的端口上运行某些内容;重新安装过程中可能会出现此新服务。另一方面,如果对于某些测试来说这只是一个问题,或者是零星的,那么这可能是编程问题(忘记在早期测试中关闭套接字会干扰以后的测试) )或计时问题(较早的测试的套接字在尝试打开新的套接字之前并没有完全关闭)。显然,解决每个问题都有不同的方法,但是我认为如果没有更多细节,我们可以提供更多帮助。     
        Windows上可能已经有一个软件已经在使用端口4444,可以将Selenium设置为另一个端口并重试吗?     

要回复问题请先登录注册