Stanford CoreNLP句法分析可视化及保存在json文件中

Posted 猫猫头丁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Stanford CoreNLP句法分析可视化及保存在json文件中相关的知识,希望对你有一定的参考价值。

Stanford CoreNLP句法分析可视化及保存在json文件中

在上篇文章中,我们已经进行了Stanford CoreNLP的安装和简单使用,今天我们对它进行句法分析的可视化,听着很高级有没有,其实非常简单。
先把上次的完整代码回顾一下:

import json
import warnings
warnings.filterwarnings('ignore')
from stanfordcorenlp import StanfordCoreNLP
#如果要用其他语言,需要单独设置
nlp = StanfordCoreNLP(r'E:\\stanford-corenlp-4.2.0')
nlp_ch= StanfordCoreNLP(r'E:\\stanford-corenlp-4.2.0', lang='zh')
sen='我希望所有喜欢我的人都能够幸福平平安安的过好这一辈子'
print(nlp_ch.pos_tag(sen))
print(nlp_ch.parse(sen))

好嘞,接下来我们开始句法分析的可视化。

句法分析可视化

有现成的工具包供我们使用,还是以’我希望所有喜欢我的人都能够幸福平平安安的过好这一辈子’为例,运行如下代码:

from nltk.tree import Tree
sentence = '我希望所有喜欢我的人都能够幸福平平安安的过好这一辈子'
with StanfordCoreNLP(r'E:\\stanford-corenlp-4.2.0', lang='zh') as nlp:
    Tree.fromstring(nlp.parse(sentence)).draw()

在这里插入图片描述成功画出图像,就那么简单!

结果保存在json文件中

这次保存就简单多了,还记得之前保存hanlp的时候,真的是绞尽脑汁的想办法。

with open('王一博.txt','r',encoding='UTF-8')as file,open('句法分析.json','w',encoding='utf-8')as f:
    dict_list=[]
    lines=file.readlines()
    for line in lines:
        d=nlp_ch.pos_tag(line)
        c=nlp_ch.parse(line)
        print(d)
        dict={'原句':line,'句法分析':d,'依存关系':c}
        dict_list.append(dict)
    json.dump(dict_list,f,ensure_ascii=False)

OK,完成,超级简单的保存。
在这里插入图片描述到json文件里面看一下,嗯,不错不错。
完整代码和运行结果以及语料都已经上传到资源啦,欢迎大家下载,CSDN必须要设置成收费或积分,大家如果不着急,可以私聊我私发哦。
资源下载:https://download.csdn.net/download/weixin_46570668/18234525.
哦对啦,我开始把讲解更新B站和抖音啦,名字都叫猫猫头丁,欢迎大家来关注啊!!!
B站:https://space.bilibili.com/410893912.

以上是关于Stanford CoreNLP句法分析可视化及保存在json文件中的主要内容,如果未能解决你的问题,请参考以下文章

Stanford CoreNLP超简单安装及简单使用,句法分析及依存句法分析

斯坦福大学Stanford coreNLP 宾州树库依存句法标注体系

开源中文分词工具探析:Stanford CoreNLP

使用stanford nlp进行依存句法分析

stanford corenlp自定义切词类

运行 Stanford.NLP.CoreNLP 示例时出现 TypeInitializationException