Descomstackr Python 2.7 .pyc

Busqué arriba y abajo, pero no puedo encontrar un descomstackdor que funcione para Python 2.7 .pyc. ¿Alguien sabe de uno que funcione para Python 2.7? Gracias

Esto parece que funciona: http://code.google.com/p/unpyc/

El problema 8 dice que es compatible con 2.7: http://code.google.com/p/unpyc/updates/list

ACTUALIZACIÓN (2013-09-03) – Como se indica en los comentarios y en otras respuestas, debe consultar https://github.com/wibiti/uncompyle2 o https://github.com/gstarnberger/uncompyle en lugar de unpyc.

En caso de que alguien todavía esté luchando con esto, como lo estuve toda la mañana, he encontrado una solución que funciona para mí:

Uncompyle

Instrucciones de instalación:

git clone https://github.com/gstarnberger/uncompyle.git cd uncompyle/ sudo ./setup.py install 

Una vez que el progtwig esté instalado (nota: se instalará en los paquetes de Python accesibles para todo el sistema, por lo que debería estar en su $PATH ), puede recuperar sus archivos de Python de la siguiente manera:

 uncompyler.py thank_goodness_this_still_exists.pyc > recovered_file.py 

El descomstackdor agrega algo de ruido principalmente en forma de comentarios, sin embargo, he encontrado que es sorprendentemente limpio y fiel a mi código original. Deberá eliminar una pequeña línea de texto que comience con +++ cerca del final del archivo recuperado para poder ejecutar su código.

Decompyle ++ (pycdc) parece funcionar para una variedad de versiones de python: https://github.com/zrax/pycdc

Por ejemplo:

 git clone https://github.com/zrax/pycdc cd pycdc make ./bin/pycdc Example.pyc > Example.py 

Aquí hay una gran herramienta para descomstackr archivos pyc.

Fue codificado por mí y es compatible con Python 1.0 – 3.3

Está basado en uncompyle2 y decompyle ++

http://sourceforge.net/projects/easypythondecompiler/

Ned Batchelder ha publicado una breve secuencia de comandos que desarmará un archivo .pyc y desensamblará cualquier objeto de código que esté dentro, por lo que podrá ver el código de bytes de Python. Parece que con las versiones más recientes de Python, deberás comentar las líneas que configuran el tiempo de modtime e imprimirlo (pero no comentar la línea que establece la fecha de moddate ).

Convertir eso de nuevo en fuente de Python sería algo más difícil, aunque teóricamente posible. Asumo que todos estos progtwigs que funcionan para versiones anteriores de Python hacen eso.