我正在尝试下载 NLTK 3.0 以与 Mac OS X 10.7.5 上的 Python 3.6 一起使用,但收到 SSL 错误:
import nltk
nltk.download()
我使用 pip3 命令下载了 NLTK:
sudo pip3 install -U nltk
。
更改 NLTK 下载器中的索引允许下载器显示 NLTK 的所有文件,但是当尝试下载所有文件时,会出现另一个 SSL 错误(参见照片底部):
我对计算机科学比较陌生,对 SSL 一点也不了解。
我的问题是如何简单地解决这个问题?
这是一个有同样问题的用户提出的类似问题:
我决定发布一个带有屏幕截图的新问题,因为我对其他问题的编辑被拒绝了。
我发现没有帮助的类似问题:
如果运行以下终端命令,则无需禁用 SSL 检查:
/Applications/Python 3.6/Install Certificates.command
在
3.6
的位置,输入您的 Python 版本(如果它是早期版本)。然后您应该能够打开 Python 解释器(使用命令 python3
)并成功运行 nltk.download()
。
这是一个问题,其中
urllib
使用不在系统证书存储中的 OpenSSL 嵌入式版本。 这是一个答案,其中包含有关正在发生的事情的更多信息。
请参阅@doctorBroctor 的回答。使用起来更正确、更安全。将答案留在下面,因为它可能对其他事情有用。
https://stackoverflow.com/a/42890688/1167890
这可以通过禁用 SSL 检查来实现。
import nltk
import ssl
try:
_create_unverified_https_context = ssl._create_unverified_context
except AttributeError:
pass
else:
ssl._create_default_https_context = _create_unverified_https_context
nltk.download()
在 Finder 中,搜索
Python 3.6
。
它将出现在“应用程序”文件夹下。
展开 Python 3.6 文件夹。
然后使用“安装证书.命令”安装证书。
要在 codestar 中安装,唯一的方法是手动下载模块并将其保存到 nltk_data 文件夹中,使用 valie ./nltk_data 创建 lambda 变量环境 NLTK_DATA。
禁用证书并安装 nltk.download() 命令。
这对我有用。它将打开弹出窗口并单击下载按钮。