【Python+postman接口自动化测试】(8)以青云客机聊天器人和图灵聊天机器人接口示范python发送get和post
以青云客机器人和图灵机器人接口示范python发送get和post
pip install requests # 等待安装完成即可
一、requests的使用:
1、一个最简单的GET请求
# 导入模块
import requests # 组装请求
url_baidu = "https://www.baidu.com" # 发送请求
res = requests.get(url=url_baidu) # 解析响应
print(res.text)
2、一个最简单的post请求
# 导入测试模块
from urllib import parse
import requests # 组装请求
url = 'http://httpbin.org/post'
info = {'name': 'python', 'password': 'abcd123'}
post_data = parse.urlencode(info).encode('utf-8') # 发送请求
req = requests.post(url, data=post_data) # 解析返回
print(req.text)
二、以青云客聊天机器人为例示范get请求
官方网址:http://api.qingyunke.com/
1、接入指引
请求地址 http://api.qingyunke.com/api.php
请求方式 GET 字符编码 utf-8
请求示例 http://api.qingyunke.com/api.php?key=free&appid=0&msg=你好
参数 示例 说明
key free 必需,固定值
appid 0 可选,0表示智能识别
msg 你好 必需,关键词,提交前请先经过 urlencode 处理
返回结果 {"result":0,"content":"你好,我就开心了"}
☆ 返回结果中{br}表示换行,请自行替换成需要的代码。
☆ 为保证接口稳定,调用频率请控制在200次/10分钟内,我们正在努力提供更稳定的服务
完整请求URL示例:
http://api.qingyunke.com/api.php?key=free&appid=0&msg=你好
其他内容示例:
1 天气:msg=天气深圳
2 中英翻译:msg=翻译i love you
3 智能聊天:msg=你好笑话:msg=笑话
4 歌词⑴:msg=歌词后来
5 歌词⑵:msg=歌词后来-刘若英
6 计算⑴:msg=计算1+1*2/3-4
7 计算⑵:msg=1+1*2/3-4
8 IP⑴:msg=归属127.0.0.1
9 IP⑵:msg=127.0.0.1
10 手机⑴:msg=归属13430108888
11 手机⑵:msg=13430108888
12 成语查询:msg=成语一生一世
13 五笔/拼音:msg=好字的五笔/拼音
2、封装函数
2.1 封装示例:
# 导入模块
import requests
from urllib import parse # 组装请求
def test_get(msg):
url = 'http://api.qingyunke.com/api.php?key=free&appid=0&msg={}'.format(parse.quote(msg))
html = requests.get(url)
return html.json()["content"] # 解析返回并打印
while True:
msg = input("我:")
res = test_get(msg)
print("答:", res)
2.2 执行返回结果:
C:\Users\yzp\AppData\Local\Programs\Python\Python37\python.exe D:/00test/RFTEST/qingyunke
我:您是谁?
答: 我是机器人
我:您在哪?
答: 我在找您
我:您要去哪里?
答: 哪也别去,改天菲菲带你去吧
三、以图灵聊天机器人为例示范post请求
1、接口说明
API V2.0是基于图灵机器人平台语义理解、深度学习等核心技术,为广大开发者和企业提供的在线服务和开发接口。目前API接口可调用聊天对话、语料库、技能三大模块的语料:
- 聊天对话是指平台免费提供的近10亿条公有对话语料,满足用户对话娱乐需求;
- 语料库是指用户在平台上传的私有语料,仅供个人查看使用,帮助用户最便捷的搭建专业领域次的语料。
- 技能服务是指平台打包的26种实用服务技能。涵盖生活、出行、购物等多个领域,一站式满足用户需求。/2、 使用说明
2、编码方式:
UTF-8(调用图灵API的各个环节的编码方式均为UTF-8)/3、接口地址:
http://openapi.turingapi.com/openapi/api/v2
请求方式:
HTTP POST
请求参数:
请求参数格式为 json
请求示例:
{
"reqType":0,
"perception": {
"inputText": {
"text": "附近的酒店"
},
"inputImage": {
"url": "imageUrl"
},
"selfInfo": {
"location": {
"city": "北京",
"province": "北京",
"street": "信息路"
}
}
},
"userInfo": {
"apiKey": "",
"userId": ""
}
}
部分参数说明,完整接口说明请看图灵api官方网址:https://www.kancloud.cn/turing/www-tuling123-com/718227:
接口中apiKey需要自行上官网申请:http://www.turingapi.com/

3、完整调用示例:
import requests url = "http://openapi.tuling123.com/openapi/api/v2"
data = {
"reqType": 0,
"perception": {
"inputText": {
"text": "附近的酒店"
},
"inputImage": {
"url": "imageUrl"
},
"selfInfo": {
"location": {
"city": "北京",
"province": "北京",
"street": "信息路"
}
}
},
"userInfo": {
"apiKey": "1c99470a8a8354e248a4c229234d14af",
"userId": "1"
}
} res = requests.post(url=url, json=data) # JSON格式的请求,将数据赋给json参数
print(res.text)
接口返回:
{
"intent": {
"actionName": "",
"code": 10037,
"intentName": ""
},
"results": [
{
"groupType": 1,
"resultType": "text",
"values": {
"text": "我还没去过那,所以我暂时就不给你推荐了"
}
}
]
}
4 、封装函数:
4.1 封装示例
import requests while True:
url = "http://openapi.tuling123.com/openapi/api/v2"
question = input("我:")
data = {
"reqType": 0,
"perception": {
"inputText": {
"text": question
}
},
"userInfo": {
"apiKey": "e825286159f9f57db1b597995d7b",
"userId": "1234"
}
}
res = requests.post(url=url, json=data) # JSON格式的请求,将数据赋给json参数
answer = res.json()["results"][0]["values"]["text"]
print("答:"+answer)
4.2 执行返回结果
C:\Users\yzp\AppData\Local\Programs\Python\Python37\python.exe D:/00test/RFTEST/test_post.py
我:你是谁?
答:我是机器人
我:你今年多大了
答:18岁!
我:
【Python+postman接口自动化测试】(8)以青云客机聊天器人和图灵聊天机器人接口示范python发送get和post的更多相关文章
- 一个紧张刺激的聊天器,要不要进来看看(Python UDP网络模型)
先来哔哔两句:(https://jq.qq.com/?_wv=1027&k=QgGWqAVF) 互联网的本质是什么?其实就是信息的交换.那么如何将自己的信息发送到其他人的电脑上呢?那就需要借助 ...
- postman和接口自动化测试
1.postman测试接口 (1)首先安装postman 下载地址:https://www.getpostman.com/apps 选择对应版本下载,然后安装即可 (2)使用postman发送请求 比 ...
- 基于Python接口自动化测试框架+数据与代码分离(进阶篇)附源码
引言 在上一篇<基于Python接口自动化测试框架(初级篇)附源码>讲过了接口自动化测试框架的搭建,最核心的模块功能就是测试数据库初始化,再来看看之前的框架结构: 可以看出testcase ...
- 如何用Postman做接口自动化测试
目录 前言 什么是自动化测试 自动测试测试分类 为什么需要自动化测试 Postman自动化测试演示 1.新建集合 2.新建接口 3.填写自动化测试脚本 4.录入所有接口 5.执行自动化测试 前言 什么 ...
- XXX接口自动化测试方案
XXX接口自动化测试方案 1.引言 1.1 文档版本 版本 作者 审批 备注 V1.0 XXXX 创建测试方案文档 1.2 项目情况 项目名称 XXX 项目版本 V1.0 项目经理 XX 测试人员 X ...
- 接口自动化测试平台-接入持续集成jenkins
开篇提到,自动化测试最终期望还是能接入持续集成系统jenkins,下面记录下Go接口自动化测试平台是如何设计接入jenkins的. 回到Go接口自动化测试平台,在web系统中触发测试任务执行的入口为: ...
- 【Python+postman接口自动化测试】(3)什么是接口测试?
什么是接口测试? 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点.测试的重点是要检查数据的交换.传递和控制管理过程,以及系统间的相互逻辑依 ...
- 【Python+postman接口自动化测试】(7)Postman 的使用教程
Postman v6的使用 Postman: 简单方便的接口调试工具,便于分享和协作.具有接口调试,接口集管理,环境配置,参数化,断言,批量执行,录制接口,Mock Server, 接口文档,接口监控 ...
- python 做接口自动化测试框架设计
1,明确什么叫自动化测试,什么叫接口自动化测试,如何设计接口测试用例,已登录为例 自动化测试:解放人力来自动完成规定的测试. 自动化测试分层模型:UI层,不论WEB端还是移动端,都是基于页面元素的识别 ...
随机推荐
- HCNP Routing&Switching之路由控制-策略路由
前文我们了解了路由策略工具Route-Policy相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15322135.html:今天我们来聊一聊策略路由相 ...
- linux中如何查看文件上下文
grep -C 10 keyword catalina.out filename https://blog.csdn.net/weixin_34791683/article/details/11660 ...
- Python中“if __name__=='__main__':”
在Python当中,如果代码写得规范一些,通常会写上一句"if name=='main:"作为程序的入口,但似乎没有这么一句代码,程序也能正常运行.这句代码多余吗?原理又在哪里? ...
- django class类即视图类添加装饰器的几种方法
根据别人发布整理,个人爱好收集(原文:https://blog.csdn.net/mydistance/article/details/83958655 ) 第一种:定义函数装饰器,在函数,类中使用函 ...
- pytest环境准备与入门
前言pytest 是 python2 默认自带的,python3 的版本 pytest 框架独立出来了,需用 pip 安装.以下为 python3.7版本为例 pytest是python的一种单元测试 ...
- Windows环境下搭建Hadoop(2.6.0)+Hive(2.2.0)环境并连接Kettle(6.0)
前提:配置JDK1.8环境,并配置相应的环境变量,JAVA_HOME 一.Hadoop的安装 1.1 下载Hadoop (2.6.0) http://hadoop.apache.org/release ...
- MySQL MVCC原理深入探索
一.MVCC的由来 二.MVCC的实际应用 RR级别场景 RC级别场景 三.MVCC的实现 3.1 多版本的数据从哪里来--Undo Log 3.1.1 插入操作对应的undo log 3.1.2 删 ...
- xLua中Lua调用C#
xLua中Lua调用C# 1.前提 这里使用的是XLua框架,需要提前配置xlua,设置加载器路径: 可以参考之前的Blog:<xlua入门基础>: //调用段,所有的lua代码都写在Lu ...
- Java基础之(三):IDEA的安装及破解
IDEA的安装 IDEA官网:IDEA 点击IJ 找好操作系统,点击下载 双击打开,自己找个安装路径 勾选这两个即可 旗舰版破解及汉化 上面是个人社区版,是免费的,但是如果想要使用汉化版的,需要寻找插 ...
- 洛谷3288 SCOI2014方伯伯运椰子(分数规划+spfa)
纪念博客又一次爆炸了 首先,对于本题中,我们可以发现,保证存在正整数解,就表示一定费用会降低.又因为一旦加大的流量,费用一定会变大,所以总流量一定是不变的 那么我们这时候就需要考虑一个退流的过程 对于 ...