Requests 是 Python 最流行的 HTTP 客户端库,用极简 API 发送 HTTP/1.1 请求,自动处理查询串、表单编码、Cookie、认证与压缩解码。
- v2.34.2
- 发布于
- 2026年5月15日
- 54,522
- 星标
- 7,644
- 下载
- 同步于
- 8 天前
最新版本
v2.34.22026年5月15日 03:27下载慢?可在上方随时切换镜像源
项目说明
项目概述
Requests 是一个简单而优雅的 Python HTTP 库,让发送 HTTP/1.1 请求变得极其容易:无需手动拼接查询字符串、无需手动做表单编码,直接用 json 参数即可发送 JSON 数据。它每周下载量约 3 亿次,被超过 400 万个仓库依赖,是 Python 生态事实上的 HTTP 客户端标准。
| 项目 | 内容 |
|---|---|
| 语言 | Python |
| 类型 | HTTP 客户端库 |
| Python 版本 | 3.10+ |
| 许可 | Apache-2.0 |
「为人类设计的 HTTP」,几行代码搞定请求、Cookie 与认证。
主要功能
- 极简请求:一个函数调用完成 GET、POST 等各类请求
- 会话保持:Session 支持跨请求的 Cookie 持久化
- 连接复用:Keep-Alive 与连接池提升请求效率
- 认证支持:内置 Basic 与 Digest 认证
- TLS 校验:浏览器风格的 SSL/TLS 证书验证
- 自动解码:自动完成内容解压与字符解码
- 文件上传:支持多部分编码的文件上传
- 代理支持:支持 HTTP 与 SOCKS 代理
- 流式下载:支持大文件流式下载与超时控制
适用人群
- Python 后端与爬虫开发者
- 需要调用第三方 HTTP 接口的工程师
- 编写接口测试脚本的开发者
- 运维与数据采集人员
快速上手
- 安装:
python -m pip install requests - 发起带认证的请求并解析响应
import requests
r = requests.get('https://httpbin.org/basic-auth/user/pass', auth=('user', 'pass'))
print(r.status_code)
print(r.json())- 需要复用连接与 Cookie 时改用 Session
with requests.Session() as s:
s.get('https://httpbin.org/cookies/set/x/1')
print(s.cookies)核心优势
- API 友好:字典式 Cookie 与自动编码,代码读起来像自然语言
- 久经考验:超大规模使用,稳定性与兼容性充分验证
- 功能完备:认证、代理、压缩、超时、流式下载一应俱全
- 文档清晰:官方文档详尽,社区资料丰富
系统要求
| 项目 | 要求 |
|---|---|
| 语言 | Python 3.10+ |
| 操作系统 | Linux、macOS、Windows |
注意事项
- 同步实现:Requests 为同步库,高并发异步场景需自行评估方案
- 默认不重试:库本身不带自动重试,需要时结合 urllib3 的 Retry 策略配置
历史版本
排序