Python requests接口測試實現(xiàn)代碼
1、get方法請求接口
url:顯而易見,就是接口的地址url啦
headers:請求頭,例如:content-type = application/x-www-form-urlencoded
params:用于傳遞測試接口所要用的參數(shù),這里我們用python中的字典形式(key:value)進行參數(shù)的傳遞。
舉個例子:
import requests url="http://api.shein.com/login" header={"content-type":"application/x-www-form-urlencoded"} param={"user_id":123456,"email":"123456@163.com"} timeout=0.5 response = requests.get(url, headers=header, params=param, timeout=timeout) # response = requests.request("get",url,headers=header,params=body,timeout=timeout) print (response.text)
2、post方法請求接口
import requests url="http://api.shein.com/login" header={"content-type":"application/x-www-form-urlencoded"} param={"user_id":123456,"email":"123456@163.com"} timeout=0.5 response = requests.post(url, headers=header, data=param, timeout=timeout) # response = requests.request("post",url,headers=header,data=param,timeout=timeout) print (response.text)
import requests url = "https://apipc.xinqgj.com/user/login" payload = {"phone":"17779828887","pwd":"Ty+coun/mUj1saGV2OCK6p5kN9MNt8Uznj"} headers = {'Content-Type': 'application/json'} response = requests.request("POST", url, headers=headers, json = payload) print(response.text)
3、requests.Session()請求接口
import requests session = requests.Session() #定義全局session,通過 session 保持會話 class Cms(): def login(self): url = "http://192.168.1.110:8080/cms/manage/loginJump.do" header = {"Content-Type": "application/x-www-form-urlencoded"} parmas = {"userAccount": "admin", "loginPwd": "123456"} #通過全局 session 請求接口 res = session.post(url=url, headers=header, data=parmas) print(res.json()) def queryUserList(self): url = "http://192.168.1.110:8080/cms/manage/queryUserList.do" header = {"Content-Type": "application/x-www-form-urlencoded"} parmas = {"startCreateDate":"", "endCreateDate":"", "searchValue":"", "page":"1"} # 通過全局 session 請求接口 res = session.post(url=url, headers=header, data=parmas) print(res.json()) if __name__ == '__main__': Cms().login() Cms().queryUserList()
注意:Python requests模塊params、data、json的區(qū)別
- requests 模塊發(fā)送請求有 data、json、params 三種攜帶參數(shù)的方法。
- params 在 get 請求中使用,data、json 在 post 請求中使用
- 常見的 form 表單可以直接使用 data 參數(shù)進行報文提交,data 的對象則是 python 中的字典類型
- 如果數(shù)據(jù)是 json 格式的參數(shù),可直接使用 json 參數(shù)進行報文提交
4、接口的返回值操作
text:獲取接口返回值的文本格式
json():獲取接口返回值的json()格式
status_code:返回狀態(tài)碼(成功為:200)
headers:返回完整的響應頭信息(headers['name']:返回指定的headers內(nèi)容)
encoding:返回字符編碼格式
url:返回接口的完整url地址
import requests url = "https://xxxx.com/user/login" payload = {"phone":"1777982xxxx","pwd":"Ty+coun/mUj1saGV2OCK6p5kN9MNt8UznjaGsQ5A/nKPSH1NZW"} headers = {'Content-Type': 'application/json'} response = requests.request("POST", url, headers=headers, json = payload) print(response.text) print(response.json()) print(response.status_code) print(response.url) print(response.headers) print(response.encoding)
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
python 辦公自動化——基于pyqt5和openpyxl統(tǒng)計符合要求的名單
前幾天接到的一個需求,因為學校給的名單是青年大學習已學習的名單,然而要知道未學習的名單只能從所有團員中再排查一次,過程相當麻煩。剛好我也學過一些操作辦公軟件的基礎,再加上最近在學pyqt5,所以我決定用python寫個自動操作文件的腳本給她用用。2021-05-05Python爬蟲通過替換http request header來欺騙瀏覽器實現(xiàn)登錄功能
這篇文章主要介紹了Python爬蟲通過替換http request header來欺騙瀏覽器實現(xiàn)登錄功能,需要的朋友可以參考下2018-01-01Python利用PyAutoGUI模塊實現(xiàn)控制鼠標鍵盤
PyAutoGUI是一個簡單易用,跨平臺的可以模擬鍵盤鼠標進行自動操作的python庫。本文將詳細講講它是如何實現(xiàn)控制鼠標鍵盤的,感興趣的可以了解一下2022-06-06使用Pandas和Matplotlib進行數(shù)據(jù)清洗與可視化的實現(xiàn)步驟
在數(shù)據(jù)科學領域,數(shù)據(jù)清洗和可視化是構(gòu)建數(shù)據(jù)驅(qū)動解決方案的重要步驟,本文將詳細介紹如何使用Pandas進行數(shù)據(jù)清洗,并結(jié)合Matplotlib進行可視化,文章通過實際代碼示例講解的非常詳細,需要的朋友可以參考下2024-08-08