webentwicklung-frage-antwort-db.com.de

Wie lade ich NLTK-Daten herunter?

Aktualisierte Antwort: NLTK funktioniert gut für 2.7. Ich hatte 3.2. Ich habe 3.2 deinstalliert und 2.7 installiert. Jetzt gehts!!

Ich habe NLTK installiert und versucht, NLTK-Daten herunterzuladen. Was ich tat, war, der Anleitung auf dieser Website zu folgen: http://www.nltk.org/data.html

Ich habe NLTK heruntergeladen, installiert und dann versucht, den folgenden Code auszuführen:

>>> import nltk
>>> nltk.download()

Es gab mir die Fehlermeldung wie folgt:

Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    nltk.download()
AttributeError: 'module' object has no attribute 'download'
 Directory of C:\Python32\Lib\site-packages

Versuchte sowohl nltk.download() als auch nltk.downloader(), beide gaben mir Fehlermeldungen.

Dann habe ich help(nltk) benutzt, um das Paket herauszuziehen, es zeigt die folgenden Informationen:

NAME
    nltk

PACKAGE CONTENTS
    align
    app (package)
    book
    ccg (package)
    chat (package)
    chunk (package)
    classify (package)
    cluster (package)
    collocations
    corpus (package)
    data
    decorators
    downloader
    draw (package)
    examples (package)
    featstruct
    grammar
    help
    inference (package)
    internals
    lazyimport
    metrics (package)
    misc (package)
    model (package)
    parse (package)
    probability
    sem (package)
    sourcedstring
    stem (package)
    tag (package)
    test (package)
    text
    tokenize (package)
    toolbox
    tree
    treetransforms
    util
    yamltags

FILE
    c:\python32\lib\site-packages\nltk

Ich sehe dort Downloader, nicht sicher, warum es nicht funktioniert. Python 3.2.2, System Windows Vista.

38
Q-ximi

TL; DR

Um einen bestimmten Datensatz/bestimmte Modelle herunterzuladen, verwenden Sie die Funktion nltk.download(), z. Wenn Sie den punkt-Satz-Tokenizer herunterladen möchten, verwenden Sie:

$ python3
>>> import nltk
>>> nltk.download('punkt')

Wenn Sie sich nicht sicher sind, welche Daten/Modelle Sie benötigen, können Sie mit der grundlegenden Liste der Daten + Modelle beginnen:

>>> import nltk
>>> nltk.download('popular')

Es wird eine Liste "beliebter" Ressourcen heruntergeladen. Dazu gehören:

<collection id="popular" name="Popular packages">
      <item ref="cmudict" />
      <item ref="gazetteers" />
      <item ref="genesis" />
      <item ref="gutenberg" />
      <item ref="inaugural" />
      <item ref="movie_reviews" />
      <item ref="names" />
      <item ref="shakespeare" />
      <item ref="stopwords" />
      <item ref="treebank" />
      <item ref="Twitter_samples" />
      <item ref="omw" />
      <item ref="wordnet" />
      <item ref="wordnet_ic" />
      <item ref="words" />
      <item ref="maxent_ne_chunker" />
      <item ref="punkt" />
      <item ref="Snowball_data" />
      <item ref="averaged_perceptron_tagger" />
    </collection>

BEARBEITET

Falls jemand Fehler beim Herunterladen größerer Datensätze von nltk, von https://stackoverflow.com/a/38135306/610569 - verhindert,

$ rm /Users/<your_username>/nltk_data/corpora/panlex_lite.Zip
$ rm -r /Users/<your_username>/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')

Aktualisierte

Ab v3.2.5 hat NLTK eine informativere Fehlermeldung wenn nltk_data-Ressource nicht gefunden wird, z.

>>> from nltk import Word_tokenize
>>> Word_tokenize('x')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  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'
    - ''
**********************************************************************

Verbunden

64
alvas

Versuchen

nltk.download('all')

dadurch werden alle Daten heruntergeladen und es ist nicht erforderlich, sie einzeln herunterzuladen.

11
B K

Benennen Sie Ihre Datei nicht nltk.py. Ich habe den gleichen Code und den Namen nltk verwendet und die gleiche Fehlermeldung wie Sie erhalten.

9
Touya D. Serdan

Pip installieren: In Terminal ausführen: Sudo easy_install pip

Installieren Sie Numpy (optional): run: Sudo pip install -U numpy

NLTK installieren: run: Sudo pip install -U nltk

Testinstallation: run: python 

geben Sie dann Folgendes ein: import nltk

Laden Sie den Korpus herunter 

ausführen: python -m nltk.downloader all

7
Nursnaaz

Das hat für mich funktioniert:

nltk.set_proxy('http://user:[email protected]:8080')
nltk.download()
3
M. Mashaye

Es ist sehr einfach....

  1. Öffnen Sie pyScripter oder einen beliebigen Editor
  2. Erstellen Sie eine Python-Datei, zB: install.py
  3. schreibe den Code darunter.
import nltk
nltk.download()
  1. Ein Popup-Fenster erscheint und klicken Sie auf Download.

The download window]

3
Arun Das

Wenn Sie eine wirklich alte Version von nltk verwenden, steht tatsächlich kein Download-Modul zur Verfügung ( reference )

Versuche dies:

import nltk
print(nltk.__version__)

Nach dem Verweis sollte alles nach 0.9.5 in Ordnung sein

3
Miquel

Bitte versuche

import nltk

nltk.download()

Nachdem Sie das ausgeführt haben, erhalten Sie so etwas

NLTK Downloader
---------------------------------------------------------------------------
   d) Download   l) List    u) Update   c) Config   h) Help   q) Quit
---------------------------------------------------------------------------

Dann Press d

Wie folgt tun:

Downloader> d all

Sie erhalten die folgende Meldung, wenn Sie fertig sind, und dann Press q.__

3
bala

sie können keine gespeicherte Python-Datei mit dem Namen nltk.py haben, da der Interpreter von dieser und nicht von der eigentlichen Datei liest. 

Ändern Sie den Namen Ihrer Datei, aus der die Python-Shell liest, und versuchen Sie, was Sie ursprünglich getan haben: 

import nltk und dann nltk.download()

3
user3682157

Ich hatte das ähnliche Problem. Prüfen Sie wahrscheinlich, ob Sie Proxy verwenden. 

Wenn ja, richten Sie den Proxy vor dem Download ein:

nltk.set_proxy('http://proxy.example.com:3128', ('USERNAME', 'PASSWORD'))
2
victor_gu

sie sollten Python während der Installation von Python zu Ihrem PATH hinzufügen ... nach der Installation .. Öffnen Sie cmd Eingabeaufforderung geben Sie den Befehl -pip install nltk.__ ein. Gehen Sie dann zu IDLE und öffnen Sie eine neue Datei. Speichern Sie sie als Datei.py. Dann öffnen Sie file.py Geben Sie Folgendes ein: import nltk

nltk.download()
2
ADITYA AISHWARY

wenn Sie bereits einen Dateinamen nltk.py gespeichert und erneut in my_nltk_script.py umbenannt haben. überprüfe ob du noch die datei nltk.py hast. Wenn ja, löschen Sie sie und führen Sie die Datei my_nltk.scripts.py aus. Es sollte funktionieren!

0
Manasa

Laden Sie die ZIP-Dateien von http://www.nltk.org/nltk_data/ - herunter, und entpacken Sie sie, speichern Sie sie in Ihrem Python-Ordner, beispielsweise C:\ProgramData\Anaconda3\nltk_data

0
Jenny

Ich denke, Sie müssen die Datei als nltk.py benannt haben (oder der Ordner besteht aus einer Datei mit diesem Namen). Ändern Sie sie also in einen anderen Namen und versuchen Sie es auszuführen.

0
GOKUL JAGANNATH