发送get请求接口
一、简介
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