python requests请求失败如何设置重试
时间: 2023-08-22 13:35:14 浏览: 51
可以使用 `requests` 库自带的 `Session` 对象来设置请求失败时的重试次数。具体的做法是在 `Session` 对象的 `mount` 方法中注册一个 `HTTPAdapter` 对象,并设置 `max_retries` 参数即可。下面是一个示例:
```python
import requests
from requests.adapters import HTTPAdapter
from requests.exceptions import RequestException
url = "your_url_here"
retry_count = 3
session = requests.Session()
adapter = HTTPAdapter(max_retries=retry_count)
session.mount("http://", adapter)
session.mount("https://", adapter)
try:
response = session.get(url)
response.raise_for_status() # 抛出异常
# 处理 response
except RequestException as e:
print(f"请求失败:{e}")
```
上述代码中,我们首先创建了一个 `Session` 对象,并使用 `HTTPAdapter` 对象设置了重试次数为 3 次。接着,我们使用 `Session` 对象的 `get` 方法发起请求,并在 `try` 块中处理响应。如果请求出现异常,就会进入 `except` 块,打印一条错误信息。
注意,这里使用的是 `Session` 对象,而不是直接使用 `requests` 库的函数。因此,如果你想要设置请求失败时的重试次数,建议使用 `Session` 对象来发起请求。