Fehler bei der Pip-Verbindung: Indexbasis-URL kann nicht abgerufen werden http://pypi.python.org/simple/

89

Ich renne sudo pip install git-reviewund erhalte die folgenden Meldungen:

Downloading/unpacking git-review
  Cannot fetch index base URL http://pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement git-review
No distributions at all found for git-review
Storing complete log in /home/sai/.pip/pip.log

Hat jemand eine Idee dazu?

Sai Wai Maung
quelle
4
Muss eine Proxy-Verbindung sein
Ossama
1
"Keiner von ihnen scheint mein Problem zu lösen." Welche sind das? Damit wir uns nicht wiederholen.
RandomSeed

Antworten:

142

Ich weiß, dass dies ein alter Thread ist, aber ich bin heute auf dieses Problem gestoßen und wollte meine Lösung für das Problem teilen, da ich diese Lösung anderswo auf SO nicht gesehen habe.

Meine Umgebung: Python 2.7.12 / 2.7.14 unter Ubuntu 12.04.5 LTS in einer virtuellen Umgebung, Pip Version 1.1.

Meine Fehler:

pip install nose

in der Konsole:

Cannot fetch index base URL http://pypi.python.org/simple/

in ~ / .pip / pip.log:

Could not fetch URL http://pypi.python.org/simple/: HTTP Error 403: SSL is required

Neugierig für mich, weil ich seit ungefähr einem Jahr dieselben Befehle in einem Skript ohne Probleme ausgeführt habe.

das hat es behoben:

pip install --index-url=https://pypi.python.org/simple/ nose

(Beachten Sie die https)

Hoffe das hilft jemandem!

mattdedek
quelle
Vielen Dank! Ich hatte dieses Problem auch unter Ubuntu 12.04, auf dem ein vorhandenes pip 1.0 from /usr/lib/python2.7/dist-packages (python 2.7)installiert war, das praktisch unbrauchbar war.
Josh Kupershmidt
Sie, mein Herr, verdienen eine Medaille. Ich hatte dieses Problem auf meinem schwarzen Beaglebone. Jetzt ist es behoben.
Aditya Shekhawat
Viele Antworten hier. Keiner von ihnen ist für mich relevant / gearbeitet, außer diesem. Danke dir!
Arielf
pip install --index-url=http://mypypi.net/simple/wirft einen FehlerERROR: You must give at least one requirement to install (see "pip help install")
Confounded
@Confounded - Vielen Dank, dass Sie darauf hingewiesen haben. Listen Sie einfach die Pakete auf, die Sie nach der Option --index-url installieren möchten. Ein Beispiel finden Sie im Update.
Mattdedek
58

Sie müssen Ihre Pip-Installation aktualisieren .

Mit der Option --index-url(Kurzversion -i:) können Sie im Aufruf von pip selbst eine Index-URL angeben, dort können Sie die https-Variante verwenden. Dann können Sie pip anweisen, sich selbst zu aktualisieren.

sudo pip install --index-url https://pypi.python.org/simple/ --upgrade pip

Danach sollten Sie pip ohne die --index-urlOption verwenden können.


Ich glaube, dass die Version 7.0.0 (21.05.2015) dieses Problem ausgelöst hat. Der Versionshinweis für diese Version enthält Folgendes:

BACKWARD INCOMPATIBLE Unterstützt nicht länger implizit einen unsicheren Ursprungsursprung, sondern erfordert, dass unsicheren Ursprüngen die --trusted-hostOption explizit als vertrauenswürdig eingestuft wird .

Sie können Ihre Pip-Version mit überprüfen pip --version.

Dies würde bedeuten, dass eine sudo pip install --trusted-host --upgrade pipeinmalige Ausgabe auch dieses Problem lösen würde, obwohl Pip über unsicheres http heruntergeladen wird. Dies funktioniert möglicherweise auch überhaupt nicht, da der unsichere Endpunkt möglicherweise nicht mehr auf dem Server verfügbar ist (ich habe dies nicht getestet).

Daniel F.
quelle
42

BEARBEITEN:

Die aktuelle Version von PIPhat dieses Problem nicht mehr. Ab sofort ist version: 7.1.2die aktuelle Version. Hier ist der PIPLink:

https://pypi.python.org/pypi/pip

ORIGINAL FIX:

Ich habe dieses Problem beim Versuch, es zu verwenden pip==1.5.4

Dies ist ein Problem im Zusammenhang mit PIP und Pythons PYPI-vertrauenswürdigen SSL-Zertifikaten. Wenn Sie im PIP-Protokoll unter Mac OS X unter /Users/username/.pip/pip.log nachsehen , erhalten Sie weitere Informationen .

Meine Problemumgehung, um PIP nach stundenlangem Ausprobieren wieder in Betrieb zu nehmen, bestand darin, in meine Site-Pakete in Python zu gehen, sei es in einer virtuellen Umgebung oder in Ihren normalen Site-Paketen , und die aktuelle PIP-Version zu entfernen . Für mich hatte ichpip==1.5.4

Ich habe das PIP-Verzeichnis und die PIP-Eidatei gelöscht. Dann rannte ich

easy_install pip==1.2.1  

Diese Version von PIP hat kein SSL-Problem, und dann konnte ich meine normale pip install -r requirements.txtVersion in meiner virtuellen Umgebung ausführen, um alle gewünschten Pakete einzurichten, die in meiner requirements.txtDatei aufgeführt waren.

Dies ist auch der empfohlene Hack, um das Problem von mehreren Personen in dieser Google-Gruppe zu lösen, die ich gefunden habe:

https://groups.google.com/forum/#!topic/beagleboard/aSlPCNYcVjw

Aaron Lelevier
quelle
Das Problem wurde auch für mich behoben.
HorseloverFat
6
Zu Ihrer Information, wenn Sie dies gerade lesen (wie ich), sollten Sie pip aktualisieren, anstatt es herunterzustufen. Ich war sehr überrascht zu erkennen, dass ich 5 Hauptversionen hinter mir hatte (wir sind jetzt bei 6.0.8). Ein Upgrade hat das Problem behoben :)
Dr. Acula
@ Dr.Acula du bist richtig. Ich habe meine Antwort aktualisiert. Danke dir.
Aaron Lelevier
"Sie sollten pip aktualisieren" Ich kann pip nicht aus demselben Grund aktualisieren, aus dem ich keine Pakete installieren kann. HTTP Error 403: SSL is required
user5359531
9
@ user5359531 Laden Sie den Pip-Tarball von PyPI herunter und tun Sie es pip install pip-x.x.x.tar.gz.
Pelle Nilsson
13

Ich habe die Befehlszeilenoption --proxy hinzugefügt, um auf den Proxy zu verweisen, und er funktioniert (die Pip-Version ist 1.5.4 und Python 2.7). Aus irgendeinem Grund wurden die Shell-Env-Variablen HTTPS_PROXY, HTTP_PROXY, https_proxy, http_proxy nicht verwendet.

sudo pip --proxy [user:passwd@]proxy.server:port install git-review
Chelfi
quelle
Sind diese eckigen Klammern um den Benutzer erforderlich? Warum wird das Symbol @ nach dem Passwort verwendet?
user13107
12

Überprüfen Sie Ihre Proxy-Verbindung. Ich hatte ein ähnliches Problem. Dann habe ich meine Verbindung geändert, die nicht als Proxy-Verbindung verwendet wurde, und boomte. Anschließend wurde die Bibliothek heruntergeladen und eingerichtet

Ossama
quelle
1
Wie haben Sie Ihre Proxy-Verbindung geändert, damit sie funktioniert? Ich habe das gleiche Problem.
Aaron Lelevier
Ich entfernte den Proxy und änderte die Verbindung zu einer ohne Proxy und dann, sobald ich installiert war, wechselte ich zurück zur Arbeitsverbindung
Ossama
Ich stehe vor dem gleichen Problem und ich bin mir ziemlich sicher, dass es ein Proxy-Problem ist. Gibt es eine andere Problemumgehung als die Verwendung einer anderen Verbindung?
Shaunakde
Ich habe mich an mein Telefon angebunden, um den Proxy meines Unternehmens zu umgehen. Schöne Lösung.
HuckIt
1
Mein Problem war, dass Fiddler geöffnet war (und ich Fiddler so konfiguriert hatte, dass HTTPS-Verkehr entschlüsselt wurde). Ich habe Fiddler geschlossen und es hat gut funktioniert.
AJ Richardson
6

Ich hatte das gleiche Problem mit pip==1.5.6. Ich musste meine Systemzeit korrigieren.

# date -s "2014-12-09 10:09:50"
OrangeTux
quelle
1
Eine andere Möglichkeit, die Systemzeit zu korrigieren, ist die Verwendung des ntp-Daemons.
Jaime M.
hat super für mich funktioniert, war froh, dass es so einfach zu reparieren war
Jamescampbell
6

Ich hatte das gleiche Problem mit Pip 1.5.6.

Ich habe gerade den Ordner ~ / .pip gelöscht und es hat wie ein Zauber funktioniert.

rm -r ~/.pip/
GusC
quelle
5

Dies funktionierte für mich unter Ubuntu 12.04.

pip install --index-url=https://pypi.python.org/simple/ -U scikit-learn
Ramnar
quelle
4

Wenn dies kein Proxy- / Netzwerkproblem ist, sollten Sie versuchen, eine Konfigurationsdatei zu erstellen / bearbeiten, .pip/pip.confoder wenn Sie pip als root ausführen /root/.pip/pip.conf. Überprüfen und ändern Sie die Index-URL von http in https .

Es sollte so sein:

[global] 
index-url=https://pypi.python.org/simple/

Arbeitete für mich mit Ubuntu 12 und Pip 9.0.1

Alex
quelle
3

Es klappt!

sudo pip --proxy = http://202.194.64.89:8000 install elasticsearch; 202.194.64.89:8000 ist mein PROXY,

user6361148
quelle
2

Ich konnte dies beheben, indem ich mein Python aktualisierte, das zuvor an eine veraltete Version von OpenSSL angehängt war. Jetzt wird 1.0.1h-1 verwendet und mein Paket wird per Pip installiert.

Zu Ihrer Information, mein Protokoll und meine Befehle, unter Verwendung von Anaconda und Installation des Pakets pytest-ipynb [1]:


$ conda update python
Fetching package metadata: ....
Solving package specifications: .
Package plan for installation in environment /Users/me/anaconda/envs/py27:

The following NEW packages will be INSTALLED: openssl: 1.0.1h-1

The following packages will be UPDATED: python: 2.7.5-3 --> 2.7.8-1 readline: 6.2-1 --> 6.2-2 sqlite: 3.7.13-1 --> 3.8.4.1-0 tk: 8.5.13-1 --> 8.5.15-0

Proceed ([y]/n)? y Unlinking packages ... [ COMPLETE ] |#############################################################| 100% Linking packages ... [ COMPLETE ] |#############################################################| 100%

$ pip install pytest-ipynb Downloading/unpacking pytest-ipynb Downloading pytest-ipynb-0.1.1.tar.gz Running setup.py (path:/private/var/folders/4f/b8gwyhg905x94twqw2pbklyw0000gn/T/pip_build_me/pytest-ipynb/setup.py) egg_info for package pytest-ipynb

Requirement already satisfied (use --upgrade to upgrade): pytest in /Users/me/anaconda/envs/py27/lib/python2.7/site-packages (from pytest-ipynb) Installing collected packages: pytest-ipynb Running setup.py install for pytest-ipynb

Successfully installed pytest-ipynb Cleaning up...

[1] Mein Ticket zu diesem Thema; https://github.com/zonca/pytest-ipynb/issues/1

AnneTheAgile
quelle
Es tut mir leid, ich bin mir nicht sicher, warum beim Formatieren so viele Leerzeilen hinzugefügt wurden.
AnneTheAgile
1

Ich hatte das gleiche Problem, aber das war verwandter Proxy. Es wurde durch Festlegen eines Proxys behoben.

Set http_proxy=http://myuserid:mypassword@myproxyname:myproxyport
Set https_proxy=http://myuserid:mypassword@myproxyname:myproxyport

Dies könnte jemandem helfen.

Jugal Panchal
quelle
1

Wenn Ihr Proxy korrekt konfiguriert ist, wird dies in der Pip-Version 1.5.6 korrekt behandelt. Der Fehler wurde behoben.

Sie können pip mit aktualisieren easy_install pip==1.5.6

sheldonkreger
quelle
1

Zusätzliche Antwort: Wenn Sie dies von chroot aus tun .

Sie benötigen eine Zufallszahlenquelle, um eine sichere Verbindung zu pypi herstellen zu können.

Unter Linux können Sie Host-Entwickler an Chroot-Entwickler binden:

mount --bind /dev /path-to-chroot/dev
Dima Tisnek
quelle
1

Ich habe diesen Fehler auch bei der Installation von pyinstaller in einer Proxy-Verbindung erhalten. Ich verbinde einfach eine direkte Internetverbindung (mit meinem Dongle) und mache das noch einmal.

 sudo pip install pyinstaller

Das hat bei mir funktioniert.

RYJ
quelle
1

Möglicherweise fehlt ein DNS-Server conf in /etc/resolv.conf

Stellen Sie sicher, dass Sie pingen können an: ping pypi.python.org

Wenn Sie keinen Ping erhalten, versuchen Sie, einen DNS-Server zur Datei hinzuzufügen ... so etwas wie:

Nameserver xxx.xxx.xxx.xxx

Ohad der Junge
quelle
1

Meine Erklärung / Anfrage bezieht sich auf die Windows-Umgebung .
Ich bin ziemlich neu in Python, und dies ist für jemanden, der noch Anfänger ist als ich.
Ich habe das neueste Pip (Python-Installationspaket) installiert und 32-Bit / 64-Bit (Open Source) -kompatible Binärdateien von http://www.lfd.uci.edu/~gohlke/pythonlibs/ heruntergeladen , und es hat funktioniert.

Schritte zum Installieren von pip, obwohl pip normalerweise standardmäßig während der Python-Installation von www.python.org/downloads/ installiert wird
- Laden Sie pip-7.1.0.tar.gz von https://pypi.python.org/pypi/pip herunter .
- Entpacken und entpacken Sie die obige Datei.
- Führen Sie im Ordner pip-7.1.0 Folgendes aus: python setup.py install. Diese installierte pip neueste Version.

Verwenden Sie pip, um ein Binärpaket (jede mögliche Operation) zu installieren. Führen Sie die Pip-App aus, um die Arbeit (Installationsdatei) wie
folgt auszuführen : \ python27 \ scripts \ pip2.7.exe Installationsdateipfad \ Dateiname --proxy
Wenn Sie auf ein Problem mit dem Rad (z. B. Ei) stoßen , verwenden Sie die kompatible Binärpaketdatei . Hoffe das hilft.

Pavan Gowda
quelle
1

In meinem Fall (Python 3.4 in einer virtuellen Umgebung unter macOS 10.10.6) konnte ich mich nicht einmal pipselbst aktualisieren . Hilfe kam von dieser SO-Antwort in Form des folgenden Einzeilers:

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

(Wenn Sie keine virtuelle Umgebung verwenden, benötigen Sie möglicherweise sudo python.)

Damit habe ich es geschafft, ein Upgrade pipvon Version 1.5.6 auf Version 10.0.0 durchzuführen (ein ziemlicher Sprung!). Diese Version verwendet kein TLS 1.0 oder 1.1, die von den Python.org-Sites nicht mehr unterstützt werden, und kann PyPI-Pakete problemlos installieren. Keine Angabe erforderlich --index-url=https://pypi.python.org/simple/.

Kehlkopf Decidua
quelle
1

in meinem Fall würde ich django installieren (

pip install django

) und es hat das gleiche Problem mit dem SSL-Zertifikat (Index-Basis-URL http://pypi.python.org/simple/ kann nicht abgerufen werden )

es ist von virtualenv, also DO:

ZUERST: Löschen Sie Ihre virtuelle Umgebung

deaktiviere rm -rf env

ZWEITENS: Überprüfen Sie, ob Pip vorhanden ist

pip3 -V

wenn du nicht hast

sudo apt-get install python3-pip

ENDLICH:

installiere virtualenv mit nosite-paketen und mache deine virenviroment

sudo pip3 installiere virtualenv virtualenv --no-site-packages -p /usr/bin/python3.6

. env / bin / aktivieren

ME76SS
quelle
0

Ich hatte ein ähnliches Problem, aber in meinem Fall bekam ich den Fehler:

Downloading/unpacking bencode
  Cannot fetch index base URL http://c.pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement bencode
No distributions at all found for bencode
Storing complete log in /home/andrew/.pip/pip.log

In meinem Fall konnte ich den Fehler beheben, indem ich ~ / .pip / pip.conf bearbeitete und http://c.pypi.python.org/simple/zu http://pypi.python.org/simpleund dann wechselte pip wieder einwandfrei .

Lurchman
quelle
0

Ich habe diese Fehlermeldung erhalten ~/.pip/pip.log

Could not fetch URL https://pypi.python.org/simple/: connection error: [Errno 185090050] _ssl.c:344: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib
  Will skip URL https://pypi.python.org/simple/ when looking for download links for regulargrid

Ich habe es behoben, indem ich meine aktualisiert habe ~/.pip/pip.conf. Es zeigte versehentlich auf eine cacert.pemDatei, die nicht existierte und so aussah

[global]
cert = /some/path/.pip/cacert.pem
Fred Schoen
quelle
0

Früher habe ich die easy_install pip==1.2.1Problemumgehung verwendet, aber ich habe zufällig festgestellt, dass Sie bei diesem Fehler wahrscheinlich eine 32-Bit-Version von Python installiert haben.

Wenn Sie eine 64-Bit-Version davon installieren, indem Sie sie von der Quelle installieren und dann Ihre virtuelle Umgebung darauf aufbauen, wird dieser Pip-Fehler nicht mehr auftreten.

Lapin
quelle
0

Auch ich habe die gewählte Lösung (Downgrade von Pip) verwendet, um dieses Problem zu umgehen, bis ich auf ein anderes scheinbar nicht verwandtes Problem stieß, das durch dasselbe zugrunde liegende Problem verursacht wurde. Pythons Version von OpenSSL war veraltet. Überprüfen Sie Ihre OpenSSL-Version:

python -c 'import ssl; print(ssl.OPENSSL_VERSION)'

Wenn die Version ist 0.9.7, sollte dies überprüfen, ob OpenSSL aktualisiert werden muss. Wenn Sie wissen, wie man das direkt macht, großartig (aber bitte lassen Sie es mich in einem Kommentar wissen). Wenn nicht, können Sie den Ratschlägen in dieser Antwort folgen und Python vom 64-Bit / 32-Bit-Installationsprogramm anstelle des 32-Bit-Installationsprogramms von python.org neu installieren (ich verwende Python 3.4.2). Ich habe jetzt die OpenSSL-Version 0.9.8und keines dieser Probleme.

gerald.guisse
quelle
0

Versuchen Sie, pip neu zu installieren:

curl -O https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz
tar xvfz pip-1.2.1.tar.gz
cd pip-1.2.1
python setup.py install

Wenn Curl nicht funktioniert, treten Proxy-Probleme auf. Bitte beheben Sie, dass es einwandfrei funktioniert. Überprüfen Sie nach dem Öffnen von google.com in Ihrem Browser unter Linux.

Der Versuch zu installieren

pip install virtualenv
Manas
quelle
0

Wenn Sie eine Firewall verwenden, stellen Sie sicher, dass ausgehende Verbindungen zu Port 443 nicht blockiert sind, z.

sudo iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
Eugene Yarmash
quelle
0

Ich habe die gleichen Fragen mit Ihnen getroffen. Wenn ich merke, dass es an einer nicht übereinstimmenden Version von numpy oder pip liegen kann, habe ich numpy und pip deinstalliert und dann mit ' https://radimrehurek.com/gensim/install.html ' fortgefahren. Endlich ist es mir gelungen!

Myechona
quelle
0
C:\Users\Asus>pip install matplotlib
Downloading/unpacking matplotlib
  Cannot fetch index base URL https://pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement matplotlib
Cleaning up...
No distributions at all found for matplotlib
Storing debug log for failure in C:\Users\Asus\pip\pip.log

Ich habe 'easy_install pip == 1.2.1' verwendet und es hat gut funktioniert.

C:\Users\Asus>easy_install pip==1.2.1
Searching for pip==1.2.1
Reading https://pypi.python.org/simple/pip/
Best match: pip 1.2.1
Downloading ...

Dann mit diesem Befehl 'pip install matplotlib'

C:\Users\Asus>pip install matplotlib
Downloading/unpacking matplotlib
  Downloading matplotlib-2.0.0b4.tar.gz (unknown size):
Harte Dobariya
quelle
0

Wenn Sie diese Befehle in einem Docker-Container unter Windows ausführen, kann dies bedeuten, dass die Netzwerkverbindung Ihres Docker-Computers veraltet ist und neu erstellt werden muss. Führen Sie die folgenden Befehle aus, um das Problem zu beheben:

docker-machine stop
docker-machine start
@FOR /f "tokens=*" %i IN ('docker-machine env') DO @%i
Geschwindigkeitsflugzeug
quelle
0

Ich bekomme das jetzt rein $HOME/.pip/pip.log:

Could not fetch URL https://pypi.python.org/simple/: HTTP Error 403: TLSv1.2+ is required

Ich habe keine einfache Lösung dafür, aber ich erwähne sie als etwas, auf das Sie achten sollten, bevor Sie Zeit damit verschwenden, einige der anderen Lösungen hier auszuprobieren.

  • Ich verwende offensichtlich bereits eine https-URL
  • Es gibt kein Proxy- oder Firewall-Problem
  • Die Verwendung trusted-hosthat nichts geändert (keine Ahnung, wo ich das aufgenommen habe)

Denn was es wert opensslist, ist zu alt, um es überhaupt zu haben. ssl.OPENSSL_VERSIONVielleicht ist das hier wirklich die Erklärung.

Am Ende virtualenv --setuptools envscheint das Löschen und Neuerstellen meiner virtuellen Umgebung zumindest die Hauptblocker behoben zu haben.

Dies ist auf einer wirklich alten Debian-Box, Python 2.6.6.

Tripleee
quelle
0

Mein Problem war das System virtualenv .

Als ich mit python3 venv eine Umgebung erstellt habe, hat alles funktioniert. Wenn ich jedoch virtualenv (standardmäßig mit python2.7) zum Erstellen einer Umgebung verwendet habe, erhalte ich diese Fehlermeldungen.

In der virtualenverstellten war die Pip-Version 1.5.6, aber meine System-Pip-Version war10.0.1

Dann rannte ich (außerhalb jeglicher Umgebung):

pip install virtualenv --upgrade

Es wurde auf virtualenvdie Version aktualisiert 16.0.0und jetzt wurde meine pip installUmgebung mit virtualenvund python2.7funktioniert einwandfrei. Auch die pipVersion in der Umgebung ist jetzt 10.0.1.

Vor dem Upgrade:

Maximiliano Guerra
quelle