Python requests
库
一、什么是requests
库?
Python的requests
库是一个用于发送HTTP请求的第三方库。它简单易用,封装了许多底层操作,能够帮助开发者更轻松地与Web服务进行通信。requests
库支持发送各种HTTP请求,比如GET、POST、PUT、DELETE等。
requests
库的特点
- 简单易用:与Python的标准库
urllib
相比,requests
更易于使用。 - 功能强大:支持HTTP方法、Cookies、会话、SSL验证等功能。
- 自动处理编码:可以自动检测和处理编码问题。
- 丰富的扩展性:支持自定义头信息、参数和认证方式。
安装requests
库
在使用requests
之前,需要确保已安装该库。可以使用以下命令安装:
pip install requests
二、HTTP请求的基本概念
在了解requests
库的API之前,首先需要了解一些基本的HTTP概念,这有助于理解如何与Web服务交互。
- HTTP方法:常用的有GET、POST、PUT、DELETE等,分别对应不同的操作。比如GET用于获取资源,POST用于提交数据。
- URL:统一资源定位符(Uniform Resource Locator),是访问资源的地址。
- 请求头(Headers):发送请求时可以包含的元数据,如用户代理、内容类型等。
- 请求体(Body):主要用于POST、PUT等请求,包含要发送的数据。
- 响应(Response):服务器返回的内容,包括状态码、响应头、响应体等。
三、requests
库的基本API
1. 发送GET请求
GET请求通常用于从服务器获取数据。它将参数附加在URL的查询字符串中。
语法:
import requests
response = requests.get(url, params=None, headers=None)
参数说明:
url
: 请求的URL地址。params
: (可选)字典或元组,附加在URL后的查询参数。headers
: (可选)字典,包含发送的请求头信息。
示例:
response = requests.get('https://jsonplaceholder.typicode.com/posts', params={
'userId': 1})
print(response.status_code) # 打印状态码
print