Error de conexión de pip: no se puede recuperar la URL base del índice http://pypi.python.org/simple/

89

Corro sudo pip install git-reviewy recibo los siguientes mensajes:

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

¿Alguien tiene alguna idea sobre esto?

Sai Wai Maung
fuente
4
Debe ser una conexión proxy
Ossama
1
"ninguno de ellos parece resolver mi problema" ¿Cuáles son estos? Para que no nos repitamos.
RandomSeed

Respuestas:

143

Sé que este es un hilo antiguo, pero encontré este problema hoy y quería compartir mi solución al problema porque no he visto esta solución en otra parte de SO.

Mi entorno: Python 2.7.12 / 2.7.14 en Ubuntu 12.04.5 LTS en un virtualenv, pip versión 1.1.

Mis errores:

pip install nose

en consola:

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

en ~ / .pip / pip.log:

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

Curioso para mí porque había estado ejecutando estos mismos comandos en un script sin problemas durante aproximadamente un año.

esto lo arregló:

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

(tenga en cuenta el https)

¡Espero que esto ayude a alguien!

Mattdedek
fuente
¡Muchas gracias! También estaba teniendo este problema en Ubuntu 12.04, que tenía una pip 1.0 from /usr/lib/python2.7/dist-packages (python 2.7)instalada, que era efectivamente inutilizable.
Josh Kupershmidt
Señor, se merece una medalla. Estaba teniendo este problema con mi beaglebone black. Ahora está arreglado.
Aditya Shekhawat
Muchas respuestas aquí. Ninguno de ellos fue relevante o funcionó para mí, excepto este. ¡Gracias!
arielf
pip install --index-url=http://mypypi.net/simple/arroja un errorERROR: You must give at least one requirement to install (see "pip help install")
Confundido
@Confounded: gracias por señalarlo, solo enumere los paquetes que desea instalar después de la opción --index-url. Consulte la actualización para ver un ejemplo.
Mattdedek
59

Necesita actualizar su instalación de pip .

La opción --index-url(versión corta -i:) le permite especificar una URL de índice en la llamada a pip, allí puede usar la variante https. Luego, puede indicarle a pip que se actualice.

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

Después, debería poder usar pip sin la --index-urlopción.


Creo que la versión 7.0.0 (2015-05-21) provocó este problema. La nota de lanzamiento de esa versión establece lo siguiente:

HACIA ATRÁS INCOMPATIBLE Ya no admite implícitamente un origen de origen inseguro y, en su lugar, requiere que se confíe explícitamente en los orígenes inseguros con la --trusted-hostopción.

Puede verificar su versión de pip con pip --version.

Esto significaría que emitir sudo pip install --trusted-host --upgrade pipuna vez también resolvería este problema, aunque descargar pip sobre http inseguro. Es posible que esto tampoco funcione en absoluto, porque es posible que el punto final inseguro ya no sea accesible en el servidor (no lo he probado).

Daniel F
fuente
42

EDITAR:

La versión actual de PIPya no tiene este problema. En este momento, la versión: 7.1.2es la versión actual. Aquí está el PIPenlace:

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

ARREGLO ORIGINAL:

Tengo este problema al intentar usar pip==1.5.4

Este es un problema relacionado con los certificados SSL de confianza de PIP y Python de Python. Si busca en el registro PIP en Mac OS X en: /Users/username/.pip/pip.log , le dará más detalles.

Mi solución para que PIP vuelva a funcionar después de horas de probar cosas diferentes fue ir a los paquetes de mi sitio en Python, ya sea en un virtualenv o en sus paquetes de sitio normales , y deshacerme de la versión actual de PIP. Para mi tuvepip==1.5.4

Eliminé el directorio PIP y el archivo huevo PIP. Entonces corrí

easy_install pip==1.2.1  

Esta versión de PIP no tiene el problema de SSL, y luego pude ejecutar mi normal pip install -r requirements.txtdentro de mi virtualenv para configurar todos los paquetes que quería que estaban listados en mirequirements.txt archivo.

Este también es el truco recomendado para que varias personas de este Grupo de Google superen el problema que encontré:

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

Aaron Lelevier
fuente
También se solucionó el problema para mí.
HorseloverFat
6
Para su información, si está leyendo esto ahora mismo (como lo hice yo), entonces debería actualizar pip en lugar de degradarlo. Me sorprendió mucho darme cuenta de que estaba 5 versiones principales por detrás (ahora estamos en 6.0.8). La actualización solucionó el problema :)
Dr. Acula
@ Dr.Acula tiene razón. He actualizado mi respuesta. Gracias.
Aaron Lelevier
"debería actualizar pip" No puedo actualizar pip por la misma razón que no puedo instalar paquetes; HTTP Error 403: SSL is required
user5359531
9
@ user5359531 Descargue el tarball pip de PyPI y hágalo pip install pip-x.x.x.tar.gz.
Pelle Nilsson
13

Agregué la opción de línea de comando --proxy para apuntar al proxy y está funcionando (la versión de pip es 1.5.4 y python 2.7). por alguna razón, no estaba tomando las variables de entorno de shell HTTPS_PROXY, HTTP_PROXY, https_proxy, http_proxy.

sudo pip --proxy [user:passwd@]proxy.server:port install git-review
Chelfi
fuente
¿Son necesarios esos corchetes alrededor del usuario? ¿Por qué se usa el símbolo @ después de la contraseña?
user13107
12

Verifique su conexión de proxy, tuve un problema similar, luego cambié mi conexión que no era proxy y boom, comenzó a descargar y configurar la biblioteca

Ossama
fuente
1
¿Cómo cambió su conexión de proxy para que funcione? Tengo el mismo problema.
Aaron Lelevier
Eliminé el proxy y cambié la conexión a una sin proxy y luego, una vez instalado, cambié de nuevo a la conexión de trabajo
Ossama
Estoy enfrentando el mismo problema y estoy bastante seguro de que es un problema de proxy. ¿Existe alguna solución alternativa además de usar otra conexión?
shaunakde
Me conecté a mi teléfono para sortear el proxy de mi empresa. Buena solucion.
HuckIt
1
Mi problema era que Fiddler estaba abierto (y había configurado Fiddler para descifrar el tráfico HTTPS). Cerré Fiddler y funcionó bien.
AJ Richardson
6

Tuve el mismo problema con pip==1.5.6. Tuve que corregir la hora de mi sistema.

# date -s "2014-12-09 10:09:50"
OrangeTux
fuente
1
Otra forma de corregir la hora del sistema es usar ntp daemon.
Jaime M.
funcionó muy bien para mí, me alegré de que fuera tan fácil de arreglar
jamescampbell
6

Tuve el mismo problema con pip 1.5.6.

Acabo de eliminar la carpeta ~ / .pip y funcionó a la perfección.

rm -r ~/.pip/
GusC
fuente
5

Esto funcionó para mí en Ubuntu 12.04.

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

Si eso no es un problema de proxy / red, debe intentar crear / editar el archivo de configuración .pip/pip.confo si está ejecutando pip como root /root/.pip/pip.conf. Verifique y cambie index-url de http a https .

Debería ser así:

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

Funcionó para mí con Ubuntu 12 y pip 9.0.1

Alex
fuente
2

Pude solucionar este problema actualizando mi python, que anteriormente se había adjuntado a una versión desactualizada de OpenSSL. Ahora está usando 1.0.1h-1 y mi paquete se instalará.

FYI, mi registro y comandos, usando anaconda e instalando el paquete 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] Mi boleto sobre este tema; https://github.com/zonca/pytest-ipynb/issues/1

AnneTheAgile
fuente
Lo siento, no estoy seguro de por qué el formato agregó tantas líneas en blanco.
AnneTheAgile
1

Enfrenté el mismo problema, pero ese era un proxy relacionado. se resolvió estableciendo proxy.

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

Esto podría ayudar a alguien.

Jugal Panchal
fuente
1

Si su proxy está configurado correctamente, entonces la versión 1.5.6 de pip manejará esto correctamente. El error se resolvió.

Puede actualizar pip con easy_install pip==1.5.6

Sheldonkreger
fuente
1

Respuesta adicional: si está haciendo esto desde chroot .

Necesita una fuente de números aleatorios para poder establecer una conexión segura a pypi.

En Linux, puede enlazar-mount host dev a chroot dev:

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

También recibí este error al instalar pyinstaller en una conexión proxy. Simplemente conecté la conexión directa a Internet (usando mi dongle) y lo hice de nuevo.

 sudo pip install pyinstaller

Esto funcionó para mí.

RYJ
fuente
1

Es posible que le falte una configuración de servidor DNS en /etc/resolv.conf

asegúrese de que puede hacer ping a: ping pypi.python.org

si no recibe un ping, intente agregar un servidor DNS al archivo ... algo como:

servidor de nombres xxx.xxx.xxx.xxx

Ohad el muchacho
fuente
1

Mi explicación / consulta es para el entorno de Windows .
Soy bastante nuevo en Python, y esto es para alguien aún novato que yo.
Instalé el último pip (paquete de instalación de Python) y descargué binarios compatibles de 32 bits / 64 bits (código abierto) de http://www.lfd.uci.edu/~gohlke/pythonlibs/ , y funcionó.

Pasos seguidos para instalar pip, aunque normalmente pip se instala de forma predeterminada durante la instalación de Python desde www.python.org/downloads/
- Descargue pip-7.1.0.tar.gz desde https://pypi.python.org/pypi/pip .
- Descomprima y descomprima el archivo anterior.
- En la carpeta pip-7.1.0, ejecute: python setup.py install. Esta última versión instalada de pip.

Utilice pip para instalar (cualquier operación factible) el paquete binario. Ejecute la aplicación pip para hacer el trabajo (archivo de instalación), como se muestra a continuación:
\ python27 \ scripts \ pip2.7.exe ruta_archivo de instalación \ nombre_archivo --proxy
Si tiene un problema de rueda (es decir, huevo), use el archivo de paquete binario compatible . Espero que esto ayude.

Pavan Gowda
fuente
1

En mi caso (Python 3.4, en un entorno virtual, ejecutándose bajo macOS 10.10.6) ni siquiera podía actualizarse pip. La ayuda vino de esta respuesta SO en forma de la siguiente frase:

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

(Si no utiliza un entorno virtual, es posible que lo necesite sudo python).

Con esto logré actualizar pipde la versión 1.5.6 a la versión 10.0.0 (¡un gran salto!). Esta versión no usa TLS 1.0 o 1.1, que ya no son compatibles con los sitios de Python.org, y pueden instalar paquetes de PyPI muy bien. No es necesario especificar --index-url=https://pypi.python.org/simple/.

Laryx Decidua
fuente
1

en mi caso instalaría django (

pip instalar django

) y tiene el mismo problema con el certificado ssl (no se puede recuperar la URL base del índice http://pypi.python.org/simple/ )

es de virtualenv así que HAGA:

PRIMERO: elimine su virtualenv

desactivar rm -rf env

SEGUNDO: compruebe tener pip

pip3 -V

si no tienes

sudo apt-get install python3-pip

FINALMENTE:

instale virtualenv con nosite-packages y cree su virenviroment

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

. env / bin / activar

ME76SS
fuente
0

Tuve un problema similar, pero en mi caso recibí el error:

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

En mi caso tuve la oportunidad de corregir el error editando ~ / .pip / pip.conf y cambiando http://c.pypi.python.org/simple/a http://pypi.python.org/simpley luego pip bien trabajado de nuevo.

Lurchman
fuente
0

Recibí este mensaje de error en ~/.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

Lo arreglé actualizando mi ~/.pip/pip.conf. Accidentalmente señaló un cacert.pemarchivo que no existía y se veía así

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

Solía usar la easy_install pip==1.2.1solución, pero yo al azar encontré que si usted está teniendo este error, es probable que instaló una versión de 32 bits de pitón.

Si instala una versión de 64 bits instalándola desde la fuente y luego construye virtualenv sobre ella, ya no tendrá ese error de pip.

lapin
fuente
0

Yo también utilicé la solución elegida (degradación de pip) para solucionar este problema hasta que me encontré con otro problema aparentemente no relacionado causado por el mismo problema subyacente. La versión de Python de OpenSSL estaba desactualizada. Verifique su versión de OpenSSL:

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

Si la versión es 0.9.7, eso debería verificar que OpenSSL necesita ser actualizado. Si sabe cómo hacerlo directamente, genial (pero hágamelo saber en un comentario). De lo contrario, puede seguir los consejos de esta respuesta y reinstalar Python desde el instalador de 64 bits / 32 bits en lugar del instalador de solo 32 bits de python.org (estoy usando Python 3.4.2). Ahora tengo la versión OpenSSL 0.9.8y ninguno de estos problemas.

gerald.guisse
fuente
0

Intente hacer la reinstalación de pip:

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

Si curl no funciona, tendrá problemas con el proxy, corrija que debería funcionar bien. Verifique después de abrir google.com en su navegador en Linux.

El intento de instalar

pip install virtualenv
Manas
fuente
0

En caso de que use un firewall, asegúrese de que las conexiones salientes al puerto 443 no estén bloqueadas, por ejemplo, ejecute:

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

He respondido a las mismas preguntas contigo. Cuando me doy cuenta de que puede ser causado por una versión inigualable de numpy o pip, desinstalé numpy y pip, luego continué con este ' https://radimrehurek.com/gensim/install.html ', ¡por fin lo logré!

myechona
fuente
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

Usé 'easy_install pip == 1.2.1' y funcionó bien.

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

Luego, al usar este comando 'pip install matplotlib'

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

Si está ejecutando estos comandos en un contenedor de Docker en Windows, puede significar que la conexión de red de su máquina Docker está obsoleta y debe reconstruirse. Para solucionarlo, ejecute estos comandos:

docker-machine stop
docker-machine start
@FOR /f "tokens=*" %i IN ('docker-machine env') DO @%i
avión de velocidad
fuente
0

Ahora estoy recibiendo esto en $HOME/.pip/pip.log:

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

No tengo una solución sencilla para esto, pero lo menciono como algo a tener en cuenta antes de perder el tiempo probando algunas de las otras soluciones aquí.

  • Obviamente ya estoy usando una URL https
  • No hay problema de proxy o firewall
  • El uso trusted-hostno cambió nada (no sé dónde recogí esto)

Por lo que vale mi openssles demasiado viejo para siquiera tenerssl.OPENSSL_VERSION así que tal vez esa sea realmente la explicación aquí.

Al final, limpiar mi entorno virtual y recrearlo virtualenv --setuptools envparece haber solucionado al menos los principales bloqueadores.

Esto está en una caja Debian realmente antigua, Python 2.6.6.

tripleee
fuente
0

Mi problema fue la virtualenvversión del sistema .

Cuando creé un env con python3 venv, todo funcionó. Pero cuando usé virtualenv (por defecto con python2.7) para crear un env, recibo esos mensajes de error.

En el virtualenvcreado, la versión pip estaba 1.5.6, pero la versión pip de mi sistema era10.0.1

Luego corrí (fuera de cualquier entorno):

pip install virtualenv --upgrade

Se actualizó virtualenva la versión 16.0.0y ahora mi pip installentorno creado con virtualenvy python2.7funciona sin problemas. Además, la pipversión dentro del env es ahora10.0.1 .

Antes de la actualización:

Maximiliano Guerra
fuente