Mein Code:
import nltk.data
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
Fehlermeldung:
[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''
Ich versuche, dieses Programm auf einem Unix-Computer auszuführen:
Gemäß der Fehlermeldung habe ich mich von meinem Unix-Computer aus bei der Python-Shell angemeldet und dann die folgenden Befehle verwendet:
import nltk
nltk.download()
und dann habe ich alle verfügbaren Dinge mit D-Downloader- und L-List-Optionen heruntergeladen, aber das Problem bleibt bestehen.
Ich habe mein Bestes versucht, um die Lösung im Internet zu finden, aber ich habe die gleiche Lösung erhalten, die ich in den obigen Schritten erwähnt habe.
Antworten:
Um die Antwort von alvas zu ergänzen , können Sie nur den
punkt
Korpus herunterladen :Das Herunterladen
all
klingt für mich nach Overkill. Es sei denn, das ist was du willst.quelle
Wenn Sie nur das
punkt
Modell herunterladen möchten:Wenn Sie sich nicht sicher sind, welche Daten / Modelle Sie benötigen, können Sie die gängigen Datensätze, Modelle und Tagger von NLTK installieren :
Mit dem obigen Befehl muss die GUI nicht zum Herunterladen der Datensätze verwendet werden.
quelle
Ich habe die Lösung:
Sobald der NLTK Downloader startet
d) Download l) Liste u) Update c) Konfiguration h) Hilfe q) Beenden
Downloader> d
Welches Paket herunterladen (l = Liste; x = Abbrechen)? Kennung> Punkt
quelle
Über die Shell können Sie Folgendes ausführen:
Wenn Sie die beliebten NLTK-Korpora / -Modelle installieren möchten:
Wenn Sie alle NLTK-Korpora / -Modelle installieren möchten :
So listen Sie die heruntergeladenen Ressourcen auf:
quelle
Öffnen Sie die Python-Eingabeaufforderung und führen Sie die obigen Anweisungen aus.
Die Funktion sent_tokenize verwendet eine Instanz von PunktSentenceTokenizer aus dem Modul nltk.tokenize.punkt . Diese Instanz wurde bereits geschult und funktioniert gut für viele europäische Sprachen. Es weiß also, welche Satzzeichen und Zeichen das Ende eines Satzes und den Anfang eines neuen Satzes markieren.
quelle
Das gleiche ist mir kürzlich passiert, Sie müssen nur das "punkt" -Paket herunterladen und es sollte funktionieren.
Wenn Sie "Liste" (l) ausführen, nachdem Sie "alle verfügbaren Dinge heruntergeladen" haben, wird alles wie in der folgenden Zeile markiert?:
Wenn Sie diese Linie mit dem Stern sehen, bedeutet dies, dass Sie sie haben und nltk sie laden kann.
quelle
Gehen Sie zur Python-Konsole, indem Sie Folgendes eingeben
in Ihrem Terminal. Geben Sie dann die folgenden 2 Befehle in Ihre Python-Shell ein, um die entsprechenden Pakete zu installieren:
Dies löste das Problem für mich.
quelle
Mein Problem war, dass ich angerufen habe
nltk.download('all')
als Root-Benutzer , aber der Prozess, der schließlich nltk verwendete, war ein anderer Benutzer, der keinen Zugriff auf / root / nltk_data hatte, wo der Inhalt heruntergeladen wurde.Also habe ich einfach alles rekursiv vom Download-Speicherort auf einen der Pfade kopiert, auf denen NLTK danach gesucht hat:
quelle
Führen Sie den folgenden Code aus:
Danach wird der NLTK-Downloader angezeigt.
quelle
Ich habe eine Fehlermeldung erhalten, obwohl ich Folgendes importiert habe:
Aber für Google Colab löste dies mein Problem.
quelle
Simple nltk.download () löst dieses Problem nicht. Ich habe Folgendes versucht und es hat bei mir funktioniert:
Erstellen Sie im Ordner nltk einen Tokenizer-Ordner und kopieren Sie Ihren Punkt-Ordner in den Tokenizer-Ordner.
Das wird funktionieren.! Die Ordnerstruktur muss der Abbildung entsprechen
quelle
Sie müssen Ihre Ordner neu anordnen. Verschieben Sie Ihren
tokenizers
Ordner in einennltk_data
Ordner. Das funktioniert nicht , wenn Sienltk_data
Ordner mitcorpora
Ordnern mittokenizers
Ordnernquelle
Für mich hat nichts davon funktioniert, also habe ich einfach alle Dateien von Hand von der Website http://www.nltk.org/nltk_data/ heruntergeladen und sie auch von Hand in eine Datei "Tokenizer" innerhalb von "nltk_data" eingefügt " Ordner. Keine schöne Lösung, aber dennoch eine Lösung.
quelle
Nach dem Hinzufügen dieser Codezeile wird das Problem behoben:
quelle
Ich stand vor dem gleichen Problem. Nach dem Herunterladen war immer noch ein Punktfehler vorhanden. Ich habe das Paket auf meinem Windows-Computer unter C: \ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers durchsucht und sehe dort "punkt.zip". Ich habe festgestellt, dass die Zip-Datei irgendwie nicht in C: \ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers \ punk extrahiert wurde. Nachdem ich den Reißverschluss herausgezogen hatte, funktionierte es wie Musik.
quelle
Stellen Sie einfach sicher, dass Sie
Jupyter
Notebook verwenden, und gehen Sie in einem Notebook wie folgt vor:Dann erscheint ein Popup-Fenster (mit Informationen https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml ). Von diesem müssen Sie alles herunterladen.
Führen Sie dann Ihren Code erneut aus.
quelle
Für mich wurde es mit "nltk:" gelöst.
http://www.nltk.org/howto/data.html
Fehler beim Laden von english.pickle mit nltk.data.load
quelle