Невозможно импортировать nltk, и решение, данное в выводе, потребовало от меня импортировать nltk:
>>>import nltk
Traceback (most recent call last):
File "D:\project\Lib\site-packages\nltk\corpus\util.py", line 84, in __load
root = nltk.data.find(f"{self.subdir}/{zip_name}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Lib\site-packages\nltk\data.py", line 579, in find
raise LookupError(resource_not_found
LookupError:
**********************************************************************
Resource wordnet not found.
Please use the NLTK Downloader to obtain the resource:
>>> import nltk
>>> nltk.download('wordnet')
For more information see: https://www.nltk.org/data.html
Attempted to load corpora/wordnet.zip/wordnet/
Searched in:
- 'C:\\Users\\me/nltk_data'
- 'D:\\project\\nltk_data'
- 'D:\\project\\share\\nltk_data'
- 'D:\\project\\lib\\nltk_data'
- 'C:\\Users\\me\\AppData\\Roaming\\nltk_data'
- 'C:\\nltk_data'
- 'D:\\nltk_data'
- 'E:\\nltk_data'
**********************************************************************
По сути, я не могу импортировать nltk, потому что wordnet отсутствует, но чтобы загрузить wordnet, мне нужно импортировать nltk, чего я не могу, потому что wordnet отсутствует.
Примечательно, что это исключение выдается дважды, но с другой трассировкой -
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "D:\project\Lib\site-packages\nltk\__init__.py", line 156, in <module>
from nltk.stem import *
File "D:\project\Lib\site-packages\nltk\stem\__init__.py", line 34, in <module>
from nltk.stem.wordnet import WordNetLemmatizer
File "D:\project\Lib\site-packages\nltk\stem\wordnet.py", line 13, in <module>
class WordNetLemmatizer:
File "D:project\Lib\site-packages\nltk\stem\wordnet.py", line 48, in WordNetLemmatizer
morphy = wn.morphy
^^^^^^^^^
File "D:\project\Lib\site-packages\nltk\corpus\util.py", line 120, in __getattr__
self.__load()
File "D:\project\Lib\site-packages\nltk\corpus\util.py", line 86, in __load
raise e
File "D:\project\Lib\site-packages\nltk\corpus\util.py", line 81, in __load
root = nltk.data.find(f"{self.subdir}/{self.__name}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\project\Lib\site-packages\nltk\data.py", line 579, in find
raise LookupError(resource_not_found)
LookupError:
**********************************************************************
Resource wordnet not found.
Please use the NLTK Downloader to obtain the resource:
>>> import nltk
>>> nltk.download('wordnet')
For more information see: https://www.nltk.org/data.html
Attempted to load corpora/wordnet
Searched in:
- 'C:\\Users\\me/nltk_data'
- 'D:\\project\\nltk_data'
- 'D:\\project\\share\\nltk_data'
- 'D:\\project\\lib\\nltk_data'
- 'C:\\Users\\me\\AppData\\Roaming\\nltk_data'
- 'C:\\nltk_data'
- 'D:\\nltk_data'
- 'E:\\nltk_data'
**********************************************************************
Какое решение предлагается в этом случае?
Эта ошибка появилась в nltk 3.9.0 (выпущенной 18 августа 2024 г.) и является известной проблемой . Это было исправлено в версии 3.9.1:
python3 -m pip install nltk~=3.9.1
Последней полной версией до 3.9.x была nltk 3.8.1. Однако имейте в виду, что эта версия уязвима для удаленного выполнения кода.
python3 -m pip install nltk==3.8.1