Meu código:
import nltk.data
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
Mensagem de erro:
[ec2-user@ip-172-31-31-31 sentiment]$ python mapper_local_v1.0.py
Traceback (most recent call last):
File "mapper_local_v1.0.py", line 16, in <module>
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
File "/usr/lib/python2.6/site-packages/nltk/data.py", line 774, in load
opened_resource = _open(resource_url)
File "/usr/lib/python2.6/site-packages/nltk/data.py", line 888, in _open
return find(path_, path + ['']).open()
File "/usr/lib/python2.6/site-packages/nltk/data.py", line 618, in find
raise LookupError(resource_not_found)
LookupError:
Resource u'tokenizers/punkt/english.pickle' not found. Please
use the NLTK Downloader to obtain the resource:
>>>nltk.download()
Searched in:
- '/home/ec2-user/nltk_data'
- '/usr/share/nltk_data'
- '/usr/local/share/nltk_data'
- '/usr/lib/nltk_data'
- '/usr/local/lib/nltk_data'
- u''
Estou tentando executar este programa em uma máquina Unix:
De acordo com a mensagem de erro, eu efetuei login no shell python da minha máquina Unix e usei os comandos abaixo:
import nltk
nltk.download()
e então baixei todas as coisas disponíveis usando d-down loader e l-list options, mas ainda assim o problema persiste.
Tentei o meu melhor para encontrar a solução na internet, mas consegui a mesma solução que mencionei nos passos acima.
Respostas:
Para adicionar a resposta de alvas , você pode baixar apenas o
punkt
corpus:Baixar
all
parece um exagero para mim. A menos que você queira.fonte
Se você deseja apenas fazer o download do
punkt
modelo:Se não tiver certeza que os dados / modelo que você precisa, você pode instalar os populares conjuntos de dados, modelos e pichadores de NLTK:
Com o comando acima, não há necessidade de usar a GUI para baixar os conjuntos de dados.
fonte
Eu tenho a solução:
assim que o Downloader NLTK iniciar
d) Baixar l) Lista u) Atualizar c) Config h) Ajuda q) Sair
Downloader> d
Baixar qual pacote (l = lista; x = cancelar)? Identificador> punkt
fonte
No shell, você pode executar:
Se você deseja instalar os populares corpora / modelos NLTK:
Se você deseja instalar todos os corpora / modelos NLTK:
Para listar os recursos que você baixou:
fonte
Abra o prompt do Python e execute as instruções acima.
A função sent_tokenize usa uma instância de PunktSentenceTokenizer do módulo nltk.tokenize.punkt . Esta instância já foi treinada e funciona bem para muitos idiomas europeus. Assim, ele sabe quais pontuação e caracteres marcam o final de uma frase e o início de uma nova frase.
fonte
A mesma coisa aconteceu comigo recentemente, você só precisa baixar o pacote "punkt" e deve funcionar.
Quando você executa "list" (l) após ter "baixado todas as coisas disponíveis", tudo está marcado como a seguinte linha ?:
Se você vir esta linha com a estrela, significa que você a possui e o nltk deve ser capaz de carregá-la.
fonte
Vá para o console Python digitando
em seu terminal. Em seguida, digite os 2 comandos a seguir em seu shell Python para instalar os respectivos pacotes:
Isso resolveu o problema para mim.
fonte
Meu problema foi que eu liguei
nltk.download('all')
o usuário root, mas o processo que acabou usando o nltk era outro usuário que não tinha acesso a / root / nltk_data onde o conteúdo foi baixado.Então, simplesmente copiei recursivamente tudo do local de download para um dos caminhos onde o NLTK estava procurando para encontrá-lo assim:
fonte
Execute o seguinte código:
Depois disso, o downloader do NLTK aparecerá.
fonte
Estava recebendo um erro, apesar de importar o seguinte,
mas para google colab isso resolveu meu problema.
fonte
O nltk.download () simples não resolverá esse problema. Eu tentei o abaixo e funcionou para mim:
na pasta nltk, crie uma pasta tokenizers e copie sua pasta punkt para a pasta tokenizers.
Isso vai funcionar.! a estrutura da pasta precisa ser como mostrado na imagem
fonte
Você precisa reorganizar suas pastas Mova sua
tokenizers
pasta para anltk_data
pasta. Isso não funciona se você tiver umanltk_data
pasta contendo umacorpora
pasta contendo umatokenizers
pastafonte
Para mim, nada do acima funcionou, então eu apenas baixei todos os arquivos manualmente do site http://www.nltk.org/nltk_data/ e também os coloquei manualmente em um arquivo "tokenizers" dentro de "nltk_data " pasta. Não é uma solução bonita, mas ainda é uma solução.
fonte
Depois de adicionar esta linha de código, o problema será corrigido:
fonte
Eu enfrentei o mesmo problema. Depois de baixar tudo, ainda estava lá o erro 'punkt'. Eu pesquisei o pacote na minha máquina com Windows em C: \ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers e posso ver 'punkt.zip' presente lá. Percebi que, de alguma forma, o zip não foi extraído para C: \ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers \ punk. Depois de extrair o zip, ele funcionou como música.
fonte
Certifique-se de estar usando o
Jupyter
Notebook e, em um notebook, faça o seguinte:Em seguida, uma janela pop-up aparecerá (mostrando informações https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml ) A partir da qual você deve baixar tudo.
Em seguida, execute novamente seu código.
fonte
Para mim, foi resolvido usando "nltk:"
http://www.nltk.org/howto/data.html
Falha ao carregar english.pickle com nltk.data.load
fonte