Python - 请求状态码



在接收和解释请求消息后,服务器会返回一个HTTP响应消息。响应消息包含一个状态码。它是一个三位整数,状态码的第一位数字定义了响应的类别,后两位数字没有任何分类作用。第一位数字有5个值。

状态码

序号 代码和描述
1 1xx: 信息

表示请求已接收,正在处理中。

2 2xx: 成功

表示操作已成功接收、理解和接受。

3 3xx: 重定向

表示必须采取进一步操作才能完成请求。

4 4xx: 客户端错误

表示请求包含不正确的语法或无法完成。

5 5xx: 服务器错误

表示服务器未能完成一个明显有效的请求。

成功响应

在下面的示例中,我们从URL访问文件,响应成功。因此返回的状态码为200。

import urllib3
http = urllib3.PoolManager()

resp = http.request('GET', 'https://tutorialspoint.com/robots.txt')
print resp.data

# get the status of the response
print resp.status

运行上述程序后,我们将得到以下输出:

User-agent: *
Disallow: /tmp
Disallow: /logs
Disallow: /rate/*
Disallow: /cgi-bin/*
Disallow: /videotutorials/video_course_view.php?*
Disallow: /videotutorials/course_view.php?*
Disallow: /videos/*
Disallow: /*/*_question_bank/*
Disallow: //*/*/*/*/src/*

200

不成功响应

在下面的示例中,我们访问一个不存在的URL文件。响应不成功。因此返回的状态码为403。

import urllib3
http = urllib3.PoolManager()

resp = http.request('GET', 'https://tutorialspoint.com/robot.txt')
print resp.data

# get the status of the response
print resp.status

运行上述程序后,我们将得到以下输出:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /robot.txt
on this server.</p>
</body></html>

403

广告