[英]Python requests not catching internet disconnect
我正在使用以下代碼,使用 python 請求庫獲得大的 API 響應:
try :
r = requests.get("download_link")
data = r.content
except requests.exceptions.ConnectionError as ex:
print('Issue file download...'+str(ex))
except Exception as ex:
print('Issue file download...'+str(ex))
Python 請求版本:2.18.4,
Python 版本:3-x
這里的用例是,只要調用 API,我就會斷開互聯網,這不會引發任何錯誤(程序卡在 API 調用中)。 調用的 API 需要 30 多秒才能根據網絡速度給出完整的響應,並且在此 API 調用期間互聯網斷開的可能性很高。
我想在 API 通話期間網絡斷開連接時捕獲錯誤。 有人可以指導我如何處理它。
由於requests >= 2.4.0
,您可以以秒為單位使用 timeout 參數:
try :
timeout = 10
r = requests.get("download_link", timeout=10)
data = r.content
except requests.exceptions.ConnectionError as ex:
print('Issue file download...'+str(ex))
except requests.exceptions.ReadTimeout as ex:
print('Issue file download...'+str(ex))
except Exception as ex:
print('Issue file download...'+str(ex))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.