Python中的Request请求重试机制

 更新时间:2024年06月27日 09:59:41   作者:老虎爱代码  
这篇文章主要介绍了Python中的Request请求重试机制,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python请求重连

很多时候因为网络错误,或者请求阻塞导致我们一次请求没有生效,那么有个错误重试机制的话方便我们容错

问题描述

提示:

解决重连机制的话,一般我们先把请求做一次封装

所有的reques都通过我们的Request基类去请求

这样方面我们统一处理

put_request是我封装的一个put统一请求方法:

def put_request(url,data):
    i=0
    while i<3:
        try:
                res=r.put(url=url,data=data,verify=False,timeout=3.07)
                if check_res(res):
                    i+=1
                else:
                    return res
        except Exception as e:
            log.debug(str(e))
            i+=1
            res='error'
    return res

优化

提示:

后来发现Request有自己的重试机制,Transport Adapters,

https://requests.readthedocs.io/en/latest/user/advanced/#transport-adapters

import requests
from requests.adapters import HTTPAdapter

r = requests.Session()
#将适配器挂载到session上面
r.mount('http://', HTTPAdapter(max_retries=3))
r.mount('https://', HTTPAdapter(max_retries=3))

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python如何读写字节数据

    Python如何读写字节数据

    这篇文章主要介绍了Python如何读写字节数据,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-08-08
  • Python进阶之利用+和*进行列表拼接

    Python进阶之利用+和*进行列表拼接

    在我们学习python的过程中,有一个非常常见的语法,那就是利用+和*进行序列的拼接以及其他操作。今天就带大家从使用+和*进行拼接出发认识一个大家非常容易犯的代码错误。话不多说我们开始吧
    2023-04-04
  • pandas将DataFrame的几列数据合并成为一列

    pandas将DataFrame的几列数据合并成为一列

    本文主要介绍了pandas将DataFrame的几列数据合并成为一列,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 利用matlab与Excel交互之单元格操作

    利用matlab与Excel交互之单元格操作

    Excel是广泛使用的“电子表格”,Matlab则具有强大的数值计算、统计分析以及图形可视化能力,这篇文章主要给大家介绍了关于利用matlab与Excel交互之单元格操作的相关资料,需要的朋友可以参考下
    2021-08-08
  • 使用Python实现处理和清洗CSV格式的数据文件

    使用Python实现处理和清洗CSV格式的数据文件

    这篇文章主要为大家详细介绍了如何使用Python实现处理和清洗CSV格式的数据文件,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下
    2025-12-12
  • python-opencv-cv2.threshold()二值化函数的使用

    python-opencv-cv2.threshold()二值化函数的使用

    这篇文章主要介绍了python-opencv-cv2.threshold()二值化函数的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • python实现k-means聚类算法

    python实现k-means聚类算法

    这篇文章主要为大家详细介绍了python实现k-means聚类算法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • 基于Python实现一个目录/文件递归检索工具

    基于Python实现一个目录/文件递归检索工具

    在Python中,递归查找文件是一个常见的任务,特别是在处理大型文件系统时,递归查找意味着从指定的目录开始,遍历该目录中的所有子目录,并在每个子目录中查找匹配特定条件的文件,所以本文给大家介绍了基于Python实现一个目录/文件递归检索工具,需要的朋友可以参考下
    2025-07-07
  • Scrapy的Pipeline之处理CPU密集型或阻塞型操作详解

    Scrapy的Pipeline之处理CPU密集型或阻塞型操作详解

    这篇文章主要介绍了Scrapy的Pipeline之处理CPU密集型或阻塞型操作详解,Twisted框架的reactor适合于处理短的、非阻塞的操作,Twisted提供了线程池来在其他的线程而不是主线程(Twisted的reactor线程)中执行慢的操作,需要的朋友可以参考下
    2023-10-10
  • requests库post方法如何传params类型的参数(最新推荐)

    requests库post方法如何传params类型的参数(最新推荐)

    在使用requests库的post方法时,params类型的参数用于在URL中作为查询字符串传递,与data或json参数不同,后者是放在请求体中的,params参数接受一个字典或包含键值对的序列,本文给大家介绍requests库post方法怎么传params类型的参数,感兴趣的朋友一起看看吧
    2025-03-03

最新评论