NLTK v3.2:无法 nltk.pos_tag()

2024-04-08

嗨,文本挖掘冠军,

我在 Windows 10 上使用 Anaconda 和 NLTK v3.2。(客户端环境)

当我尝试 POS 标记时,我不断收到 URLLIB2 错误:

URLError: <urlopen error unknown url type: c>

看来 urllib2 无法识别 Windows 路径?我该如何解决这个问题?

命令很简单:

nltk.pos_tag(nltk.word_tokenize("Hello World"))

编辑: 有一个重复的问题,但我认为 manan 和 alvas 在这里获得的答案是一个更好的解决方案。


EDITED

此问题已从 NLTK v3.2.1 中得到解决。升级您的 NLTK 版本可以解决该问题,例如pip install -U nltk.


我遇到了同样的问题,遇到的错误如下;

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\site-packages\nltk-3.2-py2.7.egg\nltk\tag\__init__.py", line 110, in pos_tag
tagger = PerceptronTagger()
  File "C:\Python27\lib\site-packages\nltk-3.2-py2.7.egg\nltk\tag\perceptron.py", line 141, in __init__
self.load(AP_MODEL_LOC)
  File "C:\Python27\lib\site-packages\nltk-3.2-py2.7.egg\nltk\tag\perceptron.py", line 209, in load
self.model.weights, self.tagdict, self.classes = load(loc)
  File "C:\Python27\lib\site-packages\nltk-3.2-py2.7.egg\nltk\data.py", line 801, in load
opened_resource = _open(resource_url)
  File "C:\Python27\lib\site-packages\nltk-3.2-py2.7.egg\nltk\data.py", line 924, in _open
return urlopen(resource_url)
  File "C:\Python27\lib\urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
  File "C:\Python27\lib\urllib2.py", line 391, in open
response = self._open(req, data)
  File "C:\Python27\lib\urllib2.py", line 414, in _open
'unknown_open', req)
  File "C:\Python27\lib\urllib2.py", line 369, in _call_chain
result = func(*args)
  File "C:\Python27\lib\urllib2.py", line 1206, in unknown_open
raise URLError('unknown url type: %s' % type)
urllib2.URLError: <urlopen error unknown url type: c>

您提到的 URLError 是由于 Windows NLTK 库中的 perceptron.py 文件中的错误造成的。 在我的机器中,该文件位于此位置

C:\Python27\Lib\site-packages\nltk-3.2-py2.7.egg\nltk\tag\perceptron.py

(基本上,只要有 Python27 文件夹,就查看您的等效位置)

该错误基本上存在于代码中,用于在计算机中查找averaged_perceptron_tagger 的相应位置。大家可以看一下 data.py 文件中提到的第 801 行和第 924 行。

我认为 NLTK 开发者社区最近修复了代码中的这个错误。看一下几天前对他们的代码所做的提交。

https://github.com/nltk/nltk/commit/d3de14e58215beebdccc7b76c044109f6197d1d9#diff-26b258372e0d13c2543de8dbb1841252 https://github.com/nltk/nltk/commit/d3de14e58215beebdccc7b76c044109f6197d1d9#diff-26b258372e0d13c2543de8dbb1841252

进行更改的代码片段如下;

self.tagdict = {}
self.classes = set()
    if load:
        AP_MODEL_LOC = 'file:'+str(find('taggers/averaged_perceptron_tagger/'+PICKLE))
          self.load(AP_MODEL_LOC)
        # Initially it was:AP_MODEL_LOC = str(find('taggers/averaged_perceptron_tagger/'+PICKLE)) 

def tag(self, tokens):

将文件更新到最新提交对我有用,并且能够使用 nltk.pos_tag 命令。我相信这也能解决您的问题(假设您已设置好其他所有内容)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NLTK v3.2:无法 nltk.pos_tag() 的相关文章

随机推荐

  • 三层架构中BAL的使用?如何从DAL调用方法到BAL

    我是 3 层架构的新手 下面是我的 DAL 代码 public static int Insert string firstname string lastname DateTime dob string gender string ema
  • Elasticsearch:如何使精确匹配排名靠前?

    我想在一个字段中搜索项目 vision 但通过在 DSL 中使用 match match phrase term 我只得到了 vision A vision B xx version vision 等结果 我想要的是精确匹配 vision
  • python 日志记录根本不起作用

    我正在尝试在我的小型 python 项目中使用日志记录 按照教程 我将下面的代码添加到我的代码中 但消息没有按预期记录到文件中 import logging logging basicConfig filename a log filemo
  • 如何在 Windows 上设置 NODE_ENV=生产?

    在 Ubuntu 中这非常简单 我可以使用以下方式运行该应用程序 NODE ENV production node myapp app js 但是 这在 Windows 上不起作用 是否有可以设置属性的配置文件 当前版本的 Windows
  • 如何在prototxt文件中写注释?

    我找不到如何写评论prototxt files 有没有办法在 prototxt 文件中添加注释 如何 Thanks 您可以通过添加评论 char 之后的行中的所有内容都是注释 layer name aLayerWithComments I
  • 新的 Kubernetes 服务帐户似乎具有集群管理员权限

    我在新创建的 Kubernetes 服务帐户中遇到了奇怪的行为 看来他们的令牌在我们的集群中提供了无限的访问权限 如果我创建一个新的命名空间 在该命名空间内创建一个新的服务帐户 然后在新的 kube 配置中使用该服务帐户的令牌 我就能够在集
  • Python 中或仅 JavaScript 中的 BigQuery UDF

    我一直在研究如何在 BigQuery 中编写 UDF 并发现了以下语法 CREATE TEMPORARY TEMP FUNCTION function name named parameter RETURNS data type LANGU
  • 使用 Windows 身份验证的 Asp.Net Core 2.x Web 应用程序中的 User.Identity.Name 为 null

    Problem 当在 IIS 后面托管 Asp Net Core 2 0 或 2 1 Web 应用程序且 Windows 身份验证设置为 true 且匿名身份验证设置为 false 时 User Identity Name属性为 null
  • 制作类似支持自动删除临时文件和正则表达式模式规则的工具?

    我正在搜索一个类似 make 的构建工具 它支持 除了通常的 make 功能之外 自动删除临时创建的文件 例如在 GNU make 中 规则模式中的正则表达式 例如Cook http miller emu id au pmiller sof
  • 给定数的所有因数

    例如 我有 4800 我想查看这个数字的所有因数 num the number you want factors of def factors of num 1 num collect n n num n if num n n num co
  • 自动识别Pitest中哪些测试用例杀死了哪些突变体

    我正在使用 Pitest 进行突变测试 我的项目需要大量突变体 例如 500 个突变体 我需要一个矩阵来显示 Pitest 创建了哪些突变体 并被哪些测试用例杀死 我可以手动完成 但需要很长时间 可以自动完成吗 如果是 如何解决 如果否 我
  • Android ImageView NullPointerException

    我有两个图像 一个是红灯 一个是绿灯 我有一个自定义 ListView 我想在列表项处于非活动状态时显示红灯 在列表项处于活动状态时显示绿灯 按下时会激活列表项 这是我的代码 row xml
  • CSS,div 内的居中链接

    我怎样才能像这样集中我的链接 它们都集中在一个div 但它们从相同的距离开始 i am link 1 i am a longer link than link 1 i am a short link we are all centered
  • 有没有办法将文件的内容传递给curl?

    我想从命令行执行一个相当复杂的具有多部分 混合边界的 HTTP 请求 POST batch HTTP 1 1 Host www googleapis com Content length 592 Content type multipart
  • 使用 JMeter 将文件上传到 Rest API

    注意 我已经检查过BlazeMeter 教程 https www blazemeter com blog testing advanced rest api file uploads jmeter当我使用 文件上传 选项卡时 它将文档作为正
  • Python Excel 突出显示单元格差异

    前言 我是新人 自学成才 这是我的第一个编码项目 我知道这很糟糕 一旦完成并工作 我将重写它 我正在尝试编写一个 python 脚本来比较 2 个 Excel 文件并突出显示不同的单元格 我可以打印出差异 使用 pandas 并突出显示一个
  • 后台获取似乎不会发生火灾

    在我的应用程序中 我执行了下面列出的操作 并向应用程序提取例程添加了计数器 以突出显示 iOS 8 1 调用提取的次数 打开后台模式并启用后台获取 为 performFetchWithCompletionHandler 编写代码 NSLog
  • XSD 验证错误:“cvc-elt.1:找不到元素 'xs:schema' 的声明”

    我正在尝试使用 Maven XML 插件根据模式验证我的 xml 但我一直收到错误消息 cvc elt 1 找不到元素 xs schema 的声明 我想它必须处理我的名称空间声明 所以它们是 在我的 XSD 中
  • 如何设置 Visual Studio 2012 使用 JavaScript 编辑器处理 asp 文件

    如何告诉 Visual Studio 2012 将经典 ASP 文件 扩展名 asp 识别为 JavaScript 我已将 asp 扩展名注册到脚本编辑器 这在 2010 年曾经起到过作用 但现在没有帮助 VS 似乎不知道脚本编辑器使用什么
  • NLTK v3.2:无法 nltk.pos_tag()

    嗨 文本挖掘冠军 我在 Windows 10 上使用 Anaconda 和 NLTK v3 2 客户端环境 当我尝试 POS 标记时 我不断收到 URLLIB2 错误 URLError