Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
反编译Python 3.6 exe文件_Python_Python 3.x_Decompiler_Recover - Fatal编程技术网

反编译Python 3.6 exe文件

反编译Python 3.6 exe文件,python,python-3.x,decompiler,recover,Python,Python 3.x,Decompiler,Recover,我已经多次注意到这个问题,但没有一个答案适用于Python 3.6版本。在大多数情况下,当问到这个问题时,我无意中删除了我的.py源文件,但我仍然有一个用pyinstaller构建的.exe(只传递--onefile和--icon参数) 我设法做到了以下几点: 在我上面提到的.exe上运行。这给了我一堆文件,包括一个没有扩展名的文件,实际上是缺少神奇数字的源文件的.pyc 重命名没有扩展名的文件,以便具有.pyc扩展名 使用十六进制编辑器将幻数附加到.pyc文件,使用另一个.pyc文件的头(在

我已经多次注意到这个问题,但没有一个答案适用于Python 3.6版本。在大多数情况下,当问到这个问题时,我无意中删除了我的.py源文件,但我仍然有一个用pyinstaller构建的.exe(只传递--onefile和--icon参数)

我设法做到了以下几点:

  • 在我上面提到的.exe上运行。这给了我一堆文件,包括一个没有扩展名的文件,实际上是缺少神奇数字的源文件的.pyc
  • 重命名没有扩展名的文件,以便具有.pyc扩展名
  • 使用十六进制编辑器将幻数附加到.pyc文件,使用另一个.pyc文件的头(在本例中使用
    \uuuuuuuuuuuuuuuuuuuu
    )。看起来像
  • 在.pyc文件上运行uncompyle6,该文件现在具有正确的幻数,但操作失败,如图所示。一些代码被检索(约15%),但这一重要部分只是模糊的字节码
我遇到的任何其他工具都不适用于Python 3.6,例如Easy Python Decompiler、unpyclib和pyREtic

我没有设法使用pycdc/Decompyle++或Maynard,因为我不了解它们是如何工作的,但它们似乎仍然不支持3.6

还有什么我可以试试的吗


PS:我的操作系统是Win7,我尝试过文件恢复软件和系统回滚,但都没有成功。

屏幕截图中显示的代码看起来不模糊,但也不完整,偏移量周围显示的字节码也没有出现问题。然而,要想在uncompyle6中修复此问题,您必须阅读有关如何报告错误的说明并遵循这些说明。