2021年9月6日月曜日

Python exe 変換 その2

数百の xml から 数項目の情報を抜き出して表にしたい、そんなプログラムを作ってくれるプログラマーがいないか?と他部署の先輩が探されていました。

それなら、先日の CIM スクリプトをダウングレードするだけだなあと思い、手を上げました。

30分ほどで出来上がったのですが、問題はPython(を使えない先輩とその部下)。

なので、重いし遅いのですが、実行ファイルに変換することにしました。
https://phreeqc.blogspot.com/2017/12/python-exe.html

そのまま変換すると 300MB の exe が出来上がりました。
これはダメ、軽くならないかと調べてみると、ありました。

【悲報】PyInstallerさん、300MBのexeファイルを吐き出すようになる
https://lets-hack.tech/programming/languages/python/pyinstaller-issue/

  • コマンドを出した環境のPathにあるモジュールは根こそぎバンドルしに行くという仕様が原因。
  • Pandas を入れる際はpip。 conda だとMKL も入ってしまう。

なるほど、全部入りでしたか。それなら仮想環境を毎回作るしかなさそうです(面倒ですが)。

手順
Jupyter の file - save as で .py 保存。

仮想環境確認
conda info -e

仮想環境作成
conda create -n pyinstaller
conda activate pyinstaller

インストール
conda install pyinstaller

今回利用するライブラリのインストール
pip install ●●

コンパイル
pyinstaller 〇〇.py --onefile --clean


変換された exe は 30MB。確かに軽くなりましたが、それでも重い。しかも遅い。

やはり、皆さんに覚えてもらうしかないでしょう。いえ、Python でなくてもよいのですが、何かしら一つくらい言語を習得しておかないと困ると思うのですが。手を貸すからダメなのかな。うーん。

0 件のコメント:

コメントを投稿