Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

378
Visualizações
No se pueden instalar paquetes de Python [SSL: TLSV1_ALERT_PROTOCOL_VERSION]

Estoy tratando de instalar una biblioteca de Python usando pip y obtengo un error de SSL:

 ~/projects/base  pre-master± pip install xdict Collecting xdict Could not fetch URL https://pypi.python.org/simple/xdict/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590) - skipping Could not find a version that satisfies the requirement xdict (from versions: ) No matching distribution found for xdict

versión pip: pip 9.0.1

¿Cómo soluciono este error?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Actualice pip de la siguiente manera:

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

Nota: Es posible que deba usar sudo python arriba si no está en un entorno virtual.

(Tenga en cuenta que actualizar pip usando pip , es decir, pip install --upgrade pip tampoco lo actualizará correctamente. Es solo un problema del huevo y la gallina. pip no funcionará a menos que use TLS >= 1.2.)

Como se menciona en esta respuesta detallada , esto se debe a la desaprobación reciente de TLS para pip. Los sitios de Python.org han dejado de admitir las versiones 1.0 y 1.1 de TLS.

Desde la página de estado de Python:

Completado : las caídas de tensión continuas terminaron y TLSv1.0 y TLSv1.1 se deshabilitaron. 11 de abril, 15:37 UTC


Para usuarios de PyCharm (virtualenv):

  1. Ejecute un entorno virtual con shell. (reemplace "./venv/bin/activate" por su propia ruta)

     source ./venv/bin/activate
  2. Ejecutar actualización

     curl https://bootstrap.pypa.io/get-pip.py | python
  3. Reinicie su instancia de PyCharm y verifique su intérprete de Python en Preference .

over 4 years ago · Santiago Trujillo Relatório

0

Pero si el comando curl en sí mismo falla con un error, o la "versión del protocolo de alerta tlsv1" persiste incluso después de actualizar pip , significa que la versión de la biblioteca OpenSSL subyacente de su sistema operativo < 1.0.1 o la versión de Python < 2.7.9 (o < 3.4 en Python 3 ) no son compatibles con el nuevo protocolo TLS 1.2 que pip necesita para conectarse a PyPI desde hace aproximadamente un año . Puede verificarlo fácilmente en el intérprete de Python:

 >>> import ssl >>> ssl.OPENSSL_VERSION 'OpenSSL 0.9.8o 01 Jun 2010' >>> ssl.PROTOCOL_TLSv1_2 AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'

El AttributeError (en lugar del '5' esperado) significa que su módulo Python stdlib ssl , compilado contra la antigua lib de openssl, carece de soporte para el protocolo TLSv1.2 (incluso si la biblioteca de openssl puede o podría actualizarse más adelante).

Afortunadamente, se puede resolver sin actualizar Python (y todo el sistema), instalando manualmente paquetes adicionales de Python; la guía detallada paso a paso está disponible aquí en Stackoverflow .

Tenga en cuenta que curl , pip y wget dependen de la misma biblioteca OpenSSL para establecer conexiones SSL (use el comando $ openssl version ). libcurl admite TLS 1.2 desde curl versión 7.34 , pero las versiones anteriores de curl deberían poder conectarse si tenía OpenSSL versión 1.0.2 (o posterior).


PD
Para Python 3 , use python3 y pip3 todas partes (a menos que esté en un venv/virtualenv), incluido el comando curl de arriba :
$ curl https://bootstrap.pypa.io/get-pip.py | python3 --user

over 4 years ago · Santiago Trujillo Relatório

0

Seguir la respuesta de @Anupam en OS X resultó en el siguiente error para mí, independientemente de los permisos con los que lo ejecuté:

No se pudieron instalar los paquetes debido a un EnvironmentError: [Errno 13] Permiso denegado: ...

Lo que finalmente funcionó fue descargar un paquete pip más nuevo (9.0.3) de PyPI directamente desde mi navegador: https://pypi.org/simple/pip/ , extraer el contenido y luego instalar pip el paquete localmente:

 pip install ./pip-9.0.3/

Esto solucionó mis errores [SSL: TLSV1_ALERT_PROTOCOL_VERSION] .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda