田舎社会人のいろいろ学習記

Python、英語、その他いろいろ

pyinstallerの使い方【Python】

pyinstallerはPythonスクリプトファイル(.py)をexeファイル化することのできるモジュールで、PythonをインストールしていないPCでも実行することが可能になる。pyinstallerの基本的な使用方法を整理した。


【スポンサーリンク】


インストールと準備

pyinstallerは組み込みモジュールではないので、以下のコマンドを実行してインストールしておく。

pip install pyinstaller

exeファイル化するスクリプトファイルを準備する。今回は例として、tkinterの画面を表示するだけの簡単なスクリプトを作成した。ファイル名はtest.pyとした。

import tkinter
f = tkinter.Tk()
f.mainloop()

[↑ 目次へ]


exeファイル化の基本

次のコマンドを実行することで、test.pyをexeファイル化することができる。

pyinstaller test.py

実行すると、test.pyが保存されているフォルダに次のフォルダとファイルが自動生成する。

  • pycasheフォルダ
  • buildフォルダ
  • distフォルダ
  • test.spec
上記のうち、distフォルダ内のtestフォルダにあるtest.exeが、test.pyをexeファイル化したものになる。test.exeを実行すると以下の様なtkinterのメイン画面が表示され、スクリプトファイルがexeファイル化されていることが確認できる。
f:id:vigilantPotato:20190306203314j:plain

[↑ 目次へ]


コンソール画面を非表示にする

上記の例で作成されたexeファイルを実行すると、コンソール画面が一緒に表示される。

f:id:vigilantPotato:20190306203353j:plain
pyinstaller実行時にnoconsoleオプションを付けることで、コンソール画面を非表示にすることができる。

pyinstaller test.py --noconsole

[↑ 目次へ]


単独ファイル化

pyinstaller実行時にonefileオプションを付けることで、exeファイルのみ生成させることができる。ただし、起動にかかる時間が少し長くなる。

pyinstaller test.py --onefile

[↑ 目次へ]


アイコンの設定

iconオプションを用いて、exeファイルのアイコンを自由に設定することができる。スクリプトファイルと同じフォルダにアイコン画像を保管しておき、以下のコマンドを実行すると、任意のアイコンを設定される。以下の例では、アイコン画像名をtest_icon.icoとした。

pyinstaller test.py --ico=test_icon.ico

デフォルトのアイコン

f:id:vigilantPotato:20190306203619j:plain

設定したアイコン

f:id:vigilantPotato:20190306204008j:plain

[↑ 目次へ]


複数のオプションを同時に適用

オプションは複数個繋げて実行可能。コンソール画面非表示、単独ファイル化、アイコン設定を行う際は、以下の様にオプションを設定して実行する。

pyinstaller test.py --noconsole -- onefile --ico=test_icon.ico

[↑ 目次へ]


exeファイルが起動しない場合

exeファイルは生成されるが、クリックしても起動しない・・・という場合は、Pythonのバージョンを3.6にすると起動できる可能性がある。

[↑ 目次へ]


【スポンサーリンク】