#python #windows #anaconda #ssl-certificate
#python #Windows #анаконда #ssl-сертификат
Вопрос:
У меня установлена Python из среды Anaconda. Если я проверю, где Python ищет SSL-сертификаты с помощью приведенного ниже кода, я получаю странные результаты:
import ssl
ssl.get_default_verify_paths()
Вывод:
DefaultVerifyPaths(cafile=None, capath=None, openssl_cafile_env='SSL_CERT_FILE', openssl_cafile='/usr/local/ssl/cert.pem', openssl_capath_env='SSL_CERT_DIR', openssl_capath='/usr/local/ssl/certs')
Для меня это не имеет особого смысла: почему пути в «стиле Linux»? Я пытаюсь выполнять запросы API с requests
помощью пакета и получаю ошибки SSL.
Как я могу изменить переменные пути?
Как я мог предотвратить это в первую очередь (установка Anaconda была не мной, а моим работодателем)?
Ответ №1:
Я не думаю, что это обязательно то, что вы сделали, но по умолчанию пакеты. Windows имеет свой собственный криптографический API и не использует openssl. Таким образом, было сделано предположение, что любой, кто использует openssl, будет работать на компьютере Mac или Linux, и пути к файлам для путей openssl были установлены соответствующим образом. Не уверен на 100%, что это ответ, но это кажется вероятным.
Комментарии:
1. Спасибо за ваши мысли, но это не решает мою проблему, хотя 🙂 Я думал, что это может быть распространенной проблемой, но, видимо, не многие люди используют python в Windows (что я вынужден делать).