LoginSignup
1
2

More than 1 year has passed since last update.

pycデコンパイル

Posted at

pycデコンパイル

pyinstallerで実行ファイルにしたpython3.9.13のスクリプトをデコンパイルしたかったが、uncompyle6だのdecompyle3だのunpycだのpython-exe-unpackerだのごちゃごちゃしてる上にできなくて苦しんだので成功した方法をメモする。

結論

pyinstxtractorpycdcを使う。

やり方

pythonの実行ファイルをデコンパイルするには以下の二段階の手順を行う必要がある。

  1. バイトコード(.pycのやつ)を抽出する
  2. バイトコードをpythonコードにデコンパイルする

バイトコード抽出

抽出自体は問題なかったが先頭にあるべきマジックナンバーが欠如するものがあり、そのままだとデコンパイルが失敗することがある。

pyinstxtractorだと欠如していない正当なpycファイルとして抽出できた。
欠如している場合は、こちらのサイトに記載されているやり方で補完すれば問題ない。

デコンパイル

ここがまったくうまくいかなかった。
pycのデコンパイルで一番有名であろうuncompyle6、decompyle3では、3.9のバイトコードに対応していないらしく失敗してしまう。
pycdcだとうまくいった。

1
2
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2