从Pyinstaller内部版本和.spec文件中恢复代码



我有Pyinstaller构建和pycache文件夹。我还有我的exe(作为onedir,而不是onefile(和Pyinstaller.spec文件。我如何从它们中获取代码?我不小心删除了它。请帮助

这应该不是什么大问题,因为有一些库可以帮助实现这一点。

  1. 从这里下载pyinstxtractor.py,然后运行pip install uncompyle6

  2. 现在打开您的目录并在此位置打开CLI,然后将pyinstxtractor.py复制到该目录并运行命令:

    python pyinstxtractor.py executable.exe
    
  3. 现在,将在目录上创建一个文件夹executable.exe_extracted,现在进入文件夹并在这个新位置打开CLI,然后运行命令:

    uncompyle6 executable.pyc
    
  4. 现在您的代码将是";反编译的";在CLI上,只需将其复制并粘贴到新的py文件中。

注意:

  • 还要记住,最好使用与创建项目相同的python版本,以获得更好的性能。

  • uncompyle6的另一个替代方案是decompyle3,它可以更好地使用在python 3.7+上编写的代码

更新:

如果您在使用decompyle3uncompyle6时遇到问题,请使用在线pyc反编译器,如pyc反编译器love数据工具或反编译器

另请注意:可以看出,反编译有时不起作用,因为一些pyc文件缺少必须插入到pyc文件中的魔术头(手动或使用代码(。

最新更新