通常我们在终端是不能用nltk.download(‘punkt’)下载的
在使用nltk这个工具包时,需要的数据通常是不能通过nltk.download(‘xxx’)下载下来的,我们可以从官网http://www.nltk.org/nltk_data/
上下载需要的数据,比如punkt、stopwords等等

那么下载后的punkt放到哪里呢???

我们打开python

import nltk
nltk.word_tokenize("dsd dcascacav  ds")

不出意外的话,他应该是显示如下问题:
在这里插入图片描述
我们看它显示的Searched in:  说明它是在列出的那几个目录中寻找punkt的位置。(注意我这是Ubuntu系统)

那么我们尝试着把punkt.zip放到/home/sun_xh/anaconda3/nltk_data下,注意要解压的。
也就是说现在你的电脑上有目录/home/sun_xh/anaconda3/nltk_data/punkt
(注意具体你的路径名称什么样,取决于你的python路径)
现在我们再尝试

import nltk
nltk.word_tokenize("dsd dcascacav  ds")

结果呢?

还TMD的是
在这里插入图片描述
,这尼玛什么情况。而我们观察黄色字体发现Attempted to load tokenizers/punkt/PY3/english.pickle

punkt/PY3/english.pickle这个我们是知道的,它的完整路径是/home/sun_xh/anaconda3/nltk_data/punkt/PY3/english.pickle

那么tokenizers是什么呢,于是我们尝试在nltk_data下创建tokenizers文件夹,把punkt放到tokenizers文件夹中。
所以此时的punkt的路径是:
/home/sun_xh/anaconda3/nltk_data/tokenizers/punkt

再尝试一遍

import nltk
nltk.word_tokenize("dsd dcascacav  ds")

在这里插入图片描述
OK了!

在使用nltk这个工具包时,需要的数据通常是不能通过nltk.download(‘xxx’)下载下来的,我们可以从官网http://www.nltk.org/nltk_data/
上下载需要的数据,比如punkt、stopwords等等,然后按照上述流程将下载的数据放到对应的位置,即可使用nltk了。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐