【Python】PyInstallerって何?

Pythonが入っていないPCだと動かせない…
依存ライブラリを一つ一つインストールしてもらうのは手間…

こんなエラーや手間に出くわして、「作ったはいいけど、配布が面倒…」と頭を抱えていませんか?その気持ち、すごくよくわかります!頑張って作ったプログラム、ぜひいろんな人に使ってもらいたいですよね。

今回は、そんなあなたの悩みを一発で解決する魔法のツール「PyInstaller」をご紹介します。これを使えば、PythonプログラムをWindowsで動く「.exeファイル」に変換して、誰でも簡単に使えるように配布できるようになります。コピペだけでOKなので、ぜひ最後まで読んでみてください!


Pythonプログラムをexe化するとは?

まず、PyInstallerが何をしてくれるのか、簡単に説明しますね。

普段Pythonのプログラムを実行するときは、Pythonの実行環境が必要です。そして、プログラムが利用しているライブラリ(requestsとかpandasとか)もインストールされている必要があります。

PyInstallerは、この「Pythonのプログラム本体」と「プログラムが動くために必要なライブラリ」を、全部まとめて一つの「.exeファイル」(または関連ファイル群)にしてくれるツールです。

これによって、PythonがインストールされていないPCでも、あなたの作ったプログラムをダブルクリックするだけで実行できるようになります。まるで普通のWindowsアプリのように扱えるようになるので、配布がめちゃくちゃ楽になるんですよ!

ステップ1:PyInstallerをインストールしよう

まずは、PyInstallerを使えるように準備しましょう。Pythonのパッケージ管理ツール「pip」を使って簡単にインストールできます。

コマンド

bash
pip install pyinstaller

やり方

  1. Windowsのスタートメニューで「cmd」と入力して、「コマンドプロンプト」を起動します。
  2. 上記のコマンドをコピーして、コマンドプロンプトに貼り付け(右クリックで貼り付けられます)、Enterキーを押します。

これでインストールは完了です!「Successfully installed pyinstaller-X.X.X」のようなメッセージが表示されればOKです。

ステップ2:Pythonスクリプトを準備しよう

次に、exe化したいPythonスクリプトを用意します。
今回は例として、シンプルなメッセージを表示するスクリプトを使ってみましょう。

スクリプト例 (hello.pyという名前で保存してください)

“`python

hello.py

print(“Hello, PyInstaller! これがexeになりました!”)
input(“何かキーを押すと終了します…”)
“`

このスクリプトを、デスクトップなど、自分がわかりやすい場所にhello.pyという名前で保存してください。

ステップ3:プログラムをexe化しよう!

さあ、いよいよ本番です!PyInstallerを使って、先ほどのhello.pyをexeファイルに変換してみましょう。

1. コマンドプロンプトでスクリプトの場所へ移動

まず、先ほど保存したhello.pyがあるフォルダに、コマンドプロンプトで移動します。
もしデスクトップに保存した場合、例えば以下のようなコマンドで移動できます。

bash
cd C:\Users\あなたのユーザー名\Desktop

ポイント: あなたのユーザー名の部分は、ご自身のPCのユーザー名に置き換えてください。
自分で保存したフォルダのパスが分からない場合は、そのフォルダを開いて、アドレスバーをクリックするとパスが表示されるので、それをコピーしてcdの後に貼り付けてください。

2. PyInstallerを実行!

フォルダに移動したら、いよいよPyInstallerのコマンドを実行します。

bash
pyinstaller hello.py

このコマンドを実行すると、PyInstallerが動き出し、たくさんのメッセージが表示されます。少し時間がかかるかもしれませんが、焦らず待ちましょう。

3. 生成されたファイルを確認しよう

コマンドの実行が終わると、hello.pyと同じフォルダ内に、いくつかの新しいフォルダが作られているはずです。

  • build フォルダ
  • dist フォルダ
  • hello.spec ファイル

この中で一番重要なのが「distフォルダ」です。このフォルダの中に、作成されたexeファイルが入っています!
distフォルダを開いてみてください。その中に「hello」という名前のフォルダがあり、その中に「hello.exe」というファイルが見つかるはずです。

このhello.exeをダブルクリックしてみてください。
「Hello, PyInstaller! これがexeになりました!」というメッセージが表示されれば大成功です!

さらに便利に!よく使うオプション

PyInstallerには、もっと便利にするためのオプションがたくさんあります。特に初心者の方におすすめのオプションをいくつかご紹介します。

1. --onefile:exeファイルを1つにまとめる

デフォルトだと、exeファイルの他にたくさんの関連ファイルが生成されてしまいます。これだと配布するときに面倒ですよね。
--onefileオプションを使うと、すべてのファイルを1つのexeファイルにまとめてくれます!

bash
pyinstaller --onefile hello.py

実行後、distフォルダの中を覗いてみてください。今度はhelloフォルダではなく、直接hello.exeというファイルが1つだけできているはずです!配布が格段に楽になりますね。

2. --noconsole:黒い画面(コンソール)を表示しない

print()文など、コンソールに何かを出力するプログラムだと、実行時に黒い画面(コンソール)が表示されます。GUI(ボタンやウィンドウがある)アプリを作った場合など、このコンソールを表示したくないことがありますよね。

そんな時は--noconsoleオプションを使います。

bash
pyinstaller --onefile --noconsole hello.py

注意点: print()文だけのプログラムで--noconsoleを使うと、メッセージが表示されずにすぐに終わってしまったように見えます。GUIアプリや、バックグラウンドで動くツール向けだと覚えておきましょう。

3. --icon=アイコンファイル名.ico:アイコンを設定する

作ったexeファイルに、オリジナルのアイコンを設定したい場合は--iconオプションを使います。

bash
pyinstaller --onefile --icon=my_icon.ico hello.py

ポイント:
* my_icon.icoの部分は、使いたいアイコンファイルの名前に置き換えてください。
* アイコンファイルは.ico形式である必要があります。PNGやJPEG形式の画像は、別途オンラインツールなどで.ico形式に変換してから使いましょう。
* my_icon.icoファイルは、hello.pyと同じフォルダに置いておく必要があります。

まとめ

これであなたのPythonプログラムは、Python環境がないPCでも動くexeファイルになりました!

PyInstallerを使えば、

  • Pythonがインストールされていない人でも、あなたのプログラムを簡単に使える!
  • 依存ライブラリのインストールという面倒な手間を省ける!
  • プログラムを配布するのが圧倒的に楽になる!

といったメリットがあります。

Pythonで業務効率化ツールなどを作った際に、「どうやって他の人に使ってもらおう…」という悩みは、PyInstallerで一発解決です。ぜひ活用して、もっともっと便利で楽な開発ライフを送ってくださいね!

コメント

タイトルとURLをコピーしました