Virtualenv: No se puede instalar ningún paquete a través de `pip` en Windows 10, el módulo SSL en Python no está disponible

Creado en 28 feb. 2018  ·  54Comentarios  ·  Fuente: pypa/virtualenv

Versión de Python: 3.6 (Intel Distribution for Python para Windows 2018 actualización 1)
versión virtualenv: 15.1.0
versión de Windows: Windows 10 Pro, compilación 17101.rs4_release.180211-1040

Ejecuté solo 2 comandos, esto es lo que generó Powershell:

PS E:\Python\Virtualenv\Scripts> .\activate
(Virtualenv) PS E:\Python\Virtualenv\Scripts> pip install numpy
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting numpy
  Could not fetch URL https://pypi.python.org/simple/numpy/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement numpy (from versions: )
No matching distribution found for numpy

Este directorio Python no es donde se instaló Python, es solo un directorio normal.

He intentado instalar algunos openssl independientes, como el de aquí , pero ninguno de ellos funcionó.

Comentario más útil

Tuve el mismo problema. Estaba configurando una computadora nueva con python y jupyter con anaconda, y el problema ocurrió cuando intenté instalar un paquete usando pip.

Según las discusiones anteriores, que este es un problema del entorno, intenté ejecutar el comando "pip install" en Anaconda Prompt en lugar de cmd . Y se ejecutó el comando pip. 😁

Todos 54 comentarios

Supongo que el pip usado es el que está en su virtualenv . ¿Se puede instalar su _system_ pip ? Si no, esto podría no ser un problema de virtualenv ...

@tobiasherp
El sistema pip está bien, pero el pip en virtualenv no sirve.
No sé dónde está el problema, ni siquiera puedo encontrar una situación similar en Google. :(
No solo el numpy , no puede instalar ningún paquete en línea. Pero si hay un archivo de rueda, se puede instalar con éxito, por lo que creo que el problema podría estar relacionado con SSL.

Correcto, PyPI usa https ahora, por lo que necesita soporte SSL. Si su sistema Python no lo tiene, su virtualenv tampoco lo tendrá. Con Python 3, debería poder importar un módulo ssl :

>>> import ssl

Su mejor opción podría ser cambiar a un intérprete que tenga el módulo ssl .
El intérprete 3.6.4 que acabo de descargar de https://www.python.org/ parece tener soporte SSL.

AFAICS, esto no es un problema virtualenv ; propone cerrarlo.

Puede que no sea un problema de venv, pero sigue siendo un problema. En mi instancia no puedo instalar en venv o system pip
Tengo IntelPython3 instalado en Win 10 de 64 bits y SÍ, tiene Openssl instalado y compilado, pero por alguna razón las cosas no funcionan.

He visto esto: [(https://software.intel.com/en-us/forums/intel-distribution-for-python/topic/737878#comment-1920719)]

Pero no pude arreglar mi versión de este problema.

Cualquier consejo sobre este tema sería muy útil.

@theCJMan , ¿sigue experimentando este problema?

estoy al tanto de ese problema

El martes 17 de abril de 2018 a las 19:44 Sumana Harihareswara, [email protected]
escribió:

@theCJMan https://github.com/theCJMan ¿sigues experimentando esto?
¿problema?


Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/pypa/virtualenv/issues/1139#issuecomment-382081077 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AkTyyw5zfrJFZleItkAkrR1_kE9R-C8Cks5tpioOgaJpZM4SWUf4
.

Transport Layer Security, o TLS, es parte de cómo nos aseguramos de que las conexiones entre su computadora y PyPI sean privadas y seguras. Es un protocolo criptográfico que ha tenido varias versiones a lo largo del tiempo.

Debe conectarse a PyPI con una biblioteca de compatibilidad con TLS, como una versión reciente de OpenSSL. Los pasos específicos que debe seguir dependerán de la versión de su sistema operativo, dónde se originó su instalación de Python (python.org, su proveedor de sistema operativo o un distribuidor intermedio) y las versiones instaladas de Python, setuptools , pipenv y pip . Para obtener ayuda, vaya al canal IRC #pypa en Freenode , registre un problema en pypa/packaging-problems/issues , o publíquelo en la lista de correo de ayuda de python , incluidos su sistema operativo y los detalles de instalación y el resultado de pip install -vvv pipa de actualización .

También experimenté esto en macos, python 2.7.15: el sistema python funcionó bien, virtual env no se pudo instalar debido a

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

mi sistema python importó ssl bien, pero venv python dio el siguiente error:

raceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 126, in <module>
    from _ssl import HAS_SNI, HAS_ECDH, HAS_NPN, HAS_ALPN, HAS_TLSv1_3
ImportError: cannot import name HAS_TLSv1_3

después de eliminar el directorio env y volver a crear el env, todo funcionó bien.

Tengo el mismo problema que @liurui39660 , también uso Intel Python Distribution y python -m venv para crear mi venv. Parece ser un problema con el módulo ssl , que no tiene nada que ver con pip :

(venv) C:\Users\ceefour\git\tews\ecn-svc>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\ProgramData\Anaconda3\lib\ssl.py", line 101, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: DLL load failed: The operating system cannot run %1.
>>>

Tenga en cuenta que el error solo se activó al usar Intel Python dentro de un venv. Cuando se usa el env base, funciona:

(base) C:\Users\ceefour>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
>>> 

Actualización: este hilo parece ser una pista:

Rohit J. (Intel) jue, 07/06/2017 - 21:40
pip no se podía usar ni con IDP ni con Miniconda en Windows. El problema se originó en una biblioteca en conflicto (libeay32.dll) que se instaló en la ruta del sistema. En tiempo de ejecución, la carga de esta biblioteca ganó prioridad sobre lo que enviamos con nuestra distribución. Hubo un conflicto de versiones y la ejecución fallaría con "ImportError: error de carga de DLL: el sistema operativo no puede ejecutar %1". La eliminación de esta biblioteca extraña de la ruta del sistema resolvió el problema.

Tengo _muchos_ de libeay32.dll dentro de C:\Program Files , incluido uno en C:\ProgramData\Anaconda3\Library\bin

Intenté mover C:\ProgramData\Anaconda3\Library\bin al frente de PATH , pero aún ocurre un error.

Tuve el mismo problema. Estaba configurando una computadora nueva con python y jupyter con anaconda, y el problema ocurrió cuando intenté instalar un paquete usando pip.

Según las discusiones anteriores, que este es un problema del entorno, intenté ejecutar el comando "pip install" en Anaconda Prompt en lugar de cmd . Y se ejecutó el comando pip. 😁

Todavía tengo problemas para seguir desde ayer, después de instalar Python 3.7.1 con Anaconda3

pip está configurado con ubicaciones que requieren TLS/SSL; sin embargo, el módulo ssl en Python no está disponible.
Reintentando (Reintentar(total=4, conectar=Ninguno, leer=Ninguno, redirigir=Ninguno, estado=Ninguno)) después de que la conexión se rompiera por 'SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible"). ': /simple/pipa/
Reintentando (Reintentar(total=3, conectar=Ninguno, leer=Ninguno, redirigir=Ninguno, estado=Ninguno)) después de que la conexión se rompiera por 'SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible"). ': /simple/pipa/
Reintentando (Reintentar(total=2, conectar=Ninguno, leer=Ninguno, redirigir=Ninguno, estado=Ninguno)) después de que la conexión se rompiera por 'SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible"). ': /simple/pipa/
Reintentando (Reintentar(total=1, conectar=Ninguno, leer=Ninguno, redirigir=Ninguno, estado=Ninguno)) después de que la conexión se rompiera por 'SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible"). ': /simple/pipa/
Reintentando (Reintentar(total=0, conectar=Ninguno, leer=Ninguno, redirigir=Ninguno, estado=Ninguno)) después de que la conexión se rompiera por 'SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible"). ': /simple/pipa/
No se pudo obtener la URL https://pypi.org/simple/pip/ : Hubo un problema al confirmar el certificado ssl: HTTPSConnectionPool(host='pypi.org', port=443): Se excedieron los reintentos máximos con url: /simple/ pip/ (Causado por SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible.")) - omitiendo
Requisito ya actualizado: pip en d:\anaconda3\lib\site-packages (18.1)
pip está configurado con ubicaciones que requieren TLS/SSL; sin embargo, el módulo ssl en Python no está disponible.
No se pudo obtener la URL https://pypi.org/simple/pip/ : Hubo un problema al confirmar el certificado ssl: HTTPSConnectionPool(host='pypi.org', port=443): Se excedieron los reintentos máximos con url: /simple/ pip/ (Causado por SSLError("No se puede conectar a la URL HTTPS porque el módulo SSL no está disponible.")) - omitiendo

Yo tuve el mismo problema. Usar la sugerencia de willliu1995 resolvió el problema. Ejecutar pip desde el indicador de cmd no funcionó, pero iniciar jupyter notebook y ejecutar !pip installtrabajó.

Si pip install pandas no funciona en el indicador de CMD, ejecútelo usando el indicador de Anaconda; funciona. Puede encontrar el aviso de Anaconda usando esto:

Vaya con el mouse al ícono de Windows (abajo a la izquierda) y comience a escribir "Anaconda". Deberían aparecer algunas entradas coincidentes. Seleccione "Aviso de Anaconda". Se abrirá una nueva ventana de comando, llamada "Anaconda Prompt". Fuente: https://stackoverflow.com/questions/47914980/how-to-access-anaconda-command-prompt-in-windows-10-64-bit

Si prefiere usar el símbolo del sistema de Windows, deberá agregar los siguientes directorios a la ruta del entorno de Windows:
%Miniconda3_DIR%;%Miniconda3_DIR%\Library\mingw-w64\bin;%Miniconda3_DIR%\Library\usr\bin;%Miniconda3_DIR%\Library\bin;%Miniconda3_DIR%\Scripts;%Miniconda3_DIR%\bin;
[donde, %Miniconda3_DIR% debe sustituirse por la ruta de instalación de Miniconda (o Anaconda)]

Por ejemplo, tengo mi Miniconda instalada en E:\Portable\Miniconda3 . Entonces mi RUTA de Windows tenía que incluir estas carpetas:
E:\Portable\Miniconda3;E:\Portable\Miniconda3\Library\mingw-w64\bin;E:\Portable\Miniconda3\Library\usr\bin;E:\Portable\Miniconda3\Library\bin;E:\Portable\Miniconda3\Scripts;E:\Portable\Miniconda3\bin;

@shriprem ¡Gracias! Funcionó. Su solución confirma que este es un problema de ruta del sistema, ya que generalmente solo es necesario agregar %Miniconda3_DIR%\Scripts a su variable PATH para usar pip. ¿Alguna idea de por qué esto ha cambiado?

@EthanBackToLife Revisé la variable de entorno PATH en el indicador de Anaconda y descubrí que Anaconda estaba anteponiendo todos esos directorios a su variable PATH del indicador. Así que agregué la parte delta de esa ruta a la variable PATH de Windows para confirmar que funcionó para pip.

Al intentar instalar Conda en una PC diferente, puedo refinar los cambios de la ruta a una mucho más corta: %Miniconda3_DIR%;%Miniconda3_DIR%\Scripts;%Miniconda3_DIR%\Library\bin
[En retrospectiva, vemos que los otros directorios que se agregaron a la ruta de mi publicación anterior no existen/están vacíos en una instalación nueva de Conda.]

Con este estrechamiento de la ruta, podemos ver la carpeta %Miniconda3_DIR%\Library\bin . Aquí, encontramos archivos como: libcrypto-1_1-x64.dll, libcrypto-1_1-x64.pdb, libssl-1_1-x64.dll, openssl.exe, libssl-1_1-x64.pdb, openssl.pdb que creo que son fundamentales para resolver los problemas de SSL/TLS con las instalaciones del paquete pip (y conda).

Versión de Python: 3.6 (Intel Distribution for Python para Windows 2018 actualización 1)
versión virtualenv: 15.1.0
versión de Windows: Windows 10 Pro, compilación 17101.rs4_release.180211-1040

Ejecuté solo 2 comandos, esto es lo que generó Powershell:

PS E:\Python\Virtualenv\Scripts> .\activate
(Virtualenv) PS E:\Python\Virtualenv\Scripts> pip install numpy
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting numpy
  Could not fetch URL https://pypi.python.org/simple/numpy/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement numpy (from versions: )
No matching distribution found for numpy

Este directorio Python no es donde se instaló Python, es solo un directorio normal.

He intentado instalar algunos openssl independientes, como el de aquí , pero ninguno de ellos funcionó.

Encontré la misma pregunta que usted, e intenté usar el comando .\activate, luego resolví la pregunta perfectamente, no pude agradecerle más.

@EthanBackToLife Revisé la variable de entorno PATH en el indicador de Anaconda y descubrí que Anaconda estaba anteponiendo todos esos directorios a su variable PATH del indicador. Así que agregué la parte delta de esa ruta a la variable PATH de Windows para confirmar que funcionó para pip.

Al intentar instalar Conda en una PC diferente, puedo refinar los cambios de la ruta a una mucho más corta: %Miniconda3_DIR%;%Miniconda3_DIR%\Scripts;%Miniconda3_DIR%\Library\bin
[En retrospectiva, vemos que los otros directorios que se agregaron a la ruta de mi publicación anterior no existen/están vacíos en una instalación nueva de Conda.]

Con este estrechamiento de la ruta, podemos ver la carpeta %Miniconda3_DIR%\Library\bin . Aquí, encontramos archivos como: libcrypto-1_1-x64.dll, libcrypto-1_1-x64.pdb, libssl-1_1-x64.dll, openssl.exe, libssl-1_1-x64.pdb, openssl.pdb que creo que son fundamentales para resolver los problemas de SSL/TLS con las instalaciones del paquete pip (y conda).

¡Gran explicación! Gracias.

Todavía tengo este problema después de hacer lo que comentó @shriprem . Python versión 3.7.1 y pip versión 18.1, si eso ayuda.

" Puedo resolver este problema agregando la ruta dir de intel-python que tiene libeay32.dll (en mi caso ..\IntelPython3\pkgs\openssl-1.0.2l-vc14_intel_0\Library\bin) en el entorno del sistema como la posición más alta. "

referencia: https://software.intel.com/en-us/forums/intel-distribution-for-python/topic/737878

Descubrí que se requiere estar en el directorio "Scripts" para usar pip

Para Windows 10 Si pip install no funciona en el indicador de CMD, ejecútelo usando el indicador de Anaconda; funciona.

Si desea usar pip en CMD normal, no solo en el indicador de Anaconda.
necesita agregar 3 rutas de entorno.
como estos:
D:\Anaconda3;
D:\Anaconda3\Scripts;
D:\Anaconda3\Biblioteca\bin

la mayoría de la gente solo agrega D:\Anaconda3\Scripts;

Especifique la ruta C:\Anaconda3\Library\bin en las variables de usuario del entorno.
O
Simplemente verifique si tiene Openssl instalado en Python base
Si no solo instala usando el siguiente comando
pip instalar pyopenssl

Creo que las rutas se agregaron correctamente, pero pip aún no funciona, ya sea en CMD o en el indicador de Anaconda.

¿Lo intentaste desde el directorio "Scripts"?

¿Lo intentaste desde el directorio "Scripts"?

Si te refieres a cd xxx/Scripts y luego a pip install, lo intenté hace un momento y no funciona.

@SnarkyPapi , dices "Creo que las rutas se agregaron correctamente". Para confirmar este hecho, ejecute los 4 comandos enumerados en negrita a continuación.

  1. Comando: > donde python
    La salida debería ser algo como: _C:\Miniconda3-x64\python.exe_

  2. Comando: > donde pip
    La salida debería ser algo como: _C:\Miniconda3-x64\Scriptspip.exe_

  3. Comando: > donde abressl
    La salida debe ser algo como:
    [Tenga en cuenta que es posible que openssl.exe esté instalado en varias ubicaciones de la ruta del entorno. En mi caso, también se ha instalado openssl como parte de la instalación de Perl]
    _C:\Perl\c\bin\openssl.exe
    C:\Miniconda3-x64\Librería\bin\openssl.exe_

  4. Comando: > donde libssl-1_1-x64.dll
    La salida debería ser algo como: _C:\Miniconda3-x64\Library\bin\libssl-1_1-x64.dll_

Para cualquiera de estos, si obtiene un resultado que dice "INFO: no se pudieron encontrar archivos para los patrones dados", entonces falta uno de los componentes de ruta necesarios para pip en su entorno.

Hola, los 4 comandos funcionaron bien, y para el 4 muestra 2 líneas:
C:\Windows\System32\libssl-1_1-x64.dll
C:\Anaconda\Librería\bin\libssl-1_1-x64.dll

parece que querrás poner "C:\Anaconda\Library\bin" al comienzo de tu $PATH

parece que querrás poner "C:\Anaconda\Library\bin" al comienzo de tu $PATH
Lo acabo de probar y el problema sigue ahí.

puedes echo %PATH%

es posible que haya abierto una nueva terminal para que cambie la RUTA

Solución alternativa: conseguí que funcionara creando un archivo pip.ini en C:\Users\my_user_namepip, escribiendo:

[global]
índice-url= http://pypi.douban.com/simple/
[Instalar en pc]
host de confianza=pypi.douban.com

Resuelve el problema por el momento, sin embargo, la velocidad de descarga usando este espejo no es muy rápida (alrededor de 800kb/s). ¿Hay alguna manera de hacer que funcione como de costumbre?

puedes echo %PATH%

es posible que haya abierto una nueva terminal para que cambie la RUTA

C:\Anaconda\Library\bin;D:\Software\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin;D:\Software\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp;C:\Program Files (x86)\Archivos comunes\Oracle\Java\javapath;C:\Archivos de programa (x86)\Razer Chroma SDK\bin;D:\Software\Razer Chroma SDK\bin;C:\windows\system32;C:\windows ;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common; D:\Software\PuTTY\;C:\windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;D:\Software\dotnet\;D:\Software\MySQL\MySQL Utilities 1.6\;C:\ Archivos de programa\Intel\WiFi\bin\;C:\Archivos de programa\Archivos comunes\Intel\WirelessCommon\;D:\Software\Git\cmd;C:\Users\Cyrilpippip.ini;C:\Anaconda;C:\ Anaconda\Librería\mingw-w64\bin;C:\Anaconda\Librería\usr\bin;C:\Anaconda\Scripts;C:\Anaconda\bin;C:\Anaconda\Librería\bin;C:\Anaconda;C :\Anaconda\Library\mingw-w64\bin;C:\Anaconda\Library\usr\bin;C:\Anaconda\Scripts;C:\Anaconda\bin;D:\Software\D ocker Toolbox;C:\Users\Cyrilpippip.ini;

Las bibliotecas SSL están en su carpeta C:\anaconda\Library\bin . Debe tener esa ruta configurada en el momento de intentar instalar sus bibliotecas . Esto se debe a que, cuando activa un entorno virtual, se cambia la RUTA.

Por lo tanto,

  • Si no utiliza entornos virtuales, establezca manualmente la RUTA en:
set PATH=C:\anaconda;C:\anaconda\Scripts;C:\anaconda\Library\bin
pip  install any_library
or
pip install -r requirements.txt

  • Si utiliza entornos virtuales, establezca manualmente la RUTA en:
set PATH=C:\venvs\ve1\;C:\venvs\ve1\Scripts;C:\anaconda\Library\bin
pip  install any_library
or
pip install -r requirements.txt

Tenga en cuenta que C:\anaconda\Library\bin es coherente en ambos casos, independientemente de si está trabajando en una máquina virtual o no.

@datatravelgit Hola, no estoy usando entornos virtuales y todavía existe este problema después de configurar la ruta manualmente.

¡Gracias por los útiles comentarios de arriba! Agregar lo siguiente a la variable de ruta funcionó para mí en Windows 10:
C:\Usuarios...\Anaconda3
C:\Usuarios...\Anaconda3\Scripts
C:\Usuarios...\Anaconda3\Biblioteca\bin

Tengo el mismo problema que @liurui39660 , también uso Intel Python Distribution _and_ python -m venv para crear mi venv. Parece ser un problema con el módulo ssl , que no tiene nada que ver con pip :

(venv) C:\Users\ceefour\git\tews\ecn-svc>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\ProgramData\Anaconda3\lib\ssl.py", line 101, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: DLL load failed: The operating system cannot run %1.
>>>

Tenga en cuenta que el error solo se activó al usar Intel Python dentro de un venv. Cuando se usa el env base, funciona:

(base) C:\Users\ceefour>python
Python 3.6.3 |Anaconda custom (64-bit)| (default, May  3 2018, 23:39:44) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Intel(R) Distribution for Python is brought to you by Intel Corporation.
Please check out: https://software.intel.com/en-us/python-distribution
>>> import ssl
>>> 

Actualización: este hilo parece ser una pista:

Rohit J. (Intel) jue, 07/06/2017 - 21:40
pip no se podía usar ni con IDP ni con Miniconda en Windows. El problema se originó en una biblioteca en conflicto (libeay32.dll) que se instaló en la ruta del sistema. En tiempo de ejecución, la carga de esta biblioteca ganó prioridad sobre lo que enviamos con nuestra distribución. Hubo un conflicto de versiones y la ejecución fallaría con "ImportError: error de carga de DLL: el sistema operativo no puede ejecutar %1". La eliminación de esta biblioteca extraña de la ruta del sistema resolvió el problema.

Tengo _muchos_ de libeay32.dll dentro de C:\Program Files , incluido uno en C:\ProgramData\Anaconda3\Library\bin

Intenté mover C:\ProgramData\Anaconda3\Library\bin al frente de PATH , pero aún ocurre un error.
-------------更新:20190327
刚 qq 来 了 个 邮件 邮件 点 点 发现 发现 是 这个 这个 这个 发现 是 这个 问题 这个 后来 解决 了 问题 这个 这个 后来 了 了 我 这个 后来 解决 了 安装 这个 电脑 上 重新 了 我 这个 电脑 解决 重新 安装 这个 电脑 后来 解决 了 我 这个 电脑 上 了 安装 我 这个 后来 上 了 我 这个 电脑 上 了 安装 我 这个 电脑 上 了 安装 我 电脑 后来 上 了 安装 这个 电脑 上 了 安装 我 这个 电脑 上 了 安装 我 电脑 电脑 上 了light-1_1_1b.exe, 然后 anaconda 卸载 并 重装. 现在 Anaconda 和 Python 都 都 了.

------------- 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的 的.执行importar SSL,anaconda中的报错,另外一个不报错。如图:
GitHub Logo
我把pycharm中的路径修改后,pycharm也可以正常运行了。

Tuve que reemplazar el libssl-1_1-x64.dll en mi carpeta envs/myenv/Library/bin con el env dll base. No era el mismo. Además, tenía otro libssl-1_1-x64.dll en C:/Windows/System32/ y en ciertas carpetas de Intel en C:/Program Files. Eliminé las cosas de Intel de la ruta y eliminé la que estaba en system32.

No estoy seguro de cuándo se copió el dll corrupto, pero reemplazándolo con el de conda/Library/bin/ funcionó bien.

Para verificar más errores, puede activar su entorno y escribir python -c "import ssl" . Es una diferencia importante, si el error es "Módulo no encontrado" (-> dll no se puede encontrar en absoluto, podría ser un problema de ruta) o "Punto de entrada del procedimiento no encontrado" (-> probablemente, se encuentra un dll corrupto/incorrecto ).

Tuve que reemplazar el libssl-1_1-x64.dll en mi carpeta envs/myenv/Library/bin con el env dll base. No era el mismo. Además, tenía otro libssl-1_1-x64.dll en C:/Windows/System32/ y en ciertas carpetas de Intel en C:/Program Files. Eliminé las cosas de Intel de la ruta y eliminé la que estaba en system32.

No estoy seguro de cuándo se copió el dll corrupto, pero reemplazándolo con el de conda/Library/bin/ funcionó bien.

Para verificar más errores, puede activar su entorno y escribir python -c "import ssl" . Es una diferencia importante, si el error es "Módulo no encontrado" (-> dll no se puede encontrar en absoluto, podría ser un problema de ruta) o "Punto de entrada del procedimiento no encontrado" (-> probablemente, se encuentra un dll corrupto/incorrecto ).

Estoy experimentando el mismo problema: "No se pudo encontrar el procedimiento especificado". - solo en env específco
En env base, "importar ssl" funciona bien.

Intenté reemplazar libssl-1_1-x64.dll de env con libssl-1_1 -x64.dll de env base, pero no ayudó.
¿Podría haber algún otro archivo que esté causando esto?

Solucionado para mí, gracias por los comentarios de todos.
El problema no se solucionó agregando\Anaconda3\Library\bin a la ruta, o incluso a la parte superior de la ruta. Lo mismo ocurre con \Anaconda3\Scripts y \Anaconda3\Library\mingw-w64\bin.

Intenté reemplazar libssl-1_1-x64.dll de env con libssl-1_1 -x64.dll de env base, pero no ayudó.
¿Podría haber algún otro archivo que esté causando esto?

Eliminar tanto libssl-1_1-x64.dll como libcrypto-1_1-x64.dll en C:/Windows/System32/ me solucionó el problema.

¡Te amo amigo!
Eliminar tanto libssl-1_1-x64.dll como libcrypto-1_1-x64.dll en C:/Windows/System32/ me solucionó el problema.

instale Win64OpenSSL_Light-1_1_1b.exe https://slproweb.com/download/Win64OpenSSL_Light-1_1_1b.exe , luego pip funciona bien.

intenta usar:

pip3 install <package>

este problema se puede resolver cambiando la ruta a través de esta pc
ir a propiedades
luego ve a la configuración avanzada
entonces las variables de entorno
entonces las variables del sistema
entonces camino
ruta de doble clic
verifique la ruta de python instalado
si tienes anaconda
luego elimine ambas rutas y
luego haga clic en nuevo
luego copie la ruta de python 3.7 o las últimas secuencias de comandos de python til, es decir
(C:\Usuarios\'nombre de usuario'\AppData\Local\ProgramsPythonPython37\scripts)
luego haga clic en Aceptar
siguiente también haga clic en nuevo
luego copie la ruta C:\Users\'user name'\AppData\Local\ProgramsPythonPython37
luego reinicie el cmd como administrador y vuelva a intentar la instalación

Lo curioso: tuve el mismo problema en Android, Termux. Pip no pudo conectarse a pypi.org debido a la ausencia de SSL.
El problema es claramente con el módulo ssl. Entonces, inicialmente verifique si tiene algún SSL instalado. En caso afirmativo, actualícelo a las últimas versiones, ya que los algoritmos SSL evolucionan rápidamente y se vuelven incompatibles.
Intente actualizar la biblioteca existente o instale un paquete mejor compatible.

Para los usuarios de Anaconda/Miniconda en Windows, este es un problema de carga de la biblioteca. Hay información en las preguntas frecuentes sobre solución de problemas en https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#condahttperror -http-000-connection-failed

Como han señalado algunos usuarios, otras instalaciones de openssl en la carpeta Windows\System32 pueden ser excepcionalmente problemáticas. Hay información sobre una solución en Python de Anaconda (y de conda-forge) en esta sección de solución de problemas relacionada: https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#numpy -mkl-library- Carga fallida

Puede informar problemas de anaconda en https://github.com/continuumio/anaconda-issues

Tuve una recurrencia del problema de SSL con las instalaciones del módulo pip. Antes de esto, pip había funcionado bien durante varios meses, después de configurar correctamente la ruta del entorno para incluir las 3 carpetas conda: %Conda_DIR%;%Conda_DIR%\Scripts;%Conda_DIR%\Library\bin .

Después de un par de horas de discusión, llegué a estas dos soluciones: una para la instalación de módulos a través de pip y la otra a través de conda .

El módulo se instala a través de pip

Básicamente, según los mensajes de error, tuve que agregar los sitios pypi.org y files.pythonhosted.org como hosts de confianza.

Puede hacer esto una vez a través de: pip config set global.trusted_host "pypi.org files.pythonhosted.org"
Este cambio de configuración se guarda en el archivo C:\Users\user_name\Appdata\Roaming\pip\pip.ini (en resumen, %APPDATA%\pip\pip.ini ). Dado que se encuentra en una carpeta de usuario que no es administrador desde la perspectiva de Windows, debería ser seguro hacerlo.

[Si no se siente cómodo con el cambio de configuración 'global', puede repetirlo durante la instalación de cada módulo.
Por ejemplo: pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org -U matplotlib ]

El módulo se instala a través de conda

Algunos módulos de Python como el mapa base no se instalan a través de pip. Tuve que usar conda en su lugar.
Para anular el error de SSL con conda, tuve que usar: conda config --set ssl_verify false

[Después de instalar el módulo conda, volví a encender el ssl con: conda config --set ssl_verify true ]

Al resolver estos problemas hoy, la información general en https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#ssl -connection-errors y la información de sitios específicos del error de tiempo de instalación mensajes, ambos resultaron útiles.

Hola, cuando en el indicador de anaconda no puedo usar pip debido a problemas de TSL/SSL:

(base) C:\Users\joshu>pip install pandahouse
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

Pero puedo instalar pip lo que quiera cuando uso python native:

C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts>pip install scrapy
Collecting scrapy
  Downloading http....

Lo que he hecho hasta ahora:

  1. Python instalado primero
  2. anaconda instalada
  3. Anaconda reinstalada
  4. Se eliminaron libcrypto-1_1-x64.dll y libssl-1_1-x64.dll de System32/
  5. Agregué mis bibliotecas de Anaconda al sistema superior y las variables de usuario de PATH
    C:\Users\joshu\Anaconda3\Library\bin
  6. Todavía no funciona

Ubicaciones de solicitud de CMD en Python nativo:

C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts>where libssl-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libssl-1_1-x64.dll

C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts>where libcrypto-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libcrypto-1_1-x64.dll

Ubicaciones de Anaconda Prompt:

(base) C:\Users\joshu>where libssl-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libssl-1_1-x64.dll

(base) C:\Users\joshu>where libcrypto-1_1-x64.dll
C:\Users\joshu\Anaconda3\Library\bin\libcrypto-1_1-x64.dll

No estoy seguro de si esto importa, pero OPENSSL_CONF C:\OpenSSL-Win64\bin\openssl.cfg aparece encima de PATH en las variables de mi sistema.

¿Podría alguien ayudarme? No estoy seguro de cómo resolver esto y realmente preferiría usar Anaconda/Spyder en lugar de Python nativo.

@jmhcodes , consulte este enlace: https://stackoverflow.com/questions/41328451/ssl-module-in-python-is-not-disponible-when-installing-package-with-pip3

También en stackoverflow, me encontré con otra discusión que era más relevante para la recurrencia repentina del error de verificación del certificado SSL que comencé a enfrentar en mi PC de trabajo. El enlace de discusión es: https://stackoverflow.com/questions/25981703/pip-install-fails-with-connection-error-ssl-certificate-verify-failed-certi

En un par de esas respuestas, había estas declaraciones:

En mi caso, el problema eran los certificados en la red de mi empresa.

y

Recientemente me encontré con este problema debido al filtro de contenido web de mi empresa que usa su propia Autoridad de certificación para poder filtrar el tráfico SSL.

Entonces, en mi caso, fue el firewall de la red corporativa lo que rompió mi pip. Pero agregar files.pythonhosted.org & ** pypi.org como hosts de confianza ha resuelto el problema por ahora.

Honestamente, no había visto la segunda discusión de stackoverflow cuando resolví el problema la semana pasada y publiqué los pasos de mi solución aquí. La mayoría de las respuestas en el artículo de stackoverflow están de acuerdo en que usar --trusted-host también resolvió sus problemas de pip. Además de los dos sitios mencionados anteriormente, también recomiendan agregar pypi.python.org

@shriprem

@jmhcodes , consulte este enlace: https://stackoverflow.com/questions/41328451/ssl-module-in-python-is-not-disponible-when-installing-package-with-pip3

También en stackoverflow, me encontré con otra discusión que era más relevante para la recurrencia repentina del error de verificación del certificado SSL que comencé a enfrentar en mi PC de trabajo. El enlace de discusión es: https://stackoverflow.com/questions/25981703/pip-install-fails-with-connection-error-ssl-certificate-verify-failed-certi

También he visto estas dos publicaciones y podría agregarlo como un host de confianza global e irme, pero no me siento lo suficientemente cómodo para hacerlo.

Lo que realmente pretendo responder es por qué pip funciona sin problemas de SSL/TSL dentro del paquete nativo de Python en la línea cmd PERO no funciona en el indicador de anaconda a pesar de que openssl/libssl-1_1-x64.dll/libcrypto-1_1-x64 .dll todos apuntan a la misma ubicación.

@jmhcodes , ejecute el comando where pip.exe tanto en el símbolo del sistema normal como en el indicador de Anaconda. ¿Ambos devuelven la misma ruta a pip.exe?

Estas son algunas de las diferencias que el símbolo del sistema de Anaconda aporta a su entorno con respecto al símbolo del sistema normal:

  1. Anaconda antepone 7 de sus subdirectorios al principio de la ruta del entorno normal. Puede verificar esto ejecutando el comando echo %path% desde ambos entornos y diferiéndolos. Esos 7 subdirectorios son:
    %CONDA_DIR%; %CONDA_DIR%\Library\mingw-w64\bin; %CONDA_DIR%\Library\usr\bin; %CONDA_DIR%\Library\bin; %CONDA_DIR%\Scripts; %CONDA_DIR%\bin; %CONDA_DIR%\condabin;

_ Nota : %CONDA_DIR% debe sustituirse por la ruta de instalación de Anaconda._

  1. Anaconda también define estas nuevas variables de entorno:
    CONDA_DEFAULT_ENV, CONDA_EXE, CONDA_PREFIX, CONDA_PROMPT_MODIFIER, CONDA_PYTHON_EXE, CONDA_SHLVL, PYTHONIOENCODING, PROJ_LIB, _CONDA_SET_PROJ_LIB
    Puede verificar esto ejecutando el comando set desde ambos entornos y diferenciándolos.

Estas diferencias entre los dos entornos podrían estar causando cualquier problema que tenga. Depende de usted cavar más.

Pero si pip.exe apunta al mismo binario de ambos entornos, no debería preocuparse mucho por qué entorno está utilizando para ejecutar pip. Además, no me preocuparía demasiado agregar los muy conocidos sitios pip de python.org como hosts de confianza. También lo estaban muchos en stackoverflow. Esos son mis dos centavos.

Por último, mencionaste:

No estoy seguro de si esto importa, pero OPENSSL_CONF C:\OpenSSL-Win64\bin\openssl.cfg aparece encima de PATH en las variables de mi sistema.

Esto se debe a que la variable del sistema OPENSSL_CONF viene antes de PATH cuando se enumera en orden alfabético. Por lo tanto, no debería importar para el problema que está teniendo. ¿O malinterpreté lo que estabas diciendo?

Baile de anaconda
pip 19.1.1 from C:\ProgramData\Anaconda3\lib\site-packages\pip (python 3.7)

solicitud de comando
C:\Users\joshu\AppData\Local\Programs\Python\Python37\Scripts\pip.exe

Pero ni siquiera puedo abrir spyder/anaconda nav o cualquier otra cosa relacionada con la suite anaconda que no sea el indicador de anaconda:

(base) C:\Users\joshu>spyder.exe
Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\github.py", line 51, in <module>
    from urllib2 import build_opener, HTTPSHandler, Request, HTTPError
ModuleNotFoundError: No module named 'urllib2'

Durante el manejo de la excepción anterior, ocurrió otra excepción:

Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 3285, in main
    mainwindow = run_spyder(app, options, args)
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 3140, in run_spyder
    main.setup()
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 809, in setup
    from spyder.plugins.console import Console
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\plugins\console.py", line 37, in <module>
    from spyder.widgets.reporterror import SpyderErrorDialog
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\widgets\reporterror.py", line 26, in <module>
    from spyder.widgets.github.backend import GithubBackend
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\widgets\github\backend.py", line 33, in <module>
    from spyder.utils.external import github
  File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\external\github.py", line 58, in <module>
    from urllib.request import build_opener, HTTPSHandler, HTTPError, Request
ImportError: cannot import name 'HTTPSHandler' from 'urllib.request' (C:\ProgramData\Anaconda3\lib\urllib\request.py)

Trabajo con Visual Studio Code y tuve el mismo problema porque no estaba activo conda virtual env. Lo ejecuté.

imagen

¿Fue útil esta página
0 / 5 - 0 calificaciones