HTTPError 是 URLError 的子类,服务器上每一个 HTTP 的响应都包含一个数字的“状态码”。
这些异常包括典型的:404(页面无法找到),403(请求禁止)和 401(验证请求)。
因为 Python 默认会自动帮你处理重定向方面的内容(状态码 300 ~ 399 范围),状态码 100 ~ 299 的范围是表示成功,所以你需要关注的是 400 ~ 599 这个范围的状态码(因为它们代表响应出了问题)。
其中,出现 4xx 的状态码,说明问题来自客户端,就是你自己哪里做错了;出现 5xx 的状态码,那就表示与你无关了,是来自服务器的问题。
下表列举了常用的 HTTP 状态码以及详细的含义:
状态码 |
内容 |
详细内容 |
1xx |
这一类型的状态码,代表请求已被接受,需要继续处理。 | |
100 |
Continue |
收到请求,客户端应当继续发送请求。 |
101 |
Switching Protocols |
服务器通过 Upgrade 消息头通知客户端采用不同的协议来完成这个请求。 |
2xx |
成功 | 这一类型的状态码,代表请求已成功被服务器接收、理解、并接受。 | |
200 |
OK |
请求已成功,请求的响应头或数据体将随此响应返回。 |
201 |
Created </ |