找不到资源语料库/wordnet(运行 quepy dbpedia 示例应用程序)
Posted
技术标签:
【中文标题】找不到资源语料库/wordnet(运行 quepy dbpedia 示例应用程序)【英文标题】:Resource corpora/wordnet not found (running quepy dbpedia example app) 【发布时间】:2015-08-20 22:01:41 【问题描述】:我已经搜索了网络(包括显示与 Heroku、Anaconda 等类似问题但常见根本原因 - 资源语料库/wordnet 未找到的 6 个链接)并尽我所能,包括但不限于 -
-
将下载目录(随后通过以下 3 种方法设置 nltk_data 路径)3 次更改为 /usr/lib/nltk_data、/home/ubuntu/nltk_data 和 /home/ubuntu/quepy/nltk_data。
通过 (i) 更改所有三个路径所需的 quepy 应用程序中 settings.py 中的 NLTK_DATA_PATH (ii) 对所有三个路径使用 nltk.data.path.append 命令 (iii) 使用导出 NLTK_DATA 更改路径所有三个路径的命令
我什至继续递归地为 nltk_data 目录的内容授予 644 权限
使用带有特定路径的 python -m nltk.downloader AND nltk.download 命令来安装和配置路径(它们都做同样的事情)
即使经过 3 个小时的尝试,我仍然无处可去。如果有人能指出我如何在以下位置成功运行 Quepy 示例(python main.py“谁是汤姆克鲁斯?”),我将不胜感激:quepy/examples/dbpedia。这不是 Quepy 的问题,但为什么它在地球上找不到资源。
这是确切的错误 -
Resource u'corpora/wordnet' not found. Please use the NLTK
Downloader to obtain the resource: >>> nltk.download()
Searched in:
- 'home/ubuntu/nltk_data'
注意 -
我在另一台机器上成功安装了它,没有问题,它运行正常,但在初始机器上,问题仍未解决,步骤完全相同,应用程序的确切版本及其相关工具/依赖项。
即使没有在错误日志中显示,我的类路径也以斜杠开头,正如 nltk.data.path 所观察到的那样
【问题讨论】:
让 nltk 决定在哪里存储文件以及在哪里访问它们。查看答案。 它根本不是重复的@alvas,但感谢链接,我也试图让 nltk 决定并给出它下载到 quepy 应用程序的路径,但没有任何成功。 您能提供回溯吗?可能会有帮助。 你真的应该(总是)努力缩小你的问题。编写一个加载一个资源的两行脚本,例如from nltk.corpus import wordnet; x=wordnet.all_lemma_names()
。在此处显示程序和完整的错误跟踪。还要说明你的 nltk_data 目录实际在哪里。
【参考方案1】:
您的路径似乎不完整。在 Unix 文件系统中,完整路径总是以斜杠开头:/path/to/file/is/well-formed/example.txt
。在您学习的过程中,最好使用ls
在 shell(即命令行)中检查您的完整路径。
$ ls /path/to/example/file.txt
/path/to/example/file.txt
$ ls /this/one/is/not/there.txt
ls: /this/one/is/not/there.txt: No such file or directory
如果你得到No such file or directory
,那么你的路径是错误的。
【讨论】:
对不起,让我编辑我的问题,我的所有类路径都以斜线开头,我只是没有把它完全写在问题中,可能是我的潜意识虽然它是微不足道的事情,但感谢您指出@bebop。 您遗漏了哪些其他重要细节?显示一个实际的简短脚本,否则没有人可以帮助您。ubuntu@ip-xxx-xx-xx-xxx:~$ 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. >>> from nltk.corpus import wordnet >>> x=wordnet.all_lemma_names() >>> x <dictionary-keyiterator object at 0x7f18c5fe2680>
我已经知道它在 python 中工作并且它能够正确地找到资源但是当我在 Quepy 外部使用它时,我得到了问题中列出的错误。很抱歉,我无法在代码块中发布它。即便如此,我也使用了反引号。 @bebop @tripleee @alvas【参考方案2】:
如果您确定这不是 Quepy 的问题,请递归地将权限更改为 755 并查看是否有任何新错误。
【讨论】:
把权限改成755的结果是什么?我们需要确认在文件访问方面没有错误配置。以上是关于找不到资源语料库/wordnet(运行 quepy dbpedia 示例应用程序)的主要内容,如果未能解决你的问题,请参考以下文章