Requests:适合人类的HTTP™库¶
Requests是一个优雅而简单的Python HTTP库,为人类构建。
**看吧,这就是 Requests 的威力:
>>> r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
'application/json; charset=utf8'
>>> r.encoding
'utf-8'
>>> r.text
'{"type":"User"...'
>>> r.json()
{'private_gists': 419, 'total_private_repos': 77, ...}
可以比较未使用 Requests 的相似代码。
Requests允许您非常容易的发送HTTP/1.1请求,无需手动向URL添加查询字符串,也不需要对表单数据进行格式编码。由于使用了urllib3
,Keep-alive
和HTTP 连接池的功能是100%自动化的。
深受喜爱的功能¶
Requests 完全满足今日 web 的需求:
- Keep-Alive & 连接池
- 国际化域名和网址
- 带持久 Cookie 的会话
- 浏览器式SSL验证
- 自动内容解码
- 基本/摘要式身份验证
- 优雅的 key/value式Cookies
- 自动解压
- Unicode响应体
- HTTP(S)代理支持
- 文件分块上传
- 流下载
- 连接超时
- 分块请求
.netrc
支持
Requests正式支持python2.7&3.5+,在pypy下完美运行。
用户指南¶
这一部分文档的主要是散文式的,首先介绍一些有关Requests 的背景,然后重点介绍如何逐步使用Requests 。