timeouterror:[winerror 10060]连接尝试失败,因为连接器在一段时间后没有正确答复,或者连接的主机没有响应

最近自己的采集程序报了一个timeouterror:[winerror 10060]连接尝试失败,因为连接器在一段时间后没有正确答复,或者连接的主机没有响应的错误,经过查找资料,找到了如下的解决方法:

需要在request.get()函数中加个timeout参数,如下所示:

req = requests.get(url, headers=headers, proxies=proxies, timeout=5 )

timeout 是用作设置响应时间( 单位:秒 )的,可以设置一个float或者一个tuple参数,响应时间分为连接时间和读取时间,timeout(3,7)表示的连接时间是3秒,响应时间是7秒

如果直接使用上述方法不行,可以再进一步修改为如下所示:

req = requests.get(url, headers=headers, proxies=proxies, timeout=(3,7))

如果设置后仍然解决不了,可能是目标服务器限制IP访问的问题了,需要找一个动态代理池去解决拒绝访问的问题,关于这个方面可以找相关资料去解决。

参考:https://www.pythonf.cn/read/3351
https://github.com/jhao104/proxy_pool

你可能感兴趣的:(爬虫,python)