用于人类的 Python HTTP。
项目描述
要求
Requests是一个简单而优雅的 HTTP 库。
>>> import requests
>>> r = requests.get('https://httpbin.org/basic-auth/user/pass', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
'application/json; charset=utf8'
>>> r.encoding
'utf-8'
>>> r.text
'{"authenticated": true, ...'
>>> r.json()
{'authenticated': True, ...}
Requests 允许您非常轻松地发送 HTTP/1.1 请求。无需手动将查询字符串添加到您的 URL,或对您的PUT
&POST
数据进行表单编码 - 但现在,只需使用该json
方法!
Requests 是当今下载量最大的 Python 包之一,它被广泛使用30M downloads / week
——根据 GitHub 的说法,Requests 目前依赖于存储1,000,000+
库。您当然可以信任此代码。
安装请求和支持的版本
请求在 PyPI 上可用:
$ python -m pip install requests
Requests 正式支持 Python 3.7+。
支持的功能和最佳实践
Requests 已为构建健壮可靠的 HTTP 应用程序做好准备,以满足当今的需求。
- 保持活动和连接池
- 国际域名和 URL
- 具有 Cookie 持久性的会话
- 浏览器式 TLS/SSL 验证
- 基本和摘要式身份验证
- 熟悉
dict
的饼干 - 自动内容解压和解码
- 多部分文件上传
- SOCKS 代理支持
- 连接超时
- 流式下载
- 自动兑现
.netrc
- 分块的 HTTP 请求
API 参考和用户指南可在Read the Docs上找到
克隆存储库
克隆请求存储库时,您可能需要添加-c fetch.fsck.badTimezone=ignore
标志以避免错误提交的错误(有关
更多背景信息,请参阅此问题):
git clone -c fetch.fsck.badTimezone=ignore https://github.com/psf/requests.git
您还可以将此设置应用于您的全局 Git 配置:
git config --global fetch.fsck.badTimezone ignore