当向 binance 发出 Api 请求时,在使用 pyinstaller 将 main.py 构建为 exe 后,出现以下错误:
OSError: Could not find a suitable TLS CA certificate bundle, invalid path: C:\Users\ADMINI~1\AppData\Local\Temp\2\_MEI76602\certifi\cacert.pem
Run Code Online (Sandbox Code Playgroud)
在我运行机器人的服务器上以及本地计算机上:
OSError: Could not find a suitable TLS CA certificate bundle, invalid path: C:\Users\USER\PycharmProjects\pythonproject2\dist\cacert.pem
Run Code Online (Sandbox Code Playgroud)
两者错误的确切位置是:
File "requests\adapters.py", line 227, in cert_verify
Run Code Online (Sandbox Code Playgroud)
在服务器上,程序已经连续运行了一个多星期,没有出现任何问题,直到两天前我开始收到 OSError 错误。但只有 API 调用才会导致错误,程序仍在运行,websocket 仍在接收数据。
我尝试在 python requests 的接受答案中添加代码,当转换为 .exe 时找不到带有证书的文件夹
我也尝试过:
pip config set global.cert "path\to\cacert.pem"
Run Code Online (Sandbox Code Playgroud)
具有 cacert.pem 的正确路径,发现使用
python -c "import certifi; print(certifi.where())"
Run Code Online (Sandbox Code Playgroud)
这些都不起作用,目前我发现的唯一解决方法是将 cacert.pem 文件手动复制到 OSError 表示正在寻找它的位置(cacert.pem 文件)。
但我以前从未这样做过。最近我更新了我的 python …