オフラインでpip installが使えない時の方法(画像付き)

python

pip  installができない環境でライブラリをインストールする

こういう人向け

  • オフラインのPCにライブラリをインストールしたい
  • 社内セキュリティなどでpip  installが使えない(タイムアウトみたいなerrorが出る)

私はopenpyxlを入れようとした時にはじめてハマりました。webでいろいろと調べたのですが、
はっきりしたものはあまりなく、手当たり次第にやってみて、最終的にインストールできた内容です。
ですので、「これが正解」とは思っていないのと、間違った情報かもしれませんのであくまで参考までとしていただければと思います。

openpyxlという、excelファイルの読出しや出力ができるライブラリのインストールです。
私のPCのpythonを一度アンインストールして、実際にオフラインでライブラリをインストールした
内容を画像とともに紹介します。

インストールの流れ(ざっくり)

  • 必要なインストーラをpyplからダウンロード
  • .whlのファイルをpythonのディレクトリに移動
  • pip  install  ファイル名  でインストール
  • errorが出たら内容を読んで、要求されているライブラリをpyplからダウンロードしてインストール
  • これの繰り返し
  • うまくいったら最後にpip  listで確認

インストール手順(詳細)

最初に必要になったインストーラはこれです。2つです。
■openpyxl(これをインストールするのが最終目的)
⇒openpyxl-3.0.7-py2.py3-none-any.whl
■et_xmlfile
⇒et_xmlfile_2021-1.0.2-py3-none-any.whl(こっちではダメだった)
⇒et_xmlfile-1.1.0-py3-none-any.whl(こちらが正解)

pip list で現在インストールされているライブラリを表示させてみます。
pip listと入力してenter

pythonインストールしたてだとこのように出ます。

試しにオフラインで↓を入力してenterしてみます。
pip install openpyxl
これは当然エラーが出るはずですが・・・

数回リトライみたいな動きがあり、最終的に↓↓のメッセージがでます。
——————————————————————–
ERROR: Could not find a version that satisfies the requirement openpyxl (from versions: none)
ERROR: No matching distribution found for openpyxl
——————————————————————–
そりゃ、オフラインじゃ無理です。

ではopenpyxlのインストーラをダウンロードします。
(別なPCでダウンロードしてUSBメモリなどで移動しましょう)

インストーラは↓の様にgetします。
・「python pypl」でググる
・pyplというサイトが出てくる
・検索窓でopenpyxlと入力して、検索
・一覧が出るので、openpyxlを選ぶ(色々出てくるから迷うかも)
・左側に「DOWNLOAD」というところがあるので、そこに入る
・openpyxl-3.0.7-py2.py3-none-any.whlをダウンロード(これがインストーラ)
※ダウンロードファイルはご自身のOSやpythonのバージョンで異なります。
私の場合はwin10の64bit、python3.9なのですが、↑↑のインストーラは「any」ってなってるので
この場合は「なんでもOK」って意味だと・・・・思います。

ダウンロードが終わったら、このファイルを解凍とかはしないでそのまま
pythonの実行ファイルが入っているフォルダにいれます。
私の場合はココ↓↓

フォルダに入れた状態。ここで上部のファイルディレクトリ表示のところをクリックして、
「cmd」と入力します。

すると↓↓のような黒い画面が開きます。カレントディレクトリでのコマンドプロンプトですね。

ここで↓↓を入力してenter
pip install openpyxl-3.0.7-py2.py3-none-any.whl

数回リトライみたいな動きがあり、最終的に↓↓のメッセージが出た。
——————————————————————–
ERROR: Could not find a version that satisfies the requirement et-xmlfile (from openpyxl) (from versions: none)
ERROR: No matching distribution found for et-xmlfile
——————————————————————–
et-xmlfile っていうライブラリがないよって言われています。(たぶん・・・)

という事で、et-xmlfileをダウンロード。
先ほどのpyplのサイトに戻って、今度はet-xmlfileで検索。
そして↓↓これをダウンロード(後でこのインストーラは違うものだった事に気づく・・・)
et_xmlfile_2021-1.0.2-py3-none-any.whl

このファイルを解凍とかはしないで、そのまま
pythonの実行ファイルが入っているフォルダにいれます。

さっきと同じ様に、pythonフォルダ上部のファイルディレクトリ表示のところをクリックして、
「cmd」と入力して、ここで↓↓を入力してenter
pip install et_xmlfile_2021-1.0.2-py3-none-any.whl

↓↓こんな表示がでれば、インストールできています
——————————————————————–
Installing collected packages: et-xmlfile-2021
Successfully installed et-xmlfile-2021-1.0.2
——————————————————————–

ここからopenpyxlをインストールしてみる。これでいけるはず!!
↓↓を入力
pip install openpyxl-3.0.7-py2.py3-none-any.whl

数回リトライみたいな動きがあり、最終的に↓↓のメッセージが出た。
——————————————————————–
ERROR: Could not find a version that satisfies the requirement et-xmlfile (from openpyxl) (from versions: none)
ERROR: No matching distribution found for et-xmlfile
——————————————————————–
なぜだ??? うーん、「et-xmlfile」って要求されているようです。(たぶん・・・)
そういえば、さっき入れたのはet-xmlfile-2021-1.0.2だった、これではだめだったようです。

改めて、et-xmlfileをダウンロードしに行きます。またまたpyplのサイトに行って、
今度は↓↓これをダウンロード
et_xmlfile-1.1.0-py3-none-any.whl
ダウンロードしたファイルをpythonフォルダに入れて、

さっきと同じ様に、pythonフォルダ上部のファイルディレクトリ表示のところをクリックして、
「cmd」と入力して、ここで↓↓を入力してenter
pip install et_xmlfile-1.1.0-py3-none-any.whl

↓↓こんな表示がでれば、インストールできています
——————————————————————–
Installing collected packages: et-xmlfile
Successfully installed et-xmlfile-1.1.0
——————————————————————–
もう一度openpyxlをインストール
↓↓を入力
pip install openpyxl-3.0.7-py2.py3-none-any.whl

↓↓こんな表示がでれば、インストールできています
——————————————————————–
Installing collected packages: openpyxl
Successfully installed openpyxl-3.0.7
——————————————————————–

最後にpip listでインストールできているか確認

良かった!!表示されています。

まとめ

今回はopenpyxlでしたが、ほかに
・pandas
・pyautogui
もこの方法でやりました。大体は同じ手順で出来るのですが、インストーラのファイル形式が
.whlとか.tarとか.gzという感じでいくつかあって、解凍が必要だったりします。

いずれ紹介できればと思います。

コメント