电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

Python使用tkinter制作在線翻譯軟件

瀏覽:105日期:2022-06-27 13:14:55

tkinter的功能是如此強大,竟然還能做翻譯軟件。當然是在線的,我發現有一個quicktranslate模塊,可以提供在線翻譯功能,相當于提供了一個翻譯的接口,利用它就可以制作在線翻譯軟件了。下面是代碼,分享給大家。

注意要首先 pip install quicktranslate

#-*- coding:utf-8 -*-import tkinter as tk #使用Tkinter前需要先導入from tkinter import messagebox,ttkimport datetime,os,time,re,requestsfrom quicktranslate import get_translate_baidu,get_translate_youdaoclass MY_GUI(tk.Tk): #初始化 def __init__(self): super().__init__() self.set_window() self.set_frame() self.set_body() #設置窗口 def set_window(self): self.title('文本翻譯工具v1.0') #窗口名 w_width=800#工具寬度 w_height=600 #工具高度 scn_width=self.maxsize()[0] #屏幕寬度 x_point=(scn_width-w_width)//2 #取點讓工具居中 self.geometry(’%dx%d+%d+%d’ %(w_width,w_height,x_point,100)) #設置框架 def set_frame(self): self.frame1=tk.Frame(self,pady=15,padx=15) self.frame1.grid(row=0,column=0,sticky=’w’) self.frame2=tk.Frame(self,pady=15,padx=15) self.frame2.grid(row=1,column=0,sticky=’w’) self.frame3=tk.Frame(self,pady=15,padx=15) self.frame3.grid(row=2,column=0,sticky=’w’) #設置組件 def set_body(self): ttk.Label(self.frame1,text=’輸入要翻譯的內容:’).grid(row=0,column=0,sticky=’w’) ybar=ttk.Scrollbar(self.frame1,orient=’vertical’) textarea=tk.Text(self.frame1,width=100,height=12,yscrollcommand=ybar.set) ybar[’command’]=textarea.yview textarea.grid(row=1,column=0,columnspan=2) ybar.grid(row=1,column=2,sticky=’ns’) textarea.bind('<Double-Button-1>',lambda event:self.getword(event,textarea)) #雙擊觸發單詞翻譯 ttk.Button(self.frame1,text=’點擊翻譯’,command=lambda:self.translator(textarea.get(1.0,’end’))).grid(row=2,column=0,sticky=’w’) ttk.Button(self.frame1,text=’清空’,command=lambda:self.clear(textarea)).grid(row=2,column=1,sticky=’w’) #功能函數 def clear(self,textarea): #清空文本框 textarea.delete(1.0,’end’) def is_cn(self,uchar): '''判斷一個unicode是否是漢字''' if uchar >= u’u4e00’ and uchar<=u’u9fa5’: return True else: return False def filterchar(self,char): #過濾字母 word=filter(str.isalpha, char) word=’’.join(list(word)) return word def getword(self,event,textarea): #單詞翻譯 place=textarea.index(’current’) row=int(place.split(’.’)[0]) #第幾行 col=int(place.split(’.’)[1]) #第幾列 col_start=col-15 col_end=col+15 part1=textarea.get(str(row)+’.’+str(col_start),str(row)+’.’+str(col)).split()[-1] part2=textarea.get(str(row)+’.’+str(col),str(row)+’.’+str(col_end)).split()[0] word_f=self.filterchar(part1+part2) word_t=get_translate_baidu(word_f) #百度翻譯 if(word_t==’wrong!’): word_t=get_translate_youdao(word_f) #百度不行就用有道翻譯 textarea=tk.Text(self.frame3,width=100,height=8) #第三個框架添加文本框 textarea.grid(row=0,column=0) textarea.delete(1.0,’end’) textarea.insert(1.0,word_f+’:n’+word_t) #文本框填入翻譯結果 #生詞寫入生詞本 if(word_t!=’wrong!’): with open(’word.txt’,’a’) as f: f.write(word_f+’ : ’+word_t+'n') def translator(self,content): #段落翻譯 test_url=’http://youdao.com’ try: requests.get(test_url,timeout=2) except: messagebox.showerror(’警告’,’沒有聯網’) if(self.is_cn(content)): #如果輸入的是中文,那就是中譯英,要用英文句號 sep='.' else: sep='。' contents=content.split(’n’) #段落分割 strs='' for paragraph in contents: if(paragraph): sentences=paragraph.split(’.’) #句子 for sentence in sentences: if(sentence): res=get_translate_youdao(sentence) #有道翻譯 if(res==’wrong!’): res=get_translate_google(sentence) #有道不行就用谷歌翻譯 strs+=res+sep strs+='n' ybar=ttk.Scrollbar(self.frame2,orient=’vertical’) textarea=tk.Text(self.frame2,width=100,height=12,yscrollcommand=ybar.set) #第二個框架添加文本框 textarea.bind('<Double-Button-1>',lambda event:self.getword(event,textarea)) #雙擊觸發單詞翻譯 如果是中譯英 ybar[’command’]=textarea.yview textarea.grid(row=0,column=0) textarea.delete(1.0,’end’) textarea.insert(1.0,strs) #文本框填入翻譯結果 ybar.grid(row=0,column=1,sticky=’ns’)app=MY_GUI()app.mainloop()

這是效果,雙擊單詞可自動查詞,段落翻譯默認用有道,不行用谷歌;單詞翻譯默認百度,不行用有道。

Python使用tkinter制作在線翻譯軟件

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 对辊破碎机_四辊破碎机_双齿辊破碎机_华盛铭重工 | 电脑刺绣_绣花厂家_绣花章仔_织唛厂家-[源欣刺绣]潮牌刺绣打版定制绣花加工厂家 | 宁夏活性炭_防护活性炭_催化剂载体炭-宁夏恒辉活性炭有限公司 | 宝元数控系统|对刀仪厂家|东莞机器人控制系统|东莞安川伺服-【鑫天驰智能科技】 | 汽车整车综合环境舱_军标砂尘_盐雾试验室试验箱-无锡苏南试验设备有限公司 | 网站建设-高端品牌网站设计制作一站式定制_杭州APP/微信小程序开发运营-鼎易科技 | 东莞爱加真空科技有限公司-进口真空镀膜机|真空镀膜设备|Polycold维修厂家 | 英思科GTD-3000EX(美国英思科气体检测仪MX4MX6)百科-北京嘉华众信科技有限公司 | 西安文都考研官网_西安考研辅导班_考研培训机构_西安在职考研培训 | 带压开孔_带压堵漏_带压封堵-菏泽金升管道工程有限公司 | 恒温水槽与水浴锅-上海熙浩实业有限公司| 杭州中策电线|中策电缆|中策电线|杭州中策电缆|杭州中策电缆永通集团有限公司 | 空压机网_《压缩机》杂志| Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 进口试验机价格-进口生物材料试验机-西安卡夫曼测控技术有限公司 | 河南空气能热水器-洛阳空气能采暖-洛阳太阳能热水工程-洛阳润达高科空气能商行 | 密集架-密集柜厂家-智能档案密集架-自动选层柜订做-河北风顺金属制品有限公司 | 成都办公室装修-办公室设计-写字楼装修设计-厂房装修-四川和信建筑装饰工程有限公司 | 喷砂机厂家_自动除锈抛丸机价格-成都泰盛吉自动化喷砂设备 | 广州冷却塔维修厂家_冷却塔修理_凉水塔风机电机填料抢修-广东康明节能空调有限公司 | 伺服电机_直流伺服_交流伺服_DD马达_拓达官方网站 | 齿辊分级破碎机,高低压压球机,立式双动力磨粉机-郑州长城冶金设备有限公司 | 颗粒机,颗粒机组,木屑颗粒机-济南劲能机械有限公司 | 众品地板网-地板品牌招商_地板装修设计_地板门户的首选网络媒体。 | 招商帮-一站式网络营销服务|搜索营销推广|信息流推广|短视视频营销推广|互联网整合营销|网络推广代运营|招商帮企业招商好帮手 | 活性氧化铝|无烟煤滤料|活性氧化铝厂家|锰砂滤料厂家-河南新泰净水材料有限公司 | 郑州外墙清洗_郑州玻璃幕墙清洗_郑州开荒保洁-河南三恒清洗服务有限公司 | 京港视通报道-质量走进大江南北-京港视通传媒[北京]有限公司 | 橡胶电子拉力机-塑料-微电脑电子拉力试验机厂家-江苏天源 | EFM 022静电场测试仪-套帽式风量计-静电平板监测器-上海民仪电子有限公司 | 高防护蠕动泵-多通道灌装系统-高防护蠕动泵-www.bjhuiyufluid.com慧宇伟业(北京)流体设备有限公司 | 首页|成都尚玖保洁_家政保洁_开荒保洁_成都保洁 | 控显科技 - 工控一体机、工业显示器、工业平板电脑源头厂家 | 驾驶式洗地机/扫地机_全自动洗地机_工业洗地机_荣事达工厂官网 | 「银杏树」银杏树行情价格_银杏树种植_山东程锦园林 | 高低温试验箱-模拟高低温试验箱订制-北京普桑达仪器科技有限公司【官网】 | 刘秘书_你身边专业的工作范文写作小秘书 | 废旧物资回收公司_广州废旧设备回收_报废设备物资回收-益美工厂设备回收公司 | 武汉刮刮奖_刮刮卡印刷厂_为企业提供门票印刷_武汉合格证印刷_现金劵代金券印刷制作 - 武汉泽雅印刷有限公司 | 气动机械手-搬运机械手-气动助力机械手-山东精瑞自动化设备有限公司 | 国标白水泥,高标号白水泥,白水泥厂家-淄博华雪建材有限公司 |