python之requests模塊

1.安裝python

  pip install requestsnginx

2.基本用法git

  就是以某種HTTP方法向遠端服務器發送一個請求而已github

複製代碼
1 import requests 2 3 r = requests.get('https://github.com/timeline.json') 4 r = requests.post("http://httpbin.org/post") 5 r = requests.put("http://httpbin.org/put") 6 r = requests.delete("http://httpbin.org/delete") 7 r = requests.head("http://httpbin.org/get") 8 r = requests.options("http://httpbin.org/get")
複製代碼

  所謂 requests.get,就是以GET方式發送一個REQUEST,獲得一個Response類的結果,保存爲 rjson

3.URL傳參/獲取請求的URL服務器

  <協議>://<域名>/<接口>?<鍵1>=<值1>&<鍵2>=<值2>app

  requests庫提供的HTTP方法,提供了名爲params的參數,這個參數可接受一個python字典,並自動格式化爲上述格式post

複製代碼
1 import requests 2 3 url = 'http://www.so.com/s' 4 5 params = {'ie': 'utf-8', 'q': 'query'} 6 7 r = requests.get(url, params=params) 8 9 print r.url
複製代碼

 

  獲得結果:url

http://www.so.com/s?q=query&ie=utf-8

4.設置超時spa

  requests的超時設置以秒爲單位

  設置超時爲5秒

1 import requests 2 3 url = 'http://www.zhihu.com' 4 5 r = requests.get(url, timeout=5)

 

5.請求頭部

  默認頭部

1 import requests 2 3 cs_url = 'http://httpbin.org/get' 4 r = requests.get (cs_url) 5 print r.content

 

  結果

複製代碼
{
  "args": {}, "headers": { "Accept": "*/*", "Accept-Encoding": "gzip, deflate", "Host": "httpbin.org", "User-Agent": "python-requests/2.7.0 CPython/2.7.10 Windows/7" }, "origin": "xx.xx.xx.xx", "url": "http://httpbin.org/get" }
複製代碼

  咱們能夠自定義請求的頭部

1 import requests 2 3 my_headers = {'User-Agent' : 'From Liam Huang', 'Accept-Encoding' : 'gzip'} 4 cs_url = 'http://httpbin.org/get' 5 r = requests.get (cs_url, headers = my_headers) 6 print r.content

  結果

複製代碼
{
  "args": {}, "headers": { "Accept": "*/*", "Accept-Encoding": "gzip", "Host": "httpbin.org", "User-Agent": "From Liam Huang" }, "origin": "xx.xx.xx.xx", "url": "http://httpbin.org/get" }
複製代碼

  能夠看到User-Agent和Accept-Encoding都已經改變

6.響應頭部

  能夠經過response.headers來查看

1 import requests 2 3 cs_url = 'http://httpbin.org/get' 4 r = requests.get (cs_url) 5 print r.headers

  結果

複製代碼
{
    "content-length": "263", "server": "nginx", "connection": "keep-alive", "access-control-allow-credentials": "true", "date": "Fri, 26 Feb 2016 10:26:17 GMT", "access-control-allow-origin": "*", "content-type": "application/json" }
複製代碼
相關文章
相關標籤/搜索