自然语言处理学习笔记(三)————HanLP安装与使用

目录

1.HanLP安装

2.HanLP使用

(1)预下载

(2)测试

(3)命令行

(4)测试样例

3.pyhanlp可视化

[4. HanLP词性表](#4. HanLP词性表)


1.HanLP安装

HanLP的 Python接口由 pyhanlp包提供,其安装只需一句命令:

python 复制代码
pip install pyhanlp

安装完成

2.HanLP使用

(1)预下载

第一次使用pyhanlp时,会自动下载许多hanlp的jar包(包含许多算法)和数据包(包含许多模型)到pyhanlp的系统路径中,大约六百多兆。

(2)测试

python 复制代码
from pyhanlp import *

print(HanLP.segment('你好,欢迎进入nlp的世界'))

输出结果:

[你好/vl, ,/w, 欢迎/v, 进入/v, nlp/nx, 的/ude1, 世界/n]

程序正常运行,说明安装成功。

(3)命令行

通过命令行,可以在不写代码的前提下轻松调用 HanLP 提供的常见功能。

分词

python 复制代码
》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

退出当前模式使用:ctrl+z,然后回车

关闭词性标注:

python 复制代码
》hanlp segment --no-tag
》pyhanlp提供了一个很好的展示交付界面,只要一句命令就能启动一个web服务
》pyhanlp 提供 了 一个 很好 的 展示 交付 界面 , 只要 一 句 命令 就 能 启动 一个 web 服务

句法分析

python 复制代码
》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)测试样例

python 复制代码
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服务

python 复制代码
hanlp serve

登录http://localhost:8765就能看下可视化界面,能看到分词结果和依存关系的结果

4. HanLP词性表

a 形容词

ad 副形词

ag 形容词性语素

al 形容词性惯用语

an 名形词

b 区别词

begin 仅用于始##始

bg 区别语素

bl 区别词性惯用语

c 连词

cc 并列连词

d 副词

dg 辄,俱,复之类的副词

dl 连语

e 叹词

end 仅用于终##终

f 方位词

g 学术词汇

gb 生物相关词汇

gbc 生物类别

gc 化学相关词汇

gg 地理地质相关词汇

gi 计算机相关词汇

gm 数学相关词汇

gp 物理相关词汇

h 前缀

i 成语

j 简称略语

k 后缀

l 习用语

m 数词

mg 数语素

Mg 甲乙丙丁之类的数词

mq 数量词

n 名词

nb 生物名

nba 动物名

nbc 动物纲目

nbp 植物名

nf 食品,比如"薯片"

ng 名词性语素

nh 医药疾病等健康相关名词

nhd 疾病

nhm 药品

ni 机构相关(不是独立机构名)

nic 下属机构

nis 机构后缀

nit 教育相关机构

nl 名词性惯用语

nm 物品名

nmc 化学品名

nn 工作相关名词

nnd 职业

nnt 职务职称

nr 人名

nr1 复姓

nr2 蒙古姓名

nrf 音译人名

nrj 日语人名

ns 地名

nsf 音译地名

nt 机构团体名

ntc 公司名

ntcb 银行

ntcf 工厂

ntch 酒店宾馆

nth 医院

nto 政府机构

nts 中小学

ntu 大学

nx 字母专名

nz 其他专名

o 拟声词

p 介词

pba 介词"把"

pbei 介词"被"

q 量词

qg 量词语素

qt 时量词

qv 动量词

r 代词

rg 代词性语素

Rg 古汉语代词性语素

rr 人称代词

ry 疑问代词

rys 处所疑问代词

ryt 时间疑问代词

ryv 谓词性疑问代词

rz 指示代词

rzs 处所指示代词

rzt 时间指示代词

rzv 谓词性指示代词

s 处所词

t 时间词

tg 时间词性语素

u 助词

ud 助词

ude1 的 底

ude2 地

ude3 得

udeng 等 等等 云云

udh 的话

ug 过

uguo 过

uj 助词

ul 连词

ule 了 喽

ulian 连 ("连小学生都会")

uls 来讲 来说 而言 说来

usuo 所

uv 连词

uyy 一样 一般 似的 般

uz 着

uzhe 着

uzhi 之

v 动词

vd 副动词

vf 趋向动词

vg 动词性语素

vi 不及物动词(内动词)

vl 动词性惯用语

vn 名动词

vshi 动词"是"

vx 形式动词

vyou 动词"有"

w 标点符号

wb 百分号千分号,全角:% ‰ 半角:%

wd 逗号,全角:, 半角:,

wf 分号,全角:; 半角: ;

wh 单位符号,全角:¥ $ £ ° ℃ 半角:$

wj 句号,全角:。

wky 右括号,全角:) 〕 ] } 》 】 〗 〉 半角: ) ] { >

wkz 左括号,全角:( 〔 [ { 《 【 〖 〈 半角:( [ { <

wm 冒号,全角:: 半角: :

wn 顿号,全角:、

wp 破折号,全角:------ -- ------- 半角:--- ----

ws 省略号,全角:...... ...

wt 叹号,全角:!

ww 问号,全角:?

wyy 右引号,全角:" ' 』

wyz 左引号,全角:" ' 『

x 字符串

xu 网址URL

xx 非语素字

y 语气词(delete yg)

yg 语气语素

z 状态词

zg 状态词

相关推荐
测试老哥28 分钟前
功能测试干了三年,快要废了。。。
自动化测试·软件测试·python·功能测试·面试·职场和发展·压力测试
爱吃油淋鸡的莫何29 分钟前
Conda新建python虚拟环境问题
开发语言·python·conda
闲人编程36 分钟前
Python实现日志采集功能
开发语言·python·fluentd·filebeat·日志采集
2401_862886781 小时前
蓝禾,汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
前端·c++·python·算法·游戏
luthane1 小时前
python 实现armstrong numbers阿姆斯壮数算法
python·算法
昕er1 小时前
Python 中自动打开网页并点击[自动化脚本],Selenium
python·selenium·自动化
风控牛1 小时前
【chromedriver编译-绕过selenium机器人检测】
java·python·selenium·测试工具·安全·机器人·行为验证
su1ka1111 小时前
re题(36)BUUCTF-[WUSTCTF2020]Cr0ssfun
python
叫我:松哥1 小时前
基于python flask的高血压疾病预测分析与可视化系统的设计与实现,使用随机森林、决策树、逻辑回归、xgboost等机器学习库预测
python·决策树·随机森林·机器学习·数据分析·flask·逻辑回归