小程序笔记(一)程序包wxapkg反编译2020.05版
作者:xlnxin发布时间:2021-12-03分类:其他教程浏览:1693
一. 准备工具:
1 node.js 运行环境
如果没有安装nodejs,请先安装。下载地址:https://nodejs.org/en/
测试成功否输入node -v查看node的版本号,以前安装过node.js然后找node.js安装目录:cmd-->where node
2.反编译的脚本
百度网盘:链接:https://pan.baidu.com/s/13-AYgHutvkOn36A-iGsQEQ 提取码:ie8w
3 提取wxapkg包
二. 接下来正式开始反编译
1 获取小程序wxapkg包:
详细方法请看链接:小程序笔记(二)程序包wxapkg获取方法
2.找到nodejs安装目录下的node_modules并把node_modules复制一份到之前下载的反编译脚本文件夹中(脚本中有node_modules,可删除后再复制,也可直接替换)
3.把反编译脚本文件丢到nodejs安装目录下(也可不丢)
6.切换到反编译脚本的目录后 ,在cmd窗口中依次安装以下依赖:
npm install esprima npm install css-tree npm install cssbeautify npm install vm2 npm install uglify-es npm install js-beautify npm install escodegen -g
7.然后执行反编译命令: node wuWxapkg.js xxxxxxx.wxapkg,如图:
E:\wxappUnpacker>node wuWxapkg.js _-729845724_25.wxapkg
8.小程序源码已经解压到了wxapkg的存放目录。
*注:
部分小程序反编译,会丢失wxss文件,也就是关键的样式文件。
同时会有报错提示 _vd_version_info__ is not defined 该问题是微信升级导致。
解决方案: 修改反编译目录下的wuWxss.js文件,修改RunVm方法为(本文章2020.05已经对wuWxss.js文件修改,后期如有问题请寻找升级版的runVM方法)
function runVM(name,code){ let wxAppCode={},handle={cssFile:name}; let tsandbox = { __vd_version_info__:"", $gwx:GwxCfg.prototype["$gwx"], __mainPageFrameReady__:GwxCfg.prototype["$gwx"], __wxAppCode__:wxAppCode, setCssToHead:cssRebuild.bind(handle) } let vm = new VM({sandbox:tsandbox}); vm.run(code); for(let name in wxAppCode){ if(name.endsWith(".wxss")){ handle.cssFile = path.resolve(frameName,"..",name); wxAppCode[name](); } } }
相关推荐
- 双击excel打开不显示任何内容,只能在excel里面打开文件解决方法
- 小程序saveVideoToPhotosAlbum安卓手机可以下载MP4苹果手机不能下载解决方法
- 小程序逆向错误之 typeof3 is not a function
- 小程序e.target.dataset和e.currentTarget.dataset区别
- EXCEL双击不能直接打开EXCEL文件解决办法
- 微信小程序function函数arguments 是什么意思呢?
- 微信小程序、app之间的跳转代码
- 小程序登录获取openid后再执行页面的方法
- 小程序Cannot read property 'enableUpdateWxAppCode'解决方法
- 微信小程序canvas绘制渐变背景颜色方法
- 其他教程排行
- 最近发表