Python requests.get 超时重连设置 - 详细指南
在使用 Python 的 requests.get 方法时,我们可以通过 timeout 参数设置请求超时时间。如果请求超时,我们可以通过重试来尝试重新连接。以下是一个示例代码:
import requests
from requests.adapters import HTTPAdapter
from requests.packages.urllib3.util.retry import Retry
retry_strategy = Retry(
total=3,
backoff_factor=1,
status_forcelist=[ 500, 502, 503, 504 ]
)
adapter = HTTPAdapter(max_retries=retry_strategy)
session = requests.Session()
session.mount('http://', adapter)
session.mount('https://', adapter)
response = session.get('https://www.example.com', timeout=5)
在上面的代码中,我们使用了 requests 的 Session 方法,并通过 mount 方法将 HTTPAdapter 挂载到 Session 中。我们还定义了一个 Retry 对象,表示最多重试 3 次,每次重试间隔 1 秒,只有在返回状态码为 500、502、503、504 时才重试。最后我们使用 session.get 方法发送请求,并设置了超时时间为 5 秒。
在实际应用中,我们可以根据需要调整 Retry 对象的参数,以达到最佳的重连效果。
原文地址: https://www.cveoy.top/t/topic/lMe8 著作权归作者所有。请勿转载和采集!