はじめに
smoothiecharts.jsよき…
— Kurene (@_kurene) 2021年4月8日
なおpyinstallerは仮想環境切らないと実行ファイル化できなかった pic.twitter.com/mvSDNkNzDQ
ライセンスとGUIの拡張性の観点から,EelでGUIアプリを開発することにしたので,以下の記事を参考に取り組んでみました。
タイトル通り、PyInstaller + Eel + Numpy でGUIアプリの実行ファイルを作成し、ファイルサイズがどれくらいになるのか検証してみました。
実装
こちらのサイトのコードをほぼそのまま使っています。
変更点としては、numpy
の利用確認のため、random.random
をnumpy.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
pyinstaller --onefile --noconsole で numpy と eel を import した場合の実行ファイルのサイズ。200MB強だったので、一先ず許容範囲内。ここからどれくらい削れるのだろう、、 pic.twitter.com/0EWpQikmEQ
— Kurene (@_kurene) 2021年4月8日
--onefile --noconsole
オプションだと、200MB強でした。なお、numpyを抜くと 8MB強。
もう少し軽くしたいですが、デスクトップアプリであれば、今の時代の通信帯域やPCメモリ・ストレージサイズであれば300MBくらいなら配布・使用には困らないはず…