# coding: utf-8
import requests
from requests.adapters import HTTPAdapter
from urllib3.util import Retry
class RetryRequests(object):
def __init__(self, connect_timeout, read_timeout, max_retry, status_forcelist=None, session=None):
self.session = session or requests.Session()
retry = Retry(
total=max_retry, #最大重試多少次
backoff_factor=0.1, # 每次重試時(shí)間間隔(0.1, 0.2, 0.4)
status_forcelist=status_forcelist, # 返回哪些狀態(tài)碼時(shí)進(jìn)行重試
)
adapter = HTTPAdapter(max_retries=retry)
self.session.mount('http://', adapter)
self.session.mount('https://', adapter)
self.timeout = (connect_timeout, read_timeout)
def get(self, url, timeout=None, **kwargs):
if timeout is None:
timeout = self.timeout
return self.session.get(url, timeout=timeout, **kwargs)
def post(self, url, timeout=None, data=None, json_data=None, **kwargs):
if timeout is None:
timeout = self.timeout
return self.session.post(url, timeout=timeout, data=data, json=json_data, **kwargs)
common_request_service = RetryRequests(10, 30, 3, [500, 502, 503, 504])
if __name__ == "__main__":
import time
rr = common_request_service
now = time.time()
try:
print rr.get("http://localhost:8888").text
except Exception as e:
print e
print time.time() - now
requests 超時(shí),返回非500重試的方法
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 【蝴蝶效應(yīng)】 蝴蝶效應(yīng):上個(gè)世紀(jì)70年代,美國一個(gè)名叫洛倫茲的氣象學(xué)家在解釋空氣系統(tǒng)理論時(shí)說,亞馬遜雨林一只蝴蝶...
- 突然右側(cè)肝區(qū)疼痛,以為肝出了問題,一檢查是膽囊炎! 都以為膽囊炎是小病,不在乎; 殊不知膽囊炎背后隱藏著巨大的身體...
- 溫暖于陌生大叔一個(gè)贊的手勢(shì) 中午一碗地道的老壇酸菜米線 聽著一首好聽的歌《童話鎮(zhèn)》 故事來源于一個(gè)大叔溫暖的手勢(shì) ...