Python系列之requests

Python系列之requests
可爱可倾requests
requests 是一个用于发送 HTTP 请求的 Python
库。它提供了简单易用的 API,可以轻松地与 Web 服务进行交互。 它支持
GET、POST、PUT、DELETE 等多种 HTTP 方法,并且可以处理
Cookies、会话、文件上传等常见的 Web 操作。
1 安装
pip install requests
2 使用
2.1 GET 请求
import requests
url = "https://api.example.com/data" # 替换为实际的 API URL
response = requests.get(url)
response_time = response.elapsed.total_seconds() # 获取响应时间
if response.status_code == 200:
data = response.json() # 将响应内容解析为 JSON 格式
print(data)
else:
print(f"请求失败,状态码:{response.status_code}")
print(f"响应时间:{response_time} 秒")
2.2 POST 请求
import requests
url = "https://api.example.com/data" # 替换为实际的 API URL
data = {
"key1": "value1",
"key2": "value2"
}
response = requests.post(url, json=data) # 使用 json 参数自动将数据转换为 JSON 格式
response_time = response.elapsed.total_seconds() # 获取响应时间
if response.status_code == 201:
print("数据已成功发送")
else:
print(f"请求失败,状态码:{response.status_code}")
print(f"响应内容:{response.text}")
print(f"响应时间:{response_time} 秒")
2.3 处理 Cookies
import requests
url = "https://api.example.com/login" # 替换为实际的登录 URL
data = {
"username": "your_username",
"password": "your_password"
}
response = requests.post(url, data=data)
response_time = response.elapsed.total_seconds() # 获取响应时间
if response.status_code == 200:
# 登录成功,获取 Cookies
cookies = response.cookies
# 使用 Cookies 发送后续请求
url = "https://api.example.com/user_data"
response = requests.get(url, cookies=cookies)
if response.status_code == 200:
user_data = response.json()
print(user_data)
else:
print(f"请求失败,状态码:{response.status_code}")
else:
print(f"登录失败,状态码:{response.status_code}")
2.4 上传文件
import requests
url = "https://api.example.com/upload" # 替换为实际的文件上传 URL
with open("example.txt", "rb") as file:
files = {
"file": ("filename.txt", file, "text/plain") # (文件名, 文件对象, MIME类型)
}
response = requests.post(url, files=files)
response_time = response.elapsed.total_seconds() # 获取响应时间
if response.status_code == 200:
print("文件上传成功")
else:
print(f"请求失败,状态码:{response.status_code}")
print(f"响应时间:{response_time} 秒")
2.5 设置请求头
import requests
url = "https://api.example.com/data" # 替换为实际的 API URL
headers = {
"Authorization": "Bearer your_token_here", # 替换为实际的认证令牌
"Content-Type": "application/json",
"User-Agent": "My Python App"
}
response = requests.get(url, headers=headers)
response_time = response.elapsed.total_seconds() # 获取响应时间
if response.status_code == 200:
data = response.json()
print(data)
else:
print(f"请求失败,状态码:{response.status_code}")
print(f"响应时间:{response_time} 秒")
评论
匿名评论隐私政策
TwikooGiscus
✅ 若未加载出评论区,请刷新页面~






