1. 程式人生 > >python中的requests用法簡介

python中的requests用法簡介

requests中的方法:

(1)requests.request

*method:get/post/head/delete

*url

*params:請求的引數

*data:字典,位元組流,或類檔案控制代碼

*json:上傳的json資料

*headers:自定義http頭

*cookies:傳送額外的cookies

*verify:是否驗證證書

(2)requests.get

*url

*和request引數一樣

(3)requests.post

*url 

*data

*json

*和request的引數yiyang

(4)requests.head

requests.put

requests.delete

requests和urllib/urllib2的區別:

1:requests不是標準庫 2:最好用的http庫,python風格 requests.Response 1:status_code狀態碼 2:headers應答的http頭 3:json 應答的json資料 4:text應答的unicode編碼 5:content應答的位元組流資料 6:cookies應答的cookies自動處理

案列原始碼解釋:

#coding:utf-8

'''
Created on 2016年4月12日


@author: Administrator
'''


import requests#匯入requests模組


def get_json():
    r = requests.get('https://api.github.com/events')
    print(r.status_code)
    print r.headers
    print(r.json())
    print r.text
    print r.content
     
def get_querystring():
    url = 'http://httpbin.org/get'
    params = {'qsl':'value1','qs2':'value2'}#定製引數
    s = requests.get(url,params=params)
    print s.status_code
    print s.content
    
def get_custom_headers():
    url = 'http://httpbin.org/get'
    headers = {'x-header1':'value1','x-header2':'values'}
    r = requests.get(url,headers= headers)
    print r.status_code
    print r.content
    
def get_cookie():
    headers = {'User-Agent':'Chrome'}
    url = 'http://www.douban.com'
    r = requests.get(url,headers=headers)
    print r.status_code
    print r.cookies
    print r.cookies['bid']
if __name__ == '__main__':
#     get_json()
#     get_cookie()

    get_custom_headers()

get_cookie()的輸出結果

200
<RequestsCookieJar[<Cookie bid="klF0cfRBXnI" for .douban.com/>, <Cookie ll="118164" for .douban.com/>]>
"klF0cfRBXnI"

get_custom_headers()的輸出結果

200
{
  "args": {}, 
  "headers": {
    "Accept": "*/*", 
    "Accept-Encoding": "gzip, deflate", 
    "Host": "httpbin.org", 
    "User-Agent": "python-requests/2.9.1", 
    "X-Header1": "value1", 
    "X-Header2": "values"
  }, 
  "origin": "183.207.189.14", 
  "url": "http://httpbin.org/get"
}