LookupError: from nltk.book import*
LookupError: from nltk.book import*
在 iPython 控制台中,我输入了 from nltk.book import
并且出现了几个 LookupErrors。下面显示了我得到的代码。
*** Introductory Examples for the NLTK Book ***
Loading text1, ..., text9 and sent1, ..., sent9
Type the name of the text or sentence to view it.
Type: 'texts()' or 'sents()' to list the materials.
---------------------------------------------------------------------------
LookupError Traceback (most recent call last)
<ipython-input-3-8446809acbd4> in <module>()
----> 1 from nltk.book import*
C:\Users\dell\Anaconda\lib\site-packages\nltk-3.0.3-py2.7.egg\nltk\book.py in <module>()
20 print("Type: 'texts()' or 'sents()' to list the materials.")
21
---> 22 text1 = Text(gutenberg.words('melville-moby_dick.txt'))
23 print("text1:", text1.name)
24
C:\Users\dell\Anaconda\lib\site-packages\nltk-3.0.3-py2.7.egg\nltk\corpus\util.pyc in __getattr__(self, attr)
97 raise AttributeError("LazyCorpusLoader object has no attribute '__bases__'")
98
---> 99 self.__load()
100 # This looks circular, but its not, since __load() changes our
101 # __class__ to something new:
C:\Users\dell\Anaconda\lib\site-packages\nltk-3.0.3-py2.7.egg\nltk\corpus\util.pyc in __load(self)
62 except LookupError as e:
63 try: root = nltk.data.find('corpora/%s' % zip_name)
---> 64 except LookupError: raise e
65
66 # Load the corpus.
LookupError:
**********************************************************************
Resource u'corpora/gutenberg' not found. Please use the NLTK
Downloader to obtain the resource: >>> nltk.download()
Searched in:
- 'C:\Users\dell/nltk_data'
- 'C:\nltk_data'
- 'D:\nltk_data'
- 'E:\nltk_data'
- 'C:\Users\dell\Anaconda\nltk_data'
- 'C:\Users\dell\Anaconda\lib\nltk_data'
- 'C:\Users\dell\AppData\Roaming\nltk_data'
**********************************************************************
In [4]:
我能知道为什么会出现这些错误吗?
您在 nltk.book
中缺少 Gutenberg
语料库,因此出现错误。
该错误是自我描述的。
您需要使用nltk.download()
下载语料库。
下载语料库后,重新运行您的命令并检查错误是否再次出现。如果是这样,那将是另一个语料库。也下载那个语料库。
from nltk.book import *
不是首选方法,建议只导入您将在代码中使用的语料库。
您可以改用 from nltk.corpus import gutenberg
。
参见 link
上的参考
正如 NLTK 书中所说,准备使用本书的方法是打开 nltk.download()
弹出窗口,转到选项卡 "Collections",然后下载 "Book" 集合。做到这一点,您就可以毫无意外地阅读本书的其余部分。
顺便说一下,您可以通过执行 nltk.download("book")
从 python 控制台执行相同的操作,而不会出现弹出窗口
也许您应该在以下目录中下载 nltk_data 包:
似乎它只在特定位置搜索数据(如错误描述中所述)。 尝试将 nltk 的内容复制到这些目录之一(或创建一个),例如 D:\nltk_data
这为我解决了这个问题(因为即使 Guttenber 已经下载,错误也会继续出现,因为它没有在那个地方找到它)
您收到的错误摘录:(这些是您可以选择放置 nltk 内容的目录,以便可以找到它)
- 'C:\Users\dell/nltk_data'
- 'C:\nltk_data'
- 'D:\nltk_data'
- 'E:\nltk_data'
- 'C:\Users\dell\Anaconda\nltk_data'
- 'C:\Users\dell\Anaconda\lib\nltk_data'
- 'C:\Users\dell\AppData\Roaming\nltk_data'
在 iPython 控制台中,我输入了 from nltk.book import
并且出现了几个 LookupErrors。下面显示了我得到的代码。
*** Introductory Examples for the NLTK Book ***
Loading text1, ..., text9 and sent1, ..., sent9
Type the name of the text or sentence to view it.
Type: 'texts()' or 'sents()' to list the materials.
---------------------------------------------------------------------------
LookupError Traceback (most recent call last)
<ipython-input-3-8446809acbd4> in <module>()
----> 1 from nltk.book import*
C:\Users\dell\Anaconda\lib\site-packages\nltk-3.0.3-py2.7.egg\nltk\book.py in <module>()
20 print("Type: 'texts()' or 'sents()' to list the materials.")
21
---> 22 text1 = Text(gutenberg.words('melville-moby_dick.txt'))
23 print("text1:", text1.name)
24
C:\Users\dell\Anaconda\lib\site-packages\nltk-3.0.3-py2.7.egg\nltk\corpus\util.pyc in __getattr__(self, attr)
97 raise AttributeError("LazyCorpusLoader object has no attribute '__bases__'")
98
---> 99 self.__load()
100 # This looks circular, but its not, since __load() changes our
101 # __class__ to something new:
C:\Users\dell\Anaconda\lib\site-packages\nltk-3.0.3-py2.7.egg\nltk\corpus\util.pyc in __load(self)
62 except LookupError as e:
63 try: root = nltk.data.find('corpora/%s' % zip_name)
---> 64 except LookupError: raise e
65
66 # Load the corpus.
LookupError:
**********************************************************************
Resource u'corpora/gutenberg' not found. Please use the NLTK
Downloader to obtain the resource: >>> nltk.download()
Searched in:
- 'C:\Users\dell/nltk_data'
- 'C:\nltk_data'
- 'D:\nltk_data'
- 'E:\nltk_data'
- 'C:\Users\dell\Anaconda\nltk_data'
- 'C:\Users\dell\Anaconda\lib\nltk_data'
- 'C:\Users\dell\AppData\Roaming\nltk_data'
**********************************************************************
In [4]:
我能知道为什么会出现这些错误吗?
您在 nltk.book
中缺少 Gutenberg
语料库,因此出现错误。
该错误是自我描述的。
您需要使用nltk.download()
下载语料库。
下载语料库后,重新运行您的命令并检查错误是否再次出现。如果是这样,那将是另一个语料库。也下载那个语料库。
from nltk.book import *
不是首选方法,建议只导入您将在代码中使用的语料库。
您可以改用 from nltk.corpus import gutenberg
。
参见 link
上的参考正如 NLTK 书中所说,准备使用本书的方法是打开 nltk.download()
弹出窗口,转到选项卡 "Collections",然后下载 "Book" 集合。做到这一点,您就可以毫无意外地阅读本书的其余部分。
顺便说一下,您可以通过执行 nltk.download("book")
也许您应该在以下目录中下载 nltk_data 包:
似乎它只在特定位置搜索数据(如错误描述中所述)。 尝试将 nltk 的内容复制到这些目录之一(或创建一个),例如 D:\nltk_data 这为我解决了这个问题(因为即使 Guttenber 已经下载,错误也会继续出现,因为它没有在那个地方找到它)
您收到的错误摘录:(这些是您可以选择放置 nltk 内容的目录,以便可以找到它)
- 'C:\Users\dell/nltk_data'
- 'C:\nltk_data'
- 'D:\nltk_data'
- 'E:\nltk_data'
- 'C:\Users\dell\Anaconda\nltk_data'
- 'C:\Users\dell\Anaconda\lib\nltk_data'
- 'C:\Users\dell\AppData\Roaming\nltk_data'