2016-06-30 7 views
3

私はNLPを使って自分のNLPをPythonで学習しようとしています。NLTK panlex_lite私にエラーを与える

import nltk 
nltk.download('all', halt_on_error = False) 

、それは私に次のエラー得られます:これを修正するためにとにかく

[nltk_data] | Downloading package panlex_lite to 
[nltk_data] |  /Users/Harshil/nltk_data... 
[nltk_data] | Unzipping corpora/panlex_lite.zip. 
Traceback (most recent call last): 
    File "<pyshell#1>", line 1, in <module> 
    nltk.download('all', halt_on_error = False) 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 664, in download 
for msg in self.incr_download(info_or_id, download_dir, force): 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 543, in incr_download 
for msg in self.incr_download(info.children, download_dir, force): 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 529, in incr_download 
for msg in self._download_list(info_or_id, download_dir, force): 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 572, in _download_list 
for msg in self.incr_download(item, download_dir, force): 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 549, in incr_download 
for msg in self._download_package(info, download_dir, force): 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 638, in _download_package 
for msg in _unzip_iter(filepath, zipdir, verbose=False): 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/nltk/downloader.py", line 2039, in _unzip_iter 
outfile.write(contents) 
OSError: [Errno 22] Invalid argument 

を「panlex_lite」と呼ばれる

特定のパッケージには、私は次のように使用してみましたので、私にエラーを与え続けて?私は "halt_on_error = False"メソッドを使ってみましたが、それでもエラーが出ます。

ありがとうございました。

答えて

8

ここで "汚い" ハックです:また、earthyを試してみてください

$ rm /Users/Harshil/nltk_data/corpora/panlex_lite.zip 
$ rm -r /Users/Harshil/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('all') 

pip install earthy 

TL; DR

import earthy 
path_to_nltk_data = '/home/yourusername/nltk_data/' 
earthy.download('all', path_to_nltk_data) # Excludes the third party (non-NLTK) packages. 

をダウンロードするには独占:

import earthy 
earthy.download('panlex_lite', path_to_nltk_data) 

ネイティブnltk_data githubの上でホストされていないすべてのサードパーティのデータセットをダウンロードするには:

import earthy 
earthy.download('third_party', path_to_nltk_data') 
関連する問題