postANDbody
post用键值对的形式传参
import requests
#将键值对也是当做字典的模式入参,然后将参数传到requess的data里面进行请求
body={"userName":"zengsong","password":"7a64d3bd06bc8e17d2100f846e719fd6","submit":"%E7%99%BB%E5%BD%95"}
#将键值对放在data进行传参
r=requests.post("http://pro.guoyasoft.com:8080/guoya-client/user/login.action",data=body)
print(r.text)
postANDjson
import requests
#请求报文json格式的参数存到字典,然后用json的方法传入参数
body = { "password": "zs123456", "username": "zengsong"}
head={'Connect-Type':'application/json',"Accept": "*/*"}
#使用reque.post(json)方法传入json的参数
req=requests.post("http://localhost:8080/admin/login",json=body,headers=head)
print(req.text)
print(req.headers)
postANDtoken
import requests
import re#导入正则表达式包
#请求报文json格式的参数存到字典,然后用json的方法传入参数
body = { "password": "zs123456", "username": "zengsong"}
head={'Connect-Type':'application/json',"Accept": "*/*"}
#使用reque.post(json)方法传入json的参数
req=requests.post("http://localhost:8080/admin/login",json=body,headers=head)
print(req.text)
#print(req.headers)
#获取token,将req的返回值作为字典,然后按照字典获取value值即可
print(req.json()["data"]["token"])
#使用正则表达式获取
#用正则表达式re.compile方法也就是正则表达式,compile是编译的意思
rr=re.compile('"tokenHead":"(.*?)"')
#使用方法.findall()取出所需要的值,存到变量rrlist中
rrlist=rr.findall(req.text)
print(rrlist[0])
postANDfile
上传文件
import requests
#请求头里面的格式
head={'Connect-Type':'multipart/form-data'}
#将URL的?后面键值,即query对写成字典形式
paramters={"method":"uploadSumarizePic","sno":184,"summaryDate":"2019-03-09"}
#文件类型,以流的形式上传,userfile是在接口的参数名称,
# 1.png是文件名,open("E:\视频\\1.png")文件的路径,"rb"二进制的转换???'image/png'是指文件的类型
files={"userfile":("1.png",open("E:\视频\\1.png","rb"),'image/png')}
#不加url=的话,URL必须放在最前面,加了之后就随意位置
r=requests.post(url="http://pro.guoyasoft.com:8080/guoya-server/summaryInfo",headers=head,params=paramters,files=files)
print(r.text)
网友评论