背景表述:工作需要在一个网站上填报数据,数据已经本地 excel 收集好,但是填报只能单项填写,故想用 python 编写小脚本程序批量提交。因工作原因无法放出网址。
1 、每次提交数据前,需要点开一个填表框架,会加载 2 个 JS 代码 NwVqIEYG3ebdApP.js ; crypto-js.min.js
2 、每次提交数据会产生一个值
seKey:e85cacbf856bec1835290aa45b56a8e20fe231a6b056b89df30b858ca83225d4774aa8a4ac069bb7dc003c561f069662
该值由上述两个 js 代码生成,但是 NwVqIEYG3ebdApP.js 是被混淆的无法正常读取,seKey 数据加密方式为 AES ,将代码扒下来后因为混淆无法在本地正常运行,求大佬支招。
但是在部分在线 JS 网站上是可以正常运行
https://jsrun.net/new?mode=black
代码放在这里 https://txtpad.cn/0716demo
1.本地使用 pycharm 专业版,已经安装 nodejs 插件,配置好环境变量,运行别的不加密的 JS 代码可以正常使用。
2.本地运行出现的问题如下
const _0x3d940d = CryptoJS[_0xfdc6('\x30\x78\x65', '\x7a\x65\x6a\x4d')][_0xfdc6('\x30\x78\x31\x35', '\x38\x4e\x6a\x5 d')]'\x70\x61\x72\x73\x65'; TypeError: Cannot read properties of undefined (reading 'Utf8')
本地使用 nodeJS 无法运行上述 js 代码,但是在线的部分网站可以运行,在线 JS 运行时要是标注解释器时 nodeJS 的也无法使用,是不是解释器和该代码冲突,如果是应该换用什么解释器,同时可以用 pycharm 编写后续 post 发包表单数据构造。
1.这种就可以正常运行出结果
2.这种是 nodeJS 的就不能
1 、求助大佬帮忙解答下,小白摸石头过河找不到方向,本地是否应该换另外一种 JS 编译器,是的话应该是什么; 2 、或者其他的解决办法,能在每次提交数据表单时获取到这个 seKey 值,seKey 是实时改变的,应该和时间戳有很大关系,但是源代码混淆了无法阅读。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.