引言 requests在目前的工作中,主要用于『**接口测试**』中client发起请求。requests是一个同步库(即堵塞后无法继续执行),requests是基于urllib3进行封装。
1.安装
pip install requests
2.使用说明
1.常用方法(属性)
类型 | 方法(属性) | 说明 | 示例 |
---|---|---|---|
必填 | url | 请求地址 | requests.get/post(url=”真实url”,等等) |
params | 请求body | requests.get/post(url=”真实url”,params=XXX,等等) | |
data | 使用data参数,报文是dict类型 | requests.get/post(url=”真实url”,data=XXX/json.dumps(xxx),等等) | |
json | 使用json参数,不管报文是str类型,还是dict类型【推荐使用新版本的requests】 | requests.get/post(url=”真实url”,json=XXX,等等) | |
headers | 设置-请求headers信息(Cookies、Content-Type等) | myHeaders={“Cookies”:”myCookiesByLogin”,Content-Type:”application-json”} requests.get/post(url=”真实url”,json=XXX,headers=myHeaders,等等) |
|
非必填 | timeouts | 请求超时设置(秒)—->超时后,会停止等待响应 | requests.get/post(url=”真实url”,timeouts=5,等等) |
verify | https-ca证书检查 - 【默认】verify=True # 验证CA证书 - verify=False # 不验证CA证书 - verify=(本地)xxx.pem |
- requests.get/post(url=”真实url”,verify=True,等等) - requests.get/post(url=”真实url”,verify=False,等等) - requests.get/post(url=”真实url”,verify=”xxx/xxx1.pem”,等等) |
|
files | 文件上传(二进制读取打开文件) 【原因:Requests会默认在headers添加Content-Length,并对此字段设定“文件字节数”】 |
files={“file” : open(“xxx/xx1.文件格式”,”r”) } requests.get/post(url=”真实url”,files=files,等等) |
|
alloew_redirct | 重定向【默认:禁止重定向—>False】 | 禁止重定向 - request.get/post(url=url) - request.get/post(url=url,allow_redirct=False) |
可以重定向
- request.get/post(url=url,allow_redirct=True)
|
| | proxies | 设置-代理 | proxies={“http”:”ip:port”,”https”:”ip:port”}
requests.get/post(url=”真实url”,proxies=**proxies**,等等) |
2.https
# 发送https请求就必须要安装certifi【pip install certifi】
import requests
requests.packages.urllib3.disable_warnings() # 屏蔽报错信息
def httpsRequestDemo():
response=requests.post(url,headers,data=参数,verify=False).json()