Чтобы загрузить конкретный набор данных / модели, используйте функцию nltk.download()
, например. если вы хотите загрузить токенизатор предложения punkt
, используйте:
$ python3
>>> import nltk
>>> nltk.download('punkt')
Если вы не знаете, какие данные / модель вам нужны, вы можете начать с основного списка данных + моделей с:
>>> import nltk
>>> nltk.download('popular')
Он загрузит список «популярных» ресурсов, в том числе:
В случае, если кто-либо избегает ошибок при загрузке больших наборов данных из nltk
, из https://stackoverflow.com/a/38135306/610569
$ rm /Users//nltk_data/corpora/panlex_lite.zip
$ rm -r /Users//nltk_data/corpora/panlex_lite
$ python
>>> import nltk
>>> dler = nltk.downloader.Downloader()
>>> dler._update_index()
>>> dler._status_cache['panlex_lite'] = 'installed' # Trick the index to treat panlex_lite as it's already installed.
>>> dler.download('popular')
Из v3.2.5 NLTK имеет более информативное сообщение об ошибке , когда ресурс nltk_data
не найден, например:
>>> from nltk import word_tokenize
>>> word_tokenize('x')
Traceback (most recent call last):
File "", line 1, in
File "/Users/l/alvas/git/nltk/nltk/tokenize/__init__.py", line 128, in word_tokenize
sentences = [text] if preserve_line else sent_tokenize(text, language)
File "/Users//alvas/git/nltk/nltk/tokenize/__init__.py", line 94, in sent_tokenize
tokenizer = load('tokenizers/punkt/{0}.pickle'.format(language))
File "/Users/alvas/git/nltk/nltk/data.py", line 820, in load
opened_resource = _open(resource_url)
File "/Users/alvas/git/nltk/nltk/data.py", line 938, in _open
return find(path_, path + ['']).open()
File "/Users/alvas/git/nltk/nltk/data.py", line 659, in find
raise LookupError(resource_not_found)
LookupError:
**********************************************************************
Resource punkt not found.
Please use the NLTK Downloader to obtain the resource:
>>> import nltk
>>> nltk.download('punkt')
Searched in:
- '/Users/alvas/nltk_data'
- '/usr/share/nltk_data'
- '/usr/local/share/nltk_data'
- '/usr/lib/nltk_data'
- '/usr/local/lib/nltk_data'
- ''
**********************************************************************
nltk_data
(автоматически), см. https://stackoverflow.com/a/36383314/610569 nltk_data
в другую путь, см. https://stackoverflow.com/a/48634212/610569 nltk_data
(т. е. установить другой путь для NLTK для поиска nltk_data
) , см. https://stackoverflow.com/a/22987374/610569