【Python】pipがネットワークプロキシを開くとパッケージがインストールできない問題を解決

問題の説明

ネットワーク プロキシを開いた後、Python の pip はパッケージをインストールできず、次のエラーが報告されます。

$ pip install netsm
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1123)'))': /simple/netsm/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1123)'))': /simple/netsm/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1123)'))': /simple/netsm/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1123)'))': /simple/netsm/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1123)'))': /simple/netsm/
Could not fetch URL https://pypi.tuna.tsinghua.edu.cn/simple/netsm/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.tuna.tsinghua.edu.cn', port=443): Max retries exceeded with url: /simple/netsm/ (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1123)'))) - skipping
ERROR: Could not find a version that satisfies the requirement netsm (from versions: none)
ERROR: No matching distribution found for netsm

原因分析

おそらく多くの学生は私と同じように、パッケージのダウンロード速度を速くするために、pip ソースを国内の清華ソースまたは Ali ソースとして設定していると思われます。清華ソースを例として、設定方法は次のとおりです。

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

ただし、清華ソースを構成した後、pip はインストール時に清華のミラー ウェアハウスからインストール パッケージを取得しますが、清華のネットワークは一部の海外ネットワーク プロキシをブロックまたはフィルタリングするため、プロキシを有効にした後は pip をパッケージ化してインストールできません。

解決

暫定計画

一時的な解決策は非常に簡単で、エージェントをオフにするだけです。ただし、多数のパッケージをインストールする場合は、プロキシを何度も切り替える必要があり、非常に面倒なので、次のような恒久的な解決策をお勧めします。

常設プログラム

pip ミラー ソース (清華大学であろうと Ali であろうと) がプロキシ サーバーをシールドしているため、ミラー ソースにアクセスするときにプロキシ ネットワークを使用すべきではありません。システムのプロキシ設定で、ミラー ソースのドメイン名を直接分離します。

ここに画像の説明を挿入
つまり、プロキシ サーバーの設定では、次のエントリで始まるアドレスにはプロキシ サーバーを使用しないでください。清華園を例として、pypi.tuna.tsinghua.edu.cn先頭のセミコロンに注意して を追加するだけです;

おすすめ

転載: blog.csdn.net/qq_42951560/article/details/132339370