【Python教程】pyinstaller反编译教程

teaml
3
2025-06-28

图片[1]-【Python教程】pyinstaller反编译教程-松纸工作室博客

最近有人遇到了一个问题:我的python代码丢了,但是我有pyinstaller打包后的exe,怎么逆向获取源码?

经过工作室的长期研究,制作出了本期教程  

此方法仅适用于使用python3.12及以下版本打包的exe

本教程仅适用pyinstaller或auto-py-to-exe 如果是nuitka等其他工具就不用往下看了

本教程仅用于学习目的,请勿用于非法用途

  • 可选:

如果你的exe进行过套壳,那么现在就需要进行upx脱壳

 

UPX脱,套壳.zip

解压下载的“UPX脱,套壳.zip” 推荐解压缩软件:Bandizip

 

BANDIZIP-SETUP-STD-X64.EXE

图片[2]-【Python教程】pyinstaller反编译教程-松纸工作室博客

双击运行”jiake.exe”  upx.exe为重要依赖,请一并解压输出

下面就可以正式反编译了

 

pyinstxtractor.py

把这个文件放置到与你exe同个目录下

图片[3]-【Python教程】pyinstaller反编译教程-松纸工作室博客

在此处打开命令提示符

 cmd.exe

把它放到与你exe同个目录下,双击运行

 

在里面执行

python pyinstxtractor.py [你的exe名字].exe

 

执行后会输出一个类似这样的文件夹

图片[4]-【Python教程】pyinstaller反编译教程-松纸工作室博客

在里面搜索’你的代码文件名.pyc’注意,一定是’你的代码文件名.pyc’不要’你的exe文件名.pyc’,这样有概率搜索不到。

图片[5]-【Python教程】pyinstaller反编译教程-松纸工作室博客

 

下面就可以逆向出代码了

把cmd.exe复制到刚刚输出的文件夹内

执行命令

pip install uncompyle6

uncompyle6 你的代码文件名.pyc > recovered.py

这样你的程序代码就在recovered.py里面了

松纸工作室文章:【Python教程】pyinstaller反编译教程-松纸工作室博客

动物装饰