Python2使用request库发送HTTP请求

介绍

在Python开发中,我们经常需要与其他服务器进行交互,比如发送HTTP请求获取数据。而requests库是Python开发中非常常用的发送HTTP请求的库之一。本文将向你介绍如何使用Python2中的requests库发送HTTP请求。

准备工作

在开始之前,请确保你已经安装了requests库。你可以使用以下命令来安装它:

pip install requests

整体流程

发送HTTP请求的整体流程如下:

步骤 代码示例 说明
导入库 import requests 导入requests
发送请求 response = requests.get(url) 使用requests.get()方法发送GET请求,或者使用requests.post()方法发送POST请求
处理响应 response.status_code<br>response.text 获取响应的状态码和响应内容
处理异常 try...except 使用异常处理机制处理网络请求的异常
其他操作 根据需要进行其他操作,比如设置请求头、发送POST请求等 可以根据具体需求进行其他操作

接下来,我们将逐步讲解每一个步骤,并提供相应的示例代码。

示例代码

导入库

在开始之前,我们需要先导入requests库。我们可以使用以下代码导入库:

import requests

发送请求

在使用requests库发送HTTP请求之前,我们需要先指定请求的URL。下面是一个以GET方式发送请求的示例代码:

url = "
response = requests.get(url)

在上面的示例中,我们首先定义了一个URL,然后使用requests.get()方法发送了一个GET请求,并将响应存储在response变量中。

处理响应

一旦我们发送了请求,我们就可以处理服务器的响应了。下面是一些常用的处理响应的示例代码:

status_code = response.status_code
content = response.text

上面的代码中,status_code变量存储了响应的状态码,content变量存储了响应的内容。

处理异常

在发送HTTP请求时,可能会出现各种异常情况,比如网络连接失败、服务器返回错误等。为了避免程序崩溃,我们可以使用异常处理机制来捕获这些异常。下面是一个使用try...except来处理异常的示例代码:

try:
    response = requests.get(url)
    # 处理响应
except requests.exceptions.RequestException as e:
    print "请求发生异常:", e

在上面的代码中,我们使用try...except来捕获requests库可能抛出的异常,并打印出异常信息。

其他操作

除了上面介绍的基本操作外,requests库还提供了许多其他操作,比如设置请求头、发送POST请求等。以下是一些其他常用操作的示例代码:

设置请求头

可以使用headers参数来设置请求头。下面是一个设置请求头的示例代码:

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
}
response = requests.get(url, headers=headers)

上面的代码中,我们首先定义了一个headers字典,其中包含了User-Agent信息。然后在发送请求时,将该字典传递给headers参数即可。

发送POST请求

除了发送GET请求,requests库还可以发送POST请求。下面是一个发送POST请求的示例代码:

data = {
    'username': 'admin',
    'password': '123456'
}
response = requests.post(url, data=data)

上面的代码中,我们首先定义了一个data字典,其中包含了POST请求的参数。然后使用requests.post()方法发送POST请求,并将参数传递给data参数。