Proxy環境でPythonパッケージをオフラインインストールする方法
環境
会社でプロキシが利用されていたり、どうしてもオフラインでインストールする必要がある時を想定しています。
インストール方法
通常であればpip install パッケージ名
でインストールできますが、下のエラーが出てインストールできないことがあります。
proxyで接続できないことが分かります。
WARNING: Retrying (Retry(total=4, connect-None, read-None, redirect-None, status-None)) after connection broken by ProxyError( Cannot connect to proxy. , OSError ( Tunnei conection fai led: 407 407))': [パッケージ名] WARNING: Retrying (Retry(total=3, connect-None, read-None, redirect-None, status-None)) after connection broken by ProxyError( Cannot connect to proxy. , OSError ( Tunnei conection fai led: 407 407))': [パッケージ名] WARNING: Retrying (Retry(total=2, connect-None, read-None, redirect-None, status-None)) after connection broken by ProxyError( Cannot connect to proxy. , OSError ( Tunnei conection fai led: 407 407))': [パッケージ名] WARNING: Retrying (Retry(total=1, connect-None, read-None, redirect-None, status-None)) after connection broken by ProxyError( Cannot connect to proxy. , OSError ( Tunnei conection fai led: 407 407))': [パッケージ名] by "ProxyError ( Cannot connect to proxy.',
検索するとproxyの設定を入れる方法などいくつか方法がありますが、今回はPythonのパッケージを直接ダウンロードする方法をまとめます。 pypi.org 今回はExcelを操作することができるopenpyxlをインストールします。 pypi.org
左側にあるNavigation>Download filesを選択し、最新のopenpyxl-3.0.3.tar.gz(2020.6.24現在)を任意のフォルダにダウンロードします。
パッケージによって拡張子が.whlや.gzなどありますが、そのままインストールできます。
ダウンロードが完了したらPowerShell(もしくはコマンドプロンプト)を開き、パッケージをダウンロードしたフォルダに移動します。 デスクトップに保存したときの例を示します。
PS C:\Users\ユーザ名>cd desktop PS C:\Users\ユーザ名\Desktop>pip install --no-deps [パッケージファイル名]
パッケージファイル名は拡張子も入力してください。
インストールが完了したらpip list
で、インストールされたパッケージを確認します。
>pip list
また依存関係を確認します。 パッケージを使うには、他のパッケージが要求されることがあります。 openpyxlの場合「jdcal」と「et_xmlfile」が依存関係にあるので、この2つも同じようにインストールする必要があります。 最終的に以下のように表示されれば問題ありません。
>pip check No broken requirements found.
「pipdeptree」というパッケージを入れると、依存関係が分かりやすいので気になる方をお試しください。
以上でオフラインインストール作業は完了です。
まとめ
PyPi.orgからパッケージをダウンロード
↓
pip install --no-deps [パッケージファイル名]でインストール
余談
ブログにまとめるときに説明文の位置に迷いますね。 画像の下に説明が多いようですが、ソースコードの場合は説明の下にソースコードが多くみられました。 基本はそのレイアウトで書いていこうと思います。