python-nltk unter Ubuntu 12.04 LTS: nltk.download ('brown') führt zu HTML-Fehler 401


9

Ich habe python-nltk unter Ubuntu Server 12.04 mit apt-get installiert.

Wenn ich jedoch versuche, einen Korpus herunterzuladen, wird folgende Fehlermeldung angezeigt:

$ python
Python 2.7.3 (default, Feb 27 2014, 19:58:35)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import nltk
>>> nltk.download('brown')
[nltk_data] Error loading brown: HTTP Error 401: Authorization
[nltk_data]     Required
False

Fehlt mir eine Konfiguration oder ein zusätzliches Paket?


Sie können versuchen, von der Quelle zu installieren wget https://github.com/nltk/nltk/archive/develop.zip; unzip develop.zip; cd nltk-develop; python setup.py install. Aber ein Problem wurde in github.com/nltk/nltk/issues/747
alvas

Dies ist immer noch ein Problem mit Ubuntu 13.04
Tickon

Wiederholung dieser Frage nach langer Zeit und einigen System-Upgrades: Das Problem ist nicht mehr mit Ubuntu 18.04 LTS
jk - Reinstate Monica

Antworten:


12

Die DEFAULT_URLin downloader.pyder Ubuntu-Paketversion verwendete Version verwendet weiterhin:

DEFAULT_URL = 'http://nltk.googlecode.com/svn/trunk/nltk_data/index.xml'

Der aktuelle Datenserver ist jedoch:

DEFAULT_URL = "http://nltk.github.com/nltk_data/"

Sie können natürlich von der Quelle installieren oder ... Ihre bereits installierte Version so ändern, dass sie auf den neuen Server verweist:

 sudo perl -pi -e 's#DEFAULT_URL = .*#DEFAULT_URL = "http://nltk.github.com/nltk_data/"#' /usr/lib/python2.7/dist-packages/nltk/downloader.py

Sie können dann den "braunen" Korpus installieren:

$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import nltk
>>> nltk.download('brown')
[nltk_data] Downloading package 'brown' to /home/sylvain/nltk_data...
[nltk_data]   Unzipping corpora/brown.zip.
True
>>> from nltk.corpus import brown
>>> brown.words()
['The', 'Fulton', 'County', 'Grand', 'Jury', 'said', ...]
>>> 

12

Es ist möglich, dies zu beheben, ohne den Quellcode zu ändern. Erstellen Sie einen benutzerdefinierten Downloader in Python:

>>> dl = nltk.downloader.Downloader("http://nltk.github.com/nltk_data/")

Dann öffnen Sie einen GUI-Dialog:

>>> dl.download()

Überprüfen Sie, ob Sie Schreibzugriff auf das Download-Verzeichnis haben, und laden Sie herunter, was Sie benötigen.


0
pip install nltk --upgrade

Dieser aktualisiert das nltk und nltk.download()funktioniert dann wieder.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.