python英文聊天机器人(亲测可用)

本文参考https://www.cnblogs.com/youcong/p/10462924.html

第一步:

下载所需包

pip install aiml

出现Successfully installed aiml-0.9.2即安装成功

第二步:

编写代码

导入包:

import sys
import os
import aiml

获得语料库目录:

def _get_module_dir(name):if os.environ.get('show-info', False):print('module', sys.modules[name])path = getattr(sys.modules[name], '__file__', None)if os.environ.get('show-info', False):print(path)if not path:raise AttributeError(f'module {name} has not attribute __file__')return os.path.dirname(os.path.abspath(path))

创建机器人:

_alice_path = _get_module_dir('aiml') + '\\botdata\\alice'
os.chdir(_alice_path)
_alice = aiml.Kernel()
_alice.learn("startup.xml")
_alice.respond('LOAD ALICE')

定义聊天函数:

def english_chat(message: str):return _alice.respond(message)

第三步:

如果你按上代码执行,可能看到如下起飞(我已经起飞)

报错信息是说time包不支持clock函数了(我的python是3.8)
解决方案:
找到Kernel.py,我的Kernel.py在
F:\anaconda3\lib\site-packages\aiml下。将第335行

start = time.clock()

改为:

start = time.time()

然后把第356行

print( "done (%.2f seconds)" % (time.clock() - start) )

改为:

print( "done (%.2f seconds)" % (time.time() - start) )

最后附上全部代码:

import sys
import os
import warnings
try:import aiml
except (AttributeError, ImportError):print('''If you want to use english chat robot, please update lib aiml's Kernel.py
line 335 "start = time.time()" to:
"start = time.clock()"
and line 356 "print( "done (%.2f seconds)" % (time.clock() - start) )" to:
"print("done (%.2f seconds)" % (time.time() - start))"''')warnings.warn('aiml module is wrong')sys.exit(1)def _get_module_dir(name):if os.environ.get('show-info', False):print('module', sys.modules[name])path = getattr(sys.modules[name], '__file__', None)if os.environ.get('show-info', False):print(path)if not path:raise AttributeError('module %s has not attribute __file__' % name)return os.path.dirname(os.path.abspath(path))_alice_path = _get_module_dir('aiml') + '\\botdata\\alice'
os.chdir(_alice_path)
_alice = aiml.Kernel()
_alice.learn("startup.xml")
_alice.respond('LOAD ALICE')def english_chat(message: str):return _alice.respond(message)if __name__ == '__main__':while True:msg = input('Please input, input q to quit: ')if msg == 'q':sys.exit(0)print('Robot:', english_chat(msg))

python英文聊天机器人(亲测可用)相关推荐

  1. YDOOK: Sanic: Python request post请求 上传照片或文件 详细具体步骤 亲测可用!

    YDOOK: Sanic: Python request post请求 上传照片或文件 详细具体步骤 亲测可用! ©YDOOK JYLin 1. 项目目录架构: Upload result: 上传结果 ...

  2. 谷歌翻译不用代理可用的免费api python版本亲测可用

    上一篇写的最新2022亲测可用的免费google翻译api_金乌爬虫的博客-CSDN博客_免费的翻译api需要使用国外的代理才能使用,那有直接能用的API 答案是绝对,有. 前端时间看了一个 &quo ...

  3. python构建聊天机器人之录制声音保存为音频文件(利用pyaudio进行录音)

    最近心血来潮想利用 python构建一个智能语音聊天机器人,这样就能在我们无聊的时候和我们聊天以此打发时间啦:). 要想最终实现聊天机器人的构建需要经过一系列过程功能的实现,大致思路为程序接受用户的语 ...

  4. python制作聊天机器人原理_用 Python 来做一个聊天机器人吧!(一)

    在我的一个回答里,我提到了用 Python 搭建聊天机器人.从今天开始,我就带着大家从0开始搭建一个聊天机器人. (顺便说一句,我喜欢把链接像上面这样加在文字里,如果找不到文中所说的资源,可以看看周围 ...

  5. centos7.3部署django用uwsgi和nginx[亲测可用]

    centos7.3部署django用uwsgi和nginx[亲测可用] 现在nginx nginx version: nginx/1.10.2 uwsgi 2.0.17 django2.0.5 都已经 ...

  6. Python搭建聊天机器人

    Python用AIML搭建聊天机器人 AIML,全名为Artificial Intelligence Markup Language(人工智能标记语言),是一种创建自然语言软件代理的XML语言,是由R ...

  7. 【wencai】一文学会通过wencai包访问同花顺i问财实现AI选股(已修复链接报错问题,并扩展函数功能,修改后源代码亲测可用)

    一文学会通过wencai包访问同花顺i问财实现AI选股(已修复链接报错问题,并扩展函数功能,修改后源代码亲测可用) 前言 一.准备工作很重要 二.wencai问财怎么用? 1.实用基础篇(wencai ...

  8. 教给大家怎么跟好友一起看视频?亲测可用

    教给大家怎么跟好友一起看视频?亲测可用. 薯片APP 哈喽,大家好.最近很多朋友在后台留言咨询薯片小姐姐怎么跟好友一起看视频,相信大家在日常生活中都会遇到这样的问题,想找可用邀请好友一起同步观看视频的 ...

  9. jupyter notebook 添加核 (jupyter:ModuleNotFoundError: No module named ‘torch‘) 亲测可用

    jupyter notebook 添加核 (jupyter:ModuleNotFoundError: No module named 'torch') 亲测可用 刚刚解决了一个困扰老衲很久的问题,开心 ...

最新文章

  1. 难以置信!小冰数字孪生虚拟人直播70天,没人发现不是真人
  2. 服务器无法显示大内存的处理办法
  3. 提高oracle查询效率
  4. wagtail python cms 测试部署
  5. python (3.5)字符串 持续更新中………………
  6. 布局练习——选择水果
  7. 【转】C# HttpWebRequest提交数据方式
  8. java工作笔记017---java8新特性_使用lamda表达式进行List分组_排序_去重_随时更新
  9. 《程序员代码面试指南》it名企算法与数据结构题目最优解(第二版)刷题笔记11
  10. 最新的ARM-GCC下载安装指南
  11. SaaS vs 低代码,谁在成为中国产业服务的楔子?
  12. 理解容器中超易混淆 Attach 和 Exec 的异同
  13. 如何搭建APP分发平台分发平台搭建教程
  14. verilog之分频大全
  15. 镜像miracast投屏软件_什么是Miracast投屏,Miracast是怎么投屏的?
  16. thinkpad e40 安装 nvidia显卡驱动之后
  17. 谷歌旗下专业图片编辑Snapseed获重大更新
  18. MySQL性能优化Buffer Pool详细介绍
  19. mysql 备份 第三方工具_目前主流的数据库备份第三方工具都有哪些比较好用
  20. LinuxTina动态调压调频配置与实现

热门文章

  1. 鱼鹰软件携手31会议为MICE企业提供从内到外的IT解决方案
  2. 马斯克个人2021年向美国缴税110亿美元,特斯拉却是0元
  3. (C语言)小玉在游泳
  4. Java俄罗斯方块思想与实现
  5. 基于Gazebo的无人机管道检测
  6. 怎么在keil下载对应的固件包
  7. 华为交换机 tagged 与 untagged 的关系
  8. 公有云的地域和可用区
  9. 途牛原创|途牛Android App的插件实现
  10. 树与二叉树(二叉树前传、数据结构初阶、C语言)