目录
1.HanLP安装
HanLP的 Python接口由 pyhanlp包提供,其安装只需一句命令:
pip install pyhanlp
安装完成
2.HanLP使用
(1)预下载
第一次使用pyhanlp时,会自动下载许多hanlp的jar包(包含许多算法)和数据包(包含许多模型)到pyhanlp的系统路径中,大约六百多兆。
(2)测试
from pyhanlp import *
print(HanLP.segment('你好,欢迎进入nlp的世界'))
输出结果:
程序正常运行,说明安装成功。
(3)命令行
通过命令行,可以在不写代码的前提下轻松调用 HanLP 提供的常见功能。
分词
》hanlp segment
》你好,欢迎进入nlp的世界!
》你好/vl ,/w 欢迎/v 进入/v nlp/nx 的/ude1 世界/n !/w
》通过命令行,可以在不写代码的前提下轻松调用 HanLP 提供的常见功能。
》通过/p 命令行/n ,/w 可以/v 在/p 不/d 写/v 代码/n 的/ude1 前提/n 下/f 轻松/a 调用/v /w HanLP/nx /w 提供/v 的/ude1 常见/a 功能/n 。/w
关闭词性标注:
》hanlp segment --no-tag
》pyhanlp提供了一个很好的展示交付界面,只要一句命令就能启动一个web服务
》pyhanlp 提供 了 一个 很好 的 展示 交付 界面 , 只要 一 句 命令 就 能 启动 一个 web 服务
句法分析
》hanlp parse
》第一次使用pyhanlp时,会自动下载许多hanlp的jar包(包含许多算法)和数据包(包含许多模型)到pyhanlp的系统路径中,大约六百多兆。
1 第一 第一 m m _ 2 定中关系 _ _
2 次 次 q q _ 3 状中结构 _ _
3 使用 使用 v v _ 5 定中关系 _ _
4 pyhanlp pyhanlp ws nx _ 3 动宾关系 _ _
5 时 时 Ng Ng _ 9 状中结构 _ _
6 , , wp w _ 5 标点符号 _ _
7 会 会 v v _ 9 状中结构 _ _
8 自动 自动 d d _ 9 状中结构 _ _
9 下载 下载 v v _ 0 核心关系 _ _
10 许多 许多 m m _ 11 定中关系 _ _
11 hanlp hanlp ws nx _ 14 定中关系 _ _
12 的 的 u u _ 11 右附加关系 _ _
13 jar jar ws nx _ 14 定中关系 _ _
14 包 包 n n _ 9 动宾关系 _ _
15 ( ( wp w _ 16 标点符号 _ _
16 包含 包含 v v _ 9 并列关系 _ _
17 许多 许多 m m _ 18 定中关系 _ _
18 算法 算法 n n _ 16 动宾关系 _ _
19 ) ) wp w _ 16 标点符号 _ _
20 和 和 c c _ 22 左附加关系 _ _
21 数据 数据 n n _ 22 定中关系 _ _
22 包 包 v v _ 9 并列关系 _ _
23 ( ( wp w _ 24 标点符号 _ _
24 包含 包含 v v _ 22 并列关系 _ _
25 许多 许多 m m _ 26 定中关系 _ _
26 模型 模型 n n _ 24 动宾关系 _ _
27 ) ) wp w _ 24 标点符号 _ _
28 到 到 p p _ 36 状中结构 _ _
29 pyhanlp pyhanlp ws nx _ 32 定中关系 _ _
30 的 的 u u _ 29 右附加关系 _ _
31 系统 系统 n n _ 32 定中关系 _ _
32 路径 路径 n n _ 33 定中关系 _ _
33 中 中 nd f _ 28 介宾关系 _ _
34 , , wp w _ 28 标点符号 _ _
35 大约 大约 d d _ 36 状中结构 _ _
36 六百多兆 六百多兆 i i _ 22 并列关系 _ _
37 。 。 wp w _ 9 标点符号 _ _
\
1 \ \ nh nr _ 0 核心关系 _ _
(4)测试样例
from pyhanlp import *
print (HanLP.segment('你好,欢迎在Python中调用HanLP的API'))
# 分词
print("-"*100)
print("分词测试")
for term in HanLP.segment("下雨天地面积水"):
print('{}\t{}'.format (term.word, term.nature)) # 获取单词与词性
TestCases = ["商品和服务",
"结婚的和尚未结婚的确实在干扰分词啊",
"买水果然后来世博园最后去世博会",
"中国的首都是北京",
"欢迎新老师生前来就餐",
"工信处女干事每月经过下属科室都要亲口交代24口交换机等技术性器件的安装工作",
"随着页游兴起到现在的页游繁盛,依赖于存档进行逻辑判断的设计减少了,但这块也不能完全忽略掉。"]
for sentence in TestCases:
print (HanLP.segment (sentence))
# 关键词提取
document = "水利部水资源司司长陈明忠9月29日在国务院新闻办举行的新闻发布会上透露,"\
"根据刚刚完成了水资源管理制度的考核,有部分省接近了红线的指标,"\
"有部分省超过红线的指标。对一些超过红线的地方,陈明忠表示,对一些取用水项目进行区域的限批,"\
"严格地进行水资源论证和取水许可的批准。"
print("关键词提取测试")
print(HanLP.extractKeyword(document,2))
# 自动摘要
print("-"*100)
print("自动摘要测试")
print(HanLP.extractSummary(document,3))
3.pyhanlp可视化
pyhanlp提供了一个很好的展示交付界面,只要一句命令就能启动一个web服务
hanlp serve
登录http://localhost:8765就能看下可视化界面,能看到分词结果和依存关系的结果