我在我的代码中使用了urllib2库,我使用了大量的(urlopen) EDIT: loadurl
我的网络有一个问题,当我浏览网站时,有时我的浏览器卡在“连接”到某个网站,有时我的浏览器返回一个超时
我的问题是,如果我在我的代码上使用urllib2,当我试图连接到某个网站太长时间时,它可能会超时,或者代码会卡在那一行上。
我知道urllib2可以在不在代码中指定的情况下处理超时,但它可以适用于这种情况吗?
耽误您时间,实在对不起
编辑:
def checker(self)
try:
html = self.loadurl("MY URL HERE")
if self.ip_ != html:
(...)
except Exeption, error:
html = "bad"发布于 2013-01-04 07:08:53
根据我的小调查,urllib2.urlopen()函数是在Python2.6中添加的
因此,超时问题应该通过向urllib2.urlopen函数发送自定义超时来解决。代码应该是这样的;
response = urllib2.urlopen( "---insert url here---", None, your-timeout-value)
your-timeout-value参数是一个可选参数,用于定义超时(以秒为单位)。
编辑:根据你的评论,我得到了你不需要代码等待太长时间,然后你应该有以下代码不会卡住;
import socket
import urllib2
socket.setdefaulttimeout(10)10可以根据与连接速度和网站加载时间相关的数学公式进行更改。
https://stackoverflow.com/questions/14148341
复制相似问题