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 異常捕獲。
