基於Python3.6寫的自助翻譯小軟體--使用google translate的介面,Python實現爬取google翻譯API結果,並打包成.exe的可執行檔案
阿新 • • 發佈:2019-02-18
看文獻看的頭疼,為了解決小麻煩沒事就寫了這個來玩一玩。其實也沒有什麼就是用一個簡單的爬蟲和介面,
所以啥也不多說,直接貼程式碼,歡迎嘗試
# -*- coding: utf-8 -*- # filename:GoogleTranslation1.2.py import urllib.parse import urllib.request import time import pyperclip from tkinter import * def translate(text, f='zh-cn', t='en'): url_google = 'http://translate.google.cn/translate_t' reg_text = re.compile(r'(?<=TRANSLATED_TEXT=).*?;') user_agent = r'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) ' \ r'Chrome/44.0.2403.157 Safari/537.36' '''user_agent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)''''' values = {'hl': 'zh-cn', 'ie': 'utf-8', 'text': text, 'langpair': '%s|%s' % (t, f)} value = urllib.parse.urlencode(values) req = urllib.request.Request(url_google + '?' + value) req.add_header('User-Agent', user_agent) response = urllib.request.urlopen(req) content = response.read().decode('utf-8') data = reg_text.search(content) result = data.group(0).strip(';').strip('\'') return result def getcopytext(copyBuff): copyedText=pyperclip.paste() if copyBuff!=copyedText: copyBuff=copyedText normalizedText=copyBuff.replace('\r','\\r').replace('\n','\\n').replace('-\\r\\n','').replace("\\r\\n"," ") else: print('no change') return normalizedText def showtxt(inputtxt): root = Tk() root.title('DayDayUp') # 定義窗體標題 root.geometry('400x200') # 定義窗體的大小,是400X200畫素 label = Label(root,text=inputtxt,wraplength=400,justify='left',font=12) #label['text'] = inputtxt label.pack() root.mainloop() if __name__ == "__main__": copyBuff = ' ' # text_1 原文 # text_1=open('c:\\text.txt','r').read() while True: time.sleep(0.003) copyedText = pyperclip.paste() if copyBuff!=copyedText: copyBuff=copyedText text_1 = copyBuff.replace('\r', '\\r').replace('\n', '\\n').replace('-\\r\\n', '').replace("\\r\\n", " ") text_2 = translate(text_1)#.strip("'") showtxt(text_2)
實現的功能:執行程式後,直接選中要翻譯的內容,複製,然後就直接自動讀取貼上板上的內容,自動翻譯並顯示在介面上,不需要輸入,直接自動輸出。
打包的過程:
1.安裝pyinstaller:
pip install pyinstaller
2.CMD進入要轉化的專案的xxx.py所在的目錄下,執行如下命令:
pyinstaller -F -w ***.py
-F:打包為單檔案-w:Windows程式,不顯示命令列視窗
***.py是你要打包的py檔案
當然你還可以把檔案打包成使用自己的圖示的檔案,執行如下:
pyinstaller -F -w -i manage.ico ***.py
-i:是程式圖示
大功告成
下面是效果圖