8 使用requests库发送请求

在上一篇文章中,我们讨论了如何使用 GETPOST 请求获取数据。接下来,我们将深入探讨使用 requests 库发送请求的基本方法。在本篇文章中,我们将着重介绍如何创建和发送请求,处理请求参数,并提供一些简单的案例以帮助你更好地理解。

基本的请求方法

requests 库是一个功能强大且易于使用的 Python 库。它允许你通过 HTTP 协议与网络进行交互。首先,我们需要安装这个库,如果你还没有安装,可以通过以下命令进行安装:

1
pip install requests

1. 发送GET请求

GET 请求是最常见的请求类型,它用于从指定的资源请求数据。以下是一个简单的 GET 请求示例:

1
2
3
4
5
6
7
8
9
10
import requests

# 指定要请求的 URL
url = 'https://api.github.com'

# 发送 GET 请求
response = requests.get(url)

# 输出响应内容
print(response.text)

在这个例子中,我们使用 requests.get() 方法来发送一个 GET 请求。响应对象 response 包含了服务器返回的所有信息,包括 HTTP 状态码、响应头和响应体。

2. 发送POST请求

POST 请求用于向指定资源提交数据。在处理表单数据或上传文件时,常常使用 POST 方法。以下是一个简单的 POST 请求示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import requests

# 指定要请求的 URL
url = 'https://httpbin.org/post'

# 要发送的数据(字典形式)
data = {
'name': 'Alice',
'age': 30
}

# 发送 POST 请求
response = requests.post(url, data=data)

# 输出响应内容
print(response.text)

在这个例子中,我们使用 requests.post() 方法发送一个 POST 请求,并在请求中包含了一个字典作为数据。

3. 发送请求时的参数

在发送请求时,有时候我们需要在 URL 中添加参数。这时可以使用 params 关键字参数。以下是一个示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import requests

# 指定要请求的 URL
url = 'https://api.github.com/search/repositories'

# 定义请求参数
params = {
'q': 'requests+language:python'
}

# 发送 GET 请求并添加参数
response = requests.get(url, params=params)

# 输出响应内容
print(response.text)

在这个例子中,params 字典被用来构建 URL 的查询参数。requests 库会自动将这个字典转换为查询字符串并附加到 URL 末尾。

处理请求头

有时在发送请求时,你可能需要修改 HTTP 请求头。这可以使用 headers 参数来实现。以下是一个例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import requests

# 指定要请求的 URL
url = 'https://api.github.com'

# 定义请求头
headers = {
'User-Agent': 'MyApp/1.0'
}

# 发送 GET 请求并带上请求头
response = requests.get(url, headers=headers)

# 输出状态码和响应内容
print(response.status_code)
print(response.text)

在这个例子中,我们通过 headers 参数自定义了 User-Agent。

总结

在本篇文章中,我们介绍了如何使用 requests 库发送 GETPOST 请求,以及如何添加请求参数和自定义请求头。这些是进行网络请求的基本操作,为你后续处理响应内容奠定了基础。

在下一篇文章中,我们将看看如何处理响应内容,包括如何获取响应数据、检查 HTTP 状态码以及处理 JSON 数据。继续关注这个系列教程,以便进一步提升你的网络爬虫技能!

8 使用requests库发送请求

https://zglg.work/crawler-zero/8/

作者

IT教程网(郭震)

发布于

2024-08-11

更新于

2024-08-11

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论