我正在尝试下载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一点都不精通。
我的问题是如何简单地解决这个问题?
以下是遇到相同问题的用户的类似问题:
我决定发布一个带截图的新问题,因为我对其他问题的编辑被拒绝了。
我认为没有帮助的类似问题:
答案 0 :(得分:101)
如果运行以下终端命令,则无需禁用SSL检查:
/Applications/Python 3.6/Install Certificates.command
在3.6
的位置,如果是早期的Python,请放置您的Python版本。然后你应该能够打开你的Python解释器(使用命令python3
)并在那里成功运行nltk.download()
。
这是一个问题,其中urllib
使用不在系统证书存储区中的嵌入式OpenSSL版本。 Here's an answer了解有关正在发生的事情的更多信息。
答案 1 :(得分:73)
请参阅@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()
答案 2 :(得分:16)
在Finder中,搜索Python 3.6
。
它将出现在Application文件夹下。
展开 Python 3.6 文件夹。
然后使用“Install Certificates.command”安装证书。
答案 3 :(得分:0)
要仅在codestar中安装,请手动下载模块并将其保存到nltk_data文件夹中,并使用val ./nltk_data创建一个lambda变量环境NLTK_DATA。