现在有更好的解决方案

1
2
pip install pydumpck
pydumpck elf/exe/pyc..

可执行文件反编译脚本:

decompy下载

1
$ python decompy.py 可执行文件 

得到的PYZ-00.pyz_extracted文件夹包含而三方库

找dll文件确定python版本,用相应版本编译一个pyc或pyo文件,复制前8个字符的文件头,插入到py没有后缀的文件前,添加后缀pyc或pyo,再使用uncompyly6反编译py源代码。

uncompyly6支持1.3至3.9版本的反编译,安装方法:

1
$ pip install uncompyly6

(事实上,pip install uncompyle2 也会跳到安装uncompyle6)

使用

-o outfile必须先写,例如有一个pcat.pyc,想反编译输出文件为pcat.py:

1
$ uncompyle6 -o pcat.py pcat.pyc

或使用在线工具:

python反编译 - 在线工具 (tool.lu)

⬆︎TOP