PyInstallerでpythonアプリをExe化する

概要

Python で作成したスクリプトを他の人が実行する場合、Python の環境をインストールする必要があります。 しかし、Python スクリプトを単一のファイルにまとめ、実行可能ファイル(.exe ファイル)に変換することができれば、Python の環境をインストールする必要がなくなります。 そのため、今回は Python スクリプトを単一のファイルにまとめ、実行可能ファイルに変換する方法について、PyInstaller を使用して説明します。

version 確認

python: v3.11.2
pyinstaller: v5.8.0

スクリプトの変換

pyinstaller --onefile your_script.py

ここで、your_script.py は変換したい Python スクリプトのファイル名に置き換えてください。

このコマンドは、your_script.py を 1 つの実行可能ファイルにまとめ、dist ディレクトリに出力します。

実行可能ファイルの実行

最後に、/dist に生成された実行可能ファイルを実行してください。実行可能ファイルは、Python の実行環境を必要とせず、他の人が簡単に実行できるようになります。

以上が、Python スクリプトを単一のファイルにまとめ、実行可能ファイルに変換する手順です。PyInstaller を使用することで、Python スクリプトを他の人と共有する際に、Python の環境をインストールする手間を省くことができます。ぜひ、お試しください。

管理しやすいプロジェクト構成(おまけ)

Exe 化について上の方法でうまくいきますが、他プロジェクトメンバーに共有するときは不便です。 ですので npm scripts を記述して、より簡潔にします。

  • 補足 npm scripts を使用するためには、node.js をインストールしてください

バージョン管理のために requipments を作成する

// requipments.txt
pyinstaller >= 5.8.0
{
  "name": "pyinstaller",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "install": "pip install -r requirements.txt",
    "build": "pyinstaller --onefile main.py"
  },
  "author": "",
  "license": "ISC"
}


以下ファイルを作成したら、npm scripts を使用して pyinstaller をインストールします。

npm run install

インストールが完了したら、npm scripts を使用し、Exe 化を行います。

npm run build

プロジェクトについては以下に挙げておくので参照してみてください https://github.com/wiblok/python/tree/main/pyInstaller