Python翻译软件,python翻译器在线

  Python翻译软件,python翻译器在线

  编程本身和年龄无关。不管你现在是14、15岁还是40、50岁,如果你热爱它,愿意继续为它付出,你一定会有所收获。

  本文是编程课堂上一个“小”读者的投稿(互助学习1组的同学应该很熟悉作者的名字)。我看着他不断出新的代码和技术文章,不禁感叹“以后的人生真牛逼”。

  这是一个爬虫基本分析和操作的开发案例,在这里分享给大家。

  当我需要在电脑上翻译一个单词时,我会这样做:

  打开浏览器=打开百度翻译=输入单词=获取翻译。

  但是,有时候,我在命令行环境下写代码的时候,懒得切换到浏览器,等页面加载。

  于是我就想,能不能用万能的python做一个命令行下的翻译工具?

  去做吧!

  在网上搜了一些资料,几经操作,终于弄出来了。看看最后的效果:

  在这个工具中,我使用了百度、有道和谷歌(可选)翻译。

  发展思路

  其中,有道翻译的获取原理和百度翻译类似。这里我们选择百度翻译来玩:

  接下来,右键单击检查并选择网络中的XHR(发送到服务器的数据请求)。然后我们在输入框中输入save这个词,一会儿就可以看到里面有几个sug标签。单击打开它:

  如您所见,这个sug请求包含了我们想要的数据。进去,请求URL就是我们需要请求的URL。另外,我们在Request方法中看到的,是POST方法,也就是提交表单:

  移动到最后,我们看到提交的表单参数:

  在表单数据中,我们看到表单是一个字典:{kw: save},其中save是我们要查询的单词,所以我们使用requests.post来模拟这个请求:

  # URL和表单

  url=https://fanyi.baidu.com/sug

  Form_data={kw: word}

  #发布请求网站的方式

  response=requests.post(url,data=Form_data,headers=headers)

  我们可以试着把返回的东西打印出来,你会发现是以json格式返回的,所以需要引入内置库JSON进行解析:

  content=JSON . loads(response . text)#以字典形式加载

  在打印出来的json格式文本中,我们发现翻译结果在[data][0][v](刚才图片中我们也看到了)。接下来,我们提取并返回它:

  result=content[ data ][0][ v ]#获取翻译结果

  回送结果

  这样就完成了提交表单,实现了百度翻译。

  下面是一些常用的爬虫分析和操作,有些翻译基本相似,这里就不赘述了。具体操作请参考本文末尾给出的完整代码。

  接下来我们来看看独特的Google Translate,有点复杂。谷歌翻译有api,但是要花钱.我不想为此付钱.网上有大佬给出了解决方案(这里我们简单看一下原理):

  操作方式与百度翻译类似,我们看到这里有一个额外的请求,它包含了我们想要的翻译结果:

  让我们回到之前的请求URL,找到之前的直接副本。q是我们需要翻译的词,但是这个tk参数是一个棘手的参数。我的代码使用的解决方案是在线的,我是模仿Google Translate页面上提供的函数用JavaScript计算这个参数的(我怀疑他只是拿了前端源代码,没有仔细对比)。

  那么如何在python中执行JavaScript代码呢?我们可以使用库pyexecjs(注意这个库的导入名是execjs)。这部分的源代码在Py4Js类中。

  特别是因为不能直接使用Google Translate,所以我把它设为可选,默认不会调用。

  施用方式

  我已经将这个项目发布到pypi,您可以通过pip命令如下安装它:

  pip安装快速翻译

  用起来也很简单(加-g增加谷歌翻译结果):

  Trans -t,你要翻译什么

  示例:

  你好

  =========================

  有道翻译结果:你好

  百度翻译结果:[n ho]您好;你好;你好;

  =========================

  $ trans -t你好-g

  =========================

  有道翻译结果:你好

  百度翻译结果:[n ho]您好;你好;你好;

  谷歌翻译结果:你好

  =========================

  本案例完整代码:https://github。com/py nickle/amazing-python/blob/master/Gooey/translate _ app/quick translate。巴拉圭

  点安装命令:

  点安装快速翻译

  作者:皮尼克

  -

  一起学,走得远!

  欢迎搜索:Crossin的编程教室

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: