其他分享
首页 > 其他分享> > HanLp句法分析和依存句法可视化、保存到json文件中

HanLp句法分析和依存句法可视化、保存到json文件中

作者:互联网

HanLp句法分析和依存句法可视化、保存到json文件中

依存句法可视化

本来是想自己做一个可视化,无奈是在是太麻烦,自己的水平不允许我用python实现可视化,所以只能求助外界工具了。
幸好有一个非常好用的工具,我们可以使用南京大学开发的dependence viewer来进行可视化。
这个下载非常方便,大家可以百度一下。
我们每次将HanLp依存句法分析结果保存在txt文件中,然后用dependence viewer打开就可以了。
还是以“我希望所有喜欢我的人都能够幸福平平安安的过好这一辈子”为例,保存在TXT中,如下:
在这里插入图片描述接下来打开dependence viewer,点击“File”->“Read Conll File”
在这里插入图片描述在这里插入图片描述

依存句法保存到json文件中

一般保存在json文件中都是字符串或者列表或者字典,但是这次的依存句法分析结果,着实让我非常为难,不知道该怎么保存到json文件中,后来和小伙伴商量,只能选择了一个非常笨的方法,先以str的类型保存到txt中,然后再从中读取,这样就是字符串类型了。虽然非常笨,不过好在能实现。

保存在json文件中的形式如下:
在这里插入图片描述好的是,正好就和依存句法可视化的TXT保存一起搞了,一起来看一下代码吧。

with open(filepath,'r',encoding='UTF-8')as file,open('句法分析.json', 'w') as json_file:
    lines=file.readlines()
    dict_list = []
    i=1
    for line in lines:
        line=line.strip('\n')
        print(line)
        path ="txt/"+str(i)+".txt"
        with open(path, "w", encoding='utf-8') as f:
            f.write(str(HanLP.parseDependency(str(line))))
        i=i+1
        print(path)
        print(HanLP.segment(line))
        f = open("TXT/句法分析.txt",'w')
        print(HanLP.segment(line),file = f)
        f.close()
        f = open("TXT/句法分析.txt")
        fr = f.readlines()
        s = ""
        for l in fr:
            s += l
        f.close()
        list=HanLP.parseDependency(line)
        f = open("TXT/句法分析.txt",'w')
        print(list,file = f)
        f.close()
        f = open("TXT/句法分析.txt")
        fr = f.readlines()
        c = ""
        for l in fr:
            c += l
        dict={'原句':line,'句法分析':s,'依存句法':c}
        dict_list.append(dict)
    json.dump(dict_list,json_file)

完整的代码和运行结果已经上传资源啦!

标签:open,句法分析,依存,json,line,txt,HanLp
来源: https://blog.csdn.net/weixin_46570668/article/details/116266398