Python プログラミング

【python】pip SSLError SSL: WRONG_VERSION_NUMBER対応

 

pipでインストールできなくなった!

という人もいるのではないでしょうか?

2021年2月に私もWindowsでSSLErrorでできなくなりました。

そんな時の対応を紹介します。

 

本記事はこんな方におすすめです。

hituji
pipのインストールがSSLErrorでできない

 

本記事の内容

  • エラー内容
  • 対策1
  • 対策2

 

スポンサーリンク

エラー内容

下記のようなエラーが出て、pipができません。

なんだったら、pipのupgradeもできません。

WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))': /simple/numpy/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))': /simple/numpy/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))': /simple/numpy/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))': /simple/numpy/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))': /simple/numpy/
Could not fetch URL https://pypi.org/simple/numpy/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/numpy/ (Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))) - skipping

 

対策1

よく見かける対策です。

--trusted-hostをつけて、pypi.orgは大丈夫ですよ!とする方法です。

 

python -m pip install --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org ライブラリ名

 

私はこの方法ではうまくいきませんでした。

対策2

pythonのバージョンとpipのバージョンの組み合わせ。

私はこちらで解決しています。

 python3.8.6 と pip 20.2.1

 python3.9.1 と pip 20.3.1

の組み合わせなら問題ないが、

 python3.8.6 と pip 20.3.1

とするとエラーが出ます。

 

python3.8.*を使っていて

そもそもバージョンの変更もできない方は、次のリンクより一旦、pip 19.2を取得します。

>> pip 19.2 ダウンロード先

 

ダウンロードしたら、get-pip.pyが取得できるので、pythonコマンドで実行します。

python get-pip.py

 

これで、pip 19.2がインストールできたので、20.2.1に変更します。

python -m pip install=20.2.1

 

これで、バージョンが合わせれたので、他のライブラリもインストールできるようになります。

 

-Python, プログラミング