有道翻译js逆向 {‘errorCode‘: 50}

先打开F12,然后随便打出个单词会发现网址没有变化,但页面刷新了,这是一个阿贾克斯的请求。如下图:

 ,上传的data如下:

 ,再随便打个单词,页面自动刷新,会发现上传的参数三个值有变化:

 找到加密参数就好办了,下面搜索sing参数:

 ,很幸运只有一个,点开js文件在sing加密参数处设置断点,然后刷新页面,会发现这是一个md5加密参数,sing由n.md5组成,也就是两个字符串+e+i组成的然后转换成md5加密参数,r是一个13位的时间戳,i是r+一个随机数也就是13位的时间戳加个随机数,e是要翻译的单词,

。先导入模块

 

 明白了sing组成方式就好写代码了。先设置e,i,r三个参数

lst是13位的时间戳,lalt是13位时间搓加个随机数, 

sing1是没加密前的参数,然后用hashlib.md5进行加密,打印出来看着没啥问题就该设置url,

 然后上传ua不然会报错418我是一个茶壶

hedas = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36',
'Cookie': 'OUTFOX_SEARCH_USER_ID=1036207011@10.169.0.81; OUTFOX_SEARCH_USER_ID_NCOO=759238958.129064; JSESSIONID=aaaGFBt2yOiUZ5cCazy3x; ___rl__test__cookies=1640012986394'
'Host: fanyi.youdao.com',
'Origin': 'https://fanyi.youdao.com',
'Referer': 'https://fanyi.youdao.com/'}
html = requests.post(url=url,headers=hedas,data=data).json()
print(html)

然后随便打个单词print一下,

成了OK完整代码如下: 

i = str(input("请输入要翻译的单词"))
lst = str(int(time.time()*1000))
salt = str(lst+str(random.randint(0,9)))
print(lst,salt)
sing1 = "fanyideskweb" + i + salt + "Y2FYu%TNSbMCxc3t2u^XT"
sing = hashlib.md5(sing1.encode()).hexdigest()

url = 'https://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
data = {
'i': i,
'from': 'AUTO',
'to': 'AUTO',
'smartresult': 'dict',
'client': 'fanyideskweb',
'salt': salt,
'sign': sing,
'lts': lst,
'bv': 'fdac15c78f51b91dabd0a15d9a1b10f5',
'doctype': 'json',
'version': '2.1',
'keyfrom': 'fanyi.web',
'action': 'FY_BY_REALTlME'
}
'OUTFOX_SEARCH_USER_ID=1036207011@10.169.0.81; OUTFOX_SEARCH_USER_ID_NCOO=759238958.129064; JSESSIONID=aaaGFBt2yOiUZ5cCazy3x; ___rl__test__cookies=1640016239015'
'OUTFOX_SEARCH_USER_ID=1036207011@10.169.0.81; OUTFOX_SEARCH_USER_ID_NCOO=759238958.129064; JSESSIONID=aaaGFBt2yOiUZ5cCazy3x; ___rl__test__cookies=1640016282352'
hedas = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36',
'Cookie': f'OUTFOX_SEARCH_USER_ID=1036207011@10.169.0.81; OUTFOX_SEARCH_USER_ID_NCOO=759238958.129064; JSESSIONID=aaaGFBt2yOiUZ5cCazy3x; ___rl__test__cookies={lst}'
'Host: fanyi.youdao.com',
'Origin': 'https://fanyi.youdao.com',
'Referer': 'https://fanyi.youdao.com/'}
html = requests.post(url=url,headers=hedas,data=data).json()
print(html)
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值