Python学院
メールマガジンバックナンバー

vol.18

  • コツ・知識
  • メールマガジン

Pythonで作成した自動化ツールを、第三者に配布する方法(実行ファイル・exeファイル)

今回のメルマガのテーマは
Pythonで作成した自動化ツールを、第三者に配布する方法
でございます。

弊社は今までに数多くのPython研修を実施してきましたが、
多くのご受講者さまから「Pythonで業務自動化のプログラムを作成した後、
他の方のPC上でそのプログラムを実行するためにはどうすればよいか?

というご質問をいただきました。

結論から申し上げますと、「実行ファイル化」することで、
自分のPC上で作成したPythonのプログラムを
他の方のPC上でも動かすことができるようになります。

この「実行ファイル化」の方法を習得すれば、Pythonで作成したプログラムを
誰のPC上でも動かすことができる、つまり「組織展開」が実現できます。

当メルマガを通して、Pythonで作成した自動化ツールを第三者に配布する方法
について理解し、是非Python自動化ツールの組織展開を実現して
いただければと思います!


弊社では、実行ファイル化を含む、Python活用において知っておきたい技術に特化して学ぶことができる研修をご提供しております。
カリキュラムについても記載しておりますので、ぜひ一度内容をご覧くださいませ!

・Python学院~Python応用講座(2日間) ※「実行ファイル化」「仮想環境」や「スクレイピング」「ブラウザ操作」「Excel操作」について学べる!


(約5分で読めます)

~~~~~~~~~目次~~~~~~~~~
1. 実行ファイルとは
2. 実行ファイルを作成するメリット
3. 「PyInstaller」による実行ファイル作成のイメージ
4. 実行ファイルを作成してみよう!
5. 最後に
~~~~~~~~~~~~~~~~~~~~



1. 実行ファイル(exeファイル)とは


「実行ファイル」といっても、様々な解釈・定義の仕方があります。

ここではWindows の拡張子が「.exe」のファイルのような、
ダブルクリックすることで、そのファイル単体でプログラムが
実行されるものを「実行ファイル」と呼びます。




 Windows をお使いの方は拡張子が「.exe」のファイルをよく見ることと思います。
この「exe」というのは、「実行する」という意味の英単語「execute」の略です。

自分のPC上で何かPythonのプログラムを作成して実行する際、
実際はプログラムが記述されたファイル単体でPythonのプログラムが
動いているわけではなく、PC内の様々なファイルとデータをやり取りし、
動いています。

PC上にPythonをインストールすることでPythonプログラムを動作させることが
できるようになりますが、それはPythonインストール時に、Pythonプログラムを
動作させるために必要なファイル一式がPC上に生成されるからです。

exe ファイルのような「実行ファイル」は、そのファイル単体で動作が完結します。
つまり、Pythonプログラムを動作させるために必要なファイル一式がPC上に
存在しなくても(Pythonのインストールができていなくても)、
Pythonプログラムを動作させることができます。




2. 実行ファイル(exeファイル)を作成するメリット


実行ファイルを作成することで、
Pythonの開発環境が構築されている自分のPC上で作成したPythonプログラムを、
開発環境が構築されていない他のPC上で実行
」することができます。

より簡単に言うと、「誰のPC上でもPythonプログラムを動かせる」ようになります。

例えばExcel操作を自動化するためのプログラムを作成し、それを組織内の他の
方たちにも使ってほしいとします。

組織内の他の方たちにも自分のPC 上にPythonをインストールしてもらい、
またプログラムの動作に必要となるライブラリ(Pythonの便利ツール)を
インストールしてもらえば他のPC 上でも動作するようになりますが、
利用者にそこまでの作業を依頼するのは大変です。

そこで、Pythonで作成したプログラムを実行ファイルに変換し、
実行ファイルを組織内に配布することで、Pythonを動作させるための
環境がなくてもPythonのプログラムを動作させることがで
きるようになります。


実行ファイルを受け取った相手は、自分のPC 上で実行ファイルをダブルクリック
するだけでPythonの自動化プログラムを実行することができ、非常に便利です。



3. 「PyInstaller」による実行ファイル作成のイメージ


Pythonプログラムが記述されたファイルを実行ファイルに変換するには、
PyInstaller」というライブラリを使います。

PyInstallerを使うことで、下記をまとめて実行ファイルにすることができます。
・Python本体
・作成したPythonプログラム
・Pythonプログラムで使用しているモジュール(単なるPythonの別ファイルです)



 PyInstaller で作成した実行ファイルは、OS 依存となります。
Windows で作成した実行ファイルはWindows 上でのみ動作し、
Mac で作成した実行ファイルはMac 上でのみ動作します。




4. 実行ファイルを作成してみよう!


それでは、実際に実行ファイルを作成して実行するところまで体験してみましょう。
なお、PC上にPythonが既にインストールされていること前提でご説明いたします。

以下の手順に沿って、動作確認まで行います。
(1) PyInstallerのインストール
(2)実行ファイルの作成
(3)動作確認

順に見ていきましょう。


(1)PyInstallerのインストール


まず、ライブラリ「PyInstaller」をインストールする必要があります。

Windowsであればコマンドプロンプト、Macであればターミナルを開き、
以下のコマンドを実行しましょう。

pip install pyinstaller

これで、PC上にPyInstallerをインストールすることができます。


(2)実行ファイルの作成


まずは、実行ファイル化の対象となるファイルを作成しましょう。

通常、Pythonのプログラムは拡張子「.py」形式のファイルに記述します。

ここではデスクトップに「実行ファイル練習」という名前のフォルダを作成し、
作成したフォルダ内に「practice.py」という名前のファイルを作成します。



この「practice.py」のPythonファイルにプログラムを書き込みます。

メモ帳を開き、「practice.py」のファイルをメモ帳の上に
ドラッグ&ドロップして開きます。

次に、「practice.py」にPythonのプログラムを記述します。
ここでは、プログラムを実行するとダイアログが表示されるようにします。



 以下のコードをコピーし、「practice.py」のファイルに貼り付けましょう。

from tkinter import messagebox

messagebox.showinfo('実行ファイル', '実行ファイルの動作確認が完了しました!')


貼り付けたら、「Ctrl + s」でファイルを保存します。

これで、実行ファイル化の対象となるPythonファイルの作成が完了しました。


それでは、実行ファイルを作成しましょう。
Windowsを例にご説明しますが、Macでも手順は変わりませんので、
適宜読み替えていただければと思います。

まずエクスプローラー上で、先程作成した「実行ファイル練習」フォルダに移動します。



次にエクスプローラーのアドレスバーにカーソルを当ててアクティブにし、
cmd」と入力してEnterキーで実行し、コマンドプロンプトを開きます。



開いたコマンドプロンプト上で以下のコマンドを実行することで、
Pythonプログラムが書かれたファイル「practice.py」から実行ファイルを
作成することができます。

pyinstaller practice.py --onefile

--onefile」はオプションです。
このオプションを付けることで、作成される実行ファイルが一つにまとまります。

これで、実行ファイルの作成が完了します。


(3)動作確認


実行が完了すると、「実行ファイル練習」フォルダ内に「dist」という名前の
フォルダが作成されます。



「dist」フォルダを開くと、中に「practice.exe」という名前の実行ファイルが
作成されていることが確認できます。



それでは、この「practice.exe」の実行ファイルをダブルクリックしてみましょう。

すると、画面上にダイアログが表示されます。



「OK」ボタンを押すと、ダイアログが消えます。


これで、実行ファイル作成の一連の流れを体験することができました。

今回は簡単なプログラムを実行ファイル化しましたが、どれだけプログラムの量が
多くなっても、ここで説明したものと同じ手順で実行ファイルを作成することが
できます。

作成した「practice.exe」の実行ファイルを第三者に配布することで、
Pythonの環境構築ができていないPC上でも、実行ファイルをダブルクリック
することでPythonのプログラムを動作させることできます。


これで、Python自動化ツールの「組織展開」ができるようになりました。


※Jupyter Notebookで作成した拡張子「.ipynb」形式のファイルを
「.py」形式のファイルに変換する方法

現在、Pythonプログラミングを「Jupyter Notebook」を使い行っている方向けに、
拡張子「.ipynb」形式のファイルを「.py」形式のファイルに変換する方法
ご説明いたします。

まず、拡張子「.py」形式に変換したいプログラムファイルを、
Jupyter Notebookで開きましょう。

変換は非常に簡単で、画面左上の「File」メニューを押し、表示された項目の
中から「Download as」にカーソルを合わせ、「Python(.py)」を押します。



すると、拡張子「.py」形式のファイルがダウンロードされます。

ダウンロードしてきた「.py」形式のファイルを使い、PyInstallerで
実行ファイル化を行います。



5. 最後に


以上、Pythonで作成した自動化ツールを第三者に配布する方法について
ご説明いたしました。

Pythonプログラムの実行ファイル化ができるようになれば、
自動化ツールの「組織展開」が可能になります。

弊社でも、このメルマガでご説明したものと基本的に同じ流れで
自動化ツールの第三者への配布を行っています。

実行ファイルをダブルクリックするだけで業務の自動化ができるようになると、
利用者から喜ばれます。

自分自身の業務を自動化して「楽になる」ために、また他者の業務自動化を
実現して「喜ばれる」ために、是非Pythonによる現場業務の自動化、
また自動化ツールの第三者への配布に取り組んでいただければと思います。


Pythonを独学で習得すること、また実務での活用に難しさを感じている場合、
是非弊社研修のご活用をご検討いただければと思います。

弊社のPython研修にご興味ございましたら、是非ページ下部の研修PR情報に
お目通しをいただけますと幸いでございます。



最後までお読みいただき、ありがとうございました!
「インソースのPythonマガジン Vol.18」は、これで以上となります。

このメルマガでは今後も、Python学習に関するお役立ち情報、また社内のDX化を
主導するための具体的な方法や、弊社や他社様のPython活用の事例など、
ビジネスの現場で真に活かせる有益な情報の提供を行ってまいります。

それでは、次回もお楽しみに!

関連研修