(Python) ConnectionError: Max retries exceeded with url
作者:互联网
To solve the requests "ConnectionError: Max retries exceeded with url", use a Retry
object and specify how many connection-related errors to retry on and set a backoff factor to apply between attempts.
import requests
from requests.adapters import HTTPAdapter, Retry
def make_request():
session = requests.Session()
retry = Retry(connect=3, backoff_factor=0.5)
adapter = HTTPAdapter(max_retries=retry)
session.mount('http://', adapter)
session.mount('https://', adapter)
url = 'https://reqres.in/api/users'
response = session.get(url)
parsed = response.json()
print(parsed)
make_request()
The Session
object allows us to persist certain parameters across requests.
We passed the following keyword arguments to the Retry object:
connect
- the number of connection-related errors to retry onbackoff_factor
- a backoff factor factor to apply between attempts after the second try.
You can also use a try/except
block if you don't want to retry when an error occurs.
import requests
def make_request():
try:
url = 'https://reqres.in/api/users'
response = requests.get(url)
parsed = response.json()
print(parsed)
except requests.exceptions.ConnectionError:
# 标签:retries,ConnectionError,Python,make,request,try,url,factor,requests
来源: https://www.cnblogs.com/yuyanc/p/16576828.html