现在我正在使用urllib从服务器中提取一些数据。然而,服务器有点狡猾,往往会不时下降一分钟左右。要处理,当我的代码遇到错误时,它只等待两秒钟并再次尝试:
def fin(group):
try:
data = urllib2.urlopen("cool website" + group)
return data.read()
except urllib2.HTTPError, err:
time.sleep(2)
fin(group) #calls itself again
except urllib2.URLError, err:
time.sleep(2)
fin(group)
如果网站出现故障或我丢失了互联网连接,那该工作正常。但是,昨晚我让代码运行并出现了这个错误:
socket.error: [Errno 10053] An established connection was aborted by the software in your host machine
我不太清楚如何捕获它。经过一番搜索后,我想我可能需要这样做:
except httplib.HTTPException, err:
time.sleep(2)
fin(group)
但我不确定。有人能帮助我吗?