首页 > 解决方案 > requests.packages.urllib3.exceptions.SSLError: [错误 2] 没有这样的文件或目录

问题描述

有一些代码,它适用于原始代码,但是一旦我用 pyinstaller 将它变成可执行文件,我就会得到requests.packages.urllib3.exceptions.SSLError: [Error 2] no such file or directory 它总是适用于原始代码,但不适用于 pyinstaller

尝试使用来自 python 2 和 python3 的请求,在多台 PC 上尝试过。

我希望它在使用 .exe 和 pyinstaller 时执行代码

标签: pythonpython-requestspyinstallerinstagram-api

解决方案


最后我找到了一个解决方案,使用 certifi 来解析“cacert.pem”证书的完整路径。并在请求中使用它:

import requests
import certifi

req_url = "https://jsonplaceholder.typicode.com/todos/1"
response = requests.get(req_url, timeout=10, verify=certifi.where()).json()
print(response)

如果您使用另一个证书或想要移动到最终二进制文件,也可以将其复制到 pyinstaller 并将其用于verify参数。


推荐阅读