8

私はいくつかの .pyc ファイルを逆コンパイルしようとしています - それらからいくつかの基本的なデータが必要なだけです.

Python27(Win) をインストールしてから、https:uncompyle2 --h //github.com/wibiti/uncompyle2 から Uncompyle2をインストールしました。もう少し助けてください。この「未定義」メッセージの後に取得しています。次にimport uncompyle2、インタープリターを介してスクリプトをインポートしようとしました。モジュールがロードされていると思います(uncompyle2インタープリターに入力した後、から関数をロードしたと表示されます__init__)が、まだできます'何かをしようとすると、「構文エラー」と表示され(readmeのようにすべてを入力しても)、--hどちらも機能しません。

私が間違っていることは何ですか?

ところで、私はいくつかのオンライン コンバーターを見つけようとしましたが、int の 2.6.4 python コンパイル ファイルなので、それで動作するものは何も見つかりません。

4

4 に答える 4

13

アイドルから

import uncompyle2
with open("uncompiled file.py", "wb") as fileobj:
    uncompyle2.uncompyle_file("afile.pyc", fileobj)

結果は、コンパイルされていないソース コードになります。

編集 2/15/18

Python 3の場合は、 uncompyle 6を使用し、出力ファイルを「w」モード (「wb」ではない) で開きます。

import uncompyle6
with open("uncompiled file.py", "w") as fileobj:
    uncompyle6.uncompyle_file("afile.pyc", fileobj)
于 2013-08-20T04:52:34.870 に答える
1

同じディレクトリからすべてを実行するために、受け入れられた回答に追加するだけuncompiled file.pyです。他の場所から実行しようとすると、空のフォルダーが表示されます。スクリプト全体

import os

#this should be /folder_where_py_filtes_were/__pycache__/ in python3
os.chdir("C:\Dir where my pyc is")
import uncompyle2
with open("uncompiled file.py", "wb") as fileobj:
    uncompyle2.uncompyle_file("afile.pyc", fileobj)

それ以外は、あなたは男user2682863です!プロジェクトを保存しました

于 2016-05-30T04:38:52.010 に答える
1

コマンド ライン (PowerShell など) から実行するには、Scripts でスクリプト uncompyle2 を実行する必要があります。Python を C:\Python にインストールした場合は、おそらく C:\Python\Scripts で実行する必要があります。これにより、ファイル somefile.pyc が逆コンパイルされ、c:\temp にファイル decompiled.py が作成されます。

PS C:\Python\Scripts> python .\uncompyle2 -oc:\temp\decompiled.py somefile.pyc

于 2014-08-18T16:21:17.440 に答える