我在 Anaconda 环境中安装了 Python。如果我使用以下代码检查 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 风格”?我正在尝试使用 requests
包执行 API 请求,但出现 SSL 错误。
如何更改路径变量?
一开始我怎么能阻止这种情况(虽然 Anaconda 不是我安装的,而是我雇主的 IT 部门安装的)?
最佳答案
我认为这不一定是您所做的,而是包的默认设置。 Windows 有自己的加密 API,不使用 openssl。因此假设任何使用 openssl 的人都在 mac 或 linux 计算机上,并且相应地设置了 openssl 路径的文件路径。不能 100% 确定这就是答案,但似乎很有可能。
关于Python 在 linux 路径中查找 SSL 证书,但我使用的是 Windows : how to change?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55596255/