Requests: 讓 HTTP 服務人類

Requests 惟一的一個非轉基因的 Python HTTP 庫,人類能夠安全享用。html

警告:非專業使用其餘 HTTP 庫會致使危險的反作用,包括:安全缺陷症、冗餘代碼症、從新發明輪子症、啃文檔症、抑鬱、頭疼、甚至死亡。python

看吧,這就是 Requests 的威力:linux

>>> 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, ...} 

參見 未使用 Requests 的類似代碼.git

Requests 容許你發送純自然,植物飼養的 HTTP/1.1 請求,無需手工勞動。你不須要手動爲 URL 添加查詢字串,也不須要對 POST 數據進行表單編碼。Keep-alive 和 HTTP 鏈接池的功能是 100% 自動化的,一切動力都來自於根植在 Requests 內部的 urllib3github

用戶見證

Twitter、Spotify、Microsoft、Amazon、Lyft、BuzzFeed、Reddit、NSA、女王殿下的政府、Amazon、Google、Twilio、Mozilla、Heroku、PayPal、NPR、Obama for America、Transifex、Native Instruments、Washington Post、Twitter、SoundCloud、Kippt、Readability、以及若干不肯公開身份的聯邦政府機構都在內部使用。web

Armin Ronacher
Requests 是一個完美的例子,它證實了經過恰到好處的抽象,API 能夠寫得多麼優美。
Matt DeBoard
我要想個辦法,把 @kennethreitz 寫的 Python requests 模塊作成紋身。一字不漏。
Daniel Greenfeld
感謝 @kennethreitz 的 Requests 庫,剛剛用 10 行代碼炸掉了 1200 行意大利麪代碼。今天真是爽呆了!
Kenny Meyers
Python HTTP: 疑惑與否,都去用 Requests 吧。簡單優美,並且符合 Python 風格。

功能特性

Requests 徹底知足今日 web 的需求。apache

  • Keep-Alive & 鏈接池
  • 國際化域名和 URL
  • 帶持久 Cookie 的會話
  • 瀏覽器式的 SSL 認證
  • 自動內容解碼
  • 基本/摘要式的身份認證
  • 優雅的 key/value Cookie
  • 自動解壓
  • Unicode 響應體
  • HTTP(S) 代理支持
  • 文件分塊上傳
  • 流下載
  • 鏈接超時
  • 分塊請求
  • 支持 .netrc

Requests 支持 Python 2.6—2.7以及3.3—3.7,並且能在 PyPy 下完美運行。json

社區指南

這部分文檔也是文字爲主,詳細介紹了 Requests 的生態和社區。瀏覽器

API 文檔/指南

若是你要了解具體的函數、類、方法,這部分文檔就是爲你準備的。

貢獻指南

若是你要爲項目作出貢獻,請參考這部分文檔。

沒有別的指南了,你如今要靠本身了。

相關文章
相關標籤/搜索