【Python】プロキシ環境下で pip download を利用せずにライブラリを追加する

python
2024年3月
 12
3456789
10111213141516
17181920212223
24252627282930
31  

こんにちは、咲矢です。

今回の内容は、プロキシ環境により、pip install による通常インストールが出来ない。
さらにpip downloadもできず、詰んでしまっている方向けの内容となっています。

「pythonを使うのはあきらめるしかないの?」
「何とかする方法はないの?」

と、お悩みの方に、個別にライブラリファイルをダウンロードしてインストールする方法を紹介したいと思います。

前回の記事で紹介した環境と方法は

  • Pythonがプロキシサーバを突破できない環境下のPCである
  • 別PCで必要なライブラリファイルをpip downloadで落とす
  • そのファイルをプロキシ環境下のPCに持って行ってオフラインインストールする

という内容でした。

今回紹介する方法を使えば、別PCを使用できない状況でも、プロキシ環境下のPCにpythonのライブラリをインストールすることができます。

実際に僕がやってみた作業をもとに解説していきたいと思います。

■方法

ライブラリの名前を調べてダウンロードする

ライブラリを追加で悩んでいるみなさんは、すでに目的のライブラリの名前を知っている可能性が高いと思います。もし分からない場合は「Python『欲しい機能』」で検索すれば出てくるので、その名前を控えます。

Python Package Index(PyPI)のサイト(https://pypi.org/)に行き、ライブラリ名で検索します。
検索結果から自分が欲しいライブラリのページに行きましょう。
左の「Download files」からダウンロードページに行き、ご自身の環境にあったファイルを選んでダウンロードしてください。

ダウンロードしたファイルを使用してオフラインインストールをする

pip install –no-index –find-links=ライブラリを保存したフォルダ名 ライブラリ名

この書式でコマンドラインからインストールしましょう。
ライブラリの保存フォルダはカレントディレクトリ直下に置くと作業しやすいです。
これでエラーが出なければインストール終了です。
しかし、依存関係にあるライブラリがある場合エラーが出て失敗します。
依存関係にあるライブラリがあるということは、インストールに必要なライブラリが一つではないということです。
その場合さらにライブラリをダウンロードする必要があります。
ライブラリが足りない場合、エラーの内容が

ERROR: Could not find a version that satisfies the requirement 「ライブラリ名」 (from versions: none)

となります。
このエラーにある「ライブラリ名」に当たる部分が、さらに必要なライブラリです。
PyPIのサイトで先ほどと同じように、この足りないライブラリの名前を検索してダウンロードします。

再度インストールにチャレンジ

足りないライブラリを手に入れたら再度オフラインインストールを実行してみましょう。
実行する際は、追加で手に入れたライブラリ名ではなく、メインとなるライブラリの名前で行ってください。
もし失敗してエラーが出た場合、先ほどのエラー内容と「ライブラリ名」が異なるはずです。
このエラーが意味するのは、さらにそのライブラリも必要という事なので、先ほどの手順でライブラリファイルをダウンロードします。
ファイルをライブラリ用のフォルダに追加したらインストールに再チャレンジです。

必要なライブラリをそろえる

上の手順「再度インストールにチャレンジ」の中の「エラーが出た場合~」からを実行し、エラーが出なくなるまでライブラリファイルを追加とインストールを繰り返します。
全ての必要なファイルがそろったらインストールが成功します。

■メリット&デメリット

この方法のメリットは2台目のPCが不要という事です。
会社PCなどを使用していて、セキュリティの観点から別PCからファイルの移動することが難しい場合、
そもそも別PCを用意できない場合などの状況で有効な手段です。

デメリットは手間がかかることです。
エラーが出なくなるまで根気よくライブラリをダウンロードする必要があるので、時間と手間がかかります。

■まとめ

今回紹介した方法はpipがどうしても使えない環境における最後の手段的なものだと思います。
VScodeにはプロキシの設定を記入することもできるのですが、なぜかpipはうまく通りません。
必要なライブラリ群がすべて把握できれば良いのですが、メインとなるライブラリ名以外は、初心者にはなかなか難しいです。
かなりゴリ押しな方法ですが、どうしてもエラーを回避してライブラリをインストールしたいという場合はこの方法を参考にして頂ければと思います。

ここまでご覧いただき、ありがとうございました。

 

前回の記事:
【Python】プロキシ環境下でpip installを使用してライブラリを追加する

コメント

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