摘要

安装wxappUnpacker小程序反编译工具并使用(2020.03)

关键词: 微信小程序反编译 wxss

介绍

上次分享了web前端爬取工具 ,那么这次也同样讲讲微信小程序反编译吧,对于像博主这种审美奇低且前端技术渣渣的人来说,实在是利器呀。不过尽量只是反编译来学习研究啦!

安装反编译脚本

首先,得先了解下怎么安装,内容过长,我就不Ctrl CV了(主要是安装简单,成功并且完美地编译难)

完美地反编译出来难就难在微信小程序一直更新,但是编译工具又是旧的

First,终于成功了,分享一波超详细小程序源码获取方法——图文!

如果想省事,安装nodejs之后直接下载下面的链接的文件替换掉你的反编译工具:

https://gitee.com/Sao-operation/wxappUnpacker/repository/archive/master.zip

如果你只是样式编译出问题了(就是page的wxss都是空白的),那么

  • 修改wxappUnpacker文件中的 wuWxss.js
function runVM(name, code) {
// let wxAppCode = {}, handle = {cssFile: name};
// let vm = new VM({
// sandbox: Object.assign(new GwxCfg(), {
// __wxAppCode__: wxAppCode,
// setCssToHead: cssRebuild.bind(handle)
// })
// });
// vm.run(code);
// for (let name in wxAppCode) if (name.endsWith(".wxss")) {
// handle.cssFile = path.resolve(frameName, "..", name);
// wxAppCode[name]();
// } let wxAppCode = {};
let handle = {cssFile: name};
let gg = new GwxCfg();
let tsandbox = {
$gwx: GwxCfg.prototype["$gwx"],
__mainPageFrameReady__: GwxCfg.prototype["$gwx"], //解决 $gwx is not defined
__vd_version_info__: GwxCfg.prototype["$gwx"], //解决 __vd_version_info__ is not defined
__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]();
}
}
}

使用

获取wxapkg文件

  1. 安装夜深模拟器(但是这里有个问题,夜深模拟器可能用不了,我只记得是多开器里开一个新的才行,而且以后每次使用都得切换成那个新的)

  2. 打开夜深模拟器登录微信,点击需要学(piao)习(qie)的微信小程序

  3. 打开RE文件管理器(没有的话就先安装吧),到如下目录,打开这个看着名字是十六进制且很长的文件夹(每个人的会不一样)

  4. 进入如下目录,选择wxapkg文件(注意日期,例如红线部分意为6月17日)

  5. 想办法把wxapkg文件从夜深模拟器里发送到你的能找到到电脑文件夹里吧

反编译

  1. 第一步

    打开nodejs

    跳转到反编译脚本的目录,例如反编译脚本呢放在D盘,且反编译脚本文件夹名为”wxappUnpacker“,如果是Windows系统( 如果是Linux去掉下面那个蛋疼的 /d),则在node.js command pormpt输入:

    cd/d D:\wxappUnpacker

    cd D:\wxappUnpacker
    cd D:
  2. 第二步

    跳转到反编译脚本的根目录之后,在电脑文件夹里找到wxapkg文件,例如wxapkg文件放在D盘,且文件名为_000000_1.wxapkg,则在node.js command pormpt输入:

    node wuWxapkg.js -d D:\_000000_1.wxapkg

    再回车

  3. 第三步

    最后去找和.wxapkg文件相同路径下的同名文件夹,该文件用微信开发者工具打开即可。

结论

反编译...真香(我这是馋他的代码吗,我这是在学习研究)

参考资料

终于成功了,分享一波超详细小程序源码获取方法——图文:顺毛驴_dedc

反编译微信小程序错误: $gwx is not defined和__vd_version_info__ is not defined 已解决

微信小程序反编译~2020年的更多相关文章

  1. 如何找回微信小程序源码?2020年微信小程序反编译最新教程 小宇子李

    前言:在网上看了找回微信小程序源码很多教程,都没法正常使用.微信版本升级后,会遇到各种报错, 以及无法获取到wxss的问题.查阅各种资料,最终解决,于是贴上完整的微信小程序反编译方案与教程. 本文章仅 ...

  2. 微信小程序反编译

    看到一个有意思的小程序,想了解是如何实现的,于是找了反编译方法. 安装adb驱动 百度安装adb驱动, 设计设置开发者模式,连接电脑. -> % adb devices List of devi ...

  3. 微信小程序 - 反编译线上源码

    github地址:https://github.com/qwerty472123/wxappUnpacker 不过我好像从来未成功过哈,TX地图+.TX公交都失败了 点击下载以上两个文件 哦,对了,你 ...

  4. 微信小程序“反编译”

    https://www.jianshu.com/p/ad8f417219e9 https://segmentfault.com/a/1190000018592740?utm_source=tag-ne ...

  5. 获取微信小程序源码

    https://blog.csdn.net/aaron9185/article/details/80576183 http://lrdcq.com/me/read.php/66.htm https:/ ...

  6. 我为什么不看好微信小程序

    我自认为对新技术还是比较有热情的,可对于小程序这个“新技术”,我却完全是被动的.去年9月份的时候,微信小程序开始内测,瞬间引爆朋友圈.知乎等一众分享平台.当时我大概了解了一下,觉得从技术角度上来说没啥 ...

  7. 微信小程序为什么不被看好?

    我自认为对新技术还是比较有热情的,可对于小程序这个“新技术”,我却完全是被动的.去年9月份的时候,微信小程序开始内测,瞬间引爆朋友圈.知乎等一众分享平台.当时我大概了解了一下,觉得从技术角度上来说没啥 ...

  8. 微信小程序资源整理

    微信小程序相关的文档.教程.开源项目等资源的整理,以便于开发学习使用. —— —— 收录仅作个人学习使用,涉及侵权行为及时联系: maple_6392@163.com 项目地址:GitHub | 码云 ...

  9. 微信小程序学习 动手撸一个校园网小程序

    动手撸一个校园网微信小程序 高考完毕,想必广大学子和家长们都在忙着查询各所高校的信息,刚好上手微信小程序,当练手也当为自己的学校做点宣传,便当即撸了一个校园网微信小程序. 效果预览 源码地址:Gith ...

随机推荐

  1. 一起玩转微服务(10)——spring boot介绍

    对于Spring,相信大家都非常熟悉,从出现开始,一直是企业级开发的主流.但是随着软件的发展和应用开发的不断演化,它的一些缺点也逐渐胡暴露了出来,下面,我们就一起看一下Spring的发展历程并且认识一 ...

  2. MySql索引要注意的8个事情

    设计好MySql索引可以让你的数据库查询效率大为提高.设计MySql索引的时候,有一些问题需要值得我们注意的: 1,创建MySql索引 对于查询占主要的应用来说,索引显得尤为重要.很多时候性能问题很简 ...

  3. 硬件对同步的支持-TAS和CAS指令

    目录 Test and Set Compare and Swap 使用CAS实现线程安全的数据结构. 现在主流的多处理器架构都在硬件水平上提供了对并发同步的支持. 今天我们讨论两个很重要的硬件同步指令 ...

  4. Java工具类—包装类

    Java工具类--包装类 我们都知道,JDK 其实给我们提供了很多很多 Java 开发者已经写好的现成的类,他们其实都可以理解成工具类,比如我们常见的集合类,日期相关的类,数学相关的类等等,有了这些工 ...

  5. DOM-BOM-EVENT(4)

    4.dom操作 createElement 创建一个元素 <button id="btn">点击</button> <ul id="ul1& ...

  6. SQL中的ON DUPLICATE KEY UPDATE使用详解

    一:主键索引,唯一索引和普通索引的关系主键索引 主键索引是唯一索引的特殊类型. 数据库表通常有一列或列组合,其值用来唯一标识表中的每一行.该列称为表的主键. 在数据库关系图中为表定义一个主键将自动创建 ...

  7. linux terminal---EOF

    we can use cat and eof to enter multiple lines content once.

  8. 常见的H5移动端Web页面Bug问题解决方案总汇

    解决jquery ajax调用远程接口的跨域问题 首先,接口必须允许远程调用.这是后端或者运维的事情.你必须保证你得到的一个接口是允许远程调用的.否则,就没啥了. $.ajax({ type:'get ...

  9. 虚拟机中Linux环境搭建

    Linux系统搭建 作为一名软件测试资深工程师,在日常工作中离不开对测试环境的操作.我们测试的软件,系统都是部署在linux系统环境上,我们掌握Linux系统的日常操作是非常必要的.那么在学习Linu ...

  10. CSS让一个图片显示在另一个图片上面

    思路,在两个图片的父元素上设置  position:relative  , 然后给小图片设置 position:absolute ,位置通过top,bottom,left,right来修改,然后用  ...