Requests:让 HTTP 服务人类
2016-09-06 13:47
253 查看
简述
Requests 是 Python 中一个大名鼎鼎的 HTTP 库,优雅而简单。Requests 的宣言(宗旨)是:
HTTP for Humans (让 HTTP 服务人类)
简述
吉祥物
Requests 的优势
用户见证
功能特性
中文文档
更多参考
版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820
吉祥物?
在 Requests 官网 中,可以很容易的发现一只可爱的海龟:应该是 Requests 的吉祥物(标志),就像 Linux 的企鹅一样。可惜,经过多方查找,无果!但这并不影响我们学习和使用它。
Requests 的优势
和 Requests 一样,很多也模块提供了相似的功能,例如:urllib、urllib2、httplib、httplib2,为什么 Requests 能够脱引而出呢?正如 Requests 宣言所说 - HTTP for Humans。在 Python 的世界里,一切都应该简单。
>>> 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 u'{"type":"User"...' >>> r.json() {u'private_gists': 419, u'total_private_repos': 77, ...}
虽然 Python 标准库中的 urllib2 模块包含了平常我们使用的大多数 HTTP 功能,但是它的 API 使用起来并不自然,而且需要巨大的工作量,来完成最简单的任务。已经不适合现在的时代和互联网了,Requests 的诞生让我们有了更好的选择。
Requests 允许发送绿色的 HTTP/1.1 请求,无需手工劳动。你不需要手动为 URL 添加查询字串,也不需要对 POST 数据进行表单编码。Keep-alive 和 HTTP 连接池的功能是 100% 自动化的,一切动力都来自于根植在 Requests 内部的 urllib3。
用户见证
既然 Requests 这么棒,那一定有众多的粉丝和拥护者了,没错,一起来看看吧!NSA、Amazon、Google、Twilio、Runscope、Mozilla、Heroku、PayPal、NPR、Obama for America、Transifex、Native Instruments、Washington Post、Twitter、SoundCloud、Kippt、Readability、Sony、以及若干不愿公开身份的政府机构都在内部使用。
Armin Ronacher
Requests 是一个完美的例子,它证明了通过恰到好处的抽象,API 可以写得多么优美。
Matt DeBoard
我要想个办法,把 @kennethreitz 写的 Python requests 模块做成纹身。一字不漏。
Daniel Greenfeld
感谢 @kennethreitz 的 Requests 库,刚刚用 10 行代码炸掉了 1200 行意大利面代码。今天真是爽呆了!
Kenny Meyers
Python HTTP:疑惑与否,都去用 Requests 吧。简单优美,而且符合 Python 风格。
Requests 是有史以来下载最多的 Python 包之一,每月超过 700 万的下载,真是酷毙了!
功能特性
Requests 完全满足今日 Web 的需求。国际化域名和 URL
Keep-Alive & 连接池
带持久 Cookie 的会话
浏览器式的 SSL 认证
基本/摘要式的身份认证
优雅的 key/value Cookie
自动解压
自动内容解码
Unicode 响应体
文件分块上传
连接超时
流下载
支持 .netrc
分块请求
线程安全
Requests 支持 Python 2.6- 2.7 & 3.3-3.5,而且能在 PyPy 下完美运行。
中文文档
Requests 官方文档已经支持多种语言了,对我们来说,最关注的肯定是中文版,强烈推荐!只需要进入“Chinese”链接即可。
更多参考
Requests 文档Requests 中文文档
GitHub 地址
相关文章推荐
- Requests: 让 HTTP 服务人类
- Requests: 让 HTTP 服务人类
- Requests: 让 HTTP 服务人类
- Requests: 让 HTTP 服务人类(Python第三方模块requests介绍及使用方法)
- Requests: 让 HTTP 服务人类
- Requests: 让 HTTP 服务人类
- Requests: 让 HTTP 服务人类
- 使用 gSOAP 通过 HTTP 和 HTTPS 调用由 WSAD 创建的 J2EE Web 服务
- Squid+MRTG实现完善的缓存代理和http服务加速代理
- 为 SOAP/HTTP Web 服务编写可靠的客户机
- Linux学习笔记:REHL AS4的上网配置,Http服务安装及配置,ftp服务的安装及配置
- 使用NetBeans6开发OSGi应用(4)——Servlet与Http服务[88250原创]
- linux网络服务-http
- 代码调用服务--请求因 HTTP 状态 401 失败:Access Denied。(downmoon原创)
- 修改oracle 9i http服务的端口
- 使用 gSOAP 通过 HTTP 和 HTTPS 调用由 WSAD 创建的 J2EE Web 服务
- 调用Web服务:请求因HTTP状态401失败:Unauthorized
- 代码调用服务--请求因 HTTP 状态 401 失败:Access Denied。(downmoon原创)
- 一个winhttp的服务程序
- 通过HttpListener实现简单的Http服务