Requests 之Max retries exceeded with url[Errno 10054]错误新解

来源:互联网 发布:广东软件行业协会 招聘 编辑:程序博客网 时间:2024/06/02 05:27

只要使用过requests模块,想必对Max retries exceeded with url[Errno 10054]错误都不会太陌生。
这是requests常见的一种错误,原因就是连接太多没有关闭导致socket超时。
一般的解读是urllib3的问题,因为requests是基于urllib3的,urllib3默认不支持长连接即keep-alive

解决方案一

requests.adapters.DEFAULT_RETRIES = 5  

解决方案二

s = requests.session()s.keep_alive = False

新的情况

我的小爬虫其实只爬了一个页面就出现这个错误,而且并没有进行并发,也不会被封,而且几分钟前运行还正常。
经过排查发现,刚开了迅雷下载了很多文件,关了迅雷之后一切正常。
典型的多连接问题,当时出现错误的时候真的一脸蒙圈

原创粉丝点击