持续存在 spaCy 导入错误:NotOpenSSLWarning:urllib3 v2.0 仅支持 OpenSSL 1.1.1+

问题描述 投票:0回答:2

我意识到这是最近常见的错误,但我在网上找到的解决方案都没有帮助我。我正在尝试在 Jupyter Notebook 中使用 spaCy 并在 Mac OS 上使用 VScode ,但每次尝试导入 spacy 时,都会收到以下错误:

NotOpenSSLWarning: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020
  warnings.warn(

我试过了

brew install [email protected]

这不起作用,所以我尝试使用

降级 urllib3
pip install urllib3==1.26.6 

也没有用。我尝试使用虚拟环境,也不起作用。我一直在网上搜索试图找到解决方案,但似乎没有任何效果。

python spacy importerror urllib3
2个回答
0
投票

这并不是真正的 spaCy 问题,而是 Python 安装的问题。您可以尝试安装旧版本的 urllib3,例如,我有一个虚拟环境,其中包含最新版本的 spaCy 3.5 和 urllib3 1.26.15,效果很好:

pip install urllib3=1.26.15

如果这不起作用,请使用 pip show urllib3 确认该版本确实已安装以及您收到的错误。另一种选择是构建或安装针对 OpenSSL 1.1.1 或更高版本构建的 Python 版本。

I tried

brew install [email protected]

这通常不起作用,因为 Homebrew 将 openssl 安装为仅桶,这意味着该库不可见,除非您明确链接它。其次,SSL 模块链接到 libressl,它很可能具有不同的共享库版本。最后,SSL 模块可以对库路径进行硬编码(在我的安装中确实如此)。


0
投票

在尝试使用 Python“请求”HTTP 库时,我遇到了类似的问题,同样的错误消息。以下步骤让它在 Apple M1 Pro - Ventura 13.5 上适用。

安装 Homebrew(如果尚未安装):

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

或者通过他们新的 .pkg 安装程序:Homebrew 4.1.3

将 Homebrew 添加到您的路径(我使用的是 bash):

echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> ~/.bash_profile

安装最新版本的openssl:

brew install [email protected]

确保 openssl 位于您的路径中的第一个,因为brew将其安装为仅桶。

echo 'export PATH="/opt/homebrew/opt/[email protected]/bin:$PATH"' >> /Users/<username>/.bash_profile
© www.soinside.com 2019 - 2024. All rights reserved.