1 安装requests库
如果你还没有安装requests
库,可以通过pip安装:
pip install requests
2 GET请求
GET请求通常用于从服务器请求数据。使用requests.get()
函数可以发送GET请求。
2.1 基本使用
import requests
url = 'https://api.example.com/data'
response = requests.get(url)
# 检查响应状态码
print(response.status_code)
# 获取响应内容(以文本形式)
print(response.text)
# 获取响应内容(以JSON形式,如果响应是JSON的话)
print(response.json())
2.2 带参数的GET请求
如果需要向GET请求中添加查询参数,可以使用params
参数。
import requests
params = {
'key1': 'value1',
'key2': 'value2',
}
url = 'https://api.example.com/search'
response = requests.get(url, params=params)
print(response.url) # 输出:https://api.example.com/search?key1=value1&key2=value2
3 POST请求
POST请求通常用于向服务器提交数据,如提交表单或上传文件。使用requests.post()
函数可以发送POST请求。
3.1 基本使用
import requests
url = 'https://api.example.com/data'
data = {
'key': 'value',
}
response = requests.post(url, data=data)
print(response.status_code)
print(response.text)
3.2 JSON数据
如果POST请求需要发送JSON数据,可以使用json
参数。
import requests
url = 'https://api.example.com/data'
json_data = {
'key': 'value',
}
response = requests.post(url, json=json_data)
print(response.status_code)
print(response.text)
3.3 文件上传
POST请求还可以用于上传文件。
import requests
url = 'https://api.example.com/upload'
files = {'file': open('example.txt', 'rb')}
response = requests.post(url, files=files)
print(response.status_code)
print(response.text)
4 总结
- 使用
requests.get()
发送GET请求。 - 使用
requests.post()
发送POST请求。 - 对于GET请求,查询参数可以通过
params
参数传递。 - 对于POST请求,表单数据可以通过
data
参数以表单编码方式发送,JSON数据可以通过json
参数发送,文件可以通过files
参数上传。 - 响应对象(
response
)包含了状态码(status_code
)、响应内容(text
、content
)、以及如果响应是JSON格式的话,还可以通过json()
方法解析JSON数据。