一、簡介
python做接口測試,我們需要了解和學習第三方庫requests。python內置的urllib模塊,也用於訪問網絡資源,但是使用較麻煩,而且缺少很多實用的高級功能。這里推薦使用requests
中文幫助文檔:http://cn.python-requests.org/zh_CN/latest/index.html
英文幫助文檔:https://2.python-requests.org//en/master/
二、如何安裝requests
cmd輸入命令:pip install requests
參考鏈接:https://www.cnblogs.com/king8/p/9216133.html
三、使用requests
- get請求無參數param
1.導入requests模塊,通過get訪問一個url地址的網頁,比如訪問博客園個人博客:https://www.cnblogs.com/huainanhai/
2.r就是response,請求后的返回值,可以調用response里的status_code方法查看狀態碼
3.狀態碼200只能說明這個接口訪問的服務器地址是對的,並不能說明功能OK,一般要查看響應的內容,r.text是返回文本信息
# 導入requests模塊 import requests # 請求博客園個人博客 r = requests.get("https://www.cnblogs.com/huainanhai/") # 打印狀態碼 print(r.status_code) # 打印文本 print(r.text)
- get請求有參數param
1.導入requests模塊,通過帶參數的get訪問一個url地址的網頁,比如在個人博客搜索:接口,url地址為:
2.請求參數:q=西游記,可以以字典的形式傳參:{"q":"西游記"}
3.多個參數格式:{"key1":"value1","key2":"value2","key3":"value3"}
# 導入requests模塊 import requests # 博客園官網搜索參數 param = {"t":"b","w":"方緣"} # 請求博客園搜索方緣 r = requests.get("https://zzk.cnblogs.com/s",params=param) # 打印狀態碼 print(r.status_code) # 打印url print(r.url) # 打印文本 print(r.text)
PS:1.豆瓣網址后面不要漏了/search;2.params不要寫成param
四、附錄response返回的消息
1.r.status_code # 響應狀態碼
2.r.url # 獲取url
3.r.content # 字節方式的響應體,會自動為你解碼gzip和的deflate壓縮
4.r.headers # 以字典對象存儲服務器響應頭,這個字典不區分大小寫,若鍵不存在則返回None
5.r.encoding # 編碼格式,requests自動檢測編碼
6.r.cookies # 獲取cookie