PyInstallerは、Pythonアプリケーションをスタンドアロンの実行可能ファイルに変換する強力なツールです。これにより、ユーザーはPythonや依存関係をインストールすることなくアプリケーションを実行できます。また他のパソコンに配布するような場合でも活用することができます。ここでは、PyInstallerの使用方法、コマンド、および必要なオプションについて説明します。
重要なところだけ最初に書いておきます。
pyinstaller --onefile your_script.py
PyInstallerのインストール
まず、PyInstallerをインストールする必要があります。pipを使用してインストールできます:
pip install pyinstaller
基本的な使用方法
Pythonスクリプトを実行形式に変換するには、ターミナルで次のコマンドを実行するだけです:
pyinstaller your_script.py
このコマンドを実行すると、distディレクトリに実行ファイルが作成され、buildディレクトリにはビルド中に使用されたファイルが含まれます。
重要なファイルとディレクトリ
your_script.spec: 実行ファイルをビルドする際の設定が含まれるspecファイル。dist/: 最終的な実行ファイルが含まれるディレクトリ。build/: ビルドプロセス中に作成された一時ファイルが含まれるディレクトリ。
よく使われるオプション
出力ディレクトリの指定
-distpathオプションを使用して、異なる出力ディレクトリを指定できます:
pyinstaller --distpath ./output_directory your_script.py
一つのフォルダ vs 一つのファイル
デフォルトでは、PyInstallerは実行ファイルと依存関係を含むディレクトリを作成します。単一の実行ファイルを作成するには、--onefileオプションを使用します:
pyinstaller --onefile your_script.py
アイコンの追加
実行ファイルにアイコンを追加するには、--iconオプションを使用します:
pyinstaller --onefile --icon=your_icon.ico your_script.py
データファイルの追加
アプリケーションが追加のデータファイルに依存している場合、--add-dataオプションを使用してそれらを含めることができます。WindowsとUnixベースのシステムでは構文が異なります:
- Windows:
pyinstaller --add-data "source_path;destination_path" your_script.py - Unix:
pyinstaller --add-data "source_path:destination_path" your_script.py
例:
pyinstaller --add-data "data_file.txt;." your_script.py
コンソールウィンドウの非表示
GUIアプリケーションの場合、実行時に開くコンソールウィンドウを非表示にしたい場合があります。--noconsoleオプションを使用します:
pyinstaller --noconsole your_script.py
デバッグ
デバッグ目的で、--debugオプションを使用してデバッグ情報を含めることができます:
pyinstaller --debug your_script.py
モジュールの除外
特定のモジュールを実行ファイルから除外する場合、--exclude-moduleオプションを使用します:
pyinstaller --exclude-module module_name your_script.py
Specファイルの編集
初回ビルド後、specファイル(your_script.spec)を編集することで、ビルドプロセスをさらにカスタマイズできます。このファイルはPyInstallerによって自動生成され、ビルドを再現するためのすべての情報が含まれています。
たとえば、追加のファイルを追加したり、ビルドプロセスをカスタマイズするには、このファイルを編集し、次に示すように再ビルドします:
pyinstaller your_script.spec
例:すべてのオプションを使用した実行ファイルの作成
以下は、複数のオプションを組み合わせた例です:
pyinstaller --onefile --noconsole --icon=app.ico --add-data "config.json;." --distpath ./output_directory your_script.py
まとめ
PyInstallerは、実行ファイルをカスタマイズするための多くのオプションを持つ多用途なツールです。これらのコマンドとオプションを理解することで、特定のニーズに応じたビルドプロセスを調整できます。このガイドが、Pythonアプリケーションを配布する際のPyInstallerの使用における確固たる基盤を提供することを願っています。
最後まで読んでいただきありがとうございました。73

