欢迎大家来到IT世界,在知识的湖畔探索吧!
《Gone with The Wind》直译的话就是随风而去
1939年,傅东华首译玛格丽格传世巨著 Gone with The Wind,取其消逝与渺茫之意命名为《飘》,自此风行至今:
美丽与勇敢的郝思嘉
风流与执着的白瑞德
坚强与宽容的韩媚兰
儒雅与懦弱的卫希礼——这些名字萦绕在几代人的脑海中,日久弥坚。
1996年,陈良廷再译本书,冠名以电影版之《乱世佳人》,补全傅东华译之删截处,人物名称全部取音译,为爱“飘”之人收藏之另一经典版本。
有很多想要学习Python却找不到途径的朋友,我这里整理了一些关于Python的学习资料,从基础到入门到实战都要。有需要的朋友可以关注并私信“01”免费获取…
《waterloo bridge》直译为滑铁卢桥~
很钢很强势的名字
据说经典爱情电影《魂断蓝桥》最开始时分翻译为《断桥残梦》,意思到位却不够唯美。后来编译组为该片举行了征名活动,一位女士寄去了“魂断蓝桥”的名字,遂成经典。
“蓝桥”的最早传说即我我们熟知的“尾生抱柱”的典故。
《庄子盗跖》:“尾生与女子期于梁下,女子不来,水至不去,抱梁柱而死。”传说他们相约的地方即是“蓝桥”。上片写相爱的恋人被迫分离,下片借用“蓝桥”的典故,透露出词人的相思之苦。这才是优秀的译名嘛!
别看某些年轻人平时都四级六级的,其实背地里都悄悄的装了翻译软件。
Chinglish、How a you已不再是三大姑七大叔那辈的专属,因为当代年轻人已经在中华文化的海洋里徜徉了太久,他们企图在不比划的情况下和长滩岛卖香蕉的小贩砍价,同时也想在爱人面前秀一把。
昨天凌晨1点还照例在抖音上学习美女舞蹈和讲段子的我,偶然看到了一个神级翻译,简直就是良心制作,果然是出自大师的大手笔,连字幕都这么专业,比魂断蓝桥的神翻译有过之而无不及。
如果说电影是八大艺术形式之一
那字幕绝对就是对这门艺术的最真实的解读
再有了谁说英语不好,就不能学好python。有了python,还怕英文不好吗?看我大python如何打造专属于你的翻译软件,不止教会你写,还能教你怎么读,告别哑巴英语。
开发工具:pycharm + python3
所需模块:tkinter + requests+json+pyttsx3
学习内容:python的GUI编程
爬虫
导入python内置的库tkinter
思路分析:
1.先创建界面出来
# 实例化对象,创建一个界面 root = Tk() # 设置一个标题 root.title('桌面翻译软件') # 给界面设置大小以及显示位置 root.geometry('300x100+500+200') # 设置禁止调整大小 root.resizable(False,False) # 创建一个标签 input_data = Label(root,text='输入内容:',font=('黑体',18),fg='blue') # 标签布局 input_data.grid() # 创建输入框 entry1 = Entry(root) # 布局显示 entry1.grid(row=0,column=1) # 创建第二个标签 output_data = Label(root,text='结果:',font=('黑体',18),fg='blue') # 让标签显示 output_data.grid(row=1,column=0) # 实例化对象,让输入框的值可以设置 res = StringVar() # 创建输入框 entry2 = Entry(root,textvariable=res) # 布局,让输入框显示 entry2.grid(row=1,column=1) # 定义运行按钮 button = Button(root,text='翻译',width=10,command=translate).grid(row=2,column=0) # 定义退出钮 button2 = Button(root,text='退出',width=10,command=root.quit).grid(row=2,column=1) # 让界面显示出来 事件循环 root.mainloop()
欢迎大家来到IT世界,在知识的湖畔探索吧!
2.开始实现功能
欢迎大家来到IT世界,在知识的湖畔探索吧!def translate(): # 获取到第一个输入框的内容,去除空白 content = entry1.get().strip()
我们想要实现翻译,直接借用有道翻译,爬取结果就可以了
3分析有道翻译,获取请求URL,请求方式,和必须携带的参数
爬虫需要确定目标,得到结果,获取想要的数据,处理数据
需要安装第三方库
pip install requests
导入库
import requests import json def translate(): # 获取到第一个输入框的内容,去除空白 content = entry1.get().strip() # 确定目标URL url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' # 准备发送的数据 data = { 'i':content, 'doctype':'json' } # 定义用户代理 headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0' } # 发起post请求 response = requests.post(url,data=data,headers=headers) # 得到请求结果 ret = response.content.decode() # 转成json格式 result = json.loads(ret) # 去除想要的结果 result = result['translateResult'][0][0]['tgt'] # 在输入框显示 res.set(result)
4.这里已经完成了核心部分,最后来个更叼的效果,读英语,需要一个第三方库
pip install pyttsx3
导入第三方库
欢迎大家来到IT世界,在知识的湖畔探索吧!import pyttsx3 engine = pyttsx3.init() engine.say(result) engine.runAndWait()
最终效果
总体代码:
from tkinter import * import requests import json import pyttsx3 # pip install pyttsx3 def translate(): # 获取到第一个输入框的内容,去除空白 content = entry1.get().strip() # 确定目标URL url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' # 准备发送的数据 data = { 'i':content, 'doctype':'json' } # 定义用户代理 headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0' } # 发起post请求 response = requests.post(url,data=data,headers=headers) # 得到请求结果 ret = response.content.decode() # 转成json格式 result = json.loads(ret) # 去除想要的结果 result = result['translateResult'][0][0]['tgt'] # 在输入框显示 res.set(result) engine = pyttsx3.init() engine.say(result) engine.runAndWait() # 实例化对象,创建一个界面 root = Tk() # 设置一个标题 root.title('桌面翻译软件') # 给界面设置大小以及显示位置 root.geometry('300x100+500+200') # 设置禁止调整大小 root.resizable(False,False) # 创建一个标签 input_data = Label(root,text='输入内容:',font=('黑体',18),fg='blue') # 标签布局 input_data.grid() # 创建输入框 entry1 = Entry(root) # 布局显示 entry1.grid(row=0,column=1) # 创建第二个标签 output_data = Label(root,text='结果:',font=('黑体',18),fg='blue') # 让标签显示 output_data.grid(row=1,column=0) # 实例化对象,让输入框的值可以设置 res = StringVar() # 创建输入框 entry2 = Entry(root,textvariable=res) # 布局,让输入框显示 entry2.grid(row=1,column=1) # 定义运行按钮 button = Button(root,text='翻译',width=10,command=translate).grid(row=2,column=0) # 定义退出钮 button2 = Button(root,text='退出',width=10,command=root.quit).grid(row=2,column=1) # 让界面显示出来 事件循环 root.mainloop()
用python制作翻译软件,让你不再害怕英语
为了让大家也有这么高水准的翻译技能
我连夜给大家写一个快捷方便的翻译软件
为大家学习Chinglish加把力。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/34870.html