python socket.connect timeout

时间:2013-10-26 10:49:40

标签: python sockets irc

我在连接到irc服务器时遇到了一些问题。昨天附上的代码工作正常,但今天我收到了错误。

print('Script started')
network = 'irc.quakenet.org'
port = 6667
irc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
irc.settimeout(180.0)
print(irc.gettimeout())
**irc.connect((network, port))**

在日志中我得到了这个:

  

脚本已启动   180.0回溯(最近一次调用最后一次):文件“C:\ Users ... \ TM_bot1 \ src \ connectBot.py”,第66行,   在       irc.connect((network,port))TimeoutError:[WinError 10060] [ErrMsg]

在返回错误的代码行中加粗。

我的问题是,这是服务器可用性的真正问题吗?使用mIRC代理,连接到同一服务器和端口没有问题。

**回答以下问题: 它没有连接到代理。如前所述 - 昨天一切正常,从那以后我没有改变任何东西。 我在180秒之前收到此错误。

现在,几个小时后 - 脚本工作正常,所以它似乎是服务器过载问题。有没有办法延长超时?

1 个答案:

答案 0 :(得分:0)

我遇到套接字超时设置问题。我发现了这个

http://code.activestate.com/recipes/576655-wait-for-network-service-to-appear/

代表http://bugs.python.org/issue5293

基本上,配方执行它自己的超时,因为套接字似乎会忽略超过20秒的超时,因为还有另一个较短的超时时间。