ほとんどすべてのライブラリをインストールするpipの問題


101

ほとんど何でもインストールするのにpipを使うのは難しいです。私はコーディングの初心者なので、これはおそらく私が間違っていることだと思い、easy_installをオプトアウトして、必要なことのほとんどを実行しました。ただし、今はnltkライブラリをダウンロードしようとしており、どちらも作業を完了していません。

入ってみた

sudo pip install nltk

しかし、次の応答を得ました:

/Library/Frameworks/Python.framework/Versions/2.7/bin/pip run on Sat May  4 00:15:38 2013
Downloading/unpacking nltk

  Getting page https://pypi.python.org/simple/nltk/
  Could not fetch URL [need more reputation to post link]: There was a problem confirming the ssl certificate: <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm>

  Will skip URL [need more reputation to post link]/simple/nltk/ when looking for download links for nltk

  Getting page [need more reputation to post link]/simple/
  Could not fetch URL https://pypi.python. org/simple/: There was a problem confirming the ssl certificate: <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm>

  Will skip URL [need more reputation to post link] when looking for download links for nltk

  Cannot fetch index base URL [need more reputation to post link]

  URLs to search for versions for nltk:
  * [need more reputation to post link]
  Getting page [need more reputation to post link]
  Could not fetch URL [need more reputation to post link]: There was a problem confirming the ssl certificate: <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm>

  Will skip URL [need more reputation to post link] when looking for download links for nltk

  Could not find any downloads that satisfy the requirement nltk

No distributions at all found for nltk

Exception information:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/basecommand.py", line 139, in main
    status = self.run(options, args)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/commands/install.py", line 266, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/req.py", line 1026, in prepare_files
    url = finder.find_requirement(req_to_install, upgrade=self.upgrade)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pip-1.3.1-py2.7.egg/pip/index.py", line 171, in find_requirement
    raise DistributionNotFound('No distributions at all found for %s' % req)
DistributionNotFound: No distributions at all found for nltk

--easy_install installed fragments of the library and the code ran into trouble very quickly upon trying to run it.

この問題についての考えは?私がpipを動作させる方法や、その間に問題を回避するための方法についてのフィードバックをいただければ幸いです。


2
[SSL: TLSV1_ALERT_PROTOCOL_VERSION]すべてpip installのでこのエラーが発生している人にとっては、Python.orgサイトによる最近のTLSの廃止が原因です。この回答を
Anupam

回答:


136

私はpypiホストを信頼できるものとして指定することで十分だとわかりました。例:

pip install --trusted-host pypi.python.org pytest-xdist
pip install --trusted-host pypi.python.org --upgrade pip

これにより、次のエラーが解決されました。

  Could not fetch URL https://pypi.python.org/simple/pytest-cov/: There was a problem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600) - skipping
  Could not find a version that satisfies the requirement pytest-cov (from versions: )
No matching distribution found for pytest-cov

2018年4月の更新:TLSV1_ALERT_PROTOCOL_VERSIONエラーが発生した場合:OPの信頼できるホスト/検証の問題またはこの回答とは関係ありません。むしろ、TLSV1エラーは、インタープリターがTLS v1.2をサポートしていないためです。インタープリターをアップグレードする必要があります。たとえば、https ://news.ycombinator.com/item ?id = 13539034http://pyfound.blogspot.ca/2017/01/time-to-upgrade-your-python-tls-v12.html、httpsご覧ください。://bugs.python.org/issue17128

2019年2月更新:pipをアップグレードするだけで十分な場合があります。上記のエラーによりこれができない場合は、get-pip.pyを使用してください。たとえばLinuxの場合

curl https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

詳細については、https://pip.pypa.io/en/stable/installing/をご覧ください


4
これは、Windowsシステム上で、数年後、私のために働いた
アレン・バトラーに

23
それでもエラーが発生しますCould not fetch URL https://pypi.python.org/simple/pytest-xdist/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590) - skipping
Sankalp

3
TLSV1は完全に別の問題であるため、回答を更新してTLSV1について説明します。
オリバー

8
@peterpodがこの回答を参照:stackoverflow.com/a/49769015/1526703
Anupam


40

私はpipバージョンを使用し9.0.1て同じ問題がありましたが、上記のすべての回答で問題が解決されず、他の理由でbrewでpython / pipをインストールできませんでした。

9.0.3問題を解決するためにpipをアップグレードします。また、pipでpipをアップグレードできなかったため、ソースをダウンロードして手動でインストールしました。

  1. https://pypi.org/simple/pip/から正しいバージョンのpipをダウンロードします
  2. sudo python3 pip-9.0.3.tar.gz -ピップをインストール

または、次のコマンドで新しいpipをインストールできます。

curl https://bootstrap.pypa.io/get-pip.py | python

@apatsekinの回答に関する私のコメントで述べたように、これはpipの最近のTLSの廃止により起こっています。詳細については、この回答を参照してください。
Anupam

ありがとう..同じことがPython 2でも機能することを確認できます(レガシー
カルダモン2018

conda / anacondaがbrewまたはpipを使用してpipを更新できない理由である場合conda install pip、conda環境で使用しているpipをインストール/アップグレードするために使用できます。あなたはcondaがインストールされている場合は、あなたのルート/ベースconda環境でこれを行う必要があります
コンロ

1
pipをインストールするだけcurl https://bootstrap.pypa.io/get-pip.py | python
Sumeet Gohil

32

Pypiは1.2未満のTLSバージョンのサポートを削除しました

Pipを再インストールする必要があります。

curl https://bootstrap.pypa.io/get-pip.py | python

またはグローバルPythonの場合:

curl https://bootstrap.pypa.io/get-pip.py | sudo python

これにより、Mac OSバージョンSierra 10.12.6の問題が解決されました。どうも!
Zhenhua、

ハイシエラで私のために働く。ありがとうございました。
rustyshackleford 2018

28

私はpip3バージョンを使用し9.0.1ており、コマンドを使用して最近パッケージをインストールできませんでしたpip3 install

Mac OSバージョン:EIキャプテン10.11.5

pythonバージョン: 3.5

私はコマンドを試しました:

curl https://bootstrap.pypa.io/get-pip.py | python

うまくいきませんでした。

だから私は古いpipをアンインストールし、これを10.0.0入力して最新バージョンをインストールしました:

python3 -m pip uninstall pip setuptools
curl https://bootstrap.pypa.io/get-pip.py | python3

これで私の問題は解決しました。python2を使用している場合は、python3をpythonに置き換えることができます。それもあなたのために働くことを望みます。

ちなみに、私のような一部の新人にとっては、コードを入力する必要があります: sudo -i

ルートを正しく取得するには:)頑張ってください!


上記をエコーすると、Python PIPをクリーンに再インストールしようとしましたが、これでうまくいきました。ありがとうございました!
MikeJannino

「sudo -i」を無視しないでください
Dung

27

あなたはおそらくこのバグを見ているでしょう。こちらもご覧ください

最も簡単な回避策は、pipをSSLを使用しないものにダウングレードすることですeasy_install pip==1.2.1。これにより、SSLを使用するセキュリティ上の利点が失われます。実際の解決策は、より新しいSSLライブラリにリンクされたPythonディストリビューションを使用することです。


1
Dougalに感謝しますが、pip 1.2.1も機能しません。-Pythonディストリビューションをより新しいsslライブラリに更新する方法を教えていただけませんか?
contentclown 2013年

実際には、今すぐにすべてが動作するようになりました。助けてくれてありがとう、ドゥーガル!
contentclown 2013年

7
@ user2348946これは将来の人々に役立つように何をしましたか?
Dougal 2013年

1
@DannyStapleはい、それはまさに私が提案したものです。もちろん、Pythonの非システムインストールを使用することはそれほど難しくありません。私は個人的にAnacondaを使用しています。これは数値アプリケーションには最適ですが、何でも機能します。
Dougal 2013

1
@ user13107はい。承認された回答のコメントに記載されているように、PyPIにはTLS 1.2が必要になりました。Pythonインストールを更新する必要があります。
Dougal

18

SSLエラーのもう1つの原因は、システム時刻が不良である可能性があります。現在から離れすぎている場合、証明書は検証されません。


ありがとうございました!!それが私にとって有効な唯一の解決策でした。サーバーのクロックがWAYオフでした。
Adam Spiers


6

--trusted-host pypi.python.orgオプションを追加して同様の問題を解決しました


6

他のパッケージをインストールするに9.0.1は、このSSLの問題があるため、最新バージョンのpipを使用する必要があります。ピップ自体でピップをアップグレードするには、まずこのSSLの問題を解決する必要があります。この無限ループから抜け出すために、私にとってこれが機能する唯一の方法を見つけました。

  1. このページで最新バージョンのpipを見つけてください:https : //pypi.org/simple/pip/
  2. .whl最新版のファイルをダウンロードしてください。
  3. pipを使用して最新のpipをインストールします。(ここに独自の最新バージョンを使用してください)

sudo pip install pip-10.0.1-py2.py3-none-any.whl

これで、pipは最新バージョンになり、何でもインストールできます。


5

解決策 -以下のホストを信頼できるとマークしてパッケージをインストールします

  • pypi.python.org
  • pypi.org
  • files.pythonhosted.org

一時的な解決策

pip install --trusted-host pypi.python.org --trusted-host pypi.org --trusted-host files.pythonhosted.org {package name}

恒久的な解決策 -PIP(バージョン9.0.1の問題)を最新に更新します。

pip install --trusted-host pypi.python.org --trusted-host pypi.org --trusted-host files.pythonhosted.org pytest-xdist

python -m pip install --trusted-host pypi.python.org --trusted-host pypi.org --trusted-host files.pythonhosted.org --upgrade pip

3

macOS Sierra 10.12.6。pip(homebrewを介してインストールされたpython)を介して何もインストールできませんでした。上記の答えはすべてうまくいきませんでした。

最終的には、Python 3.5から3.6へのアップグレードが機能しました。

brew update
brew doctor #(in case you see such suggestion by brew)

次に、brewによる追加の提案に従います。つまり、pythonへのリンクを上書きします。


1
Mac OS 10.12を使用している場合、元の問題は実際には最近のTLSの廃止に関連している可能性がありpipます。詳細については、この投稿を参照してください。pip10.12以前のバージョンでは、古いセキュリティプロトコルのサポートが停止しました。
Anupam

3

私も同じ問題を抱えていました。Pythonを2.7.0から2.7.15に更新しました。それは問題を解決します。

こちらからダウンロードできます


これを10回修正しました。OSXの問題を非常によく理解していて、障害が何でどこにあるかを知っているにもかかわらず、それぞれの「解決策」は過去とは異なります。今回の投票はOSXでの2.7.15のインストールです。シンプルで効果的。また、SSL / OpenSSHの問題に関するリリースノートもあります。乾杯、ありがとうございました!
マルク・

3

上記のblackjarによって投稿されたように、以下の行は私のために働きました

pip --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org install xxx

あなたは3つすべてを与える必要があり--trusted-host optionsます。解答を見た後、最初のものだけを試してみましたが、そのようにはうまくいきませんでした。


2

condaを使用してパッケージをインストールすることもできます。http://conda.pydata.orgを参照してください

conda install nltk

condaを使用する最良の方法はMinicondaをダウンロードすることですが、

pip install conda
conda init
conda install nltk

7
公平に言えば、うまくpip installいかない場合は、pip経由で別のパッケージマネージャーをインストールすることをお勧めします。
デイブニュートン

これは実際に私のために働いた。pythonをインストールした後、anacondaをインストールしました。これを読むまで、anacondaに独自のインストーラーがあることを知りませんでした。だから、これは私のために働いた答えです。トラビスのコメントは、彼がミニコンダをインストールすることを勧めたので、ニワトリ/卵のことを扱っています。
NewQuestion投票の場合クローズ16

2

私にとって、セキュリティについてあまりうるさくないように言っただけで、最新のpip(1.5.6)は、安全でないnltkパッケージで正常に動作します。

pip install --upgrade --force-reinstall --allow-all-external --allow-unverified ntlk nltk

これは古い答えです。どちらのバージョンを使用しpipていますか?
ホブ

1
最後だと思います。私はすべてをアンインストールして(Python 2.7、pipなど)、何度も再インストールすることで問題を解決したと思います
DaniPaniz

2

試しました

pip --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org install xxx 

そして、ドメインpypi.python.orgが変更された理由がよくわかりません。


1

プロキシ経由で接続している場合は、export https_proxy=<your_proxy>(UnixまたはGit Bashで)実行してから、インストールを再試行します。

Windows cmdを使用している場合、これはに変わりますset https_proxy=<your_proxy>


1

この問題を解決するために、Windows 7で次のことを行いました。

c:\ Program Files \ Python36 \ Scripts> pip install beautifulsoup4 --trusted-host *

--trusted-hostはSSLの問題を修正するようで、*はすべてのホストを意味します。

もちろん、beautifulsoup4の要件を満たすバージョンがないため、他のエラーが発生するため、これは機能しませんが、問題が一般的な質問に関連しているとは思いません。


1

アンインストールしてpipパッケージを再インストールするだけです。

Mac OSバージョン:High Sierra 10.13.6

pythonバージョン:3.7

だから私は古いpipをアンインストールし、これを入力して最新バージョン10.0.0をインストールしました:

python3 -m pip uninstall pip setuptools

curl https://bootstrap.pypa.io/get-pip.py | python3

これで私の問題は解決しました。python2を使用している場合は、python3をpythonに置き換えることができます。それもあなたのために働くことを望みます。


0

nltkだけの場合、私はかつて同様の問題に直面しました。インストールのガイドに従ってください。 NLTKをインストールする

他のモジュールで動作しないことが確かな場合は、インストールされているPythonの異なるバージョンに問題がある可能性があります。

または、pipがすでにインストールされているかどうかを確認してみてください。

sudo apt-get install python-pip python-dev build-essential 

それが機能するかどうかを確認します。


0

次の手順でこの問題を解決しました(sles 11sp2)

zypper remove pip
easy_install pip=1.2.1
pip install --upgrade scons

これはパペットの同じステップです(すべてのディストリビューションで機能するはずです)。

  package { 'python-pip':
    ensure => absent,
  }
  exec { 'python-pip':
    command  => '/usr/bin/easy_install pip==1.2.1',
    require  => Package['python-pip'],
  }
  package { 'scons': 
    ensure   => latest,
    provider => pip,
    require  => Exec['python-pip'],
  }


0

私はこれをPyCharmで持っていて、pipを10.0.1にアップグレードすると、「 'main' not found in module」エラーでpipが壊れました。

他のスレッドで見られるように、pip 9.0.3をインストールすることでこの問題を解決できました。これらは私がしたステップです:

  1. https://pypi.org/simple/pip/から9.0.3バージョンのpipをダウンロード(pipを使用してインストールできなかったため)。
  2. tar.gzからpip 9.0.3をインストールしますpython -m pip install pip-9.0.3.tar.gz

その後、すべてが機能し始めました。




0

一般的な回答のいくつかを試しましたが、それでもを使用してライブラリ/パッケージをインストールできませんでしたpip install

私の特定のエラーは'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain、Miniconda for Windows(インストーラーMiniconda3-py37_4.8.3-Windows-x86.exe)の使用でした。

私がこれをやったとき、それは最終的に動作します: pip install -r requirements.txt --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org

具体的には、これを機能させるために追加しました。 --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.