【Python】nltk库使用报错之punkt安装
問題描述
報錯信息如下:
Traceback (most recent call last):
??File “D:/PyCharm/text_processing/文本分詞.py”, line 8, in <module>
????print(word_tokenize(string))
??File “D:\PyCharm\text_processing\venv\lib\site-packages\nltk\tokenize__init__.py”, line 129, in word_tokenize
????sentences = [text] if preserve_line else sent_tokenize(text, language)
??File “D:\PyCharm\text_processing\venv\lib\site-packages\nltk\tokenize__init__.py”, line 106, in sent_tokenize
????tokenizer = load(“tokenizers/punkt/{0}.pickle”.format(language))
??File “D:\PyCharm\text_processing\venv\lib\site-packages\nltk\data.py”, line 752, in load
????opened_resource = _open(resource_url)
??File “D:\PyCharm\text_processing\venv\lib\site-packages\nltk\data.py”, line 877, in _open
????return find(path_, path + [""]).open()
??File “D:\PyCharm\text_processing\venv\lib\site-packages\nltk\data.py”, line 585, 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’)
??For more information see: https://www.nltk.org/data.html
??Attempted to load tokenizers/punkt/english.pickle
??Searched in:
???? - ‘C:\Users\xxx/nltk_data’
???? - ‘D:\PyCharm\text_processing\venv\nltk_data’
???? - ‘D:\PyCharm\text_processing\venv\share\nltk_data’
???? - ‘D:\PyCharm\text_processing\venv\lib\nltk_data’
???? - ‘C:\Users\xxx\AppData\Roaming\nltk_data’
???? - ‘C:\nltk_data’
???? - ‘D:\nltk_data’
???? - ‘E:\nltk_data’
???? - ‘’
**********************************************************************
解決方法
先是看了這篇文章,知道可能是瀏覽器權限的問題,然后碰到了這篇文章,覺得還蠻有道理的。
但我比較傾向于下載punkt包,所以去這里下載了punkt包。
下載的時候可能打不開網頁,因為不可說的原因,我是找了別人幫忙才下載成功的,讀者自己想辦法吧 (后續可能我會提交一份CSDN資源吧) 。
選畫圈的位置下載即可:
下載完畢的是一個zip壓縮包,處理方式是解壓,在可能被搜索到的路徑下安置這個文件夾。
我選擇的是工程里面的venv文件夾。
不論選擇哪個路徑,注意的是:在安裝之前,必須新建兩層文件夾:nltk_data、tokenizers:
看看PyCharm的venv結構:
然后就能跑代碼了。
總結
以上是生活随笔為你收集整理的【Python】nltk库使用报错之punkt安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Java】浅析SimpleDateFo
- 下一篇: 【C语言】三种方式不使用分号输出Hell