【发布时间】:2017-09-08 12:57:12
【问题描述】:
如果出现连接错误,我希望 Python 等待并重试。这是相关代码,其中“链接”是一些链接:
import requests
import urllib.request
import urllib.parse
from random import randint
try:
r=requests.get(link)
except ConnectionError or TimeoutError:
print("Will retry again in a little bit")
time.sleep(randint(2500,3000))
r=requests.get(link)
除了我仍然定期收到连接错误。而且我从来没有看到“稍后将重试”的文字,所以我知道代码没有重试。我究竟做错了什么?我在下面粘贴部分错误代码,以防我误读了错误。蒂亚!
TimeoutError: [WinError 10060] 连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应
在处理上述异常的过程中,又发生了一个异常:
requests.packages.urllib3.exceptions.ProtocolError: ('Connection aborted.', TimeoutError(10060, '连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立连接失败,因为连接的主机没有响应', None, 10060, None))
在处理上述异常的过程中,又发生了一个异常:
requests.exceptions.ConnectionError: ('Connection aborted.', TimeoutError(10060, '连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立连接失败,因为连接的主机没有响应',无,10060,无))
【问题讨论】:
标签: python exception-handling python-requests