2

我在连接到 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 Traceback(最近一次调用最后):文件“C:\Users...\TM_bot1\src\connectBot.py”,第 66 行,在 irc.connect((network, port)) TimeoutError: [WinError 10060] [错误消息]

在返回错误的代码行中以粗体显示。

我的问题是,服务器可用性真的存在问题吗?使用 mIRC 代理,我可以毫无问题地连接到相同的服务器和端口。

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

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

4

1 回答 1

0

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

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

其中地址http://bugs.python.org/issue5293

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

于 2017-04-21T16:59:22.623 回答