InsecurePlatformWarning: un objeto SSLContext verdadero no está disponible. Esto evita que urllib3 configure SSL adecuadamente [duplicado]

Resuelto user4525298 asked hace 9 años • 0 respuestas

Intenté realizar REST GET a través de solicitudes de Python con el siguiente código y obtuve un error.

Recorte de código:

import requests
header = {'Authorization': 'Bearer...'}
url = az_base_url + az_subscription_id + '/resourcegroups/Default-Networking/resources?' + az_api_version
r = requests.get(url, headers=header)

Error:

/usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/util/ssl_.py:79: 
          InsecurePlatformWarning: A true SSLContext object is not available. 
          This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. 
          For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning

Mi versión de Python es 2.7.3. Intenté instalar urllib3 y request[security] como sugiere otro hilo, sigo recibiendo el mismo error.

¿Me pregunto si alguien puede dar algunos consejos?

user4525298 avatar Mar 19 '15 06:03 user4525298
Aceptado

Los documentos dan un indicador justo de lo que se requiere. , sin embargo, requestspermítanos saltarnos algunos pasos:

Solo necesitas instalar los security extras del paquete (gracias @admdrew por señalarlo)

$ pip install requests[security]

o instálelos directamente:

$ pip install pyopenssl ndg-httpsclient pyasn1

Las solicitudes se inyectarán automáticamente pyopensslenurllib3


Si estás en Ubuntu, puedes tener problemas al instalar pyopenssl, necesitarás estas dependencias:

$ apt-get install libffi-dev libssl-dev
nathan-m avatar Mar 23 '2015 01:03 nathan-m

Si no puede actualizar su versión de Python a 2.7.9 y desea suprimir las advertencias,

puede degradar su versión de 'solicitudes' a 2.5.3:

pip install requests==2.5.3

Divulgación de corrección de errores / Advertencia introducida en 2.6.0

raittes avatar Mar 19 '2015 20:03 raittes