有道翻译逆向案例

一 获取xhr中的webtranslate文件请求

二 发起请求

import requests

cookies = {
    'OUTFOX_SEARCH_USER_ID': '-714967047@58.22.0.172',
    'OUTFOX_SEARCH_USER_ID_NCOO': '971485064.0958748',
    'DICT_DOCTRANS_SESSION_ID': 'MGQyMWMyN2ItNTg4My00M2ZhLTg4MjYtMjAyY2FlNzlhNDI0',
}

headers = {
    'Accept': 'application/json, text/plain, */*',
    'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,ar;q=0.7',
    'Connection': 'keep-alive',
    'Content-Type': 'application/x-www-form-urlencoded',
    # 'Cookie': 'OUTFOX_SEARCH_USER_ID=-714967047@58.22.0.172; OUTFOX_SEARCH_USER_ID_NCOO=971485064.0958748; DICT_DOCTRANS_SESSION_ID=MGQyMWMyN2ItNTg4My00M2ZhLTg4MjYtMjAyY2FlNzlhNDI0',
    'Origin': 'https://fanyi.youdao.com',
    'Referer': 'https://fanyi.youdao.com/',
    'Sec-Fetch-Dest': 'empty',
    'Sec-Fetch-Mode': 'cors',
    'Sec-Fetch-Site': 'same-site',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36',
    'sec-ch-ua': '"Chromium";v="128", "Not;A=Brand";v="24", "Google Chrome";v="128"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Windows"',
}

data = {
    'i': '不',
    'from': 'auto',
    'to': '',
    'useTerm': 'false',
    'dictResult': 'true',
    'keyid': 'webfanyi',
    'sign': '4fa31a1c9966299a954e0c18e22a2aab',
    'client': 'fanyideskweb',
    'product': 'webfanyi',
    'appVersion': '1.0.0',
    'vendor': 'web',
    'pointParam': 'client,mysticTime,product',
    'mysticTime': '1725155442035',
    'keyfrom': 'fanyi.web',
    'mid': '1',
    'screen': '1',
    'model': '1',
    'network': 'wifi',
    'abtest': '0',
    'yduuid': 'abcdefg',
}

response = requests.post('https://dict.youdao.com/webtranslate', cookies=cookies, headers=headers, data=data)
print(response.text)

将其打印后会发现一个加密字符串

三 关键字进行搜索

O = (e, t, a) => {
    if (!e)
        return null;
    const o = l.alloc(16, T(t))
        , n = l.alloc(16, T(a))
        , r = i.createDecipheriv("aes-128-cbc", o, n);
    let s = r.update(e, "base64", "utf-8");
    return s += r.final("utf-8"),

查找到这个解密逻辑,其中我们可知道e就是加密数据,将这段js代码复刻到自己代码中即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值