Wizard Notes

Pythonを使った音楽信号分析の技術録、作曲活動に関する雑記

Python: PyInstaller + Eel + Numpy でGUIアプリの実行ファイルを作成

はじめに

ライセンスとGUIの拡張性の観点から,EelGUIアプリを開発することにしたので,以下の記事を参考に取り組んでみました。

タイトル通り、PyInstaller + Eel + Numpy でGUIアプリの実行ファイルを作成し、ファイルサイズがどれくらいになるのか検証してみました。

実装

こちらのサイトのコードをほぼそのまま使っています。

変更点としては、numpyの利用確認のため、random.randomnumpy.random.randomに置き換えています。

Python

HTML / Javascript

PyInstaller による実行ファイル作成

自分の環境では、仮想環境でpyinstallerを実行しないを実行ファイルが作成できませんでした。

以下の記事を参考に仮想環境を作ります。

pythonを仮想環境で実行ファイル化(venv、pyinstallerモジュール)

python -m venv . #現在のフォルダで仮想環境作成
cd Scripts
activate # 起動
python -m pip install pip --upgrade # pip を最新版に
python -m pip install eel numpy # eel と numpy を導入
...
deactivate # 終了時はdeactivateで仮想環境を抜ける

ファイルサイズについて

python -m eel --onefile --noconsole

--onefile --noconsoleオプションだと、200MB強でした。なお、numpyを抜くと 8MB強。

もう少し軽くしたいですが、デスクトップアプリであれば、今の時代の通信帯域やPCメモリ・ストレージサイズであれば300MBくらいなら配布・使用には困らないはず…