自然语言处理学习笔记(三)————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 状态词

相关推荐
l1t12 分钟前
利用DeepSeek改写并增强测试Duckdb和sqlite的不同插入方法性能
python·sql·sqlite·duckdb
爷_1 小时前
用 Python 打造你的专属 IOC 容器
后端·python·架构
ID_180079054732 小时前
python采集拍立淘按图搜索API接口,json数据参考
大数据·数据库·python·json
不是二师兄的八戒2 小时前
PDF转图片工具技术文档(命令行版本)
前端·python·pdf
TT-Kun3 小时前
PyTorch 张量核心操作——比较、排序与数据校验
人工智能·pytorch·python·深度学习·机器学习
奶黄小甜包3 小时前
C语言零基础第9讲:指针基础
c语言·笔记·学习
泽虞3 小时前
C语言深度语法掌握笔记:语法陷阱、内存管理、指针系统
c语言·笔记·面试
开放知识图谱4 小时前
论文浅尝 | 利用大语言模型进行高效实体对齐(ACL2024)
人工智能·语言模型·自然语言处理
在钱塘江4 小时前
LangGraph构建Ai智能体-3-智能体调用工具
人工智能·python
yanxing.D5 小时前
考研408_数据结构笔记(第四章 串)
数据结构·笔记·考研·算法