句法分析和依存句法分析(Python实现)

文章目录

环境

  1. Python3安装
  2. nltk库安装
    在cmd中输入pip install nltk,如果显示pip不是内部或外部命令,那就是未配置环境变量,自行百度。
  3. 下载StanfordParser
    在这里插入图片描述

下载好进行解压,得到文件夹stanford-parser-full-2018-10-17,文件夹的内容如下:

在这里插入图片描述
解压文件夹中的stanford-parser-3.9.2-models.jar在这里插入图片描述
得到在这里插入图片描述

使用

import os
from nltk.parse import stanford

# 这里的三个引用文件都是根据我的目录来的
# 只需要根据你的实际目录更改D:\Google\stanford-parser-full-2018-10-17即可
os.environ['STANFORD_PARSER'] = r"D:\Google\stanford-parser-full-2018-10-17\stanford-parser.jar"
os.environ['STANFORD_MODELS'] = r"D:\Google\stanford-parser-full-2018-10-17\stanford-parser-3.9.2-models.jar"
parser = stanford.StanfordDependencyParser(model_path=r"D:\Google\stanford-parser-full-2018-10-17\edu\stanford\nlp\models\lexparser\chinesePCFG.ser.gz")

res = list(parser.parse(['我','爱','NLP']))
for row in res[0].triples():
    print(row)

输出:

(('爱', 'VV'), 'nsubj', ('我', 'PN'))
(('爱', 'VV'), 'dobj', ('NLP', 'NN'))

('爱', 'VV')表示是句子中的VV(动词)
('我', 'PN')表示是句子中的PN(代词)
('NLP', 'NN')表示NLP是句子中的NN(名词)

nsubj表示名词主语
dobj表示NLP直接宾语

更多句法符号表示见https://www.jianshu.com/p/5c461cf096c4

Reference

  1. https://blog.csdn.net/lizzy05/article/details/88148097
  2. https://blog.csdn.net/qq_41618091/article/details/97239505
  3. https://nlp.stanford.edu/software/lex-parser.shtml#Download
  4. https://blog.csdn.net/lihaitao000/article/details/51812618
  • 1
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值