質問: ssl証明書のエラーのため、pipはurlを取得できません 突然、pythonのパッケージマネージャーは新しいモジュールをインストールできなくなりました。問題はurlのフェッチであり、原因はssl証明書にあるようです。私はこれが何を意味するのかをある程度理解していますが、完全には理解していません。実行時のサンプルpip install fastnumbers:could not fetch url https://pypi.python.org/simple/fastnumbers/: there was a problem confirming the ssl certificate: httpsconnectionpool(host='pypi.python.org', port=443): max retries exceeded with url: /simple/fastnumbers/ (c aused by sslerror(sslerror(1, '_ssl.c:499: error:1407742e:ssl routines:ssl23_get_server_hello:tlsv1 alert protocol version'),)) - skipping could not find a version that satisfies the requirement fastnumbers (from versions: ) no matching distribution found for fastnumbers これは、パッケージインデックスとの接続を確立するために最大4回試行した後に表示されます。 retrying (retry(total=3, connect=none, read=none, redirect=none, status=none)) after connection broken by 'sslerror(sslerror(1, '_ssl.c:499: error:1407742e:ssl routines:ssl23_get_server_hello:tlsv1 alert protocol version'),)': /simple/fastnumbers/ --trusted-hostオプションを使用して、ssl接続をバイパスします:pip install --trusted-host pypiorg fastnumbersしかし、これでも機能しません。これは本当に奇妙です、なぜ(そのホストに対して)明示的に無効にしたときに、pip force sslが強制されるのですか?これは、pythonをインストールすると、ローカルに1つと 仮想環境 に1つインストールした場合に発生します。さまざまな投稿を何度もやりましたが、うまくいく解決策が見つかりませんでした。
回答: ssl23_get_server_hello:tlsv1 alert protocol versionエラーは、windowsでpython 2.7.6以前( issue#26 を参照)で発生します。理由は、windowsの2.7.6は、tlsv1.2をサポートしないopenssl 0.9.8に対してビルドされています。最近のpypi.python.orgからpypi.orgへの移動により、pypiリポジトリはtlsv1.0およびtlsv1.1のサポートを削除したため、 python 2.7.6以前、pipを使用してパッケージをインストールするには、最新バージョン(現在は2.7.15)に更新する必要があります。