天道酬勤,学无止境

Corpora/stopwords not found when import nltk library

问题

我试图在 python 2.7 中导入 nltk 包

  import nltk
  stopwords = nltk.corpus.stopwords.words('english')
  print(stopwords[:10])

运行它会给我以下错误:

LookupError: 
**********************************************************************
Resource 'corpora/stopwords' not found.  Please use the NLTK
Downloader to obtain the resource:  >>> nltk.download()

因此,我打开了我的 python 终端并执行了以下操作:

import nltk  
nltk.download()

这给了我:

showing info https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml

然而,这似乎并没有停止。 再次运行它仍然给我同样的错误。 有什么想法会出错吗?

回答1

您当前正在尝试下载 nltk 数据中的每个项目,因此这可能需要很长时间。 您可以尝试仅下载您需要的停用词:

import nltk
nltk.download('stopwords')

或从命令行(感谢拉斐尔瓦莱罗的回答):

python -m nltk.downloader stopwords

参考:

  • 安装 NLTK 数据 - 命令行安装
回答2
python -m nltk.downloader stopwords
回答3

您可以在控制台中单独执行此操作。
它会给你一个结果。

import nltk
nltk.download('stopwords')

当我遇到这个问题时,我使用了 jupyter 控制台。

回答4

如果您收到 SSL/证书错误,请运行以下命令。

这通过禁用 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()
回答5
import nltk

nltk.set_proxy('http://proxy.example.com:3128', ('USERNAME', 'PASSWORD'))
nltk.download('stopwords')
回答6

使用GPU 运行时,它不会给你任何错误。

您正在使用的相同代码将起作用

import nltk
stopwords = nltk.corpus.stopwords.words('english')
print(stopwords[:10])
回答7
showing info https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml

如果您在 jupyter notebook 中运行此命令,它会打开另一个名为“NLTK Downloader”的窗口。 进入该窗口后,您可以选择要下载的主题,然后单击下载按钮开始下载。

在您关闭 NLTK 下载器窗口之前,Jupyter 中的单元格将继续运行。

回答8

我知道评论已经很晚了,但如果它有帮助:

尽管nltk.download('stopwords')可以完成这项工作,但如果您的组织已阻止它,有时它可能由于代理问题而无法工作。

我发现这个 github 链接非常方便,我可以从中获取单词列表并将其手动集成到我的项目中,作为一种解决方法。

回答9

检查你得到什么错误——

python3 -m nltk.downloader stopwords

错误 :

RuntimeWarning: 'nltk.downloader' found in sys.modules after import of package 'nltk', but prior to execution of 'nltk.downloader'; this may result in unpredictable behaviour


warn(RuntimeWarning(msg))
[nltk_data] Error loading stopwords: <urlopen error [SSL:
[nltk_data]     CERTIFICATE_VERIFY_FAILED] certificate verify failed:
[nltk_data]     unable to get local issuer certificate (_ssl.c:1123)>

使用我的@reshma2k 提供的解决方案

标签

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐