【python】js逆向基础案例——有道翻译

有道翻译接口逆向 这边花时间最多的就是寻找 webtranslate 返回内容的解密方法,需要熟练运用 chrome 提供的工具,查询每一个方法的作用,但是只要细心点一定会成功的。点进去之后找到了sign 这个参数,sign 是由于 k(o,e) 这个方法生成的,再网上找方法,最后发现确实是 md5 加密而来的。所以自动化翻译需要两个接口来实现,第一步先获取加密的key,之后再请求翻译接口,除了sign,其他的都是写死的。**对原始数据进行的任何改动,甚至是一个字节的修改,都会导致MD5值显著不同。 阅读详情

前言

嗨喽,大家好呀~这里是爱看美女的茜茜呐

课程亮点:

1、爬虫的基本流程

2、反爬的基本原理

3、nodejs的使用

4、抠代码基本思路

环境介绍:

  • python 3.8

  • pycharm 2022专业版 >>> 免费使用教程文末名片获取

  • requests >>> pip install requests

  • nodejs

思路流程:

apple

  1. 请求加密

    我们传过去的 内容 经过了一段js加密(在浏览器执行的) 变成了密文 再到服务器 对比

    如果对比结果一致 返回内容

  2. 响应加密

    返回的这个内容 有可能会经过加密(在服务器)

    返回给浏览器(我们是能够看到明文/苹果的)

    所以在浏览器端 是肯定有解密方法的 我们只需要 找到这个解密方法的来源 把加密方法抠出来本地调用即可

请求是啥样子: 翻译接口的请求

代码展示:

import hashlib
import time
import requests
import execjs
import json
import base64

f = open('demo.js', mode='r', encoding='utf-8').read()
ctx = execjs.compile(f)
ts = int(time.time() * 1000)
arg1 = f'client=fanyideskweb&mysticTime={ts}&product=webfanyi&key=fsdsogkndfokasodnaso'
完整源码、解答、教程皆+VX:pytho8987获取,记得验证备注“777”
sign = hashlib.md5(arg1.encode()).digest().hex()

cookies = {
    'OUTFOX_SEARCH_USER_ID_NCOO': '1036908156.9092367',
    'OUTFOX_SEARCH_USER_ID': '-1116526953@175.0.62.184',
}
headers = {
    'Accept': 'application/json, text/plain, */*',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    'Cache-Control': 'no-cache',
    'Connection': 'keep-alive',
    # Requests sorts cookies= alphabetically
    # 'Cookie': 'OUTFOX_SEARCH_USER_ID_NCOO=1036908156.9092367; OUTFOX_SEARCH_USER_ID=-1116526953@175.0.62.184',
    'Origin': 'https://fanyi.youdao.com',
    'Pragma': 'no-cache',
    '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/114.0.0.0 Safari/537.36',
    'sec-ch-ua': '"Not.A/Brand";v="8", "Chromium";v="114", "Google Chrome";v="114"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Windows"',
}

data = {
    'i': '苹果',
    'from': 'auto',
    'to': '',
    'domain': '0',
    'dictResult': 'true',
    'keyid': 'webfanyi',
    'sign': sign,
    'client': 'fanyideskweb',
    'product': 'webfanyi',
    'appVersion': '1.0.0',
    'vendor': 'web',
    'pointParam': 'client,mysticTime,product',
    'mysticTime': ts,
    'keyfrom': 'fanyi.web',
}
# 完整源码、解答、教程皆+VX:pytho8987获取,记得验证备注“777”
# 应该是在一个时间段内 会进行参数的校验
response = requests.post('https://dict.youdao.com/webtranslate', cookies=cookies, headers=headers, data=data)
text = response.content.decode('utf-8')
json_str = ctx.call('deSign', text)
json_data = json.loads(base64.b64decode(json_str).decode())
print(json_data)

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

JS逆向实战:从有道翻译接口分析到通用爬虫加密参数破解 JS逆向是爬虫与数据采集领域的关键技术,其核心在于通过分析网页前端JavaScript代码,理解并复现数据请求的加密逻辑。这项技术主要应对网站为保护接口而设置的反爬机制,如参数签名、代码混淆和环境检测等。其技术价值在于能够绕过官方API的调用限制,实现稳定、高效的数据获取,广泛应用于翻译工具、内容聚合、电商价格监控及社交媒体数据采集等场景。本文以有道翻译这一经典案例为切入点,详细拆解了sign、salt、bv等关键参数的生成原理,并提供了从抓包定位、算法分析到代码移植的完整实战路径。通过掌握这套方法,开发者 阅读详情

相关推荐

【js逆向爬虫】-有道翻译js逆向实战

毕加锁(锁!)今天给大家带来的是【js逆向爬虫】-有道翻译js逆向实战。

weixin_69999177的博客 3756

【2023最新教程】超详细!!!有道翻译js逆向

【2023最新教程】超详细!!!有道翻译js逆向 AES解密 md5加密

m0_73689941的博客 2622

web爬虫逆向笔记:js逆向案例三 有道翻译(MD5加密、AES解密)

2、整合封装代码 3、使用python调用验证请求

qq_49268524的博客 1104

有道翻译js逆向

有道翻译最新js逆向 前台识别。

weixin_59419135的博客 2400

潇洒郎: 待分享2

一学必会——某道翻译逆向成功案例

潇洒郎的博客 177

【python】python结合js逆向,让有道翻译成为你的翻译官,实现本地免费实时翻译

有道翻译估计大家经常用,但是每次要登录其网站也显得比较麻烦,本文就详细讲解下怎么逆向出有道翻译接口,在本地轻松使用有道翻译

景天科技苑 5043

【2023.6】简单js逆向之百度翻译、有道翻译

这是我在学习js逆向当中,作为新手的练习项目。在完成后记录一下。如果有兴趣的小伙伴,有错误的地方或者有更好的方法,欢迎指正分享!!!

bukaqi的博客 2717

逆向实战:Soul聊天协议加密与Frida绕过检测技术解析

本文详细解析了Soul聊天协议的逆向工程实战,重点介绍了使用Frida绕过检测技术的具体方法。通过IDA和JADX进行静态分析,结合Frida动态调试,揭示了数据加密与解密的核心逻辑,并提供了完整的逆向工作流和实用技巧,帮助开发者深入理解协议逆向过程。

weixin_29260291的博客 927

JS逆向入门实战:从有道翻译案例解析MD5与AES加密

在Web开发与数据采集领域,加密技术是保障数据传输安全的核心机制。MD5作为一种广泛使用的哈希算法,通过将任意长度数据映射为固定长度摘要,确保数据完整性;而AES作为对称加密标准,则通过密钥对数据进行高强度加解密,保障信息机密性。这两种技术在反爬虫机制中尤为关键,网站常利用它们对接口参数和响应数据进行签名与加密,以验证请求合法性并保护数据。掌握其原理与实现,不仅能深化对Web安全的理解,更是进行JS逆向、接口模拟等工程实践的必备技能。本文以有道翻译接口为例,详细拆解其如何组合运用MD5生成动态签名、AES加

weixin_27722377的博客 753

AI Agent在智能投研中的实战:多智能体信息整合与策略生成

那么,什么是AI Agent?简单来说,AI Agent是一种能够感知环境、做出决策并采取行动的自主系统。自主性:能够在没有人类直接干预的情况下运行,对自己的行为和内部状态有一定的控制权。反应性:能够感知环境的变化,并及时做出反应。主动性:不仅能够对环境变化做出反应,还能够主动地设定目标并采取行动实现这些目标。社会性:能够与其他Agent(包括人类和人工智能)进行交互、协作和竞争。它们可以全天候不间断地监控和处理海量信息,大大提升信息处理能力;

AI大模型应用之禅 193

第八篇 永磁同步电机控制-MTPA、MTPV

MTPA 的全称是 Maximum Torque Per Ampere,即 最大转矩电流比控制。核心思想:在输出特定转矩时,通过控制定子电流的幅值和相位(即d轴和q轴电流的分量),使得所需要的定子电流幅值最小。通俗理解:就是用“最省电”的方式产生所需要的力矩。就像开车时,找到一个最合适的油门和档位配合,使得在输出相同动力时,油耗最低。

深耕汽车电子:AUTOSAR、电机控制,助力数字汽车 1875

JS逆向实战:从有道翻译接口签名破解到Python实现

接口签名验证是现代Web应用保障API安全性的核心机制之一,其原理是通过对请求参数进行加密运算生成唯一签名,服务器端以相同规则验签,从而防止数据篡改与重放攻击。在技术实现上,常采用MD5、SHA等哈希算法结合时间戳、盐值等动态因子,为接口调用提供基础安全保障。对于前端开发者、爬虫工程师及安全研究人员而言,掌握JS逆向技术具有重要价值,它能帮助理解前端加密逻辑,实现自动化数据采集与第三方服务集成。在实际应用场景中,如在线翻译、数据爬取、自动化测试等领域,常需逆向分析前端JavaScript代码以复现签名算法。

weixin_42706667的博客 530

工作之余的随想:AI 会终结 SAP 顾问吗?

本文是笔者工作之余的一些胡思乱想。昨晚(准确的说是今日凌晨),我又熬了一个夜。没办法,接到一个影响客户项目上线的紧急 incident,花了我好长时间,竟然一点头绪都没有。苦苦思索的过程,时间过得飞快。一转眼就晚上11:30 了。要说我 2007 年还在研三实习期间,就进入了 SAP 行业,到今天已经摸爬滚打 18 年了,按理说也算身经百战了,可以说处理过很多 SAP 客户使用系统时遇到的各种稀奇古怪的问题。但即便这样,我也时常在工作中遇到一开始感到无从下手的问题。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1266

JS逆向必会基础案例 | 有道翻译参数破解

目录

shine4869的博客 1851

SAP 针对不同行业(制造业、零售业、金融业)推出了专属的云解决方案,以下是各行业的核心方案与特点

SAP推出行业专属云解决方案:制造业(SAP Digital Manufacturing Cloud)提供AI排产与质量预警,降低缺陷率;零售业(S/4HANA Cloud零售版)实现AI预测补货与全渠道库存同步,减少浪费;金融业(Business ByDesign)支持合规自动化与实时风控,降低审计成本。各方案均采用云原生架构,典型案例显示实施效果显著。

金牌架构师 494

强化学习(Reinforcement Learning)与动态系统控制方法

一个具体的 RBC 的例子是自动驾驶汽车中的交通规则。在训练过程中,代理通过与环境交互获取奖励信号,并学习如何在某个状态下采取最佳的行动,以最大化长期的累积奖励。在化工过程中,通过对生产过程中的温度、压力、流量等参数的控制来实现产品的质量和产量的提高。需要注意的是,以上代码只是一个简单的示例,实际的 MPC 系统可能会更加复杂,并包含更多的模型预测和控制算法来实现更复杂的控制任务。需要注意的是,以上代码只是一个简单的示例,实际的自动驾驶汽车系统可能会更加复杂,并包含更多的规则和条件来确保安全行驶。

AI天才研究院 4065

从零开始学逆向,js逆向启蒙:有道翻译

js、pythonpycharm、chrome浏览器F12调试、chatgpt(补充js第三方库,转python)、node.js(js运行)(必须)学习掌握基本js逆向知识。;原因:1、平台加密相对而言,比较简单。2、但是相较于一般平台,已加入了混淆;适合入门进阶能够了解逆向的整体流程和手段。具有一定指导性意义;chatgpt在逆向中的应用。通过xhr debug、栈debugger、事件定位等多种调试手段,在js文件中找到完整的核心js函数、变量。

没有蛀牙lm的博客 2249

大数据工程中的数据血缘分析工具比较

数据血缘(Data Lineage)是大数据治理中的核心组成部分,它描述了数据从源头到目标的完整流动路径。系统介绍数据血缘的核心概念和技术原理比较主流开源和商业数据血缘工具的功能特点提供数据血缘分析的实践指南和选型建议本文首先介绍数据血缘的基本概念,然后深入分析其技术原理和实现方法,接着比较主流工具的特点,最后通过实际案例展示应用场景。数据血缘(Data Lineage): 描述数据从源头到目标的完整流动路径,包括所有转换和处理步骤元数据(Metadata)

大数据洞察的博客 900

有道翻译超详细逆向解析

有道翻译的解析

2401_87946050的博客 2810

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

js逆向之--python有道翻译接口JavaScript解密

js逆向之python有道翻译接口JavaScript解密 工具:chrome 打开有道翻译http://fanyi.youdao.com/ F12打开开发者工具或鼠标右击->检查,找到Network一栏 输入字符串进行抓包 在Search中输入第三步的字符串,进行数据包关键词的搜索 此时可以猜测Form Data中ts:是时间戳,salt:时间戳+随机一位数字,sign和bv有加密,其它为固定值 i: 中国 from: AUTO to: AUTO sma

大壮 9493

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【60行代码解决】最新版python爬虫有道翻译js逆向

少代码,简单点,能跑就行,不要太难

qq_44990881的博客 4647

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

JS逆向学习-「有道翻译」逆向详细处理过程

深入学习js逆向中,这里详细记录下个人针对 有道翻译的 加解密全过程以上方法仅用于学习参考。

DCSDA的博客 2815

【2019.05】JS逆向——破解有道翻译参数(sign)爬虫 超级详细

有时间了打算把有道、百度、Google翻译都搞一遍, 今天先试水有道翻译 打开地址: http://fanyi.youdao.com/ 1. js逆向分析 打开Chrome调试工具,然后随意输入一段文字,查看抓包结果。 发现是 post 请求 Request URL: http://fanyi.youdao.com/translate_o?smartresult=dict&s...

ybsde博客 3790

最新Python爬虫有道翻译JS逆向解析详细介绍版,附源码

2021-11可用 个人学习JS逆解析进行的练习

Yhb299的博客 2742
上一篇: python带你获取TripAdvisor旅游景点的真实评价
下一篇: 用Python做一个下载器,从获取数据到编写GUI界面
魔王不会哭
博客等级 码龄5年 6003粉丝 394原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值