【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
相关推荐
luoluoal几秒前
基于python的小区监控图像拼接系统(源码+文档)
python·mysql·django·毕业设计·源码
BoBoZz1937 分钟前
MotionBlur 演示简单运动模糊
python·vtk·图形渲染·图形处理
十八度的天空1 小时前
第01节 Python的基础语法
开发语言·python
BoBoZz191 小时前
GradientBackground 比较不同类型的背景渐变着色模式与坐标转换
python·vtk·图形渲染·图形处理
540_5401 小时前
ADVANCE Day32
人工智能·python·机器学习
STLearner1 小时前
AAAI 2026 | 图基础模型(GFM)&文本属性图(TAG)高分论文
人工智能·python·深度学习·神经网络·机器学习·数据挖掘·图论
小北方城市网1 小时前
Python + 前后端全栈进阶课程(共 10 节|完整版递进式|从技术深化→项目落地→就业进阶,无缝衔接基础课)
大数据·开发语言·网络·python·数据库架构
nvd112 小时前
故障排查:Pytest Asyncio Event Loop Closed 错误
python
deephub2 小时前
Lux 上手指南:让 AI 直接操作你的电脑
人工智能·python·大语言模型·agent
Channing Lewis2 小时前
Python读取excel转成html,并且复制excel中单元格的颜色(字体或填充)
python·html·excel