小程序反编译,轻松获取其他小程序的代码及图片

小程序反编译是什么

小程序反编译是我们通过脚本来获取某一个小程序的源码(代码都是经过压缩的)一般都是来获取样式、图片之类的。

免责声明

本次分享仅做学习使用,以上用例,为专用测试环境,请遵守国家法律!!!请不要用于任何非法用途, 否则后果自负。

一、获取__APP__.wxapkg的文件位置

windows系统获取比较简单,这里主要说一下mac系统获取的方式,我也是试了很多方案,目前找到一个我觉得还比较方便的方法,适合大多数用户。

获取别人小程序的appid

反编译的时候我们需要知道这个小程序的appid,具体流程如下图

获取之后这个小程序我们要在电脑端运行一下,这样前置准备工作就完成了

windows获取

然后进入对应的appid文件夹,然后复制__APP__.wxapkg的文件路径就可以了

mac 系统获取

首先我们打开终端,然后输入查找文件命令:find / -name "文件名" 这个文件名我这里输入我们上面获取的小程序的appid就可以了

js 复制代码
find / -name "文件名"

查找过程可能会比较慢,但我们只需要查询这一次就可以了,查找过程中可能会出现一些弹框问我们是否允许我们访问文件夹我们直接点允许就可以了,然后我们关注控制面板的输出,当我们发现我们查找的这个appid出现就证明已经找到了,然后我们复制这个地址,终止查询。

看到类似这样的文件地址就证明已经找到了,然后我们复制这个一个地址不要后面的appid

/System/Volumes/Data/Users/ah/Library/Containers/com.tencent.xinWeChat/Data/.wxapplet/packages

然后打开访达,然后点左上角的前往,然后点击前往文件夹,然后输入我们复制的地址,点击进去就可以了,然后里面会有很多appid,找到我们上面查找的appid 点击进去,然后再点击知道看到__APP__.wxapkg文件就可以了

看到这个文件之后我们要做的就是要复制这个文件的完整地址,右击这个文件,然后在终端中打开,然后输入命令 pwd | pbcopy,现在文件地址已经复制到剪切板了;

二、插件准备

插件git地址

clone 下来之后我们先 npm i 一下,如果安装失败可以试着调整下node版本,

然后再安装对应的依赖

复制代码
npm install esprima
    
npm install css-tree
    
npm install cssbeautify
    
npm install vm2
    
npm install uglify-es
    
npm install js-beautify

运行命令

js 复制代码
node wuWxapkg.js [-d] <files...>     //files 就是你想要反编译的文件名
js 复制代码
node wuWxapkg.js 后面就是我们上面复制的地址(/Volumes/LHZ/infinitePossibilities/mi/__APP__.wxapkg)

如果复制下来的地址没有__APP__.wxapkg 我们要补上 然后直接运行

编译完成后的代码都在这个文件里面,可以复制自己需要的东西。

这期只是讲了代码怎么拉取下来,后面我们在讲拉去下来的代码怎么去使用

相关推荐
晚霞的不甘2 分钟前
Flutter for OpenHarmony天气卡片应用:用枚举与动画打造沉浸式多城市天气浏览体验
前端·flutter·云原生·前端框架
weixin79893765432...4 分钟前
Vue 渲染体系“三件套”(template 模板语法、h 函数和 JSX 语法)
vue.js·h函数·template 模板·jsx 语法
xkxnq16 分钟前
第五阶段:Vue3核心深度深挖(第74天)(Vue3计算属性进阶)
前端·javascript·vue.js
三小河23 分钟前
Agent Skill与Rules的区别——以Cursor为例
前端·javascript·后端
Hilaku29 分钟前
不要在简历上写精通 Vue3?来自面试官的真实劝退
前端·javascript·vue.js
三小河36 分钟前
前端视角详解 Agent Skill
前端·javascript·后端
Aniugel1 小时前
单点登录(SSO)系统
前端
颜酱1 小时前
二叉树遍历思维实战
javascript·后端·算法
鹏多多1 小时前
移动端H5项目,还需要react-fastclick解决300ms点击延迟吗?
前端·javascript·react.js
serioyaoyao1 小时前
上万级文件一起可视化,怎么办?答案是基于 ParaView 的远程可视化
前端