天天看點

打造一個window桌面應用:線上聊天對話機器人

打造一個window桌面應用:線上聊天對話機器人

大家好,我是辰哥~~~

本文目标:打造一個window桌面應用:線上聊天對話機器人。

今天辰哥教大家做一個線上聊天對話機器人桌面應用,已經打包成exe可執行檔案,讀者可以直接拿來使用, 先上示範圖

打造一個window桌面應用:線上聊天對話機器人

聊天用戶端桌面應用

設計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
打造一個window桌面應用:線上聊天對話機器人

建立桌面應用

打造一個window桌面應用:線上聊天對話機器人

開始設計,其中左邊是控件、中間是設計結果、右邊控件屬性設定。

打造一個window桌面應用:線上聊天對話機器人

最終的設計結果如下:(辰哥的簡單設計)

打造一個window桌面應用:線上聊天對話機器人

儲存為ui的字尾,如:chenge.ui

打造一個window桌面應用:線上聊天對話機器人

3.ul界面轉為python代碼

通過Desginer設計的儲存的ul檔案可以直接轉為python代碼,其指令如下:

pyuic5 -o chenge.py chenge.ui
           
打造一個window桌面應用:線上聊天對話機器人

預覽代碼

打造一個window桌面應用:線上聊天對話機器人

02、、後端處理

1.啟動界面

提示:這個chenge.py檔案是無法執行運作,我們需要建立一個主函數去調用chenge.py

辰哥這裡建立了一個py檔案:main.py

打造一個window桌面應用:線上聊天對話機器人

編輯main.py

import sys
import chenge  # GUI檔案的名稱,chenge.ui
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget
 
 
if __name__ == \'__main__\':
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()
    ui = chenge.Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

           

運作結果:

打造一個window桌面應用:線上聊天對話機器人

這時候的界面點選和輸入是無反應,隻能看不能用!下面開始進行編寫控件處理邏輯。

2.接入圖靈機器人

在main.py檔案中建立一個chat函數方法:通過調用chat函數,傳入問題,傳回解答

打造一個window桌面應用:線上聊天對話機器人

3.控件處理邏輯

綁定監聽事件

1、輸入框

2、展示框

3、按鈕(發送)

在chenge.py檔案中

打造一個window桌面應用:線上聊天對話機器人
#綁定監聽事件
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_text
    self.ui.history.setText(history)

           

03 效果示範

動圖:

打造一個window桌面應用:線上聊天對話機器人

最終圖:

打造一個window桌面應用:線上聊天對話機器人

04、打包exe

将python檔案打包成一個exe可執行檔案

通過指令:

pyinstaller -F -w main.py

打造一個window桌面應用:線上聊天對話機器人

經過辰哥的測試,打包好的exe檔案可以在任何一台電腦上執行,并且不賴主機的python環境

打造一個window桌面應用:線上聊天對話機器人
由于辰哥技術有限,裡面帶有圖檔打包出錯,是以這裡辰哥先把圖檔去掉了,後面再考慮如何帶圖檔的打包
打包好EXE下載下傳位址:https://wwi.lanzoui.com/iCygNrp0c6f

05、小結

本文目标:打造一個window桌面應用:線上聊天對話機器人。從界面設計,到處理後端對話,最後打包成exe。

不會的小夥伴,感覺動手練習!!!!最後說一聲:原創不易,求給個贊!