这个小工具是在暑假写的,其实也没想太多,只是一个一个网站去翻译有点累。
本文总结一下编写的思路,主要涉及到的模块是urllib.request,urllib.parse和json,版本是python3。
以有道为例,说一下我写程序的思路:
1、导入模块
1.png
2、构建逻辑
其实我的主程序通常都写的很简单,喜欢把功能用函数封装。
在主函数里,我只写了一个用户输入的功能,然后代入youdao()去执行。
2.png
3、接口
其实常规的思路就是用google或者firefox的F12功能去抓一下post请求包
3.png
4.png
下面的Form Data里面的i参数,对应的就是需要翻译的内容,其他保持默认就好了,但是很可惜,现在这个Data已经不能用了,有道对这个做了限制,后来我找到了一个能用的:
5.png
这个Form data我们用一个字典来存储,这里注意的是i需要单独拿出来作为变量,因为我们是需要为它传入参数的,接着把这个请求发出去就可以了。
4、发送请求,处理发送和返回的数据
6.png
先放代码吧,这里主要是用urllib.parse模块先编码,接着urllib.request模块把URL和data作为参数传递给服务器,用html变量接收返回的数据,接着用json模块把封装成字典,最后根据返回的结果一步步把字典拆开就可以了。
5、处理完成
6.png
emmm,拆三层字典,取tgt的键值,不多说了。
6、整合
其实思路到这里很明确了,如果要做别的,修改一下Form_data和Request_URL就可以了,至于多合一,是这样实现的:
7.png
PS:翻译还是Google比较好用,只不过需要用户翻墙才能实现,还得靠大家的思路慢慢去改了。
网友评论