嘿,第一次发帖,我真的被困在 httplib2 上。我一直在从diveintopython3.org 阅读它,但它没有提到超时功能。我查看了文档,但我唯一看到的是能够设置 timeout int 但没有指定单位(秒?毫秒?如果没有默认值是什么?)这就是我所拥有的(我也有代码要检查响应是什么,然后再试一次,但从未尝试过多次)
h = httplib2.Http('.cache', timeout=None)
for url in list:
response, content = h.request(url)
more stuff...
所以 Http 对象会一直存在直到某个任意时间,但我正在从同一台服务器下载大量页面,过了一会儿,它在获取页面时挂起。没有错误被抛出,事情只是挂在一个页面上。那么我尝试:
h = httplib2.Http('.cache', timeout=None)
for url in list:
try:
response, content = h.request(url)
except:
h = httplib2.Http('.cache', timeout=None)
more stuff...
但随后它每次都会重新创建另一个 Http 对象(沿着“除外”路径)......我不明白如何继续使用同一个对象,直到它过期并且我制作另一个。另外,有没有办法为单个请求设置超时?
谢谢您的帮助!