requests模块基础


requests 模块是一个优秀的 Python HTTP 库,简化了发送 HTTP 请求的过程。它比 Python 标准库中的 urllib 更加简洁和易用。以下是使用 requests 模块的基础知识:

1.安装:首先确保你已经安装了 requests 模块。如果没有安装,可以使用 pip 进行安装:

pip install requests

2.发送 GET 请求

import requests

response = requests.get('https://api.github.com')
print(response.status_code)  # 打印响应状态码
print(response.text)  # 打印响应内容

3.发送 POST 请求

import requests

data = {'key': 'value'}
response = requests.post('https://httpbin.org/post', data=data)
print(response.json())  # 将响应内容解析为 JSON 格式

4.处理响应

- `response.status_code`:HTTP 状态码。
- `response.text`:响应内容,以字符串形式返回。
- `response.json()`:如果响应是 JSON 格式,可以使用此方法将其解析为 Python 字典。

5.处理异常requests 模块也提供了异常处理机制,比如 requests.exceptions.RequestException 可以捕获所有请求产生的异常,如网络问题、超时等。

6.自定义请求头和参数

import requests

headers = {'User-Agent': 'Mozilla/5.0'}
params = {'key1': 'value1', 'key2': 'value2'}
response = requests.get('https://httpbin.org/get', headers=headers, params=params)
print(response.json())

7.会话对象: 如果需要保持某些参数(如 Cookie、身份认证等)在多个请求之间持续有效,可以使用 Session 对象:

import requests

session = requests.Session()
session.auth = ('user', 'pass')
session.headers.update({'x-test': 'true'})

response = session.get('https://httpbin.org/headers')
print(response.json())

8.其他 HTTP 方法requests 模块支持多种 HTTP 方法,如 PUTDELETEPATCH 等,使用方式类似于 GETPOST