【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 ...
随机推荐
- 全面分析 Vue 的 computed 和 watch 的区别
一.computed介绍 computed 用来监控自己定义的变量,该变量在 data 内没有声明,直接在 computed 里面定义,页面上可直接使用. //基础使用 {{msg}} <inp ...
- python学习笔记(九)-函数2
交换两个变量的值 a = 2 b = 1 b = 1 a = 2 #方式一: b,a = a,b #交换两个变量的值 print(a,b) #方式二: a = a + b #3 b = a - b # ...
- layui 添加复选框checkbox后,无法正确显示及点击的方法
layui 添加复选框checkbox后,无法正确显示方式,这个是由于html里的样式添加 layui-form后,没有加载 form插件 ,具体如下: <body style="ba ...
- AT4995-[AGC034E] Complete Compress【树形dp】
正题 题目链接:https://www.luogu.com.cn/problem/AT4995 题目大意 \(n\)个点的一棵树,上面有一些棋子,每次可以选择两个棋子移动到他们之间的路径上相邻的点上, ...
- Python:安装opencv出现错误Could not find a version that satisfies the requirement numpy==1.13.3 (from versions: 1.14.5, 1.14.6, 1.15.0rc2, 1.15.0, 1.15.1, 1.15.2, 1.15.3, 1.15.4, 1.16.0rc1, 1.16.0rc2,
安装opencv的时候,出现numpy的版本不匹配,卸载了不匹配的版本,重新安装却是一点用都没有,后面尝试了一下这里的提示pip更新,居然安装成功了,看来pip的版本过低真是误事啊. 报错是: Cou ...
- 题解 「2017 山东一轮集训 Day7」逆序对
题目传送门 Description 给定 $ n, k $,请求出长度为 $ n $ 的逆序对数恰好为 $ k $ 的排列的个数.答案对 $ 10 ^ 9 + 7 $ 取模. 对于一个长度为 $ n ...
- SpringBoot配置文件-多环境切换
profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境: 多个文件-配置多环境: 需要多个配置文件,文件名可以是 application-{prof ...
- 提高微信小程序的应用速度
一.是什么 小程序启动会常常遇到如下图场景: 这是因为,小程序首次启动前,微信会在小程序启动前为小程序准备好通用的运行环境,如运行中的线程和一些基础库的初始化 然后才开始进入启动状态,展示一个固定的启 ...
- 第五章第四周习题: Transformers Architecture with TensorFlow
目录 Transformer Network Packages 1 - Positional Encoding 1.1 - Sine and Cosine Angles Exercise 1 - ge ...
- 验证域用户(C#)
代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Intero ...