1. 程式人生 > >python3接口測試(requests庫)

python3接口測試(requests庫)

slc 1.10 .html led true nco int print -type

一、一般概念

1.導入第三方庫

import requests

2.發送get請求
#userURL為客戶端訪問的URL地址
myResponse = requests.get(userURL)

3.查看返回結果
#myResponse.header包含內容:{‘Server‘: ‘nginx/1.10.1‘, ‘Date‘: ‘Sat, 18 Aug 2018 02:57:28 GMT‘, ‘Content-Type‘: ‘text/html; charset=GBK‘, ‘X-Powered-By‘: ‘PHP/7.0.10‘, ‘Content-Encoding‘: ‘gzip‘, ‘Age‘: ‘0‘, ‘Transfer-Encoding‘: ‘chunked‘, ‘Connection‘: ‘keep-alive‘, ‘Via‘: ‘http/1.1 swg.com ("SKG-UCSG")‘}

4.requests函數有幾個典型方法

requests.request()

requests.get()

requests.post()

requests.put()

requests.delete()

requests.head()

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

二、應用

要求:

1.請求的URL是https,可能會報SSL認證錯誤;

2.對請求頭(request head)中的元素賦值,例如content-type。

3.通過代理(proxies)發送請求。

import requests

#訪問https時會報證書錯誤((Caused by SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] ),可以在發送請求時不驗證。
#屏蔽waring信息
#requests.packages.urllib3.disable_warnings()

#一般的get請求方法
#myrequest = requests.get(r"https://www.baidu.com",verify=False)
#print (myrequest.headers)

#準備請求數據
myUrl = r"https://www.cnblogs.com/mpp0905/p/9264465.html"
myHeader = {"content-type":"image/jpeg"}

#代理
myProxies = {‘http‘ : ‘http://url:port‘}

#發送請求
myRequest = requests.request("GET",myUrl,headers=myHeader,proxies=myProxy,verify=False)

#當返回頁面中有中文時,需要對返回頁面進行編碼
myRequest.encoding = ‘utf8‘

#判斷返回頁面
print (myRequest.status_code)
assert u"頁面中應出現的元素" in (myRequest.text),u‘不是提示界面。‘








python3接口測試(requests庫)