Python爬虫实战之制作桌面翻译工具

image.png

前言

昨天写了两篇:

Python之百度翻译小爬虫

Python之有道翻译小爬虫

随手再加个Google翻译,然后把它们整合到一个Demo上,制作了一款简单的翻译软件。让我们愉快地开始吧~

开发工具

Python版本:3.6.4
相关模块:

requests模块;

pyqt5模块;

js2py模块;

以及一些Python自带的模块。

环境搭建

安装Python并添加到环境变量,pip安装需要的相关模块即可。

原理简介

百度翻译和有道翻译的原理就不再阐述了,这里就简单讲讲谷歌翻译的爬取原理。

简单测试一下,发现翻译结果是请求了下图这个链接返回的:

图片

该请求需要添加的参数很多,但只有:

sl,tl,tk,q

这四个参数是不固定的。其中q代表待翻译的词sl代表翻译的源语种,可设为auto(即自动检测),tl代表翻译的目标语种,为方便起见,这里只支持中译英(此时tl为en)和英译中(此时tl为zh-CN)。实现的逻辑为若待翻译词汇中含中文,则tl为en,否则为zh-CN。

最后再来说说tk,tk的是由一段js代码生成的,和百度翻译类似,q值决定了tk值,相关的js代码在一个名为desktop_module_main.js的js文件中:

图片

然后我偷懒直接从参考文献中copy了修改后的js代码来生成所需的tk值,最后实现谷歌翻译内容爬取的源代码如下图所示:

图片

然后将谷歌、有道、百度翻译整合起来:

图片

文章到这里就结束了,感谢你的观看,关注我每天分享Python模拟登录系列,下篇文章分享有道翻译小爬虫【更新】。

为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。

干货主要有:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

All done~完整源代码+干货详见个人简介或者私信获取相关文件。。

posted @ 2021-06-03 15:00  楚_阳  阅读(48)  评论(0编辑  收藏  举报