博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
21、图灵机器人
阅读量:5771 次
发布时间:2019-06-18

本文共 2469 字,大约阅读时间需要 8 分钟。

练习介绍
学了爬虫这么久,想不想接触下AI,创建一个可以聊天的机器人呀٩̋(๑˃́ꇴ˂̀๑)
 
要求:
实现功能:利用图灵机器人官网 的接口,创建一个可以聊天的机器人
 
1 import requests 2 import json 3 #   https://www.kancloud.cn/turing/www-tuling123-com/718227 4 url = 'http://openapi.tuling123.com/openapi/api/v2' 5  6 data = { 7     "reqType":0, 8     "perception": { 9         "inputText": {10             "text": input('Hello,有什么可以帮你? ')11         },12         "selfInfo": {13             "location": {14                 "city": "北京",15                 "province": "北京",16                 "street": "地盛西路"17             }18         }19     },20     "userInfo": {21         "apiKey": "c9bd8ff4b4e846b694cad6313345beb4",22         "userId": "434284"23     }24 }25 26 res = requests.post(url,json=data)27 print(res.json()['results'][0]['values']['text'])

执行结果:

1 D:\USERDATA\python>C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe d:/USERDATA/python/tuling.py 2 Hello,有什么可以帮你? 吃的 3 问世间吃为何物,直叫人以身材相许。 4  5  6 D:\USERDATA\python>C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe d:/USERDATA/python/tuling.py 7 Hello,有什么可以帮你? 吃的 8 咦,怎么又是这句话呀 9 10 11 D:\USERDATA\python>C:/Users/Administrator/AppData/Local/Programs/Python/Python37/python.exe d:/USERDATA/python/tuling.py12 Hello,有什么可以帮你? 吃的13 哎呀,你好像个复读机呀
老师的代码
1 import requests 2 import json 3  4  5 userid = str(1) 6 # 1 可以替换成任何长度小于32的字符串哦 7 apikey = str(‘A') 8 # 这里的A,记得替换成你自己的apikey哦~ 9 10 11 # 创建post函数12 def robot(content):13     # 图灵api14     api = r'http://openapi.tuling123.com/openapi/api/v2'15     # 创建post提交的数据16     data = {17         "perception": {18             "inputText": {19                 "text": content20                          }21                       },22         "userInfo": {23                     "apiKey": apikey,24                     "userId": userid,25                     }26     }27     # 转化为json格式28     jsondata = json.dumps(data)29     # 发起post请求30     response = requests.post(api, data = jsondata)31     # 将返回的json数据解码32     robot_res = json.loads(response.content)33     # 提取对话数据34     print(robot_res["results"][0]['values']['text'])35 36 37 for x in range(10):38     content = input("talk:")39     # 输入对话内容40     robot(content)41     if x == 10:42         break43         # 十次之后就结束对话,数字可以改哦,你想几次就几次
还可以用 while true 配合break 
1 while True:2     content = input("talk:")3     # 输入对话内容4     robot(content)5     if content == 'bye':6     # 设置stopwords7         break
 

转载于:https://www.cnblogs.com/www1707/p/10850589.html

你可能感兴趣的文章
jQuery|元素遍历
查看>>
FreeNAS8 ISCSI target & initiator for linux/windows
查看>>
Rainbond 5.0.4版本发布-做最好用的云应用操作系统
查看>>
Java判断是否为垃圾_Java GC如何判断对象是否为垃圾
查看>>
多项式前k项和java_多项式朴素贝叶斯softmax改变
查看>>
java数组只能交换0下标和n_编程练习-只用0交换排序数组
查看>>
OracleLinux安装说明
查看>>
标准与扩展ACL 、 命名ACL 、 总结和答疑
查看>>
使用@media实现IE hack的方法
查看>>
oracle体系结构
查看>>
Microsoft Exchange Server 2010与Office 365混合部署升级到Exchange Server 2016混合部署汇总...
查看>>
Proxy服务器配置_Squid
查看>>
【SDN】Openflow协议中对LLDP算法的理解--如何判断非OF区域的存在
查看>>
纯DIV+CSS简单实现Tab选项卡左右切换效果
查看>>
Centos7同时运行多个Tomcat
查看>>
使用CocoaPods过程中的几个问题
查看>>
Spring boot 整合CXF webservice 全部被拦截的问题
查看>>
Pinpoint跨节点统计失败
查看>>
机房带宽暴涨问题分析及解决方法
查看>>
XP 安装ORACLE
查看>>