neredeyse tüm kitaplıkları kurarken pip sorunu


102

Neredeyse her şeyi kurmak için pip kullanmakta zorlanıyorum. Kodlamada yeniyim, bu yüzden belki de bunun yanlış yaptığım bir şey olduğunu düşündüm ve yapmam gereken şeylerin çoğunu elde etmek için easy_install'u seçtim, ki bu genellikle işe yaradı. Ancak, şimdi nltk kitaplığını indirmeye çalışıyorum ve hiçbiri işi tamamlamıyor.

Girmeyi denedim

sudo pip install nltk

ancak şu yanıtı aldı:

/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.

Bu konu hakkında herhangi bir fikriniz var mı? Bu arada sorunu nasıl çözebileceğime veya sorunu nasıl çözeceğime dair bazı geri bildirimlerden gerçekten memnun olurum.


2
[SSL: TLSV1_ALERT_PROTOCOL_VERSION]Tüm pip installe-postalar için bu hatayı alan kişiler için , bunun nedeni Python.org siteleri tarafından son TLS'nin kullanımdan kaldırılmasıdır. Bu cevabı
Anupam

Yanıtlar:


137

Pypi ana bilgisayarını güvenilir olarak belirtmeyi yeterli buldum. Misal:

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

Bu, aşağıdaki hatayı çözdü:

  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

Nisan 2018 Güncellemesi : TLSV1_ALERT_PROTOCOL_VERSION hatasını alan herkes için: OP'nin veya bu cevabın güvenilir ana bilgisayar / doğrulama sorunu ile ilgisi yoktur. Bunun yerine TLSV1 hatası, yorumlayıcınızın TLS v1.2'yi desteklememesinden kaynaklanır, tercümanınızı yükseltmeniz gerekir. Örneğin bkz. Https://news.ycombinator.com/item?id=13539034 , http://pyfound.blogspot.ca/2017/01/time-to-upgrade-your-python-tls-v12.html ve https : //bugs.python.org/issue17128 .

Şubat 2019 Güncellemesi : Bazıları için pip'i yükseltmek yeterli olabilir. Yukarıdaki hata bunu yapmanızı engelliyorsa get-pip.py'yi kullanın. Örneğin, Linux'ta,

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

Https://pip.pypa.io/en/stable/installing/ adresinde daha fazla ayrıntı .


4
Bu benim için yıllar sonra, bir pencere sisteminde çalıştı
Allen Butler

23
Hâlâ bir hata alıyorum-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
Tamamen ayrı bir konu olduğu için TLSV1 hakkında konuşmak için cevabımı güncelledim.
Oliver

8
@peterpod bu yanıtı görün: stackoverflow.com/a/49769015/1526703
Anupam


40

Pip sürümünü kullandım 9.0.1ve aynı sorunu yaşadım, yukarıdaki tüm cevaplar sorunu çözmedi ve başka nedenlerle python / pip'i brew ile kuramadım.

9.0.3Problemi çözmek için pip'i yükseltmek . Ve pip'i pip ile yükseltemediğim için kaynağı indirdim ve manuel olarak kurdum.

  1. Pip'in doğru sürümünü https://pypi.org/simple/pip/ adresinden indirin.
  2. sudo python3 pip-9.0.3.tar.gz - pip yükleyin

Veya aşağıdakilerle daha yeni pip kurabilirsiniz:

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

@ apatsekin'in cevabına yaptığım yorumda belirtildiği gibi, bu, pip için son TLS'nin kullanımdan kaldırılması nedeniyle oluyor. Ayrıntılar için bu yanıta bakın.
Anupam

Teşekkür .. (atm şey mirası üzerinde çalışıyorum) de Python 2 için çalışmış aynı teyit edebilir
kakule

Eğer conda / anaconda pip'i güncellemek için brew veya conda install pippip'i kullanamamanın nedeniyse, conda ortamınızla kullandığınız pip'i kurmak / yükseltmek için kullanabilirsiniz . Bunu, eğer conda yüklediyseniz, kök / temel conda ortamınızda yapmalısınız
ocaklar

1
Sadece pip kurulumucurl https://bootstrap.pypa.io/get-pip.py | python
Sumeet Gohil

32

Pypi, 1.2'den küçük TLS sürümleri için desteği kaldırdı

Pip'i yeniden kurmanız gerekiyor, yapın

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

veya genel Python için:

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

Bu, Sierra 10.12.6 Mac OS sürümündeki sorunu çözdü. Teşekkürler!
Zhenhua

Benim için High Sierra'da çalışıyor. Teşekkür ederim.
rustyshackleford

29

Pip3 sürümünü kullandım 9.0.1ve son zamanlarda komut aracılığıyla herhangi bir paket kuramadım pip3 install.

Mac işletim sistemi sürümü: EI Captain 10.11.5.

python sürümü: 3.5

Komutu denedim:

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

Benim için işe yaramadı.

Bu yüzden eski pip'i kaldırdım ve şunu 10.0.0girerek en yeni sürümü yükledim :

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

Şimdi sorunum çözüldü. Python2 kullanıyorsanız, python3'ü python ile değiştirebilirsiniz. Umarım sizin için de işe yarar.

Bu arada, benim gibi bazı çaylaklar için kodu girmelisiniz: sudo -i

doğru kökü kazanmak için :) İyi şanslar!


Yukarıdakileri tekrarlamak, sadece python ve pip'i yeniden yüklemeyi temizlemek üzereydi ama bu benim için çalıştı. Teşekkür ederim!
MikeJannino

"sudo -i" ihmal etmeyin
Gübre

27

Muhtemelen bu hatayı görüyorsunuz ; ayrıca buraya bakın .

En kolay çözüm SSL kullanmayan birine pip downgrade: easy_install pip==1.2.1. Bu, SSL kullanmanın güvenlik avantajını kaybeder. Gerçek çözüm, daha yeni bir SSL kitaplığına bağlı bir Python dağıtımı kullanmaktır.


1
Teşekkürler Dougal, ancak pip 1.2.1 de çalışmıyor. -Python dağıtımımı daha yeni bir ssl kitaplığına nasıl güncelleyebileceğimi bana bildirir misiniz?
contentclown

aslına bakarsan, az önce çalışacak her şeyim var. yardımın için teşekkürler, Dougal!
contentclown

7
@ user2348946 Gelecekteki insanlara faydalı olması için ne yaptınız?
djs

1
@DannyStaple Evet, tam olarak bunu önerdim. Elbette, sistem dışı bir Python kurulumu kullanmak çok zor değil; Şahsen , sayısal uygulamalar için harika olan ancak her şey için işe yarayan Anaconda'yı kullanıyorum .
djs

1
@ user13107 Evet; Kabul edilen yanıtla ilgili yorumlarda belirtildiği gibi, PyPI artık TLS 1.2 gerektiriyor. Python kurulumunuzu güncellemeniz gerekecek.
djs

18

SSL hatalarının bir başka nedeni de kötü bir sistem zamanı olabilir - şimdiki zamandan çok uzaksa sertifikalar doğrulanmayacaktır.


Teşekkür ederim!! Benim için işe yarayan tek çözüm buydu. Sunucumun saati ÇOK kapalıydı.
Adam Spires


6

--trusted-host pypi.python.orgSeçenek ekleyerek benzer bir sorunu çözdüm


6

Başka bir paket kurmak için 9.0.1, bu SSL problemi olduğundan pip'in en son sürümünü kullanmam gerekiyor . Pip'i pip ile yükseltmek için önce bu SSL problemini çözmem gerekiyor. Bu sonsuz döngüden atlamak için, benim için işe yarayan tek yolu buluyorum.

  1. Bu sayfada pip'in en son sürümünü bulun: https://pypi.org/simple/pip/
  2. .whlEn son sürümün dosyasını indirin .
  3. En son pip'i kurmak için pip kullanın. (Burada kendi son sürümünüzü kullanın)

sudo pip pip-10.0.1-py2.py3-none-any.whl yükleyin

Artık pip en son sürümdür ve her şeyi yükleyebilir.


5

Çözüm - Aşağıdaki ana bilgisayarları güvenilen olarak işaretleyerek herhangi bir paketi kurun

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

Geçici çözüm

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

Kalıcı çözüm - PIP'nizi (sürüm 9.0.1 ile ilgili sorun) en son sürüme güncelleyin.

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 aracılığıyla kurulan python) aracılığıyla hiçbir şey yükleyemedi. Yukarıdaki tüm cevaplar işe yaramadı.

Sonunda, python 3.5'ten 3.6'ya yükseltme işe yaradı.

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

sonra brew ile ek önerileri izleyin, yani python bağlantısının üzerine yazın.


1
Mac OS 10.12 kullanıyorsanız, orijinal sorununuz aslında son TLS'nin kullanımdan kaldırılmasıyla ilgili olabilir pip. Ayrıntılar için bu gönderiye bakın. pip10.12 ve daha eski sürümlerde eski güvenlik protokolünü desteklemeyi durdurdu.
Anupam

3

Ben de aynı sorunu yaşadım. Sadece gelen piton güncellenmiş 2.7.0 için 2.7.15 . Sorunu çözer.

Buradan indirebilirsiniz .


Bunu 10. kez düzelttim. OSX'teki sorunu çok iyi anlamasına ve başarısızlığın ne olduğunu ve nerede olduğunu bilmesine rağmen her "çözüm" geçmişten farklıdır. Bu sefer oylama OSX üzerinde 2.7.15 kurulumuna gidiyor. Basit ve etkili. Ayrıca, SSL / OpenSSH sorunuyla ilgili yayımlanan notlar da var. Şerefe ve çok teşekkürler!
Marc

3

Yukarıda blackjar tarafından yayınlandığı gibi, aşağıdaki satırlar benim için çalıştı

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

Üçünü de vermelisin --trusted-host options. Cevaplara baktıktan sonra sadece birincisi ile deniyordum ama bu benim için işe yaramadı.


2

Paketleri kurmak için conda'yı da kullanabilirsiniz: Bkz. Http://conda.pydata.org

conda install nltk

Conda'yı kullanmanın en iyi yolu Miniconda'yı indirmektir, ancak şunu da deneyebilirsiniz

pip install conda
conda init
conda install nltk

7
Doğrusu, pip installişe yaramazsa, pip aracılığıyla başka bir paket yöneticisi kurmanızı tavsiye etmek ...
Dave Newton

Bu aslında benim için çalıştı. Python'u kurduktan sonra anaconda'yı kurdum. Bunu okuyana kadar anaconda'nın kendi yükleyicisi olduğu hakkında hiçbir fikrim yoktu. Yani benim için işe yarayan cevap bu. Travis'in yorumu tavuk / yumurta meselesini ele alıyor çünkü miniconda kurmayı tavsiye ediyor.
eğer YeniSoru oylarsa KAPAT

2

Benim için en son pip (1.5.6), güvenlik konusunda çok seçici olmamasını söylerseniz, güvensiz nltk paketiyle iyi çalışıyor:

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

Bu eski bir cevap. Hangi versiyonundasın pip?
Ocak

1
Sanırım sonuncusu. Her şeyi kaldırarak (Python 2.7, pip vb.) Ve her şeyi tekrar tekrar yükleyerek sorunu çözdüğümü düşünüyorum
DaniPaniz

2

denenmiş

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

ve nihayet çözüldü, pypi.python.org etki alanının neden değiştiğini tam olarak anlamadım.


1

Bir proxy üzerinden bağlanıyorsanız, export https_proxy=<your_proxy> (Unix veya Git Bash üzerinde) çalıştırın ve ardından kurulumu yeniden deneyin.

Windows cmd kullanıyorsanız, bu set https_proxy=<your_proxy>.


1

Bu sorunu çözmek için Windows 7'de aşağıdakileri yaptım.

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

--Trusted-host, SSL sorununu çözüyor gibi görünüyor ve * her host anlamına geliyor.

Elbette bu işe yaramıyor çünkü güzelsoup4 gereksinimini karşılayan bir sürüm olmadığından başka hatalar alıyorsunuz, ancak bu sorunun genel soruyla ilgili olduğunu düşünmüyorum.


1

Sadece pip paketlerini kaldırın ve yeniden yükleyin, sizin için çalışacaktır.

Mac işletim sistemi sürümü: yüksek Sierra 10.13.6

python sürümü: 3.7

Bu yüzden eski pip'i kaldırdım ve şunu girerek en yeni version10.0.0'ı yükledim:

python3 -m pip uninstall pip setuptools

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

Şimdi sorunum çözüldü. Python2 kullanıyorsanız, python3'ü python ile değiştirebilirsiniz. Umarım sizin için de işe yarar.


1

Bazı popüler cevapları denedim, ancak yine de kullanarak herhangi bir kitaplık / paket yükleyemedim pip install.

Özel 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chainhatam Windows için Miniconda kullanıyordu (yükleyici Miniconda3-py37_4.8.3-Windows-x86.exe).

Sonunda bunu yaptığımda işe yarıyor: pip install -r requirements.txt --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org

Özellikle, çalışmasını sağlamak için bunu ekledim: --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org


0

Sadece nltk hakkındaysa, bir zamanlar benzer bir problemle karşılaştım. Kurulum için aşağıdaki kılavuzu deneyin. NLTK'yi yükleyin

Başka herhangi bir modülle çalışmadığından eminseniz, farklı Python sürümleriyle sorun yaşayabilirsiniz.

Veya pip'in zaten kurulu olup olmadığını görmek için Deneyin:

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

ve çalışıp çalışmadığını görün.


0

Bu sorunu aşağıdaki adımlarla çözdüm (sles 11sp2'de)

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

İşte kuklada aynı adımlar (tüm dağıtımlarda çalışması gereken)

  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

Bunu PyCharm ile yaşadım ve pip'i 10.0.1'e yükseltmek pip'i "'main' modülde bulunamadı" hatasıyla bozdu.

Bu sorunu başka bir iş parçacığında görüldüğü gibi pip 9.0.3'ü kurarak çözebilirim. Yaptığım adımlar şunlar:

  1. Pip 9.0.3 sürümü https://pypi.org/simple/pip/ adresinden indirildi (çünkü yüklemek için pip kullanılamadı).
  2. Tar.gz python -m pip install pip-9.0.3.tar.gz'den pip 9.0.3'ü kurun

Her şey ondan sonra çalışmaya başladı.



Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.