requests库-基础使用

requests库-基础使用
怀光1. requests 模块简介
requests
是一个基于 Python 的第三方库,主要用于发送 HTTP 请求,特点如下:
- 易用性:简单的 API,降低了 HTTP 操作的复杂性。
- 灵活性:支持多种请求方法(GET、POST、PUT、DELETE 等)。
- 扩展性:支持自定义请求头、Cookies、代理等。
安装方式:
1 | pip install requests |
2. 如何发送 GET 和 POST 请求
发送 GET 请求
GET 请求用于从服务器获取数据,示例如下:
1 | import requests |
通过parms
传递查询参数:
1 | params = {'userId': 1} |
发送 POST 请求
POST 请求用于向服务器提交数据:
1 | url = 'https://jsonplaceholder.typicode.com/posts' |
3. 其他请求方法
PUT 请求
用于更新资源:
1 | url = 'https://jsonplaceholder.typicode.com/posts/1' |
DELETE 请求
用于删除资源:
1 | url = 'https://jsonplaceholder.typicode.com/posts/1' |
4. 自定义 Header 和 Cookies
自定义 Header
通过 headers
参数自定义请求头:
1 | headers = {'User-Agent': 'my-app/0.0.1'} |
自定义 Cookies
通过 cookies
参数设置自定义 Cookie:
1 | cookies = {'session_id': '123456'} |
5. SSL 证书验证
默认情况下,requests
会验证 HTTPS 请求的 SSL 证书。
禁用 SSL 验证
如果服务器证书不可信,可以关闭验证(不推荐):
1 | response = requests.get('https://self-signed.badssl.com/', verify=False) |
使用自定义证书
指定本地证书文件路径:
1 | response = requests.get('https://example.com', cert=('/path/to/cert.pem', '/path/to/key.pem')) |
6. 处理返回结果
检查状态码
1 | response = requests.get('https://example.com') |
解析响应内容
- 响应文本:
1
print(response.text) # 返回响应的文本内容
- JSON 数据:
1
print(response.json()) # 解析为字典或列表
响应头信息
1 | print(response.headers) # 以字典形式返回响应头 |