requests 模块
具体详见:https://requests.kennethreitz.org//zh_CN/latest/user/quickstart.html
Requests 是用python语言编写的第三方库,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,完全满足 HTTP 测试需求,多用于接口测试
常用接口:
1.requests.request(method,url,**kwargs)
构造并发送一个Request对象,返回一个Response对象,支撑各方法的基础方法
method:新建Request对象要使用的HTTP方法,包括:GET,POST,PUT,DELETE等
url:新建Request对象的URL链接
**kwargs:13个控制访问的可选参数
2.requests.get(url, params=None, **kwargs)
请求获取URL位置的资源
url:新建Request对象的URL链接
params:字典或字节序列,作为参数增加到url中
**kwargs:12个控制访问的可选参数(除params外其他同1)
3.requests.head(url, **kwargs)
请求获取URL位置资源的响应消息报告,即获得该资源的响应的头部信息
url:新建Request对象的URL链接
**kwargs:13个控制访问的参数(同1)
4.requests.post(url, data=None, json=None, **kwargs)
请求向URL位置的资源后附加新的数据
url:新建Request对象的URL链接
data:字典、字节序列,文件,作为Request对象body的内容
json:JSON格式的数据,作为Request对象body的内容
**kwargs:11个控制访问参数(除data,json外其他同1)
5.requests.put(url, data=None, **kwargs)
请求向URL位置存储的一个资源,覆盖原URL位置的资源
url:新建Request对象的URL链接
data:字典、字节序列,文件,作为Request对象body的内容
**kwargs:12个控制访问参数(除data外其他同1)
6.requests.patch(url, data=None, **kwargs)
请求局部更新URL位置的资源,即改变该处资源的部分内容
url:新建Request对象的URL链接
data:字典、字节序列,文件,作为Request对象body的内容
**kwargs:12个控制访问参数(除data外其他同1)
7.requests.delete(url, **kwargs)
请求删除URL位置存储的资源
url:新建Request对象的URL链接
**kwargs:13个控制访问参数(同1)
8. r.text
读取服务器响应的内容
9. r.encoding
获取服务器响应的文本编码
10. r.content
以字节的方式访问请求响应体,对于非文本请求
11. r.json()
成功调用 r.json()
并**不**意味着响应的成功。有的服务器会在失败的响应中包含一个 JSON 对象(比如 HTTP 500 的错误细节)。这种 JSON 会被解码返回
12. r.status_code
响应状态码
json 库
使用 JSON 函数需要导入 json 库:import json。
函数 | 描述 |
json.dumps | 将 Python 对象编码成 JSON 字符串 |
json.loads | 将已编码的 JSON 字符串解码为 Python 对象 |