Python - urllib2超时

时间:2010-11-17 18:48:55

标签: python urllib2

我得到的东西是我的代码片段

opener = urllib2.build_opener(redirect_handler.MyHTTPRedirectHandler())
opener.addheaders = [('Accept-encoding', 'gzip')]
fetch_timeout = 12
self.response = opener.open(url, timeout=fetch_timeout)

然而,它的代码在超时之前仍然等待60秒...... 有线索吗?

3 个答案:

答案 0 :(得分:3)

猜测你可能需要设置套接字超时

import socket

default_timeout = 12

socket.setdefaulttimeout(default_timeout)

答案 1 :(得分:2)

您使用的是哪个版本?它是在2.6

中添加的

方法也是

urllib2.urlopen(url[, data][, timeout])

你能尝试提供

吗?
self.response = opener.open(url, None, fetch_timeout)

对于其他所有人,你仍然可以使用套接字模块设置套接字超时。

答案 2 :(得分:0)