会社プロキシ/オフライン環境下におけるpythonのサードパーティパッケージのインストール方法について

install-python-pkgs-in-proxy プログラミング
install-python-pkgs-in-proxy




これはなに?

会社プロキシやオフライン環境下における,pythonのサードパーティパッケージ(ライブラリ)のインストール方法について記載します.
python自体のインストール手順についてはこちらをご覧ください.

はじめに

昨今一番勢いのあるプログラミング言語のpythonですが,グルー言語(”のり”言語.ライブラリを簡単に読み込んで使うことができる言語)の一種であるため,サードパーティのライブラリを運用することでその真価が発揮されます.
このライブラリ(パッケージ)をインストールする方法について良くあるwebサイトの説明は,

pip install {パッケージ名}
または
conda install {パッケージ名}

ですが,残念なことに会社プロキシ環境下やオフライン環境下においてはネットワークエラーによりインストールできません.
従いまして,当該記事では上記プロキシ/オフライン環境下におけるpythonのサードパーティパッケージのインストール方法について紹介します.
環境構築という作業は,必須であるにもかかわらず,色んなところからファイルをダウンロードしたり,確からしい記事を検索して,それに頼るしか無かったりと,初学者が最もつまづきやすいポイントだと思います.
筆者も,最初に購入した参考書を頼りに環境構築したところ,後々好ましくない環境であることが判明し,アンインストールして再度入れなおしました.以下,ご参考になれば幸いです.
※想定するPC環境:windows10
※オフラインPCへインストールするためには,他のPCにて各種ファイルをダウンロードして,オフラインPCへデータ移動したものをお使いください

PC環境の確認

windows用のpythonには32bit版と64bit版がありますがパッケージについても同様ですので,PCがどちらに対応するのか,まず確認を行いましょう.
windowsキーを押して “dxdiag” と入力して表示されるアプリ:”DirextX 診断ツール” を実行するか,windowsキーとRキーを同時押しして表示される ファイル名を指定して実行ウィンドウにて “dxdiag” を入力して “OK” ボタンを押すことにより,以下の画面が表示されます.

DirectX 診断ツール

システムタブのオペレーティングシステムの欄を見ると,筆者の環境では64bitでした.

サードパーティパッケージのインストール

サードパーティのパッケージには標準ライブラリに無いような,数値計算や信号処理,画像処理,web開発などその他もろもろ,便利なパッケージがいっぱいあります.
公式のpythonをインストールした場合は,パッケージ管理システムはpip (Pip Installs Packages) が標準でインストールされていますので,こちらを用います.
例えば,現在インストールされているパッケージはコマンドプロンプトにて “pip list” で確認できます(ダメでしたら “py -m” を前につけて,”py -m pip list” としてみてください).

pip list

様々な線形代数演算やその他多くの数値計算を高速で可能にするパッケージ:NumPy (Numeric Python) は,色んな場面で良く使います.
では,早速インストールしてみましょう.
コマンドプロンプトにて “pip install numpy” でインストールできます(もしくは,”py -m pip install numpy“).
インストールできましたでしょうか?...できた方は,これ以降はこの記事をご覧いただく必要ございません.インストールできなかった方がこの記事の対象です.

恐らくプロキシかネットワークエラーになったかと思います.
この場合は,以下の手順を踏むことでパッケージをインストールすることができます.

  • PyPI (The Python Package Index, https://pypi.org/) にて検索ボックスに “numpy” と入れて検索
  • numpy” を選択
  • Download files” を選択
  • ここで注意ですが,インストールしたpythonバージョンとOSのバージョンが重要になります.インストールしたpythonはv3.9でOSはwindowsの64-bitなので,Download filesから “numpy-1.21.5-cp39-cp39-win_amd64.whl” をダウンロードします.
  • ダウンロード先のフォルダでコマンドプロンプトを開いて,”pip install numpy-1.21.5-cp39-cp39-win_amd64.whl” という風に,ローカルにダウンロードしたパッケージのファイルパスを指定することでインストールできます.
pypi 00
pypi 01
pypi 02
pip install {local package file}

Successfully installed {パッケージ名}” と表示されれば,インストール完了です.

次に,numpyと同等によく用いられる,テーブルデータ操作/入出力が可能なパッケージ:Pandas (Python Data Analysis Library) をインストールしてみましょう.”pip install {PyPIからダウンロードしたPandasパッケージのファイルパス}” にてインストールできま...せん.

pip install {pandas package}: failure

なぜなら,pandasは依存パッケージがあり,先にそれらをインストールされている必要があるからです.
上の例ですと “pytz” というパッケージが足りていないということで,PyPIから対応するバージョンのpytzをダウンロードして “pip install {pytzのファイルパス}” としてインストールしましょう.
pytzのインストールができたら再度 “pip install {pandasのファイルパス}として実行すると,足りない他の依存パッケージが表示されるので,同様に処理します.
pip install {pandasのファイルパス}” でエラーが出ずにインストールできるまでこれらを繰り返すことで,インストールが可能です.

サードパーティパッケージにはpandasのように複数の依存関係を持つものが多く存在しますが,上記と同様の操作にて,プロキシ/オフライン環境下においてもサードパーティパッケージをインストールすることができます.

Python のおすすめの学習方法

プログラミングを最短で習得する,少なくても自分の意志で使えるようになる方法について,いくつかプログラミング言語を触ってきた筆者としては何の言語においても,以下2点が重要だと思います.

  • 元々自分が他の言語で作っていた処理を違う言語で書き直す・・・・英語を勉強するときも,脳を生まれたばかりのまっさらな状態から勉強するわけではなく,日本語を通したり対比して,学習済みの言語野を用いて勉強するのと似ています
  • 言語自体を網羅的に勉強するのではなく,やりたい事を先に考え,それを達成するために色々と調べながら実装する・・・・例えば,留学で語学力が上達するのは,その国の言葉を使ってコミュニケーションを取ることが強制されるためであり,使うことに対するモチベーションが一番大事です

独学で行うには,やはり2点目の「やりたい事ドリブン学習」が効果的で,例えば次の書籍は,Python を流行らせている AI/データ分析/機械学習/深層学習について実装することに主眼を置き説明されているので,実際に手を動かしながら学んでいける本だと思います(筆者も最初にこちらの書籍で遊びながら学びました).

コメント

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