介绍:

1.简单聊天机器人功能:1.在输入框中输入你的语句,机器人会自动回答你的问题
2.static文件夹保存静态文件templates文件夹保存html代码sample.py是程序源代码及程序入口
3.涉及到chatterbot,js,html,py

项目结构:
                             

知识点:
1.开发聊天机器人主要用到的是chatterbot包,安装应该选择1.0.1版本,最新版运行起来会报错

pip install chatterbot==1.0.1
pip install chatterbot-corpus
pip install scrapy

2.引入chatterbot并使用

from chatterbot import ChatBot
from chatterbot.trainers import ChatterBotCorpusTrainerenglish_bot = ChatBot("Chatterbot", storage_adapter="chatterbot.storage.SQLStorageAdapter")
trainer = ChatterBotCorpusTrainer(english_bot)
trainer.train("chatterbot.corpus.english")

创建了机器人对象,指定了数据库,指定了训练的语料包

3.与聊天机器人对话需要用到html及javascript

py代码(用来接收返回来的消息):

@app.route("/get")
def get_bot_response():userText = request.args.get("msg")return str(english_bot.get_response(userText))

html代码(用来在屏幕上显示消息并返回给py代码):

   function getBotResponse(){var rawText = $("#textInput").val();var userHtml = '<p class = "userText"><span>' + rawText + '</span></p>';$("#textInput").val("");$("#chatbox").append(userHtml);document.getElementById('userInput').scrollIntoView({block:'start',behaviour:'smooth'});$.get("/get", {msg:rawText}).done(function(data){var botHtml = '<p class ="botText"><span>' + data + '</snan></p>';$("#chatbox").append(botHtml);document.getElementById('userInput').scrollIntoView({block:'start', behaviour:'smooth'});});}$("#textInput").keypress(function(e){if(e.which ==13){getBotResponse();}});$("#buttonInput").click(function() {getBotResponse();});

.val()是获取数值,scrollintoview是显示在屏幕上,keypress是获取判断输入的                           键值

4.可以以自己创建yml文件的方式人为为机器人输入语料库

categories:- conversations
conversations:
- - Good Evening.- Good eveing.
- - Hello.- Hey how are you?
- - I am fine but feeling ·bored.- ohh you want to play a game?
- - no i want to see a movie.- ok shall i give your favouite move list?
- - yes.- okay done enjoy the movie.

问题:

1.出现了AttributeError: module 'chatterbot.storage' has no attribute 'SQLStorageAdapte'的错误,

这里是拼错了,应该用chatterbot.storage.SQLStorageAdapter

2.出现AttributeError: module 'time' has no attribute 'clock,是因为py3.8以后就不支持time.clock方         法了,只能切换回3.7版本

3.OSError: [E050] Can't find model 'en'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.的错误
pycharm还安装不上
只能手动安装了

4.yaml.scanner.ScannerError: while scanning a simple key
  in "data/data.yml", line 3, column 1
could not find expected ':'
  in "data/data.yml", line 4, column 1
的错误
发现是yml语句中:是中文格式,所以错误,修改后继续执行文件

5.flask启动后一直在转圈
 * Restarting with stat
[nltk_data] Downloading package averaged_perceptron_tagger to
[nltk_data]     C:\Users\HP\AppData\Roaming\nltk_data...
[nltk_data]   Unzipping taggers\averaged_perceptron_tagger.zip.
[nltk_data] Downloading package punkt to
[nltk_data]     C:\Users\HP\AppData\Roaming\nltk_data...
[nltk_data] Error downloading 'punkt' from
pycharm卡住了,在控制台点一下enter健就好

6.chatterbot.chatterbot.ChatBot.ChatBotException: Either a statement object or a "text" keyword argument is required. Neither was provided.又爆了这个错误
是javascript语句没写对的原因

2022.11.22 flaks项目开发-简单聊天机器人相关推荐

  1. 机器人编程python代码_自己动手开发智能聊天机器人完全指南(附python完整源码)...

    一.前言 人工智能时代,开发一款自己的智能问答机器人,一方面提升自己的AI能力,另一方面作为转型AI的实战练习.在此把学习过程记录下来,算是自己的笔记. 二.正文 2.1 下载pyaiml 下载pya ...

  2. 聊天机器人mysql数据_自己动手开发智能聊天机器人完全指南(附完整源码)

    一.前言 本文是<自己动手开发智能聊天机器人完全指南(附完整源码)>的第二篇,也是21天实战人工智能系列<知识图谱完全项目案例剖析>里面的知识图谱应用的案例.前文中实现了一个最 ...

  3. 微信小程序开发—项目实战之聊天机器人

    项目功能介绍 人工智能虚拟机器人"微软小冰"大家玩过吧,很酷的一个应用.发送文字.语音和图片都能得到智能的回复. 那现在我们就用小程序做一个模拟的应用,智能聊天机器人.发送文字它可 ...

  4. tf13: 简单聊天机器人

    现在很多卖货公司都使用聊天机器人充当客服人员,许多科技巨头也纷纷推出各自的聊天助手,如苹果Siri.Google Now.Amazon Alexa.微软小冰等等.前不久有一个视频比较了Google N ...

  5. html 简单机器人对话页面,基于Javascript实现的简单聊天机器人

    Botui是一款简单的js聊天机器人框架.Botui基于Javascript通过简单配置,就可以制作出一个功能简单的聊天机器人,非常神奇. var botui = new BotUI('botui-a ...

  6. 试试这只蓝色企鹅!印度夫妇开发的聊天机器人可以帮你缓解抑郁情绪

    这是班加罗尔阳光明媚的星期五早晨,我和一对已婚创业搭档Jo Aggarwal和Ramakant Vempati坐在咖啡馆里.一边喝咖啡,Ramakant一边告诉我关于在班加罗尔驾驶的事情. Ramak ...

  7. python开发qq聊天机器人_Python qqbot 实现qq机器人的示例代码

    qqbot 是一个用 python 实现的.基于腾讯 SmartQQ 协议的 QQ 机器人框架,可运行在 Linux . Windows 和 Mac OSX 平台下. 你可以通过扩展 qqbot 来实 ...

  8. 微信小程序学习2022.11.22

    1.项目基本组成结构: [注意]:所有页面建议存放在pages目录下. pages用来存放所有小程序的页面 utils用来存放工具性质的模块(例如:格式化时间自定义模块) app.js小程序项目的入口 ...

  9. (2022)Springboot+vue3项目开发前后端分离书法图书管理Coun

    项目地址:https://github.com/KKJava1/Coun Coun是基于Springboot+vue3 项目采用了前后端分离技术:后端采用 springBoot 基本框架,数据库连接池 ...

最新文章

  1. TypeReference -- 让Jackson Json在List/Map中识别自己的Object
  2. [IOI2014]Wall
  3. 找工作面试经历——校招、秋招、图像算法、求职面试之路
  4. JS Window.Open 打开窗口详解
  5. 查看oracle自定义函数,Oracle自定义函数查询数据字典项
  6. leetcode练习——栈(1)
  7. 3.认识和操作一下mysql的基本命令
  8. 【操作系统】磁盘结构
  9. 哈达玛变换的应用SATD、SAD等匹配算法
  10. jQuery原理第一天
  11. 信贷风控必知必会:逾期相关的知识点总结
  12. centos 6.7 openssh 升级到openssh 7.1p
  13. dev gridcontrol 单元格内容复制_Excel中的复制粘贴,不只是你想的那么简单的
  14. 集中器到服务器传输协议,集中器130通讯协议(捷先数码).doc
  15. python常用模块与MySQL数据库交互(学习笔记)
  16. require与import的区别和使用(CommonJS规范和es6规范)
  17. 如何检查浏览器存储中个人证书的存在
  18. 0基础学Python有多难?
  19. 数字SOC设计之低功耗设计入门(一)——低功耗设计目的与功耗的类型
  20. WSL2连接调用USB设备

热门文章

  1. R语言-差分要注意的问题
  2. 一、在全系1000名学生中,征集慈善募捐, 当总数达到10万元时就结束,统计此时捐款的人数,以及平均每人捐款的数目。
  3. Drools语法进阶
  4. mfc快捷键设置 | vc++6.0热键设置
  5. SharePoint 2010图文安装教程
  6. 解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor:no)
  7. c语言中二次函数复数根,初中二次函数求根公式是什么
  8. 职业技术女性怎样做好职业规划
  9. 圆形梅花图片旋转特效
  10. 美国国家网络安全综合纲领