1. 程式人生 > >request模塊(2)

request模塊(2)

bin 獲取 請求方法 頭信息 utf status code mps cati

requests 模塊發送post請求

post請求 data 參數攜帶字典
post(url, data=None, json=None, kwargs)
發送一個post請求
參數說明:
url:請求的url
data:傳遞查詢的參數,可以是字典類型,也可以是bytes類型或者是文件對象。
json:傳遞的json數據
kwargs:可選請求參數
該方法返回一個reponse對象。

#coding=utf-8
import requests
payload = {"key1":"value1","key2":"value2"}#這是個字典
response = requests.post("http://httpbin.org/post",data=payload)
assert response.status_code == 200

print response.url
print response.text

post 請求json 參數攜帶json字符串

#coding=utf-8
import requests
import json
payload = {"name":"Lucy","sex":"male"}
print type(json.dumps(payload))
response = requests.post("http://httpbin.org/post",json=json.dumps(payload))
#以上把字典轉換成json串,但是用data發送json也可以;
#response = requests.post("http://httpbin.org/post",data=json.dumps(payload))

assert response.status_code == 200

print response.url
print response.text

post 請求發送文件對象

#coding=utf-8
import requests

url = "http://httpbin.org/post"
file = {"file":open(r"c:\\1.png","rb")}#字典參數

response = requests.post(url,files=file)

assert response.status_code == 200
print response.status_code
print response.url
#print response.content

post 請求攜帶頭信息

#coding=utf-8
import requests
import json

url = ‘http://httpbin.org/post‘
payload = {‘name‘: ‘Lucy‘, ‘sex‘: ‘male‘}

headers = {‘content-type‘: ‘application/json‘}#字典參數
r = requests.post(url, data = json.dumps(payload), headers = headers)
print r.status_code

requests 模塊發送put請求
put(url, data=None, kwargs)
發送一個put請求,和post類似
參數說明:
url:請求的url
data:傳遞查詢的參數,可以是字典類型,也可以是bytes類型戒者是文件對象。
kwargs:可選請求參數
該函數也是返回一個response對象。

response 響應對象

response對象:通過request模塊中的各個請求方法後,就會獲得一個response對象,在這個response對象中存放著客戶端請求後的一些請求信息。
常用方法:
?response.status_code
?response.headers
?response.text #響應正文
?response.cookies
?response. cookies[‘BAIDUID’] #獲取某個cookie 值
?response.encoding
?response.json() #返回一個字典
?r.json()[‘data’][‘country’] #獲取字典中的值
response.content

request模塊(2)