欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?中設(shè)置請(qǐng)求的最大重試次數(shù)示例代碼

 更新時(shí)間:2023年06月07日 10:48:25   作者:跡憶客  
本篇文章介紹了為什么我們會(huì)收到錯(cuò)誤消息,指出超出了最大重試次數(shù),以及我們?nèi)绾卧?Python?中為請(qǐng)求設(shè)置?max_retries,本文通過示例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧

本篇文章介紹了為什么我們會(huì)收到錯(cuò)誤消息,指出超出了最大重試次數(shù),以及我們?nèi)绾卧?Python 中為請(qǐng)求設(shè)置 max_retries。 如果服務(wù)器上的負(fù)載導(dǎo)致此錯(cuò)誤,它還會(huì)為我們提供提示。

Python中設(shè)置請(qǐng)求max_retries的錯(cuò)誤,的原因和解決方案

在繼續(xù)查看如何在 Python 中為請(qǐng)求設(shè)置 max_retries 之前,讓我們先解決一些問題。

  • 首先,如果您的 URL 不正確,就會(huì)發(fā)生此錯(cuò)誤。 因此,您需要檢查您請(qǐng)求的 URL 是否有效。
  • 此錯(cuò)誤也可能由于互聯(lián)網(wǎng)連接而發(fā)生,因此請(qǐng)確保您沒有遇到所有此類問題。
  • 當(dāng)服務(wù)器過載時(shí),我們也會(huì)收到此錯(cuò)誤。 當(dāng)服務(wù)器繁忙時(shí),您可能會(huì)遇到此類錯(cuò)誤。

這就是增加請(qǐng)求 URL 的重試次數(shù)的現(xiàn)象來幫助我們的地方。 因此,讓我們了解如何做到這一點(diǎn)。 但是,首先,看看下面的代碼。

示例代碼:

import requests
# increass retries number
retries = #enter the number of retires you want to increase 
requests.adapters.DEFAULT_RETRIES = retries

這是您可以在 Python 中增加 URL 請(qǐng)求的重試次數(shù)的方法,但是如果由于服務(wù)器負(fù)載而出現(xiàn)此錯(cuò)誤,您可以使用以下提示。

> python -m pip install requests

在 Python 中擺脫請(qǐng)求的 Set max_retries 的技巧

如果服務(wù)器上的負(fù)載導(dǎo)致此錯(cuò)誤,您可以使用以下任何提示。

  • 禁用 keep_alive

您可以禁用會(huì)話的 keep_alive 功能。 下面的一段代碼解釋了如何做到這一點(diǎn)。

request_session = requests.session()
# disable keep_alive
request_session.keep_alive = False
request_session.get(your_url)
  • 使用超時(shí)

當(dāng)服務(wù)器過載、繁忙或遠(yuǎn)離該位置時(shí),這可能成為您遇到相同錯(cuò)誤的原因。 為避免這種情況,您可以增加響應(yīng)時(shí)間。

您可以使用來自服務(wù)器的 POST 和 GET 請(qǐng)求來完成此操作。 例如,看看下面的代碼。

import requests
#the time in seconds in this example is increasing time by 5
req = requests.get(your_url, timeout=5)
req = requests.post(your_url, timeout=5)

您還可以在超時(shí)參數(shù)中使用元組。 第一個(gè)參數(shù)會(huì)增加構(gòu)建時(shí)間,第二個(gè)參數(shù)會(huì)增加響應(yīng)時(shí)間。 下面給出了代碼示例。

req = requests.get(your_url, timeout=(3,6))
  • 設(shè)置 backoff_factor(延遲/睡眠)

backoff_factor 是請(qǐng)求用來初始設(shè)置網(wǎng)絡(luò)連接的 urllib3 參數(shù)。

您還可以設(shè)置 backoff_factor 以增加每次嘗試的嘗試次數(shù)和休眠時(shí)間。

它將避免出現(xiàn)此錯(cuò)誤。 有了這個(gè),你就停止了這段代碼并讓它等待,直到它收到服務(wù)器的響應(yīng)。

下圖說明了 backoff_factor 如何在服務(wù)請(qǐng)求失敗時(shí)延遲服務(wù)請(qǐng)求。

#you can set a backoff factor means delay/sleep time in each retry
import requests
from requests.adapters import HTTPAdapter
from requests.packages.urllib3.util.retry import Retry
#initailize the request session
request_session = requests.Session()
#initailizing retry object
#you can increase the number of total retires and sleep time of each retry
retries = Retry(total=3, backoff_factor=1)
adapter = HTTPAdapter(max_retries=retry)
request_session.mount('http://', adapter)
request_session.get(your_url)

根據(jù) urllib3 文檔,backoff_factor 是庫用來確定重試之間的休眠間隔的基值。

例如,在每次不成功的連接嘗試之后,urllib3 將休眠 {backoff_factor} * (2 (總重試次數(shù) - 1)) 秒。

例如,如果 backoff_factor 設(shè)置為 0.01,sleep() 將在兩次重試之間休眠 0.0s、0.2s、0.4s……。 默認(rèn)情況下退避是不活動(dòng)的(設(shè)置為 0)。

如果返回的狀態(tài)碼是500、502、503、504,會(huì)額外要求重試。 要更好地控制重試,您可以修改重試。

到此這篇關(guān)于如何在 Python 中設(shè)置請(qǐng)求的最大重試次數(shù)的文章就介紹到這了,更多相關(guān) Python設(shè)置請(qǐng)求最大重試次數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Python處理PDF文件的實(shí)踐分享

    使用Python處理PDF文件的實(shí)踐分享

    在現(xiàn)代數(shù)字化時(shí)代,PDF(Portable?Document?Format)文件已經(jīng)成為廣泛使用的電子文檔格式,這篇文章主要為分享了Python處理PDF文件的簡(jiǎn)介與實(shí)踐,需要的可以參考下
    2023-06-06
  • Python多進(jìn)程multiprocessing、進(jìn)程池用法實(shí)例分析

    Python多進(jìn)程multiprocessing、進(jìn)程池用法實(shí)例分析

    這篇文章主要介紹了Python多進(jìn)程multiprocessing、進(jìn)程池用法,結(jié)合實(shí)例形式分析了Python多進(jìn)程multiprocessing、進(jìn)程池相關(guān)概念、原理、用法及操作注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • Python走樓梯問題解決方法示例

    Python走樓梯問題解決方法示例

    這篇文章主要介紹了Python走樓梯問題解決方法,結(jié)合實(shí)例形式分析了Python基于遞歸與迭代思想解決走樓梯問題的相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • 詳解Python中的進(jìn)程和線程

    詳解Python中的進(jìn)程和線程

    今天帶大家學(xué)習(xí)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著Python中的進(jìn)程和線程展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • 離線部署Python環(huán)境的詳細(xì)過程

    離線部署Python環(huán)境的詳細(xì)過程

    本文主要介紹了離線部署Python環(huán)境的全過程,包括前置工作、部署Python、測(cè)試Python、配置環(huán)境和驗(yàn)證Python五個(gè)步驟,為讀者提供了詳細(xì)的操作指南,希望能對(duì)需要離線部署Python環(huán)境的讀者提供幫助
    2024-10-10
  • Python批量修改文本文件內(nèi)容的方法

    Python批量修改文本文件內(nèi)容的方法

    這篇文章主要介紹了Python批量修改文本文件內(nèi)容的方法的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • Python?日期和時(shí)間處理教程之datetime?模塊的使用示例詳解

    Python?日期和時(shí)間處理教程之datetime?模塊的使用示例詳解

    Python 中的日期不是獨(dú)立的數(shù)據(jù)類型,但我們可以導(dǎo)入一個(gè)名為 datetime 的模塊來使用日期作為日期對(duì)象,這篇文章主要介紹了Python?日期和時(shí)間處理教程:datetime?模塊的使用,需要的朋友可以參考下
    2023-10-10
  • 在Pycharm中將pyinstaller加入External Tools的方法

    在Pycharm中將pyinstaller加入External Tools的方法

    今天小編就為大家分享一篇在Pycharm中將pyinstaller加入External Tools的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 基于Python編寫簡(jiǎn)單的網(wǎng)絡(luò)測(cè)試工具

    基于Python編寫簡(jiǎn)單的網(wǎng)絡(luò)測(cè)試工具

    這篇文章主要為大家詳細(xì)介紹了如何基于Python編寫一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)測(cè)試工具,可以測(cè)試網(wǎng)絡(luò)的下載速度,上傳速度和延遲,感興趣的可以了解下
    2025-02-02
  • Python英文文章詞頻統(tǒng)計(jì)(14份劍橋真題詞頻統(tǒng)計(jì))

    Python英文文章詞頻統(tǒng)計(jì)(14份劍橋真題詞頻統(tǒng)計(jì))

    這篇文章主要介紹了Python英文文章詞頻統(tǒng)計(jì)(14份劍橋真題詞頻統(tǒng)計(jì)),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10

最新評(píng)論