python3接口測試(requests庫)
一、一般概念
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庫)