编程语言
首页 > 编程语言> > (Python) ConnectionError: Max retries exceeded with url

(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.

main.py  
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:

  The example above retries the request 3 times with backoff factor of 0.5 seconds after the second try.

You can also use a try/except block if you don't want to retry when an error occurs.

main.py  
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