Decompile Python 2.7 .pyc [closed]
I've searched up and down, but can't find a de-compiler that will work for Python 2.7 .pyc. Does anybody know of one that will work for Python 2.7? Thanks
Solution 1:
In case anyone is still struggling with this, as I was all morning today, I have found a solution that works for me:
Uncompyle
Installation instructions:
git clone https://github.com/gstarnberger/uncompyle.git
cd uncompyle/
sudo ./setup.py install
Once the program is installed (note: it will be installed to your system-wide-accessible Python packages, so it should be in your $PATH
), you can recover your Python files like so:
uncompyler.py thank_goodness_this_still_exists.pyc > recovered_file.py
The decompiler adds some noise mostly in the form of comments, however I've found it to be surprisingly clean and faithful to my original code. You will have to remove a little line of text beginning with +++ near the end of the recovered file to be able to run your code.
Solution 2:
Decompyle++ (pycdc) appears to work for a range of python versions: https://github.com/zrax/pycdc
For example:
git clone https://github.com/zrax/pycdc
cd pycdc
make
./bin/pycdc Example.pyc > Example.py
Solution 3:
UPDATE (2019-04-22) - It sounds like you want to use uncompyle6 nowadays rather than the answers I had mentioned originally.
This sounds like it works: http://code.google.com/p/unpyc/
Issue 8 says it supports 2.7: http://code.google.com/p/unpyc/updates/list
UPDATE (2013-09-03) - As noted in the comments and in other answers, you should look at https://github.com/wibiti/uncompyle2 or https://github.com/gstarnberger/uncompyle instead of unpyc.
Solution 4:
Here is a great tool to decompile pyc files.
It was coded by me and supports python 1.0 - 3.3
Its based on uncompyle2 and decompyle++
http://sourceforge.net/projects/easypythondecompiler/