pythonraise_for_status()抛出requests.HTTPError错误

Posted 菜比之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pythonraise_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 异常捕获。

以上是关于pythonraise_for_status()抛出requests.HTTPError错误的主要内容,如果未能解决你的问题,请参考以下文章