您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在Python中实现请求重试

在Python中实现请求重试

您可以将urllib3.util.retry模块与结合使用,requests以实现以下目的:

from urllib3.util.retry import Retry
import requests
from requests.adapters import HTTPAdapter

def retry_session(retries, session=None, backoff_factor=0.3):
    session = session or requests.Session()
    retry = Retry(
        total=retries,
        read=retries,
        connect=retries,
        backoff_factor=backoff_factor,
        method_whitelist=False,
    )
    adapter = HTTPAdapter(max_retries=retry)
    session.mount('http://', adapter)
    session.mount('https://', adapter)
    return session

用法

session = retry_session(retries=5)
session.post(url=endpoint, data=json.dumps(x), headers=headers)

您还可以从Retry类继承并自定义重试行为和重试间隔。

python 2022/1/1 18:37:37 有454人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶