大家好,我是辰哥~~~

本文目标:打造一个window桌面应用:在线聊天对话机器人。

今天辰哥教大家做一个在线聊天对话机器人桌面应用,已经打包成exe可执行文件,读者可以直接拿来使用, 先上演示图

聊天客户端桌面应用

设计Ui:Pyqt5

对话回答:图灵机器人

打包EXE:Pyinstaller

本文通过界面设计、后端处理、效果演示、打包exe这四方面去进行讲解。

打包好EXE下载地址:https://wwi.lanzoui.com/iCygNrp0c6f

01、界面设计

1.安装pyqt5

1.安装PyQt5工具

pip install PyQt5

2.安装Qt Designer图形界面开发工具

pip install PyQt5-tools

2.设计界面

在搜索框中搜索: Desginer

创建桌面应用

开始设计,其中左边是控件、中间是设计结果、右边控件属性设置。

最终的设计结果如下:(辰哥的简单设计)

保存为ui的后缀,如:chenge.ui

3.ul界面转为python代码

通过Desginer设计的保存的ul文件可以直接转为python代码,其命令如下:

pyuic5 -o chenge.py chenge.ui

预览代码

02、、后端处理

1.启动界面

提示:这个chenge.py文件是无法执行运行,我们需要新建一个主函数去调用chenge.py

辰哥这里新建了一个py文件:main.py

编辑main.py

import sys
import chenge  # GUI文件的名称,chenge.ui
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidgetif __name__ == '__main__':app = QApplication(sys.argv)MainWindow = QMainWindow()ui = chenge.Ui_MainWindow()ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_())

运行结果:

这时候的界面点击和输入是无反应,只能看不能用!下面开始进行编写控件处理逻辑。

2.接入图灵机器人

在main.py文件中新建一个chat函数方法:通过调用chat函数,传入问题,返回解答

3.控件处理逻辑

绑定监听事件

1、输入框

2、展示框

3、按钮(发送)

在chenge.py文件中

#绑定监听事件
self.pushButton.clicked.connect(MainWindow.pushButton)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
MainWindow.setTabOrder(self.history, self.pushButton)
MainWindow.setTabOrder(self.textEdit, self.pushButton)

逻辑:

1.获取输入框

2.调用chat(图灵机器人)

3.添加到历史中

4.清空输入框

def pushButton(self):#提问q_text = self.ui.textEdit.toPlainText()#清空输入框self.ui.textEdit.clear()#调用图灵机器人a_text = self.chat(q_text)a_text = "【机器人】:"+a_text## 记录到聊天记录中history = self.ui.history.toPlainText()history = history+"\n"+"【我】:"+q_text+"\n"+a_textself.ui.history.setText(history)

03 效果演示

动图:

最终图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-94kXOrVS-1626871871364)(https://oscimg.oschina.net/oscnet/69c9a323-5bda-4501-aaf2-3cd1a8f4698b.png)]

04、打包exe

将python文件打包成一个exe可执行文件

通过命令:

pyinstaller -F -w main.py

经过辰哥的测试,打包好的exe文件可以在任何一台电脑上执行,并且不赖主机的python环境

由于辰哥技术有限,里面带有图片打包出错,因此这里辰哥先把图片去掉了,后面再考虑如何带图片的打包

打包好EXE下载地址:https://wwi.lanzoui.com/iCygNrp0c6f

05、小结

本文目标:打造一个window桌面应用:在线聊天对话机器人。从界面设计,到处理后端对话,最后打包成exe。

不会的小伙伴,感觉动手练习!!!!最后说一声:原创不易,求给个赞!

打造一个window桌面应用:在线聊天对话机器人相关推荐

  1. 每日分享(在线截图生成器 在线聊天对话生成网站源码)

    demo软件园每日更新资源,请看到最后就能获取你想要的: 1.高性能MySQL(第2版)pdf中文版 <高性能MySQL>汇聚了著名MySQL 专家在实践中构建大型系统的多年宝贵经验,指导 ...

  2. 零基础快速打造一个属于自己的微信聊天工具

    " 零基础快速打造一个属于自己的微信聊天工具" 打开微信,我们可以和别人进行聊天,发送消息.非常方便,那微信是怎么来的呢​?这个本质的问题让人突发奇想,我们能不能做一个属于自己的微 ...

  3. react在线文件_【前端新手也能做大项目】:从零打造一个属于自己的在线Visio项目实战【ReactJS 】 (一)...

    本系列教程是教大家如何根据开源js绘图库,打造一个属于自己的在线绘图软件.当然,也可以看着是这个绘图库的开发教程.如果你觉得好,欢迎点个赞,让我们更有动力去做好! 本系列教程重点介绍如何开发自己的绘图 ...

  4. 从头搭建一个基于 Python 的在线聊天室

    本场 Chat,是基于 Python + Redis + Flask 来搭建一个简单易用的在线聊天室.完全从零开始,一步一步完成整个项目. 主要分享内容: Flask 项目结构 Python Redi ...

  5. 在线报名竞赛网站java源码_我用Java写出了一个QQ!可在线聊天(附源码)~

    来源:blog.csdn.net/weixin_44048140 正文如下: 一. 功能实现 1.修改功能(密码.昵称.个性签名) 2.添加好友.删除好友 3.单聊功能 4.判断好友是否在线 二. 模 ...

  6. Phind-面向程序员的AI聊天对话机器人

    ChatGPT在国内没开放,很多人注册不了.导致了很多人走illegal渠道获取账号密码.这样是不对的. 今天介绍一款面向程序员的ai聊天机器人Phind,ta目前可以不用注册直接使用.免费.也不用梯 ...

  7. 对当前网上公开的聊天对话机器人语料整理

    https://www.zhihu.com/question/44764422 https://www.cnblogs.com/bymo/p/9039418.html https://github.c ...

  8. WebSocket实现多人在线聊天功能

    WebSocket是现在最流行的实现多人在线聊或者私聊的技术,它可以实现客户端到客户端的通信,和以往的TCP和UDP不一样,它俩是客户端到服务端的通信,而且服务端不能直接给客户端发送消息,但是WebS ...

  9. Java+Springboot+Websocket在线聊天室

    1.什么是websocket? websocket是由HTML5定义了WebSocket协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯.它是一种在单个TCP连接上进行全双工通信的协议.W ...

最新文章

  1. CUDA error: device-side assert triggered Assertion t 」= 0 t n classes failed
  2. 人生,是一种无法抗拒的前进
  3. 多租户数据库性能测试手册
  4. 制造业与计算机有关的岗位,天津人力资源:零批餐饮挺缺人 银行地产岗位少...
  5. 在SAP Business Application Studio里创建Fiori应用的操作流程
  6. 图学java基础篇之IO
  7. canny算子的理论分析
  8. 软件生成问候图片_这些社交软件你玩过几个?
  9. 编译安装LNMP全程实录
  10. .NET2.0和microsoft新知识体系-ASP.NET 2.0新特性
  11. 【docker】kubernetes集群一键部署包
  12. mysql 创建聚集索引_索引为什么会加快Mysql的查询速度?
  13. 拓端tecdat|R语言多变量广义正交GARCH(GO-GARCH)模型对股市高维波动率时间序列拟合预测
  14. 二分搜索(Binary Search)
  15. 如何获得微信小游戏跳一跳源码以及源代码组合包括哪些
  16. 常用的pcb设计软件有哪些
  17. Flash计时器次数为什么设置1次的重要性
  18. <Java设计模式>(二)UML类图 | 设计模式概述和分类
  19. 2021-09-30 node上传文件的问题以及如何选择适合自己的插件
  20. 计算机两个活动分区,硬盘无法设置活动分区,硬盘只能有一个活动分区吗

热门文章

  1. 2021年R2移动式压力容器充装考试题库及R2移动式压力容器充装最新解析
  2. mysql 5.7.20 免安装版配置
  3. matlab对一组数据傅里叶变换,如何对一组数据进行离散傅里叶变换
  4. 合同诈骗与普通诈骗有什么区别
  5. 微软两个后台经常访问freeime
  6. ubunt查看网卡流量_Linux下查看网卡流量
  7. 报童问题求解最大利润_仿真实例009:汽车天线仿真(双向混合求解)
  8. 数字通信之信号复接(八)
  9. Capstone反汇编(一)
  10. 网络测试-telnet