【python】raise_for_status()拋出requests.HTTPError錯誤


1、首先看下面代碼的運行情況

import requests

res = requests.get("https://www.csdn.net/eee", headers=headers, timeout=1)
res.encoding = "utf8"
print(res.status_code)
print(res.text)


運行結果:

 

 

可見requests請求可以正常返回狀態碼以及html文本,並沒有報錯。狀態碼只是服務器響應的結果,而錯誤的狀態碼也是正常的響應結果。

加上try…except…再看看:

沒有任何異常!響應狀態碼為404!

加上raise_for_status(),觀察運行結果:

 

 

此時被拋出404錯誤!
由此可見一個錯誤請求(一個 4XX 客戶端錯誤,或者 5XX 服務器錯誤響應),我們必須要通過使用raise_for_status() 才能拋出異常!

加上try…except…

 

 


此時拋出的異常並被第一個 requests.HTTPError 異常捕獲。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM