【python】使用python十分钟创建个人聊天机器人教程
以青云客和图灵机器人接口示范python创建个人聊天机器人教程
一、以青云客聊天机器人为例示范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】使用python十分钟创建个人聊天机器人教程的更多相关文章
- 【Python撩妹合集】微信聊天机器人,推送天气早报、睡前故事、精美图片分享
福利时间,福利时间,福利时间 如果你还在为不知道怎么撩妹而烦恼,不知道怎么勾搭小仙女而困惑,又或者不知道怎么讨女朋友欢心而长吁短叹. 那么不要犹豫徘徊,往下看.接下来我会分享怎么使用 Python 实 ...
- Rasa Stack:创建支持上下文的人工智能助理和聊天机器人教程
相关概念 Rasa Stack 是一组开放源码机器学习工具,供开发人员创建支持上下文的人工智能助理和聊天机器人: • Core = 聊天机器人框架包含基于机器学习的对话管理 • NLU = 用于自然语 ...
- 【Python笔记】十分钟搞定pandas
本文是对pandas官方网站上<10 Minutes to pandas>的一个简单的翻译,原文在这里.这篇文章是对pandas的一个简单的介绍,详细的介绍请参考:Cookbook .习惯 ...
- python视频教程:十分钟快速入门python
想要学习python这门语言,却始终找不到一个全面的Python视频教程,倘若你是真心想学好一门语言,小编建议你亲自动手实践的.下面来看看入门python的学习教程. Python的语言特性 Pyth ...
- python 小脚本升级-- 钉钉群聊天机器人
一则小脚本(工作中用) 在这篇文章中写的监控的脚本,发送监控的时候 是利用的邮箱,其实在实际,邮箱查收有着不方便性,于是乎升级, 我们工作中,经常用钉钉,那么如果要是能用到钉钉多好,这样我们的监控成功 ...
- 使用Recast.AI创建具有人工智能的聊天机器人
很多SAP顾问朋友们对于人工智能/机器学习这个话题非常感兴趣,也在不断思考如何将这种新技术和SAP传统产品相结合.Jerry之前的微信公众号文章C4C和微信集成系列教程曾经介绍了Partner如何利用 ...
- 【自然语言处理篇】--Chatterbot聊天机器人
一.前述 ChatterBot是一个基于机器学习的聊天机器人引擎,构建在python上,主要特点是可以自可以从已有的对话中进行学(jiyi)习(pipei). 二.具体 1.安装 是的,安装超级简单, ...
- 构建一个简单的 Google Dialogflow 聊天机器人【上】
概述 本教程将向您展示如何构建一个简单的Dialogflow聊天机器人,引导您完成Dialogflow的最重要功能.您将学习如何: 创建Dialogflow帐户和第一个Dialogflow聊天机器人, ...
- 快速入门:十分钟学会Python
初试牛刀 假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程.那么本教程将花费十分钟的时间带你走入Python的大门.本文的内容介于教程(Toturial)和速查手册(Cheat ...
随机推荐
- phpspider PHP 爬虫
* 通过composer下载 composer require owner888/phpspider // composer.json { "require": { "o ...
- postman 插件安装
本文只是基于 Chrome 浏览器的扩展插件来进行的安装,并非单独应用程序. 首先,你要台电脑,其次,安装有 Chrome 浏览器,那你接着往下看吧. 1. 官网安装(别看) 打开官网,https:/ ...
- Nresource服务之接口缓存化
1. 背景 Nresource服务日均4.5亿流量,考虑到未来流量急增场景,我们打算对大流量接口进行缓存化处理:根据服务管理平台数据统计显示getUsableResoureCount接口调用量很大,接 ...
- 基于预计算的全局光照(Global Illumination Based On Precomputation)
目录 基于图像的光照(Image Based Lighting,IBL) The Split Sum Approximation 过滤环境贴图 预计算BRDF积分 预计算辐射度传输(Precomput ...
- 实验1:SDN拓扑实践
作业链接:实验1:SDN拓扑实践 一.实验目的 能够使用源码安装Mininet: 能够使用Mininet的可视化工具生成拓扑: 能够使用Mininet的命令行生成特定拓扑: 能够使用Mininet交互 ...
- MacOS Typora集成SM.SM图床 实现自动上传图片
MacOS Typora集成SM.SM图床 实现自动上传图片 此为PicGo-Core (Command line) (OpenSource)配置方法 参照官网 https://support.typ ...
- The art of multipropcessor programming 读书笔记-硬件基础2
本系列是 The art of multipropcessor programming 的读书笔记,在原版图书的基础上,结合 OpenJDK 11 以上的版本的代码进行理解和实现.并根据个人的查资料以 ...
- 从单体迈向 Serverless 的避坑指南
作者 | 不瞋 导读:用户需求和云的发展两条线推动了云原生技术的兴起.发展和大规模应用.本文将主要讨论什么是云原生应用,构成云原生应用的要素是什么,什么是 Serverless 计算,以及 Serve ...
- 技术番外篇丨Github Action CI/CD
起源 看到.Net群里再聊CI/CD,我就这里分享一下我目前自己一些小东西的做法,我目前在Github有一个自己私有的组织,里面存放了我的部分商业化项目,早期我采用Jenkins用Webhooks进行 ...
- 关于C、Java、Python程序运行耗时及内存用量
最近没有刷题,而是在PTA找几个题目寻找有关程序输入流问题以及各种语言在运行时对计算机消耗内存的问题, 以免很多同学解题的时候发现自己做的对但是出现运行超时的问题:针对运行内存,肯定用C/C++的同学 ...