【python 装饰器 - 重试】做一个简易重试装饰器,如果函数执行错误则会自动重新执行,可设置重试次数,对爬虫比较友好

文章日期:2024.03.19

使用工具:Python

类型:装饰器

文章全程已做去敏处理!!! 【需要做的可联系我】

AES解密处理(直接解密即可)(crypto-js.js 标准算法):在线AES加解密工具

上面的图片案例,里面的意思简单来说就是用 【传参】和【随机的整数】进行除法运算,而随机的整数不能为0,如果为0则表示错误,则会重新运行此函数,重新获取随机数,直到成功或者重试的次数用完
当然,这只是用来演示如何使用的,你们可以随意更改,也可以把参数改成爬虫请求,然后检测状态码,当出现错误的时候,会自动重试的
retry:默认为重试3次,可设置
【附上源码】
python 复制代码
class retry_lane(object):
    def __init__(self, retry: int = 3):
        '''
        :param retry: int类型:重试次数
        使用方法:@retry_lane(retry=3)
        '''
        self.retry = retry
    def __call__(self, func):
        def wrapper(*args, **kwargs):
            l = 0
            while self.retry > 0:
                l += 1
                try:
                    print(f'运行第{l}次')
                    return func(*args, **kwargs)
                except Exception as e:
                    self.retry -= 1
                    if self.retry == 0:
                        return e
        return wrapper
相关推荐
花间相见14 分钟前
【计算基础|网络04】—— HTTP接口实战(下):接口测试、鉴权与跨域排错
java·linux·人工智能·后端·python·计算机网络·postman
慧都小项14 分钟前
Python 跨文件重构怎么验证?PyCharm 用法查找、重构预览与测试流程
python·重构·pycharm·单元测试
SEO_juper18 分钟前
2026年用Python批量审计XML Sitemap:揪出sitemap.xml中的“配置错误/死链/过期页“(附完整代码)
java·python·seo·外贸独立站·谷歌优化
钱栈up24 分钟前
自动化多平台发布:脚本报FAIL时用三个信号判断真实状态
python
余槐i25 分钟前
拆解 Agent 核心原理|从零动手实现简易 AI 智能体(三)
人工智能·python·fastapi·ai agent
程序员AlbertTu29 分钟前
# Mantissa 使用教程 — Python 版与 C++ 版
c++·python·数值运算
童园管理札记43 分钟前
从政策驱动到课堂落地:2026年“人工智能+教育”全景解读与技术实践指南
人工智能·python·深度学习·职场和发展·学习方法
陈年老古董44 分钟前
微博情感分析项目学习笔记
笔记·python·学习·机器学习·项目
10mAh1 小时前
【Python】从零开始做一个重复文件查找工具——找出改名副本,生成核对报告
python
用户0332126663671 小时前
使用 Python 轻松合并多个 PowerPoint 文件【代码详解】
python