Python/python翻譯軟體
阿新 • • 發佈:2018-11-11
執行下面程式碼可以直接執行:
請確保安裝一下模組 :requests
效果如下:
from tkinter import * from tkinter import messagebox import requests #建立視窗 root = Tk() #標題 root.title('中英互譯') #視窗大小 root.geometry('370x100') #視窗位置 #root.geometry('+600+450') s_with = root.winfo_screenwidth()#獲取螢幕寬 s_height = root.winfo_screenheight()#獲取螢幕高度 #計算頁面開啟在螢幕中央的位置 l_x = str(round((s_with-370)/2)) l_y = str(round((s_height-100)/2)) root.geometry('+'+l_x+'+'+l_y) #第一列標籤 lable = Label(root,text='請輸入內容:') #定位佈局 grid網格式佈局 pack包 place位置 lable.grid() #輸入控制元件 extry= Entry(root,font=('微軟雅黑',15)) extry.grid(row=0,column=1) res = StringVar() #翻譯結果標籤 lable1 = Label(root,text='翻譯結果:') lable1.grid(row=1,column=0) #翻譯結果輸入框 extry1= Entry(root,font=('微軟雅黑',15),textvariable = res) extry1.grid(row=1,column=1) #翻譯方法 def translate(): content = extry.get() content = content.strip() if content == '': messagebox.showinfo('提示','請輸入翻譯內容') else: url = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule" data = {} data['i']=content data['from']='AUTO' data['to']='AUTO' data['smartresult']='dict' data['client']='fanyideskweb' data['salt']='1538295833420' data['sign']='07' data['doctype']='json' data['version']='2.1' data['keyfrom']='fanyi.web' data['action']='FY_BY_REALTIME' data['typoResult']='false' headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36' } result = requests.post(url,data,headers=headers) trans = result.json() tran = trans['translateResult'][0][0]['tgt'] res.set(tran) #按鈕 button=Button(root,text='翻譯',width='10',command=translate) #sticky 對齊方式 N S W E 上下左右 button.grid(row=2,column=0,sticky = W) #退出按鈕 command是點選事件的方法 exit_button=Button(root,text='退出',width='10',command=root.quit) exit_button.grid(row=2,column=1,sticky = E) #顯示視窗 訊息迴圈 接收對視窗的所有操作的訊息 root.mainloop()