前言:这篇博文已经被转载很多了,但是原文正在更新,大师的脚本也在更新。很多文章转载后就不再更新了。查看前面的步骤可能会导致奇怪的错误。
此方法无法反编译所有小程序源码,请注意!
具体限制请参见:的md文件
以下为原文:
最近在学习微信小程序开发。经过半个月的学习,我实在是想尝试一下其中的坑,于是就模仿了滴滴的轻骑单车小程序的前端实现。这个过程很难描述,花了将近两周的时间。 ,我发现小程序的陷阱远比我想象的多! !在实际操作中,它完全是黑匣子。在看到别人网上小程序的效果后,我纯粹靠猜测。有些效果绞尽脑汁也能大致实现,但有些细节却费尽全力也达不到。 。真想看一眼源码,一探究竟,看看大厂的前端高手是如何避免小程序中各种奇奇怪怪的陷阱的。
于是我想到了获取小程序的源文件,然后反编译恢复成源代码作为学习参考。我在百度上搜索过各种小程序的反编译教程,但感觉没有一个适合我这样的初学者,而且遇到了很多坑。这里记录一下我重新简化的快速获取微信小程序源码的方法。
1. 简单说一下。
我们首先思考一个很简单的问题,小程序的源文件存放在哪里?
但在微信服务器上,普通用户想要获取肯定是非常困难的。还有其他办法吗?
那么如何在手机上找到小程序的源文件包呢?
2、准备材料
1.node.js运行环境
2.反编译脚本
3. 模拟器(需要root权限)
3. 详细步骤
使用模拟器获取.file
无需越狱或root。在电脑上使用模拟器是一种非常简单、快速且通用的获取方式。具体步骤如下:
1.打开已安装的模拟器,在模拟器中安装QQ、微信、RE管理器
2. 设置模拟器
3、接下来在模拟器中打开微信,然后在微信中运行你想要获取的程序(这实际上是让微信从服务器下载小程序的源文件包到本地)
4.使用反编译脚本解包
(节点命令行如图)
(不是上面带有绿色图标的 Node.js)
打开node命令行后,可以看到此时命令行所在的目录:
(图中是我的命令行目录。注意:这个路径最好不要有汉字。众所周知,中文路径经常会引起一些奇怪的bug。如果路径有汉字,请自行解决)
将反编译使用的脚本放在上图目录中(这个目录根据你的实际目录而定,图片是我的目录):
(在的脚本中,后缀为.js.json的文件是有用的文件,其他文件是需要的文件,当然都是可以解压的!这里我只解压了后缀为.js的文件。 json)
(注意:文件名中不能有空格,有的文件名中有空格,请自行去掉空格,或者将文件名改为其他名称)
然后在微信开发者工具中添加一个新项目并打开
如果运行出现问题:
1.你可以尝试一下。单击“开发者工具详细信息”,取消选中“es6 到 es5 转换”复选框,并选中“不验证安全域名”复选框。
2、检查了还是不能运行?那么请在细节部分将基础版本库降低到1.5左右再尝试。
3、有些文件找不到怎么办?我只能告诉你:删除!删除!删除!应用程序.json
里面提示找不到文件,所以暂时删除注册的页面语句。删除
直到可以运行为止
4.还是跑不了?那就自己想办法吧!
5.分两步即可完成
至此,我们就通过非常简单的方式获得了想要的小程序源文件,并对其进行了反编译和恢复。然后我们要反编译其他小程序。它非常快,只需要两步。
1.使用模拟器找到.file
2.使用反编译脚本反编译.file
使用这种方法,大部分小程序都可以正常反编译,但也会有一些特殊情况。详情可以查看的档案。
6.写在后面的话
早在跳一条小游戏流行的时候,就有人利用小程序的版本号和版本号构造一个URL,直接从服务器下载小程序的源代码文件。但这个方法很快就被封锁了。
在线源代码可以很容易获得。不得不说,小程序的源码安全存在一些隐患。有些小程序会将重要的js逻辑代码放在一个js文件中。这样一来,即使获得了源代码,阅读起来也很困难,但是现在越来越多的小程序使用wepy等框架进行开发,这使得代码安全性提高了很多。
这里介绍的方法仅供像我这样的小程序新手学习练习模仿,并有所收获
采取仿制材料。前段时间,有位大哥加了我微信,寻求反编译方面的建议。出于热情,我给了他一步一步的指导。
教他如何操作并为他解答问题。后来我通过他的朋友圈了解到,他私下经营着一家小程序源码超市。
获得的源代码用于销售和赚取利润。购买源码的人只需要进行简单的修改和替换即可
自己的小程序。 。 。这让我感到内疚
小程序作为微信生态的生力军,不仅受到官方政府的厚望,也受到众多开发者和内容创业者的厚望。考虑到代码的安全性,我不确定这里的获取方式以后是否还能用。