python requests max retries_我可以为request.request设置max_retries吗?
蝴蝶不菲
这不仅会更改max_retries,还会启用退避策略,该策略会使对所有http://地址的请求在重试之前休眠一段时间(共5次):import requestsfrom urllib3.util.retry import Retryfrom requests.adapters import HTTPAdapters = requests.Session()retries = Retry(total=5, backoff_factor=0.1, status_forcelist=[ 500, 502, 503, 504 ])s.mount('http://', HTTPAdapter(max_retries=retries))s.get('http://httpstat.us/500')根据文档说明Retry:如果backoff_factor为0.1,则sleep()将在重试之间睡眠[0.1s,0.2s,0.4s ...]。它也将强制重试,如果返回的状态代码是500,502,503或504。各种其他选项Retry可以进行更精细的控制:total –允许的重试总数。connect –重试多少个与连接有关的错误。读取 -多少次重试读取错误。redirect –要执行多少次重定向。method_whitelist –我们应重试的大写HTTP方法动词集。status_forcelist –我们应强制重试的一组HTTP状态代码。backoff_factor –在两次尝试之间应用的退避因子。raise_on_redirect –如果重定向次数已用尽,则引发MaxRetryError,还是返回响应代码在3xx范围内的响应。raise_on_status -类似含义raise_on_redirect:我们是否应该抛出一个异常,或返回响应,如果状态落在status_forcelist范围和重试次数已经用尽。raise_on_status关键字参数似乎最多已进入标准库。要使请求重试特定的HTTP状态代码,请使用status_forcelist。例如,status_forcelist = [503]将重试状态代码503(服务不可用)。默认情况下,重试仅针对以下情况触发:无法从池中获得连接。TimeoutErrorHTTPException(从Python 3中的http.client或其他httplib)引发。这似乎是低级HTTP异常,例如URL或协议格式不正确。SocketErrorProtocolError请注意,所有这些都是阻止接收常规HTTP响应的异常。如果生成任何常规响应,则不会重试。不使用status_forcelist,即使状态为500的响应也不会重试。以使其以这样的方式,其是用于与远程API或web服务器工作的更直观的行为,我会用上面的代码段中,这迫使上状态的重试500,502,503和504,所有这些都并不少见上网络和(可能)在足够大的退避期后可恢复。
python requests max retries_我可以为request.request设置max_retries吗?相关推荐
- python requests.exceptions.SSLError、InsecureRequestWarning: Unverified HTTPS request is be
requests.exceptions.SSLError: HTTPSConnectionPool(host='XXX', port=443)问题 1.先检查pip有没安装cryptography,p ...
- python requests max retries_python requests报Max retries exceeded with url异常
项目中有个模块是定时获取设备状态的,通过设备的http请求访问获取返回的状态码,然后根据状态码检测设备是否在线.但是最近发现连接后出现了偶尔连接不上的情况,报错如下: 2018-06-14 15:51 ...
- python requests max retries_Python requests“Max retries exceeded with url” error
19-4-29补充: error1: NewConnectionError(': Failed to establish a new connection: [WinError 10060] 由于连接 ...
- 【爬虫 | Python】解决‘Requests Max Retries Exceeded With Url‘报错的问题
[爬虫 | Python]解决'Requests Max Retries Exceeded With Url in Python'报错的问题 背景 解决方案 一.普遍方案 细致方案 一.问题重述 1. ...
- Python requests 多线程抓取 出现HTTPConnectionPool Max retires exceeded异常
Python requests 多线程抓取 出现HTTPConnectionPool Max retires exceeded异常 参考文章: (1)Python requests 多线程抓取 出现H ...
- python requests form data_Python爬虫:Request Payload和Form Data的简单区别说明
Request Payload 和 Form Data 请求头上的参数差别在于: Content-Type Form Data Post表单请求 代码示例 headers = { "Cont ...
- pythonrequests设置_关于python:我可以为requests.request设置max_retries吗?
Python请求模块简单而优雅,但有一点让我感到困惑. 可以使用以下消息获取requests.exception.ConnectionError: Max retries exceeded with ...
- Python requests ip代理爬虫报错 HTTPSConnectionPool(host=‘xxxxx‘, port=443) Max retries exceed
本人系统:macOS10.15.6 Catalina 场景:使用Python requests 包+ip代理池爬取网站数据 出现报错:HTTPSConnectionPool(host='xxxxx', ...
- Python requests ip代理爬虫报错 HTTPSConnectionPool(host=‘xxxxx‘, port=443): Max retries exceed...
本人系统:macOS10.15.6 Catalina 场景:使用Python requests 包+ip代理池爬取网站数据 出现报错:HTTPSConnectionPool(host='xxxxx', ...
最新文章
- Windows上erl.exe的CPU使用率很高的问题【未解决】
- 004_常用浏览器内核
- 图像滤镜艺术---微软自拍APP滤镜实现合集DEMO
- Hadoop2调优(一):如何控制job的map任务和reduce任务的数量
- 大学期末考试综合实训试题一
- iOS10 资料汇总:值得回看的 10 篇 iOS 热文
- 操作系统的运行机制和体系机构
- Ubuntu使用jupyter notebook +导出PDF
- Miller_Rabin算法
- 【转】刨根究底字符编码之五——简体汉字编码方案(GB2312、GBK等)以及全角、半角、CJK
- kmeans算法实例及python代码-Python实现k-means算法
- springboot运行在eclipse报异常的问题
- MVC html 控件扩展【转载】
- 网络攻防|Web后门知识详解
- 一文搞懂数据结构之 递归-八皇后问题
- 股票量化交易有哪些潜在的风险?如何去避免?
- CF1009F Dominant Indices
- java程序员 技术成长路线
- matlab画柱状图函数,series函数做柱状图
- 手机使用电脑自带功能进行投屏
热门文章
- 人类评估已不是NLG的最佳标准,华盛顿大学提出全新观点,网友:那是评估人水平不行...
- 送一台高清航拍无人机
- EMNLP2020:Hugging Face获最佳demo
- Visual Studio Code为什么能这么牛X?
- JVM调优:基本垃圾回收算法
- 网易是世界最好的公司
- 爬取一万条b站评论看《工作细胞》
- 操作系统学习:系统调用与Linux0.12初始化详细流程
- ACMNO.5给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以上为A 80-89分为B 70-79分为C 60-69分为D 60分以下为E
- 收藏 | 有哪些相见恨晚的科研经验?