一、簡介
- Requests是Python非常好用的第三方Http操作庫夭咬,它支持Http協(xié)議的一些請(qǐng)求链峭,如get/post/head/delete等等。
- 測試人員必備的Python工具庫谐算。
二熟尉、作用
- Requests主要用于接口測試。
- 結(jié)合Excel洲脂、Unittest斤儿、Pytest等工具,可以用于接口自動(dòng)化測試恐锦。
- 結(jié)合bs4等框架可用于網(wǎng)頁數(shù)據(jù)爬蟲往果。
三、快速入門
1. 環(huán)境搭建
- Python:推薦Python3.6以上環(huán)境
- 安裝Requests(在cmd中執(zhí)行命令)
pip3 install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
2. 代碼實(shí)戰(zhàn)
2.1 Get請(qǐng)求
# 1. 去請(qǐng)求一個(gè)接口
url = "http://118.24.29.59:8080/morning/getAllGoods"
res = requests.get(url)
# res.text:響應(yīng)信息
print(res.text)
# res.status_code: http響應(yīng)狀態(tài)碼
print(res.status_code)
2.2 Post請(qǐng)求
- Post請(qǐng)求主要包含form data格式以及JSON格式傳參
- 其中form-data格式參數(shù)難度在于參數(shù)格式比較麻煩一铅,所以推薦用Postman生成代碼的方式進(jìn)行構(gòu)建參數(shù)
2.2.1 form data格式傳參
- payload和headers參數(shù)均有Postman生成而來
url = "http://118.24.29.59:8080/morning/user/userLogin"
payload = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"user.loginName\"\r\n\r\n2941635995@qq.com\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"user.loginPassword\"\r\n\r\na123456\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--"
headers = {
'User-Agent': "PostmanRuntime/7.13.0",
'Accept': "*/*",
'Cache-Control': "no-cache",
'Postman-Token': "e58e427e-610e-4006-aa90-96e0b1effe47,9e62c53e-d9fc-4485-b40a-4595f1069e02",
'Host': "118.24.29.59:8080",
'cookie': "JSESSIONID=ACAE8896D818FB77876B44BC83CF866F; session=.eJyVUMtuwyAQ_JVqz0YqbpUH5176FRWBLSZgcGGp00T592LhVFVuOaB9DLMzuxcoGROIC0itE-YMAqADaRBEKN53oND7aYgBG6ISSsK3-mrdP_Md4z3rN098I162gvf1C-qiJNkYGgNHaX1LrQbxuq9xNGtjNO_6phSsckGOy2DCTLzik8x5jkn_a6U6L7lGz3haE2uCpJJWk5lqUVfhHVB0uBhBXubDz3ZguD8TQ348Mpf8gRk8l--vk_uMHiuzTPpvveZquc-dqxnVIGmRujb84yGV6y_Kp3ZN.XO0qkQ.7WAUG7qgAACFGu5cIuJZTKQ1GP4",
'accept-encoding': "gzip, deflate",
'content-type': "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
'content-length': "310",
'Connection': "keep-alive",
'cache-control': "no-cache"
}
res = requests.post(url=url, data=payload, headers=headers)
print(res.text)
print(res.status_code)
2.2.2 JSON格式傳參
url = "http://118.24.29.59:5000/userLogin/"
data = {"username":"test", "password":"test", "captcha":"123456"}
res = requests.post(url=url, json=data)
print(res.json())
- 疑問咨詢文件請(qǐng)加QQ群:1084188341
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者