【问题标题】:How to recovery source python code (.py) from .pyo file?如何从 .pyo 文件中恢复源 python 代码(.py)?
【发布时间】:2011-01-27 04:05:56
【问题描述】:

我需要将已编译的 Python 代码 (.pyo) 转换为其源代码。我在 depython.net 中查看,但有一个问题。警告;

“文件版本早于 2.4。”

我该怎么办?

谢谢。

【问题讨论】:

  • 如果这是你自己的代码,那以后就用版本控制系统吧!

标签: python wxpython extension-methods decompiling


【解决方案1】:

试试这些:

uncompyle2 将 Python 字节码转换回等效的 Python 源代码。它接受从 Python 版本 2.5 到 2.7 的字节码。此外,它只能在 Python 2.7 上运行。

uncompyle6 将 Python 字节码转换回等效的 Python 源代码。它接受从 Python 版本 1.53.7 左右的字节码,包括 Pypy 生成的字节码。该代码需要 Python 2.4 或更高版本,并且已经在 Python 运行版本2.4, 2.5, 2.6, 2.7, 3.2, 3.3, 3.4, 3.5 and 3.6 上进行了测试。

【讨论】:

  • 我遇到了同样的问题,这有帮助。该文档有点误导,主要讨论 .pyc 文件,但它适用于我的 .pyo 文件。
  • @Arjun :当你写“文档有点误导,主要是谈论 .pyc”时,如果你能指出它误导你的地方,我会修改。或者更好,建议修改。
  • @rocky uncompyle6 的文档看起来很棒!感谢您调查它:)
【解决方案2】:

试试decompyle

这已成为一项商业服务。
要进行试验,您可以使用Debian Packages

我很想尝试一下,但我在 Windows 机器上。有机会我会尽快尝试的。

【讨论】:

  • 我无法理解 DebianPackages 方法。我也使用windows,所以我需要一个像VMware这样的虚拟工作站,但它太复杂了。我无法摆脱它。还有其他方法吗?任何知道反编译的人,如果你帮助我,我真的很感激。谢谢。
  • 在 Sun Virtual box 上试用 Ubuntu。它是免费的,它的工作原理和简单的 :)
  • 我会试试的。感谢你的关心。我希望,我做到了。祝你有美好的一天。:)
【解决方案3】:

Decompile,众所周知的便宜(但您可以在线测试)depythonUnPyc 项目(仅适用于 2.5 here 也是与此相关的另一个 SO-Question。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2011-11-07
    • 2019-08-12
    • 2016-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-10
    • 2022-12-01
    相关资源
    最近更新 更多