TypeError:\uyu init_ku()为关键字参数“encoding”获取了多个值

2024-10-01 07:50:21 发布

您现在位置:Python中文网/ 问答频道 /正文

from nltk.tag.stanford import CoreNLPNERTagger as POSTagger
english_postagger = POSTagger(RESOURCES_DIR+'jars/english-left3words-distsim.tagger',RESOURCES_DIR+'jars/stanford-postagger.jar', encoding='utf-8')

当我运行上面的代码时,我得到了以下错误。如何解决这个问题?在

^{pr2}$

Tags: fromimportenglishastagdirresourcesnltk
1条回答
网友
1楼 · 发布于 2024-10-01 07:50:21

作为POSTagger导入的^{}^{}具有不同的接口。根据文件:

class nltk.tag.stanford.CoreNLPNERTagger(url='http://localhost:9000', encoding='utf8')

Bases: nltk.tag.stanford.CoreNLPTagger

This is a subclass of the CoreNLPTagger that wraps around the nltk.parse.CoreNLPParser for Named-Entity tagging.

>>> from nltk.tag.stanford import CoreNLPNERTagger
>>> CoreNLPNERTagger(url='http://localhost:9000').tag('Rami Eid is studying at Stony Brook University in NY'.split())  [('Rami', 'PERSON'),('Eid', 'PERSON'), ('is', 'O'), ('studying', 'O'), ('at', 'O'), ('Stony', 'ORGANIZATION'), ('Brook', 'ORGANIZATION'), ('University', 'ORGANIZATION'), ('in', 'O'), ('NY', 'O')]

对于CoreNLPNERTagger您应该首先启动一个核心NLP服务器,然后像这样连接到它:

with CoreNLPServer(port=9000) as server:
    tagger = CoreNLPNERTagger(url=server.url)
    tagger.tag(...)

或者简单地使用StanfordPOSTagger与当前使用的方法相同。在

相关问题 更多 >