VS Codeで作ったPythonアプリをインストーラー付きEXEにする方法

 

Pythonで開発したアプリケーションを、Windowsユーザーに配布する際、「インストーラー付きのEXEファイル」として提供したいと思うことはありませんか?VS Codeで開発を進めている方にとって、このプロセスは少し複雑に感じるかもしれません。


この記事では、Pythonスクリプトを単一のEXEファイルに変換し、さらにそれをクリック一つでインストールできるEXEファイルにするための手順を、初心者の方にも分かりやすく解説します。

ステップ1: Pythonスクリプトを単一のEXEファイルに変換する (PyInstaller)

まず、あなたのPythonアプリケーションを、Python環境がないPCでも実行できる単一のEXEファイルに変換します。ここでは、最も人気のあるツール「PyInstaller」を使います。

PyInstallerのインストール

VS Codeを開き、アプリケーションのプロジェクトフォルダ内でターミナル(Ctrl + Shift + @)を開いてください。以下のコマンドを実行してPyInstallerをインストールします。

    pip install pyinstaller


※インストールに関するメッセージが表示されたら「作成」をクリックして先に進みます。
※作成をクリックすると作成場所を聞いてくるので、フォルダ名が書かれている方をクリックします。

PyInstallerでEXEファイルを作成する

PyInstallerのインストールが完了したら、エクスプローラーからプログラムの入っているフォルダを見つけて左クリック→総合ターミナルで開く でターミナルを開きます、
次に、以下のコマンドを実行し、EXEファイルを生成します。your_script_name.pyは、あなたのアプリケーションのメインとなるPythonスクリプトのファイル名に置き換えてください。

pyinstaller --onefile --windowed --icon=your_icon.ico your_script_name.py

上記のコマンドには、よく使う便利なオプションをいくつか含めています。

  • --onefile: これが最も重要です。すべての必要なファイルやライブラリを1つのEXEファイルにまとめてくれます。
  • --windowed または --noconsole: GUIアプリケーションの場合、実行時に黒いコマンドプロンプト画面が表示されないようにします。
  • --icon=your_icon.ico: 作成されるEXEファイルにカスタムアイコンを設定します。your_icon.icoは、EXEファイルに設定したいICO形式のアイコンファイルのパスを指定してください。
その他の便利なオプション:--add-data "source;dest": アプリケーションで利用する画像ファイルや設定ファイルなど、EXEに同梱したい追加のファイルやフォルダがある場合に使います。例えば、data_folderというフォルダを同梱するなら、--add-data "data_folder;data_folder"のように記述します。

PyInstallerを実行すると、プロジェクトフォルダ内にbuildとdistという2つのフォルダが生成されます。最終的なEXEファイルはdistフォルダの中にあります。まずはこのEXEファイルをダブルクリックして、正常に動作するか確認してください。

ステップ2: 作成したEXEファイルをインストーラーにする (Inno Setup)

PyInstallerで単一のEXEファイルができたので、次にそれをユーザーが簡単にインストールできる「インストーラー」にパッケージングします。Windows向けのインストーラー作成ツールとして、多機能で使いやすい「Inno Setup」がおすすめです。

Inno Setupのダウンロードとインストール

Inno Setup公式サイトからインストーラーをダウンロードし、PCにインストールしてください。

Inno Setupでインストーラーを作成する

  1. Inno Setup Compilerを起動します。
  2. 「File」メニューから「New」を選択し、「New Script Wizard」を開始します。
  3. ウィザードの指示に従って、アプリケーションに関する情報を入力していきます。主な入力項目は以下の通りです。
    ・Application name: アプリケーションの名前 (例: My Awesome App)
    ・Application version: アプリケーションのバージョン (例: 1.0)
    ・Application publisher: アプリケーションの公開元 (あなたの会社名や名前など)
    ・Application main executable file: ここで、ステップ1でPyInstallerが作成したEXEファイル(distフォルダ内のファイル)を指定します。
    ・Add files/folders: ライセンスファイルやREADMEファイルなど、EXEファイル以外にインストーラーに含めたいファイルやフォルダがあれば追加します。
    ・Application icon: インストーラーのアイコンを設定します(ICO形式)。
    ・Compiler output folder: 作成されたインストーラーのEXEファイル(setup.exeなど)を保存する場所を指定します。
    ・Compiler output base file name: インストーラーのファイル名を設定します(例: MyAwesomeApp_Setup)。
  4. ウィザードを完了すると、.issという拡張子のスクリプトファイルが生成されます。これはインストーラーの設定を定義するファイルで、必要に応じて手動で編集することで、さらに詳細な設定(レジストリの書き込み、アンインストール時の処理など)が可能です。
  5. Inno Setup Compilerの「Build」メニューから「Compile」を選択します。

これで、指定した出力フォルダにインストーラー(例: MyAwesomeApp_Setup.exe)が作成されます。このインストーラーを配布すれば、ユーザーはクリック一つであなたのPythonアプリケーションをPCにインストールできるようになります。