请求状态码(statuscodes):Python中requests库的常用属性之一
发布时间:2024-01-08 14:17:54
requests库是Python中常用的用于发送HTTP请求的库,它提供了一系列的方法和属性来处理HTTP请求和响应。其中一个常用的属性是状态码(status code),它表示了服务器对请求的处理结果。在requests库中,状态码以整数的形式表示,并可以通过response对象的status_code属性获取。
以下是一些常见的状态码及其含义:
1xx(信息类状态码):表示请求已经被接收,继续处理。
- 100(Continue):服务器已经收到了请求头,并且客户端应该继续发送请求体。
import requests
response = requests.get('http://example.com')
print(response.status_code) # 输出 200
2xx(成功类状态码):表示请求成功被服务器接收、理解和处理。
- 200(OK):请求成功,服务器返回了请求的内容。
import requests
response = requests.get('http://example.com')
print(response.status_code) # 输出 200
3xx(重定向类状态码):表示需要进一步操作以完成请求。
- 301(Moved Permanently):请求的资源已经永久移动到新的URL。
import requests
response = requests.get('http://example.com')
print(response.status_code) # 输出 301
4xx(客户端错误类状态码):表示客户端发出了错误的请求。
- 404(Not Found):无法找到请求的资源。
import requests
response = requests.get('http://example.com/not_existed')
print(response.status_code) # 输出 404
5xx(服务器错误类状态码):表示服务器在处理请求时发生了错误。
- 500(Internal Server Error):服务器内部错误。
import requests
response = requests.get('http://example.com')
print(response.status_code) # 输出 500
除了status_code属性之外,requests库还提供了其他一些与状态码相关的属性,如reason属性用于获取状态码对应的原因短语,headers属性用于获取响应头等。
import requests
response = requests.get('http://example.com')
print(response.status_code) # 输出 200
print(response.reason) # 输出 OK
print(response.headers) # 输出响应头
在实际的使用中,我们可以根据状态码来对不同的响应进行处理,例如判断请求是否成功、是否发生了重定向、是否遇到了错误等。requests库的状态码属性提供了一种方便和可靠的方式来获取和处理这些状态信息。
