Ubuntu 12.04 LTS의 python-nltk : nltk.download ( 'brown') 결과 HTML 오류 401


9

apt-get을 사용하여 Ubuntu Server 12.04에 python-nltk를 설치했습니다.

그러나 코퍼스를 다운로드하려고하면 다음 오류가 발생합니다.

$ 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

구성 또는 추가 패키지가 누락 되었습니까?


source에서 설치를 시도 할 수 wget https://github.com/nltk/nltk/archive/develop.zip; unzip develop.zip; cd nltk-develop; python setup.py install있습니다. 그러나 github.com/nltk/nltk/issues/747
alvas

이것은 여전히 ​​우분투 13.04에서 문제입니다
Tickon

오랜 시간이 지나고 일부 시스템 업그레이드 후에이 질문을 다시 보았습니다. 문제는 더 이상 우분투 18.04 LTS
jk-Reinstate Monica

답변:


12

DEFAULT_URL에 사용되는 downloader.py우분투 패키지 버전은 아직 사용의 :

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

그러나 현재 데이터 서버는 다음과 같습니다.

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

물론 소스에서 설치하거나 다음과 같이 새 서버를 가리 키도록 이미 설치된 버전을 수정할 수 있습니다.

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

그런 다음 "갈색"모음을 설치할 수 있습니다.

$ 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

소스 코드를 변경하지 않고이 문제를 해결할 수 있습니다. 파이썬으로 커스텀 다운로더를 만듭니다 :

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

그런 다음 GUI 대화 상자를 엽니 다.

>>> dl.download()

다운로드 디렉토리에 대한 쓰기 권한이 있는지 확인하고 필요한 것을 다운로드하십시오.


0
pip install nltk --upgrade

이것은 nltk를 업데이트 한 다음 nltk.download()다시 작동합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.