2014-01-17 70 views
3

使用NLTK 2.0.4。安裝於EPD的Python-2.7.3(而不是 Canopy)。在Ubuntu 12.10上。在終端我鍵入:Python nltk下載和download_shell凍結(掛起)punkt嘗試

In [96]: nltk.download_shell() 
NLTK Downloader 
--------------------------------------------------------------------------- 
    d) Download l) List u) Update c) Config h) Help q) Quit 
--------------------------------------------------------------------------- 
Downloader> d 

Download which package (l=list; x=cancel)? 
    Identifier> punkt 
    Downloading package 'punkt' to /home/espears/nltk_data... 

然後它凍結。相關的punkt.zip文件被寫入指定的目錄,但接口永不放棄。

這個例子是用IPython的,但是我用普通的Python 2.7.3解釋器試了一樣,得到了同樣的結果。

當我嘗試使用unzip直接解壓縮文件時,發現錯誤,指出在該文件中找不到正確的中央zip文件代碼,並且無法解壓縮。請看下圖:

[email protected] ~/nltk_data/tokenizers $ unzip punkt.zip 
Archive: punkt.zip 
    End-of-central-directory signature not found. Either this file is not 
    a zipfile, or it constitutes one disk of a multi-part archive. In the 
    latter case the central directory and zipfile comment will be found on 
    the last disk(s) of this archive. 
unzip: cannot find zipfile directory in one of punkt.zip or 
     punkt.zip.zip, and cannot find punkt.zip.ZIP, period. 

這種情況既nltk.download()並以同樣的方式nltk.download_shell()

我可以使用du檢查.zip文件,看看最初它的大小從0 MB增加到大約2.7 MB,所以它實際上是下載一些東西,而且文件不是空的。但它停在2.7 MB(可能與文件的預期全尺寸對應,也可能不對應),然後Python shell下載程序凍結。

+0

可能是這個問題? https://support.enthought.com/entries/25801945-NLTK-Natural-Language-Toolkit-download-function-hangs – BrenBarn

+0

不,我不使用Canopy。這是來自Enthought的較舊版本。我也通過IPython使用它,但是可以確認如果直接從Python終端使用相同的掛起。請注意,即使我使用繞過圖形問題的「download_shell」,我也遇到同樣的問題。 – ely

回答

1

我有同樣的問題,並從以下鏈接手動下載所需的物品:

http://nltk.org/nltk_data/

不期望的解決方案,但會工作,直到這個是固定的。

UPDATE:

實際上,我是能夠運行nltk.download()安裝cmudict。也許這個問題隻影響某些軟件包?

0

我有與nltk 3.0.01b相同的問題。我下載了「book」軟件包,並監視任務管理器的網絡顯示下載,同時檢查目標文件夾的大小(我的Windows 7系統上的AppData \ Roaming \ nltk_data)。網絡流量停止並且文件夾停止增長,大小爲379 MB。但是Python shell被鎖定了。會顯示以下的最後一條消息:

顯示信息http://nltk.github.com/nltk_data/

但是,如果取消了Tk的窗口,顯示了下載項目可用,nltk.download()命令將終止,shell提示符會回來。

0

很可能它沒有卡住。它可能正在下載。即使您擁有良好的互聯網連接,它的下載速度也會更慢。我一直使用while循環檢查文件夾大小,並且它慢慢地不斷增加,最終成功。如果你等了,它會奏效。解壓縮可能失敗,因爲您在下載整個文件之前嘗試解壓縮。