Python超入門(Windows/IE)#002 [動作環境・ライブラリのインストール]
前回までの超入門
前回のpython超入門は、脱VBの手段としてpythonに取り組み始めたこと、インストール対象としてはpython Ver.3.6.8の32bit版とすること、インストール時の注意点について触れました。今回はpythonの環境構築について触れます。
python動作環境(仮想環境)について
ここは正直よくわかっていませんが、pythonは仮想環境というものを作って、そこにライブラリを実装していくようです。というのもpythonには非常に多数のライブラリがあり、対象によっては不要なライブラリなどもででくることから、OS上に単一の環境をつくるのではなく、対象に応じたライブラリの実装をするために仮想環境を複数持つ、というように捉えています。
PowerShellの管理者としての実行
今回の環境構築は、コマンドラインをつかって環境を構築していくことにします。GUIベースでの開発環境は、今後の課題とします。
まずはWindowsの検索ボックスに「powershell」と入力し、WindowsPowerShellのアイコンが表示されたら、それを右クリックし「管理者として実行」を選択します。実行ポリシーの設定画面が出たらYを押下すると、PowerShellが起動します。
Python動作環境(仮想環境)の構築
予め作成した作業ディレクトリに 「cd ディレクトリ名」で遷移し、次のコマンドにより、仮想環境を構築します。環境名は好きな名前でいいですが、予約語(例:selenium)を使うと後で苦労しますので、頭に「venv_」をつけるなどし、予約語との重複をさけます。
python -m venv 環境名
すると、配下に環境名のフォルダと様々なファイルがインストールされます。
仮想環境のアクティブ化
次を入力し、仮想環境をアクティブにすると、仮想環境を示す文字列とともに入力プロンプトが表示され、仮想環境に入ったことがわかる。そのまま入力プロンプトにコマンドをいれていく。
環境名¥Scripts¥activate
なお、仮想環境をアクティブにした前と後で何が違うかというと、「pip list」として表示されるライブラリとそのバージョンが違うことから、OS自身、各仮想環境とでライブラリを変えることができることがわかる(以降、仮想環境上での作業とする)。ちなみに仮想環境を抜ける場合は「deactivate」で抜けることができる。
pythonのライブラリ(モジュール)について
pythonには標準的なライブラリだけでなく、20万におよぶ様々なライブラリあるのが特徴です。GUIも一つだけでなく複数あり、そのほかにExcelファイルを操作するライブラリや、HTMLのタグ情報などをもとにブラウザの操作を自動実行するライブラリ、機械学習のためのライブラリなど、高度なライブラリが存在します。そのためpythonの利用にあたってはライブラリ選択も重要になります。選択方法としてはそのライブラリを周囲で使用していて情報が入手しやすいかどうか、というのが選択上の重要なポイントかと思います。
以下では具体的なライブラリについては触れず、ライブラリ(モジュール)の実装方法について解説します(注:ライブラリは一般用語で、pythonとしては関数やクラスを記述したものをモジュールもしくはパッケージ(複数のモジュールやディレクトリ、初期化処理を含むもの)と呼ぶようです。)。なお、インポートについてはこちらの記事がくわしい。
なお、pythonにそもそも標準としてついてくるライブラリについいては、こちらを参照いただきたい。
環境構築の分かれ道(Proxy環境):自動インストール
pythonは、多くの場合付属のコマンドであるpipを用いて「pip install モジュール/パッケージ名」 (Windowsの場合はpy -m pip install モジュール/パッケージ名)とするだけで、インターネットから該当ライブラリをダウンロードし、実装してくれます。
しかしこれが簡単にできるのはProxyがない場合に限ります。Proxyが設定されている場合、pipの「--proxy」オプションもしくは環境変数「HTTP_PROXY」および「HTTPS_PROXY」にProxyの設定(http://ID:PW@サーバ名:ポート番号)を登録しさえすれば「pip install モジュール/パッケージ名」で実装してくれるようです。
ちなみにpipではダウングレードなども指定で簡単にできるようですが、次の手動インストールの場合、いちいちアンインストールとインストールなどしながら行わなくてはならず、非常に大変です。pipでできる場合はこちらでやりましょう。
なお、このインストールの意味については解説しているケースが少ないのですが、インストールしなくても自分で作成したファイルは普通にimportできますので、「パッケージに含まれるモジュールや初期化処理をpythonが見つけることができるようにする。また依存関係のある関連パッケージを一緒に導入する」というのが役割のような気がします。ここは自分でパッケージを作るようになるまで課題として置いておきたいと思います。
環境構築の分かれ道(Proxy環境):手動インストール
しかしながらProxy側のセキュリティ設定によっては、ブラウザからしか外部からの通信を許さず、コマンドラインからインターネットに行こうとしてもブロックしてしまう場合があります。このような環境の場合は、環境変数等を設定してもpipをそのまま使うことができません。その場合は手動でライブラリをダウンロードして対応することになる。まさに自分がこのような環境で作業せざるを得ませんでしたが、詳細の対応方法は次の手順になります。
■ダウンロード元:https://pypi.org/
必要なライブラリ(モジュール)名を検索BOXに入れ、表示されるライブラリ(大抵が一番上にくる)をクリックし、次のページでDownloadと書かれたリンクをクリックするとパッケージ(モジュールに__init__.pyという初期化コードが書かれているものをパッケージと呼ぶようです)が表示される。だいたいが次の2種類のファイルによって手順が異なります。
(1)〜.whl(パッケージファイル)の場合
パッケージファイルの場合、パッケージファイルをダウンロードしたフォルダに「cd フォルダ名」で遷移し、次のコマンドでインストールする。
python -m pip install --no-deps パッケージファイル名.whl
(2)〜.tar.gz(圧縮ファイル)の場合
この場合は、lhaplusなどの解凍ソフトをつかって解凍したディレクトリを任意の場所におき、先頭に「cd フォルダ名」で遷移し、先頭フォルダにある「setup.py」を使って次のコマンドでインストールする。
python setup.py install
このコマンドのみでインストールが成功すればよいが、場合によりインターネットから不足するパッケージをダウンロードしようとする、もしくは実装されたライブラリが足りないと警告をされる場合があります。
この場合、コンソール画面に表示される最後の行に表示されているパッケージをダウンロード元で検索、ダウンロードし、上記(1)(2)のいずれかで繰り返しインストールすることになるので、エラーがなくなるまで粘り強くインストールを繰り返す必要があります。
以上で今回の記事は終了です。今回はpythonの動作環境としての「仮想環境」の構築およびProxy(インターネット接続)環境に応じた「ライブラリのイストール」についれ触れました。
次回予告
次回のpython超入門は、いよいよライブラリとしての、ブラウザの自動操作を行う「selenium」ライブラリの概要とseleniumでブラウザを操作する際に必要となる「ブラウザドライバー」の実装、実際のブラウザ操作のコーディング例について解説します。お楽しみに。
いかがでしたでしょうか。この記事がお役に立ちましたら「ハートボタン」「フォロー」「サポート」「コメント」での応援よろしくお願いします。
この記事が気に入ったらサポートをしてみませんか?