艺恩票房API逆向
这里以单月票房为例:https://www.endata.com.cn/BoxOffice/BO/Month/oneMonth.html 逆向先观察响应:其请求表单或是请求头都无加密参数,响应结果为乱码,看着像十六进制数据,因此本次目标就是找寻解密这串数据的办法 可以通过XHR断点来找到对应代码位置,但是通过API发起程序去找更快,因为要做的是处理返回的结果,因此可以往下找,发现此处: e便是响应的结果 1 == (e = "{" == e[0] ? JSON.parse(e) : JSON.parse(webInstace.shell(e))).Status || 200 == e.Code ? r(e.Data) : 200 == e.code ? r(e.data) :...
记录一次Playwright的使用
Playwright介绍Playwright,微软旗下的开源自动化测试框架 来自知乎用户 Playwright是一个强大的Python库,仅用一个API即可自动执行Chromium、Firefox、WebKit等主流浏览器自动化操作,并同时支持以无头模式、有头模式运行。Playwright提供的自动化技术是绿色的、功能强大、可靠且快速,支持Linux、Mac以及Windows操作系统。 官方标语: Playwright enables reliable end-to-end testing for modern web apps.Any browser • Any platform • One API 在这次简短上手后立马转用此库,非常的强大好用 安装pip install playwright 安装完毕后,安装浏览器环境:python -m playwright install 即可开始使用 方便的录制功能安装完毕后,使用以下指令即可启动浏览器录制,会自动生成对应代码python -m playwright codegen python -m playwright...
哈希加密逆向案例学习-模拟登录返回及后续
目标地址:aHR0cHM6Ly93d3cuaGgxMDI0LmNvbS8= 模拟登录返回正常与非正常登录响应登录API及负载示例: POST https://user.hrdjyun.com/wechat/phonePwdLogin HTTP/1.1content-type: application/json{ "phoneNum": "18912345678", "pwd": "25f9e794323b453885f5181f1b624d0b", "t": 1669724122701, "tenant": 1, "sig": "6ae516c833cd58624d42f3351edef581"} 由于逆向目的在于,破解并生成加密参数,以正常请求API,因此以下为正常响应示例: {status: 3, message: "手机号还未注册", data:...
HMAC算法了解
初始HMAC 百度百科HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code)的缩写,由H.Krawezyk,M.Bellare,R.Canetti于1996年提出的一种基于Hash函数和密钥进行消息认证的方法,并于1997年作为RFC2104被公布,并在IPSec和其他网络协议(如SSL)中得以广泛应用,现在已经成为事实上的Internet安全标准。它可以与任何迭代散列函数捆绑使用。 最大特征便是,要求通信双方共享密钥KEY、约定算法、对报文进行HASH运算,形成固定长度的认证码。通信双方通过认证码检验来确定报文的合法性 代码实现JavaScript实现const crypto = require('crypto-js')function HMACEncrypt(text,key){ return...
使用PyExecJS为Python爬虫提供加密参数
初识PyExecJS 基于已成功逆向后的JS代码,可以直接生成对应的加密参数,而PyExecJS则是可以在Python脚本中执行对应JS脚本并返回结果。 PyExecJS可以指定不同的解析环境,这里推荐使用Node.js 安装、配置PyExecJS安装pip install pyexecjs 指定解释环境os.environ["NODE_PATH"] = os.getcwd()+"/node_modules" 将解释环境绑定为本地NODE包 print(execjs.get().name) 验证是否为Node,结果: Node.js (V8) 调用DEMOimport execjsimport osos.environ["NODE_PATH"] = os.getcwd() + "/node_modules"def get_it(text: str) -> dict: with open('./yd.js') as f: js_code =...
有道翻译API逆向
本文内容仅作学习参考,截止到2024年10月,网站内容及API已经改版,参考文章...
使用Express给Python提供API
Express 初步认识Express是一个简洁而灵活的 Node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具。使用 Express 可以快速地搭建一个完整功能的网站。 Express 官方文档教程参考:Node.js Express 框架 安装Express在项目目录中使用指令:npm install express --save来安装(--save和-S等效) DEMO//index.jsvar express = require('express');var app = express();app.get('/', function (req, res) { res.send('Hello World');})var server = app.listen(8081, function () { var host = server.address().address var port =...