Python的request函数
requests
是一个常用的 Python 库,用于发送 HTTP 请求。它简单易用且功能强大。
下面是对 requests
库中一些常用函数的详细解释:
1. 安装 requests
首先,您需要安装 requests
库:
pip install requests
2. 基本使用
get(url)
用于发送 GET 请求。
- 参数:
url
: 要请求的 URL 地址。- 其他可选参数:headers, params, auth 等。
import requests
response = requests.get('https://www.example.com')
print(response.status_code) # 打印状态码
print(response.text) # 打印返回内容
post(url)
用于发送 POST 请求。
- 参数:
url
: 要请求的 URL 地址。data
,json
,files
等:要发送的数据。
import requests
response = requests.post('https://www.example.com', data={'key': 'value'})
print(response.status_code)
print(response.text)
3. 自定义请求头
使用 headers
参数可以自定义请求头。
- 示例:
import requests
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
response = requests.get('https://www.example.com', headers=headers)
print(response.status_code)
4. 添加认证
使用 auth
参数可以添加基本认证。
- 示例:
import requests
response = requests.get('https://www.example.com', auth=('username', 'password'))
print(response.status_code)
5. 发送参数
通过 params
可以传递 URL 查询字符串参数。
- 示例:
import requests
params = {'key1': 'value1', 'key2': 'value2'}
response = requests.get('https://www.example.com/search', params=params)
print(response.url) # 查看完整的请求URL
6. 发送 JSON 数据
通过 json
参数可以传递 JSON 格式的数据。
- 示例:
import requests
data = {'key1': 'value1', 'key2': 'value2'}
response = requests.post('https://www.example.com/post', json=data)
print(response.text) # 打印返回内容
7. 文件上传
通过 files
参数可以上传文件。
- 示例:
import requests
file_path = '/path/to/your/file.txt'
with open(file_path, 'rb') as f:
files = {'file': (file_path, f)}
response = requests.post('https://www.example.com/upload', files=files)
print(response.status_code)
8. 使用 Session
通过 Session
对象可以保持会话状态,比如登录认证。
- 示例:
import requests
session = requests.Session()
response1 = session.get('https://www.example.com/login')
print(response1.text)
# 登录并发送 POST 请求
response2 = session.post('https://www.example.com/login', data={'username':
'user', 'password': 'pass'})
print(response2.status_code)