反编译微信小程序,win电脑解析获取微信小程序源码

2022年5月17日14:14:43 29
广告也精彩

好不容易写的小程序然后忘记保存被删了怎么办?不要慌这里就教你怎么搞。

环境准备

1、node 环境准备

Node下载地址

安装后将nodejs设置为环境变量。

打开cmd,测试是否安装成功:在命令行输入node -v 出现版本号说明已经安装成功。

2、反编译工具

反编译软件下载

下载下来解压到某个位置就可以了,下面有操作方式

!!小程序用户请到电脑端获取!!!

此处为隐藏的内容!
发表评论并刷新,才能查看

具体操作

1、先用电脑版微信打开一下小程序

打开你的微信安装位置(可以查看微信设置文件管理),然后找到缓存到本地的小程序包路径,一般都是在微信PC安装目录\WeChat Files\WeChat Files\Applet

查找微信小程序加密包(在applet文件夹内):

以上每个文件夹代表一个微信小程序,文件夹名为小程序的appid,用手机查看小程序的appid

2、解密小程序包

这里的小程序包我们还不能进行反编译,必须要通过 解密软件 修改一下才能反编译。将刚才的反编译工具解压并打开文件夹。

a、使用图中1的软件解密小程序包,选择需要解密小程序的包,包的结尾为.wxapkg

b、解密完成后会在图2中生成解密后的小程序包

c、进入图3wxappUnpacker-master目录内,在路径栏输入 cmd 自动打开当前目录的命令窗口了。

反编译一下主包,输入一下命令:

  1. node wuWxapkg.js ..\wxpack\master-app.wxapkg

注意:master-app.wxapkg 换成想 a 那里解密后的小程序包名称。

运行停止后在改目录下会生成你编译的小程序文件夹,里边就是编译后的源码。

导入到开发者工具就行了。

 

部分报错

1、app.js错误: TypeError: _typeof3 is not a function

修改@babel/runtime/helpers/typeof.js

原先的文件内容是:

  1. //这里是有问题的程序
  2. function _typeof(o) {
  3.     return "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? module.exports = _typeof = function(o) {
  4.         return typeof o;
  5.     } : module.exports = _typeof = function(o) {
  6.         return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
  7.     }, _typeof(o);
  8. }
  9. module.exports = _typeof;

将这个文件里面的所有内容直接替换成下面的:

  1. function _typeof2(o) {
  2.   "@babel/helpers - typeof";
  3.   return (_typeof2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
  4.       return typeof o;
  5.   } : function(o) {
  6.       return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
  7.   })(o);
  8. }
  9. function _typeof(o) {
  10.   return "function" == typeof Symbol && "symbol" === _typeof2(Symbol.iterator) ? module.exports = _typeof = function(o) {
  11.       return _typeof2(o);
  12.   } : module.exports = _typeof = function(o) {
  13.       return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : _typeof2(o);
  14.   }, _typeof(o);
  15. }

 

 

 

 

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
ts小陈

发表评论(请规范评论)--评论需审核

:?: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :cry: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :neutral: :razz:

已登录用户不需要填写以下内容

目前评论:29   其中:访客  0   博主  0

    • me me 上海市 电信 1

      66666 可以的

      • me me 上海市 电信 1

        支持小陈,一定多分享

        • 1 1 山西省晋中市 联通 0

          未收费的

          • 无我而为 无我而为 广东省中山市 电信 0

            666,很实用

            • 士大夫 士大夫 河南省开封市 电信 0

              终于找到组织了,堪比全网最全

              • 小皇 小皇 湖北省武汉市 电信 1

                对小白真的很友好,写的很全面。

                • 小皇 小皇 湖北省武汉市 电信 1

                  • 晨木 晨木 北京市丰台区 联通 0

                    顶一下

                    • 11 11 北京市 联通 0

                      终于找到组织了,堪比全网最全