有道翻译web端 爬虫, js

发布时间:2023年12月28日

以下内容写于2023-12-28, 原链接为:https://fanyi.youdao.com/index.html#/

1 在输入框内输入hello world进行翻译,通过检查发出的网络请求可以看到翻译文字的http接口应该是:

2 复制下链接最后的路径,去js文件中搜索下:

可以看到这里是定义了一个函数B来做文字的翻译接口函数,查询附近的代码可以发现存在一个t["a"]的map, key为decodeData,value为函数R,在函数R处下断点,改变输入框的输入,发现代码在此处断下.查看断点内容:

记录此处t的值可以发现该参数的值为1中返回的值,那么可以得出结论该函数负责对翻译后返回的加密字符串做解密

3 分析函数R可以得出该函数需要三个参数,分别为密文t,加密key o, 和加密向量n, 加密key为:'ydsecret://query/key/B*RGygVywfNBwpmBaZg*WT7SIOUP2T0C9WHMZN39j^DAdaZhAnxvGcCY6VYFwnHl',加密向量:'ydsecret://query/iv/C@lZe2YzHtZ2CYgaXKSVfsb7Y4QWHjITPPZ0nQp87fBeJ!Iv6v^6fvi2WN@bYpJ4', 加密方法为aes-128-cbc, 编写js方法进行验证:

至此,解密成功,在python中我使用的execjs库进行js方法的调用,如果觉得麻烦的话也可以使用寻找python的加解密方法来进行替换以提高执行效率,这里博主省事直接使用crypto库进行加解密

文章来源:https://blog.csdn.net/developer_zhao/article/details/135260990
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。