Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

3.3K
Vistas
OSError: no se pudo encontrar un paquete de certificados TLS CA adecuado

cuando hago solicitudes de Api a binance, después de construir main.py a exe usando pyinstaller, aparece este error:

 OSError: Could not find a suitable TLS CA certificate bundle, invalid path: C:\Users\ADMINI~1\AppData\Local\Temp\2\_MEI76602\certifi\cacert.pem

en el servidor donde ejecuto el bot y esto en la máquina local:

 OSError: Could not find a suitable TLS CA certificate bundle, invalid path: C:\Users\USER\PycharmProjects\pythonproject2\dist\cacert.pem

la ubicación exacta del error para ambos es:

 File "requests\adapters.py", line 227, in cert_verify

En el servidor, el programa se había estado ejecutando durante más de una semana sin parar y sin problemas hasta hace 2 días cuando comencé a recibir el error OSE. Pero solo las llamadas a la API causaron el error con el programa aún ejecutándose, los websockets aún recibían datos.

Intenté agregar el código en la respuesta aceptada de las solicitudes de python. No puedo encontrar una carpeta con un certificado cuando se convierte a .exe.

También probé:

 pip config set global.cert "path\to\cacert.pem"

con la ruta correcta a cacert.pem, encontrada usando

 python -c "import certifi; print(certifi.where())"

Nada de eso funcionó, actualmente la única solución que encontré es copiar manualmente el archivo cacert.pem en la ubicación donde OSError dice que lo estaba buscando (el archivo cacert.pem).

Pero nunca tuve que hacer esto antes. Recientemente actualicé mi versión de python y luego volví a bajar de categoría debido a problemas con el websocket. Hice esto desinstalando completamente Python 3.10 y eliminando todas las referencias de PATH, luego reinstalé 3.9.7 y agregué todas las variables de PATH.

¿Alguien tiene alguna idea de qué podría estar causando esto? Cuando ejecuto el script en pycharm, no aparece este error, también noté que global.cert no es la misma ruta que OSError en la máquina local, pero no tengo idea de cómo cambiar el aspecto del archivo cacert.pem .

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Ok, por ahora he encontrado una solución temporal. Lo que también sucedía era que donde el programa buscaba el archivo cacert.pem, no existía tal archivo. Entonces, la solución que encontré: en la terminal de su proyecto, vaya a Bibliotecas externas -> Python3.9 -> paquetes del sitio -> certifi -> core.py

Luego busca este Código:

 import os try: from importlib.resources import path as get_path, read_text _CACERT_CTX = None _CACERT_PATH = None def where(): .............

Ahora, cuando ejecute el programa, obtenga la ruta donde busca cacert.pem cuando arroja el error. Pegue el archivo cacert.pem en la carpeta Temp o Temp\2, etc. luego copie la ruta. Cambia el código a:

 import os try: from importlib.resources import path as get_path, read_text _CACERT_CTX = None _CACERT_PATH = "copied path" def where(): .............

Además, he compilado exactamente el mismo código en un nuevo sistema y todo funciona bien. Entonces, lo más probable es que el problema sea cuando instalé y desinstalé 3.10. Actualizaré si encuentro la razón exacta.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda