一、接口实战
1.发送请求的几种方式:get post delete put
2.请求的参数类型:键值对 json格式 文件格式
data = { //键值对格式
“grant_type”:"***",
"appid":"***",
"secret":"****“
}
data = { “tag":{"id":134,"name:"广东人"} } //json格式
data={ “media”:open(r"E:\name.png","rb") } // 文件格式
二、get方式请求接口,data传参(线性脚本:NO)
1.先定义requests.get()方法
#发送get请求
requests.get()
//当不知道方法里面填写什么,光标选中get,用ctrl+左键吊起api.py,可以看到对应的方法需要传什么数据,这里就是url和数据
由此可知代码应该为:requests.get(url,params=null)
2.定义路径和参数
url = “”
data = { //接口的参数习惯命名为data,是一个字典格式
}
requests.get(url,params=null)
3.打开一个接口文档,填写对应的url及参数
复制完整的url(get请求的习惯是用?进行传参,&进行参数的拼接),所有url的地址是完整url ?前的内容,复制进去
url = “https://api.weixin.qq.com/cgi-bin/token”
将接口文档中的参数全部复制过来,填写要测试的正确参数
data = { //接口的参数习惯命名为data,是一个字典格式
“grant_type”:"***", //参数之间用逗号分隔开
"appid":"***",
"secret":"****“
}
requests.get(url,params=null)
4.requests部分完成后,根据返回示例继续完成代码的response部分
url = “https://api.weixin.qq.com/cgi-bin/token”
data = { //接口的参数习惯命名为data,是一个字典格式
“grant_type”:"***", //参数之间用逗号分隔开
"appid":"***",
"secret":"****“
}
requests.get(url=url,params=data) //把刚刚定义的url和data,传给对应的参数
rep=requests.get(url=url,params=data) //定义响应部分
print(rep.json()) //根据接口文档可以看出返回的是json格式,打印输出
5.运行结果
可以看到返回了前面文档提到的返回参数access_token,现在把它取出来
url = “https://api.weixin.qq.com/cgi-bin/token”
data = { //接口的参数习惯命名为data,是一个字典格式
“grant_type”:"***", //参数之间用逗号分隔开
"appid":"***",
"secret":"****“
}
requests.get(url=url,params=data) //把刚刚定义的url和data,传给对应的参数
rep=requests.get(url=url,params=data) //定义响应部分
print(rep.json()) //根据接口文档可以看出返回的是json格式,打印输出
access_token = rep.json()['access_token']
//运行结果可以看出access_token是json格式,所以将rep.json()取得的内容赋给access_token ,此时的access_token是一个json格式,需要通过一个key['access_token']取得对应的value
三、发送post请求,json传参(线性脚本:NO)
1.先定义一个post请求
requests.post(url,data=null,json=none) //根据ctrl+左键可知需要穿的对应参数
2.定义路径和参数(post请求中data和json只传一个就可以。区别是)
url = “”
data = { //接口的参数习惯命名为data,是一个字典格式
}requests.post(url,data=null,json=none)
3.打开一个接口文档,填写对应的url及参数
把url复制后直接全部粘贴过来,把输入参数示例也直接粘贴过来
url = “https://api.weixin.qq.com/cgi-bin/tag/update?access_token=ACCESS_TOKEN”
//将ACCESS_TOKEN删掉替换为”+access_token+“,加号的的值为拼接的上面取得的value
url = “https://api.weixin.qq.com/cgi-bin/tag/update?access_token=”+access_token+“”
data = { “tag":{"id":134,"name:"广东人"} }
//接口的参数习惯命名为data,是一个字典格式。data粘贴过来不用改动
requests.post(url,data=null,json=none)
4.requests部分完成后,根据返回示例继续完成代码的response部分
url = “https://api.weixin.qq.com/cgi-bin/tag/update?access_token=”+access_token+“”
data = { “tag":{"id":134,"name:"广东人"} }
rep=requests.post(url,data=null,json=data)
print(rep.json()) //根据接口文档可以看出返回的是json格式,打印输出
四、post请求,文件传参
1.注意文件传参必须用files
2.data中要使用open()方法,()内填写文件的路径
3.data={ “media”:open(r"E:\name.png","rb") } //路径前面+r,“rb”代表以二进制的方式打开