import nltk
nltk.download()
它显示[SSL:CERTIFICATE_VERIFY_FAILED]
。在使用requests
时,可以使用verify=False
,但是这里该怎么办。
更新:
此错误在Python 3.6上持续存在,使用NLTK 3.0,在Mac OS X 10.7.5上:
更改 NLTK 下载器中的索引(建议在这里)可以使下载器显示所有 NLTK 文件,但是当尝试下载全部文件时,会出现另一个 SSL 错误(请参见照片底部)。import nltk
nltk.download()
它显示[SSL:CERTIFICATE_VERIFY_FAILED]
。在使用requests
时,可以使用verify=False
,但是这里该怎么办。
更新:
此错误在Python 3.6上持续存在,使用NLTK 3.0,在Mac OS X 10.7.5上:
更改 NLTK 下载器中的索引(建议在这里)可以使下载器显示所有 NLTK 文件,但是当尝试下载全部文件时,会出现另一个 SSL 错误(请参见照片底部)。在尝试配置nltk和SpaCy时,我遇到了同样的问题。根据这个问题中的说明,我成功地解决了这个问题。请尝试运行/Applications/Python\ 3.6/Install\ Certificates.command
,然后重试您的NLTK下载。
pip install certifi
/Applications/Python\ 3.6/Install\ Certificates.command
对我而言,安装NLTK语料库的常规方法成功了。
import nltk
nltk.download()
tokenizer/punkt
数据,您可以直接从以下链接下载:https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/packages/tokenizers/punkt.zip,然后将解压缩后的 punkt 文件夹放置在 C:\nltk_data\tokenizers 中。(为了解决这个问题的SEO,添加“certificate verify failed _ssl.c:749”)
在我的Mac 10.12.2上,通过使用Paul Barry的方法从Python 2.7下载解决了我的问题(我无法发表评论因为声望<50)。
遇到和解决的额外问题: 为了能够通过python 2.7(默认的Mac Python 2.7设置)下载NLTK,我还必须像this comment所示那样将Python文件夹添加到/.bash_profile中。
然后,由于我已经为2.7设置了此路径变量,因此在下载语料库后,我必须在启动python3之前将其删除。所以在启动python3之前,请从/.bash_profile中删除它。
经过所有这些,我可以运行“import nltk”和“from nltk.book import *”而不会出现问题。
好的,这有点小技巧,但这是我在我的Mac笔记本上(运行macOS 10.12.2)使用Python 3.x使用各种NLTK数据文件所必须做的。
首先,注意到当我尝试在Mac上使用Python 3.x下载NLTK数据时,证书错误只会发生在这里(我的VirtualBox内部的Ubuntu VM在使用Python 3.x时没有这样的错误 - 这很恼人)。为什么这会导致Mac上的错误超出了我的理解范围,特别是因为NLTK模块在使用pip将其安装到Python 3.x中时没有任何问题。似乎连接到NLTK的下载服务器才是导致SSL验证问题的原因。
我的“ah ha!”时刻是当我意识到NLTK - 当安装到Python 3.x或Python 2.x中时 - 在任何计算机上安装的所有Python版本之间共享相同的目录结构。因此,我使用macOS预安装的Python 2.x安装NLTK,然后在Python 2.x中使用nltk.download()
无问题地安装了停用词语料库。完成此操作后(在Python 2.x中),我回到Python 3.x,然后此代码有效:
import nltk
from nltk.corpus import stopwords
print(stopwords.words('english'))