免费的Python反编译器,这不是一个在线服务?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (264)

有没有可以反编译Python 2.4+字节码以获取源代码的库或应用程序?

提问于
用户回答回答于

以下脚本需要两个参数,即输入文件和输出文件,并将其转换为decompyle至少会尝试使用的内容:

#!/usr/bin/python
import marshal
import sys

MAGIC23 = ';\xf2\r\n'

def load_pyc(filename):
        f = open(filename, 'rb')
        try:
                magic = f.read(4)
                timestamp = f.read(4)
                codeobject = marshal.load(f)
        finally:
                f.close()
                return magic, timestamp, codeobject

def dump_pyc_23(filename, timestamp, codeobject):
        assert len(timestamp)==4
        f = open(filename, 'wb')
        try:
                f.write(MAGIC23)
                f.write(timestamp)
                marshal.dump(codeobject, f, 0)
        finally:
                f.close()

magic, timestamp, codeobject = load_pyc(sys.argv[1])
dump_pyc_23(sys.argv[2], timestamp, codeobject) 
用户回答回答于

扫码关注云+社区

领取腾讯云代金券