python 强大的错误重试库 tenacity retry

本文介绍了适用于web接口测试和爬虫的Python错误重试库Tenacity。通过设置最大重试次数、重试最大超时时长、组合重试条件、相邻重试间隔以及自定义触发重试条件,实现智能的错误处理策略。详细功能包括:默认无限重试、设置最大重试次数限制、超时停止重试、动态调整重试间隔以及根据错误类型和函数结果判断是否重试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

适用场景

功能使用说明

tenacity的错误重试核心功能是由其retry装饰器来实现的
默认retry不给参数时,将会不停地重试下去, 这也不符合需求的.

设置最大重试次数

retry(stop=stop_after_attempt(3)) 将在尝试3次后,于第4次抛出异常.

设置重试最大超时时长

retry(stop=stop_after_delay(5)),整个重试的超时时长超于5秒, 将停止重试.

组合重试条件

retry(stop=(stop_after_delay(5) | stop_after_attempt(3)))

将在重试总时长超过5秒后, 或者 重试3次后, 停止重试

设置相邻两次重试的时间间隔

有两种方式:

  1. 设置固定的时间间隔
retry(wait=wait_fixed(1), stop=stop_after_attempt(3))

重试3次, 每次重试间隔1秒

  1. 设置随机的时间间隔
retry(wait=wait_random(min=1, max=3), stop=stop_after_attempt(3))

重试3次, 每次重试间隔1到3秒

自定义是否触发重试

    评论 1
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值