web-dev-qa-db-ja.com

コンパイルされた.pycファイルを.pyファイルに逆コンパイルすることは可能ですか?

.pyファイルから生成された.pycファイルから情報を取得することは可能ですか?

145
Howard

ncompyle6 はPython 3.xおよび2.7で動作します-最新のツールとして推奨されるオプションで、以前のフォークを統合し、自動テストに焦点を合わせます。 GitHubページ に詳細があります。

古い ncompyle2 はPython 2.7のみをサポートします。しばらく前に、これは.pycバイトコードを.pyに逆コンパイルするのにうまく機能しましたが、unpyclibは例外でクラッシュしました。

134
RichVel

はい、pypiにあるunpyclibで取得できます。

$ pip install unpyclib

.pycファイルを逆コンパイルできるより

$ python -m unpyclib.application -Dq path/to/file.pyc
30
Pokutnik

Easy Python Decompilerを試すことができます。 Decompyle ++およびUncompyle2に基づいています。 Pythonバージョン1.0-3.3の逆コンパイルをサポートしています

注:私は上記のツールの作成者です。

27
Extreme Coders

Decompyle ++(pycdc)だけが私のために働いた: https://github.com/zrax/pycdc

Decompile Python 2.7 .pyc で提案されました

12
Kenneth Hoste

はい、可能です。

Decompyle ++と呼ばれる完璧なオープンソースPython(.PYC)デコンパイラーがあります https://github.com/zrax/pycdc/

Decompyle ++は、コンパイルされたPythonバイトコードを有効で人間が読めるPythonソースコードに戻すことを目的としています。他のプロジェクトではさまざまな成功を収めていますが、Decompyle ++は、あらゆるバージョンのPythonからのバイトコードをサポートしようとする点で独特です。

3
Andrew Rukin

それが良いかどうかはわかりませんが、クイックGoogle検索で decompyle が見つかりました。

0
Carl Norum

Pip install pycompyle6を使用してインストールする

pycompyle6 filename.pyc

0
Banik Kuntal