使请求的会话在失败时自动重试。
项目描述
配置传入的 requests’ Session,使其在因连接错误、超时、特定的HTTP响应代码(默认为5XX)和30X重定向失败时进行重试——任何可能失败的情况。
Python 3.6+。
基本用法
from retry_requests import retry
my_session = retry()
my_session.get("http://foo.bar")
此 get 在发生错误时会重试三次,并在重试之间等待一段时间。错误可能是
等待服务器开始回答5秒。
无法访问服务器或连接丢失。
HTTP响应码为500、502或504。
您可以更改这些默认值
from retry_requests import retry
from requests import Session
my_session = retry(Session(), retries=5, backoff_factor=0.2)
my_session.get('https://foo.bar')
查看 retry 函数以了解更多关于此配置的信息。
请注意,您有一个 TSession,这是一个具有默认超时的 Session,以及一个 RSession,这是一个在超时时始终抛出 raise_for_status() 的 Session,以方便您使用。
深受 Peterbe.com 启发。谢谢!
安装
只需 pip install retry-requests。
测试
克隆此项目,然后在项目根目录下运行 python setup.py test。请注意,您需要保持网络连接才能运行测试。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源代码分布
retry-requests-2.0.0.tar.gz (16.1 kB 查看散列值)
构建分布
retry_requests-2.0.0-py3-none-any.whl (15.8 kB 查看散列值)
关闭
retry-requests-2.0.0.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 3d02135e5aafedf09240414182fc7389c5d2b4de0252daba0054c9d6a27e7639 |
|
MD5 | 2aa1ae11b215365b00e2b713f2188586 |
|
BLAKE2b-256 | 1eda6e961557733660bef8d095a1d81423a3707486e2b2ecd2c5ad5ad8d2f59d |
关闭
retry_requests-2.0.0-py3-none-any.whl的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 38e8e3f55051e7b7915c1768884269097865a5da2ea87d5dcafd6ba9498c363f |
|
MD5 | 89c529072975d4251f18836aa09ddc0d |
|
BLAKE2b-256 | b1f38ce908497bebbc2790ef06240a2c0fb28c096abb59062d88f85090464a5f |