色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Python爬蟲+Tkinter制作一個翻譯軟件的示例

瀏覽:10日期:2022-06-27 14:13:33

今天咱們用Python爬蟲和Tkinter界面來做一個翻譯軟件。

一、運行效果

軟件實現功能:當我們輸入英文或中文時,程序即可打印出來對應的譯文,如圖:

Python爬蟲+Tkinter制作一個翻譯軟件的示例

二、實現方法1. 爬蟲部分

實現一鍵翻譯最簡單的方式就是爬蟲,我們只需將要翻譯的內容傳入,然后將翻譯的結果爬取下來呈現給用戶即可。在本文中,我們選擇的網站是有道翻譯。

下圖這個界面,你在左邊輸入文字,那么瀏覽器會把你輸入的信息傳輸給服務器。再在右側返回對應翻譯結果。這就是一個典型的Post操作。

Python爬蟲+Tkinter制作一個翻譯軟件的示例

由于之前我們的爬取都是采用的Get方式來獲取數據的,并沒有用過Post方式,所以這里簡單給大家說一下怎么用python發送Post請求:

發送post請求分為表單類(x-www-form-urlencoded)和json(application/json)格式,data參數支持字典格式和字符串格式,建議使用字典格式,在使用json.dumps()方法把data轉換為合法的json格式字符串,或者將data參數賦值給post方法的json參數,data以字符串格式傳輸需要注意的事項:

必須是json格式字符串,必須用雙引號,k-v之家必須有逗號,布爾值必須是小寫的true/false 不能有中文,直接傳字符串不會自動編碼

我們還是按F12打開開發者模式,發現傳入的數據并沒有在原網頁中出現,所以判斷這是一個使用異步刷新的網站,所以該URL,應該去XHR中尋找,在XHR中發現了我們傳入的數據,如圖:

Python爬蟲+Tkinter制作一個翻譯軟件的示例

一切準備就緒了,可以開始書寫代碼了,爬蟲部分代碼如下:

url=’http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule’#使用post需要一個鏈接data={’i’: word, ’from’: ’AUTO’, ’to’: ’AUTO’, ’smartresult’: ’dict’, ’client’: ’fanyideskweb’, ’doctype’: ’json’, ’version’: ’2.1’, ’keyfrom’: ’fanyi.web’, ’action’: ’FY_BY_REALTIME’, ’typoResult’: ’false’}#將需要post的內容,以字典的形式記錄在data內。r = requests.post(url, data)#post需要輸入兩個參數,一個是剛才的鏈接,一個是data,返回的是一個Response對象answer=json.loads(r.text)#你可以自己嘗試print一下r.text的內容,然后再閱讀下面的代碼。result = answer[’translateResult’][0][0][’tgt’]return result2.Tkinter部分

Tkinter是Python的標準GUI庫。Python 使用 Tkinter 可以快速的創建 GUI 應用程序。

由于 Tkinter 是內置到 python 的安裝包中、只要安裝好 Python 之后就能 import Tkinter 庫、而且 IDLE 也是用 Tkinter 編寫而成、對于簡單的圖形界面 Tkinter 能應付自如。

代碼如下:

self.window = Tk()self.fanyi = YouDaoFanyi()self.window.title(u’翻譯器’)#設置窗口大小和位置self.window.geometry(’310x370+500+300’)self.window.minsize(310,370)self.window.maxsize(310,370)#創建一個文本框self.result_text1 = Text(self.window,background = ’azure’)self.result_text1.place(x = 10,y = 5,width = 285,height = 155)self.result_text1.bind('<Key-Return>',self.submit1)#創建一個按鈕#為按鈕添加事件self.submit_btn = Button(self.window,text=u’翻譯’,command=self.submit)self.submit_btn.place(x=205,y=165,width=35,height=25)self.submit_btn2 = Button(self.window,text=u’清空’,command = self.clean)self.submit_btn2.place(x=250,y=165,width=35,height=25)#翻譯結果標題self.title_label = Label(self.window,text=u’翻譯結果:’)self.title_label.place(x=10,y=165)#翻譯結果self.result_text = Text(self.window,background = ’light cyan’)self.result_text.place(x = 10,y = 190,width = 285,height = 165)

來看看效果圖:

Python爬蟲+Tkinter制作一個翻譯軟件的示例

雖然有一些單調,但是能做到這樣還是很不錯的。

三、打包

做好程序后,可以將其打包,這樣以后不管電腦上有沒有python環境,我們都可以使用這個軟件來進行翻譯,下面來教大家一個簡單的python打包方法。

首先安裝PyInstaller第三方庫。

pip install Pylnstaller

然后使用cmd,切換到需要打包的python程序的存儲目錄,然后輸入該語句即可完成打包。

pyinstaller -F -w xxx.py

以上就是本文的全部內容了,希望能夠對大家的學習起到一定的幫助作用!

四、代碼獲取

https://github.com/bigtigeryo/yingyihan

以上就是Python爬蟲+Tkinter制作一個翻譯軟件的示例的詳細內容,更多關于python 制作翻譯軟件的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久国产免费观看精品3 | 日产毛片 | 一级特一级特色生活片 | 99视频久久精品久久 | 日韩国产免费 | 欧美成人精品大片免费流量 | av人摸人人人澡人人超碰 | 怡红院在线观看视频 | 一区二区三区欧美 | 色综合91久久精品中文字幕 | 1024香蕉视频在线播放 | 日韩亚洲欧美在线 | 亚洲精品区一区二区三区四 | 亚洲精品国产成人一区二区 | 日韩天天摸天天澡天天爽视频 | 国产精品99在线观看 | 国产精品毛片va一区二区三区 | 亚洲精品国产专区一区 | 国产欧美另类久久精品91 | 亚洲在线视频一区 | 国产激情自拍 | 青青草国产免费一区二区 | 日韩视频久久 | 成年18网站免费视频网站 | 99精品视频免费观看 | 一区二区三区免费视频 www | 精品日韩在线 | 国产精品二区在线 | 国产精品国产三级国产an不卡 | 国产亚洲欧美日韩在线看片 | 一区二区三区高清视频在线观看 | 成年人免费在线视频网站 | 国产精品日产三级在线观看 | 国产成人精品视频在放 | 欧美综合精品一区二区三区 | 久久精品在线视频 | 欧美国一级毛片片aa | 最新亚洲国产有精品 | 黄色美女视频网站 | 国产成人精品日本亚洲麻豆 | 久久久久国产视频 |