※ 当ブログではアフィリエイト広告を利用しています

【簡単】Pythonのスクレイピングコードをexe化する方法

pythonのスクレイピングコードをexe化する方法Python

どうも、ちゃんかま(@chan_kama0244)でございます。

あなたはもしかして、Pythonのスクレイピング副業の初心者さんではありませんか? それなら、「完成したコードをexe化して納品したいけど、やり方が分からない!」と悩んでいませんか?

実は、Pythonコードをexe化するなら、【PyInstaller】がおすすめです。なぜなら、PyInstallerを使うと、簡単なコマンド実行だけでexe化ができるからです。特に、Pythonのスクレイピング副業の納品時に、PyInstallerは必須です。

私は、Pythonのスクレイピング副業で、コードをexe化して納品しています。PyInstallerで簡単にexe化できるので、いつもスムーズに納品できています。

この記事では、exe化が簡単にできる、PyInstallerについて解説しています。この記事を読むと、スクレイピング副業で、コードをexe化して納品するまでの方法が分かります。

この記事では、OSはWindows、Pythonの実行環境はJupyterLabで解説しています。そのため、他のOSや実行環境では、一部参考にならない箇所があるかもしれません。

\スクレイピング副業やるならココナラ!/

exe化とは?

exeとは、実行ファイルのことです。Pythonコードを実行ファイルに変換することを、exe化と呼びます

例えば、【sample.py】をexe化すると、【sample.exe】になります。sample.pyを実行するには、Pythonのインストールが必要です。一方で、sample.exeは実行ファイルなので、Pythonのインストールが必要ありません。ダブルクリックするだけで、実行ができます。

exeにすることで、Pythonがインストールされていないパソコンでも、Pythonコードを実行することができる。

exe化が必要な理由

Pythonのスクレイピング副業をやるなら、exe化は必須のスキルです。なぜなら、スクレイピング案件はexeで納品するからです。例えば、exeで納品しない場合は、購入者さまにPythonをインストールしてもらう必要があります。購入者さまにしてみると面倒ですし、スムーズな納品ができません。

一方で、exeで納品すると、Pythonのインストールは必要ありません。納品されたexeファイルをダブルクリックするだけで、スクレイピングを実行できます。購入者さまとしては楽ですし、スムーズに納品ができるのです。

コードをexe化することで、スクレイピング副業でスムーズに納品ができる。

PyInstallerでexe化する手順

Pythonコードのexe化は、【PyInstaller】を使うと簡単にできます。ここでは、PyInstallerを使ったexe化の方法について解説します。実際に、【sample.ipynb】というJupyterLabのノートブックをexe化してみます。

ここでは、OSはWindows、Pythonの実行環境はJupyterLabで解説しています。そのため、他のOSや実行環境では、一部参考にならない箇所があるかもしれません。

pyファイルの作成

PyInstallerは、pyファイルをexeファイルに変換します。そのため、まずはJupyterLabのノートブックを、pyファイルに変換する必要があります。そこで、ここでは、JupyterLabのノートブックをpyファイルに変換する方法について解説します。

実際に、sample.ipynbというノートブックを、【sample.py】に変換してみます。始めに、JupyterLabでsample.ipynbを開きます。

次に、【File】→【Save and Export Notebook As…】→【Executable Script】をクリックします。

pyファイルに変換する

すると、sample.pyがダウンロードされます。Windowsのエクスプローラーの、ダウンロードフォルダを確認します。ダウンロードフォルダ内に、sample.pyがあるはずです。

pyファイルがダウンロードできている

ダウンロードされたsample.pyは、sample.ipynbと同じフォルダに移動しておきます。

ディレクトリの変更

PyInstallerは、WindowsのPowerShellでコマンドを実行して使用します。そして、PyInstallerを実行する前に、PowerShellでディレクトリを変更する必要があります。そこで、ここでは、PowerShellでディレクトリを変更する方法について解説します。

始めに、以下の方法でPowerShellを起動します。
Windowsボタン(Windowsのロゴマーク)をクリックします(画像①)。
次に、検索窓に【powershell】と入力します(画像②)。
ここで表示されるのが、【Windows PowerShell】です。開くをクリックして起動します(画像③)。

Windows PowerShellの起動方法

PowerShellを起動すると、このような画面になります。

powershellを起動する

次に、PowerShellのディレクトリを、sample.pyがあるディレクトリに変更します。ちなみに、ディレクトリは、フォルダと同じ意味だと思えば良いです。

sample.pyは【スクレイピング】というフォルダにあります。このスクレイピングのフォルダのパスを取得します。
Windowsのエクスプローラーで、スクレイピングのフォルダを右クリックします(画像①)。
右クリックメニューの中の、【アドレスのコピー】をクリックします(画像②)。

パスを取得する

PowerShellに以下のコマンドを入力し、エンターキーで実行します。【スクレイピングのフォルダのパス】には、先程のアドレスのコピーで取得したパスをそのまま貼り付けます。

cd 【スクレイピングのフォルダのパス】
ディレクトリを変更する(1)

実行すると、PowerShellのディレクトリが、スクレイピングに変更されます。

ディレクトリを変更する(2)

【C:\Users\◯◯◯>】から【C:\Users\◯◯◯\◯◯◯\Programming\スクレイピング>】に変更されています。

PyInstallerの実行

ここでは、PyInstallerを実行して、pyファイルをexe化する方法について解説します。まず始めに、PyInstallerをインストールします。PowerShellで以下のコマンドを実行します。

PyInstallerのインストールは、一度行えば、その後は必要ありません。

pip install pyinstaller
pyinstallerをインストールする(1)

インストールが終わると、以下のような画面になります。【Successfully】と【pyinstaller】が表示されていれば、インストールは正常に完了しています。

pyinstallerをインストールする(2)

次に、PyInstallerを実行して、sample.pyをexe化します。PowerShellで以下のコマンドを実行します。

pyinstaller sample.py --onefile
pyinstallerを実行する(1)

【completed successfully】と表示されると、exe化は正常に完了しています。

pyinstallerを実行する(2)

exe化が完了すると、以下のフォルダ及びファイルが新たに作成されます。Windowsのエクスプローラーを確認してみます。

PyInstallerで作成されるフォルダ及びファイル
  • buildフォルダ
  • distフォルダ(exeファイルが入っている)
  • specファイル
exeファイルに変換される(1)

exeファイルは、distフォルダの中に入っています。distフォルダの中身を見ると、sample.exeが入っていることが分かります。

exeファイルに変換される(2)

sample.exeは、distフォルダから出しておきましょう。また、exeファイルを手に入れたら、buildフォルダ・distフォルダ・specファイルは削除して構いません

exeファイルに変換される(3)

これで、PyInstallerによるexe化は完了です。最初は手順が多く感じられるかもしれませんね。しかし、慣れてくると10分程度でexe化が完了します。ここで解説したとおりにコマンドを実行するだけなので、Python初心者におすすめの方法です。

PyInstallerを使うことで、Python初心者でも簡単にexe化ができる。

exeをココナラで納品する手順

ここでは、Pythonのスクレイピング副業で、実際にexeを納品する手順を解説します。私が使っているクラウドソーシングサイト、【ココナラ】での納品手順を解説します。

ちなみに、Python初心者がスクレイピング副業をやるなら、ココナラがおすすめです。ココナラの会員登録は無料なので、興味があるなら、以下のリンクからどうぞ。

\スクレイピング副業やるならココナラ!/

exeをZIPファイルに圧縮

実は、ココナラではexeファイルを添付して送ることができません。ココナラで添付可能なファイル形式は、こちらで確認できます。確認すると、添付可能なファイル形式に、exeが含まれていないことが分かります。そのため、ココナラでは、exeをZIPファイルに圧縮してから購入者さまに納品します

exeをZIPファイルに圧縮するのは、Windowsのエクスプローラーで行います。
exeファイルを右クリックし、メニューを表示します(画像①)。
メニュー内の【ZIPファイルに圧縮する】をクリックします(画像②)。

ZIPファイルに圧縮する(1)

すると、exeがZIPファイルに圧縮されます。

ZIPファイルに圧縮する(2)

ココナラにZIPファイルを添付して納品

ココナラでZIPファイルを添付して、購入者さまに納品します。
クリップのアイコンをクリックして、sample.zipを選択します(画像①)。
すると、sample.zipが添付できます(画像②)。
あとは、送信ボタンを押すと納品が完了します。

coconalaでzipを納品する
画像引用元:ココナラ

ZIPファイルは、【すべて展開】を行わないと実行ができません。そのため、購入者さまにすべて展開をお願いするメッセージを送っておくと親切ですね。

すべて展開をお願いするメッセージ
画像引用元:ココナラ

ココナラでスクレイピング副業をやるときは、exeをZIPファイルに圧縮してから納品する。

exe化の注意点

ここでは、Pythonのスクレイピングコードをexe化するときの注意点を解説します。exe化の注意点を理解することで、スクレイピング副業でスムーズに納品ができるようになります。

不要なライブラリはインストールしない

PyInstallerは、インストールしたPythonライブラリを、すべてexeに含めます。つまり、インストールしたライブラリが多いほど、exeの容量は大きくなります。特に、Pythonライブラリの【Pandas】は、容量が大きいので要注意です。実際に、以下の画像で確認してみましょう。

こちらは、どちらも同じ動作をするスクレイピングのexeファイルです。しかし、Pandasをインストールしているexeのほうが、容量が桁違いに大きいことが分かります。

pandasがあるかないか

exeの容量が大きすぎると、納品時にココナラの添付ファイルでは送れなくなります。また、実行時も動作が重く、非常に使い勝手が悪くなります。Pandasに限らず、スクレイピングに不要なライブラリは、極力インストールしないようにしましょう。

例えば、Pandasをスクレイピングのコード内で使っていなくても、インストールしているだけで、PyInstallerはexeの中にPandasを含めてしまいます。つまり、exeを軽量にするためには、不要なライブラリはインストールしないことが一番です。

購入者さまのOSを確認する

PyInstallerで作成したexeは、作成したOSと同じOSでしか実行ができません。つまり、Windowsで作成したexeは、Windowsでしか実行できません。同じように、Macで作成したexeは、Macでしか実行できません。

OSが同じ場合

PyInstallerで作成したexeは、作成したOSと異なるOSでは実行ができないのです。

OSが異なる場合

そのため、スクレイピングの副業案件を受ける前に、必ず購入者さまのOSを確認しましょう。

まとめ

PyInstallerを使うことで、Pythonのスクレイピングコードを簡単にexe化できます。この記事で解説した手順どおりにコマンドを実行するだけなので、初心者にもおすすめの方法です。

補足として、実は、ライブラリによってexeの容量が大きくなる問題を解決できる方法があります。それは、【仮想環境】を使うことです。ただし、仮想環境の話はちょっと難しいので、この記事では解説しませんでした。仮想環境は、Pythonに慣れてきたら使ってみるのをおすすめします。

また、exe化は、Pythonのスクレイピング副業に必須のスキルです。つまり、exe化ができると、Pythonのスクレイピング副業で稼ぐことができます。もしも、Pythonのスクレイピング副業に興味があるなら、こちらの記事も読んでみてください。

また、スクレイピングに関するエラーや疑問があれば、私のココナラのサービスをご利用ください。興味がある場合は、以下のリンクからどうぞ。

3日間の質問無制限|スクレイピングの疑問に答えます
/相談は無料!\

こちらのサービスでは、Pythonの初心者向けに、スクレイピングに関する質問にお答えしています。スクレイピングのエラー解決や、コードの書き方などについても丁寧に解説します。相談は無料なので、スクレイピングに関する疑問があれば、遠慮なくメッセージを送ってください。

ココナラの会員登録がまだお済みでなければ、以下のリンクから無料で登録できます。

\スクレイピング副業やるならココナラ!/

この記事があなたの参考になれば幸いです。
以上、ちゃんかま(@chan_kama0244)でした。

コメント

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