NLTK含有与斯坦福自然语言处理工具的接口,可以直接将结果转为nltk支持的数据。
比如句法分析,可以直接生成nltk的tree类型数据。
具体教程网上已经有不少了,现做一个收集:
另外还有通过REST API直接调用CoreNLP的,官方网站的源码:Source code for nltk.parse.corenlp
具体用法:
实例一个server并运行:
server=nltk.parse.corenlp.CoreNLPServer(path_to_jar="stanford-corenlp-3.7.0.jar", path_to_models_jar="stanford-corenlp-3.7.0-models.jar")
server.start()
具体用法就和上面的文章中提到的差不多了,提供分词、词性标注、句法分析和依存句法分析等功能。
比如句法分析:
>>> from nltk.parse import CoreNLPParser
>>> a=CoreNLPParser()
>>> print(list(a.raw_parse("I like you."))[0])
(ROOT (S (NP (PRP I)) (VP (VBP like) (NP (PRP you))) (. .)))