有道翻译js逆向解析

"""
Author:tanxin
Date:2021-9-23
js逆向破解
"""
import requests
import time
import random
import jsonpath
import hashlib
from fake_useragent import UserAgent

def youdao():
    """
    post参数:
    i: e(变量)
    from: AUTO
    to: AUTO
    smartresult: dict
    client: fanyideskweb
    salt: i(变量)
    sign: n.md5("fanyideskweb" + e + i + "Y2FYu%TNSbMCxc3t2u^XT") (变量)
    lts: r (变量)
    bv: t (变量)
    doctype: json
    version: 2.1
    keyfrom: fanyi.web
    action: FY_BY_REALTlME
    """
    url = 'https://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
    # 设置随机UA伪装
    UA = UserAgent().random
    HEADERS = {'User-Agent':UA}

    # 翻译文本 要被翻译的数据
    input_str = str(input('请输入翻译文本:'))
    # md5加密User-Agent,bv参数
    bv=hashlib.md5(bytes(UA,encoding='utf-8')).hexdigest()
    # lts参数,以毫秒为单位的时间戳
    lts=str(int(time.time() * 1000))
    # salt参数,加盐,lts+(0,9)
    salt=lts + str(random.randint(0, 9))
    # sign参数 sign: n.md5("fanyideskweb" + input_str + salt + "Y2FYu%TNSbMCxc3t2u^XT")
    sign=hashlib.md5(bytes("fanyideskweb" + input_str + salt + "Y2FYu%TNSbMCxc3t2u^XT",encoding='utf-8')).hexdigest()
    # 参数
    data={
        'i':input_str,
        'from':'AUTO',
        'to':'AUTO',
        'smartresult':'dict',
        'client':'fanyideskweb',
        'salt':salt,
        'sign':sign,
        'lts':lts,
        'bv':bv,
        'doctype':'json',
        'version':'2.1',
        'keyfrom':'fanyi.web',
        'action':'FY_BY_REALTlME'
    }
    print(input_str,salt,sign,lts,bv)
    # 发送请求
    response=requests.post(url=url,headers=HEADERS,data=data)
    print(response.json())


if __name__ == '__main__':
    youdao()
js代码:
    var r = function(e) {
        var t = n.md5(navigator.appVersion)
          , r = "" + (new Date).getTime()
          , i = r + parseInt(10 * Math.random(), 10);
        return {
            ts: r,
            bv: t,
            salt: i,
            sign: n.md5("fanyideskweb" + e + i + "Y2FYu%TNSbMCxc3t2u^XT")
提示js代码可能不一致需要自己调整
注意:如果返回50代码,可以将    url = 'https://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule',_o删除即可
参考网址:https://blog.csdn.net/weixin_44327634/article/details/109258987
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值