问题:找不到资源u’tokenizers / punkt / english.pickle’
我的代码:
import nltk.data
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
错误信息:
[ec2-user@ip-172-31-31-31 sentiment]$ python mapper_local_v1.0.py
Traceback (most recent call last):
File "mapper_local_v1.0.py", line 16, in <module>
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
File "/usr/lib/python2.6/site-packages/nltk/data.py", line 774, in load
opened_resource = _open(resource_url)
File "/usr/lib/python2.6/site-packages/nltk/data.py", line 888, in _open
return find(path_, path + ['']).open()
File "/usr/lib/python2.6/site-packages/nltk/data.py", line 618, in find
raise LookupError(resource_not_found)
LookupError:
Resource u'tokenizers/punkt/english.pickle' not found. Please
use the NLTK Downloader to obtain the resource:
>>>nltk.download()
Searched in:
- '/home/ec2-user/nltk_data'
- '/usr/share/nltk_data'
- '/usr/local/share/nltk_data'
- '/usr/lib/nltk_data'
- '/usr/local/lib/nltk_data'
- u''
我正在尝试在Unix机器上运行此程序:
根据错误消息,我从unix机器登录python shell,然后使用以下命令:
import nltk
nltk.download()
然后我使用d-down加载程序和l-list选项下载了所有可用的内容,但问题仍然存在。
我尽力在Internet中找到解决方案,但得到的解决方案与上述步骤中提到的解决方案相同。
回答 0
回答 1
如果您只想下载punkt
模型:
import nltk
nltk.download('punkt')
如果不确定所需的数据/模型,可以从NLTK 安装流行的数据集,模型和标记器:
import nltk
nltk.download('popular')
使用上面的命令,无需使用GUI下载数据集。
回答 2
我得到了解决方案:
import nltk
nltk.download()
NLTK下载器启动后
d)下载l)列表u)更新c)配置h)帮助q)退出
下载器> d
下载哪个软件包(l = list; x = cancel)?标识符> punkt
回答 3
您可以从外壳执行:
sudo python -m nltk.downloader punkt
如果要安装流行的NLTK语料库/模型:
sudo python -m nltk.downloader popular
如果要安装所有 NLTK语料库/模型:
sudo python -m nltk.downloader all
列出您已下载的资源:
python -c 'import os; import nltk; print os.listdir(nltk.data.find("corpora"))'
python -c 'import os; import nltk; print os.listdir(nltk.data.find("tokenizers"))'
回答 4
import nltk
nltk.download('punkt')
打开Python提示符并运行以上语句。
该sent_tokenize函数使用的一个实例PunktSentenceTokenizer从 nltk.tokenize.punkt模块。该实例已经过培训,并适用于许多欧洲语言。因此,它知道哪些标点符号和字符标记了句子的结尾和新句子的开头。
回答 5
最近我也发生了同样的事情,您只需要下载“ punkt”软件包,它就可以工作。
在“下载所有可用内容”之后执行“列表”(l)时,所有内容是否都标记为以下行?:
[*] punkt............... Punkt Tokenizer Models
如果看到带有星星的这条线,则表示您已经拥有它,并且nltk应该能够加载它。
回答 6
通过键入转到python控制台
$Python
在您的终端中。然后,在python shell中键入以下2条命令以安装相应的软件包:
>> nltk.download(’punkt’)>> nltk.download(’averaged_perceptron_tagger’)
这为我解决了这个问题。
回答 7
我的问题是我叫nltk.download('all')
root用户,但是最终使用nltk的进程是另一个用户,该用户无权访问下载内容的/ root / nltk_data。
因此,我只是以递归方式将所有内容从下载位置复制到NLTK希望找到的路径之一,如下所示:
cp -R /root/nltk_data/ /home/ubuntu/nltk_data
回答 8
执行以下代码:
import nltk nltk.download()
此后,将弹出NLTK下载器。
- 选择所有软件包。
- 下载punkt。
回答 9
尽管导入了以下内容,但还是出现错误,
import nltk
nltk.download()
但是对于谷歌colab,这解决了我的问题。
!python3 -c "import nltk; nltk.download('all')"
回答 10
简单的nltk.download()无法解决此问题。我尝试了以下方法,它对我有用:
在nltk文件夹中,创建一个tokenizers文件夹,然后将您的punkt文件夹复制到tokenizers文件夹中。
这将起作用。 文件夹结构必须如图所示
回答 11
您需要重新排列文件夹将tokenizers
文件夹移到nltk_data
文件夹中。如果您的nltk_data
文件corpora
夹中包含 tokenizers
文件夹,则此方法不起作用
回答 12
对我而言,上述方法均无效,因此我只是从网站http://www.nltk.org/nltk_data/手动下载了所有文件,并将它们也手动放置在“ nltk_data”内部的“ tokenizers”文件中”文件夹。不是一个漂亮的解决方案,但仍然是一个解决方案。
回答 13
添加此行代码后,该问题将得到解决:
nltk.download('punkt')
回答 14
我遇到了同样的问题。下载所有内容后,仍然存在“ punkt”错误。我在Windows机器上的C:\ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers中搜索了程序包,在那里可以看到“ punkt.zip”。我意识到,该zip尚未以某种方式提取到C:\ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers \ punk中。一旦我解压缩后,它就像音乐一样工作。
回答 15
只要确保您使用的是Jupyter
Notebook,然后在笔记本中执行以下操作:
import nltk
nltk.download()
然后将出现一个弹出窗口(显示信息https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml),您必须从中下载所有内容。
然后重新运行您的代码。
回答 16
对我来说,它可以通过使用“ nltk”来解决:
http://www.nltk.org/howto/data.html
使用nltk.data.load加载english.pickle失败
sent_tokenizer=nltk.data.load('nltk:tokenizers/punkt/english.pickle')