当前位置:   article > 正文

Python的pyhanlp库使用(一)

pyhanlp

该库是自然处理处理的库,有如下功能:

  1. 中文分词
  2. 词性标注
  3. 关键词提取
  4. 文本摘要
  5. 依存句法分析
  6. 短语提取

1 安装

       直接使用pip install pyhanlp进行安装,安装后在第一次使用时,当运行from pyhanlp import *时,会下载hanlp的数据文件,如图:

      但这个文件比较大,通常下载失败,可以进行手动下载并放到要求的路径下。去官网下载data-for-1.7.5.zip(会一直更新,下载最新版的即可),下载链接:

https://github.com/hankcs/HanLP/releases

  找到 data-for-1.7.2.zip 进行下载,然后把下载的文件放到该目录下:

F(某盘):\Anaconda3\Lib\site-packages\pyhanlp\static

再执行from pyhanlp import *,完成自动解压。

2 使用

2.1 分词

  1. from pyhanlp import *
  2. sentence = "异地贷款需要具备哪些条件"
  3. # 返回一个列表,可以获取分词和它的词性
  4. words = HanLP.segment(sentence)
  5. for term in words:
  6. print(term.word,term.nature)
  7. 异地 n
  8. 贷款 n
  9. 需要 v
  10. 具备 v
  11. 哪些 ry
  12. 条件 n
  1. 词性:
  2. a 形容词
  3. ad 副形词
  4. ag 形容词性语素
  5. al 形容词性惯用语
  6. an 名形词
  7. b 区别词
  8. begin
  9. bg 区别语素
  10. bl 区别词性惯用语
  11. c 连词
  12. cc 并列连词
  13. d 副词
  14. dg 辄,俱,复之类的副词
  15. dl 连语
  16. e 叹词
  17. end 仅用于终##终
  18. f 方位词
  19. g 学术词汇
  20. gb 生物相关词汇
  21. gbc 生物类别
  22. gc 化学相关词汇
  23. gg 地理地质相关词汇
  24. gi 计算机相关词汇
  25. gm 数学相关词汇
  26. gp 物理相关词汇
  27. h 前缀
  28. i 成语
  29. j 简称略语
  30. k 后缀
  31. l 习用语
  32. m 数词
  33. mg 数语素
  34. Mg 甲乙丙丁之类的数词
  35. mq 数量词
  36. n 名词
  37. nb 生物名
  38. nba 动物名
  39. nbc 动物纲目
  40. nbp 植物名
  41. nf 食品,比如“薯片”
  42. ng 名词性语素
  43. nh 医药疾病等健康相关名词
  44. nhd 疾病
  45. nhm 药品
  46. ni 机构相关(不是独立机构名)
  47. nic 下属机构
  48. nis 机构后缀
  49. nit 教育相关机构
  50. nl 名词性惯用语
  51. nm 物品名
  52. nmc 化学品名
  53. nn 工作相关名词
  54. nnd 职业
  55. nnt 职务职称
  56. nr 人名
  57. nr1 复姓
  58. nr2 蒙古姓名
  59. nrf 音译人名
  60. nrj 日语人名
  61. ns 地名
  62. nsf 音译地名
  63. nt 机构团体名
  64. ntc 公司名
  65. ntcb 银行
  66. ntcf 工厂
  67. ntch 酒店宾馆
  68. nth 医院
  69. nto 政府机构
  70. nts 中小学
  71. ntu 大学
  72. nx 字母专名
  73. nz 其他专名
  74. o 拟声词
  75. p 介词
  76. pba 介词“把”
  77. pbei 介词“被”
  78. q 量词
  79. qg 量词语素
  80. qt 时量词
  81. qv 动量词
  82. r 代词
  83. rg 代词性语素
  84. Rg 古汉语代词性语素
  85. rr 人称代词
  86. ry 疑问代词
  87. rys 处所疑问代词
  88. ryt 时间疑问代词
  89. ryv 谓词性疑问代词
  90. rz 指示代词
  91. rzs 处所指示代词
  92. rzt 时间指示代词
  93. rzv 谓词性指示代词
  94. s 处所词
  95. t 时间词
  96. tg 时间词性语素
  97. u 助词
  98. ud 助词
  99. ude1 的 底
  100. ude2
  101. ude3
  102. udeng 等 等等 云云
  103. udh 的话
  104. ug 过
  105. uguo 过
  106. uj 助词
  107. ul 连词
  108. ule 了 喽
  109. ulian 连 (“连小学生都会”)
  110. uls 来讲 来说 而言 说来
  111. usuo 所
  112. uv 连词
  113. uyy 一样 一般 似的 般
  114. uz 着
  115. uzhe 着
  116. uzhi 之
  117. v 动词
  118. vd 副动词
  119. vf 趋向动词
  120. vg 动词性语素
  121. vi 不及物动词(内动词)
  122. vl 动词性惯用语
  123. vn 名动词
  124. vshi 动词“是”
  125. vx 形式动词
  126. vyou 动词“有”
  127. w 标点符号
  128. wb 百分号千分号,全角:% ‰ 半角:%
  129. wd 逗号,全角:, 半角:,
  130. wf 分号,全角:; 半角: ;
  131. wh 单位符号,全角:¥ $ £ ° ℃ 半角:$
  132. wj 句号,全角:。
  133. wky 右括号,全角:) 〕 ] } 》 】 〗 〉 半角: ) ] { >
  134. wkz 左括号,全角:( 〔 [ { 《 【 〖 〈 半角:( [ { <
  135. wm 冒号,全角:: 半角: :
  136. wn 顿号,全角:、
  137. wp 破折号,全角:—— -- ——- 半角:— —-
  138. ws 省略号,全角:…… …
  139. wt 叹号,全角:!
  140. ww 问号,全角:?
  141. wyy 右引号,全角:” ’ 』
  142. wyz 左引号,全角:“ ‘ 『
  143. x 字符串
  144. xu 网址URL
  145. xx 非语素字
  146. y 语气词(delete yg)
  147. yg 语气语素
  148. z 状态词
  149. zg 状态词

2.2 关键词提取

  1. from pyhanlp import *
  2. text = "3月4日,在北京2022年冬残奥会开幕式上,一本精致美观的手册出现在每位观众和嘉宾的手中,\
  3. 这是由北京印刷学院教授夏小奇带领团队设计的《北京2022年冬残奥会开幕式》手册,\
  4. 在色彩氛围、页码设计、纸张选用等方面都做了暖心设计。"
  5. # 提取文本的两个关键词,返回列表
  6. print(HanLP.extractKeyword(text, 2))
  7. [设计, 手册]

2.3 文本摘要

  1. from pyhanlp import *
  2. text = "3月4日,在北京2022年冬残奥会开幕式上,一本精致美观的手册出现在每位观众和嘉宾的手中,\
  3.         这是由北京印刷学院教授夏小奇带领团队设计的《北京2022年冬残奥会开幕式》手册,\
  4.         在色彩氛围、页码设计、纸张选用等方面都做了暖心设计。"
  5. # 提取文本中的2个关键句作为摘要,返回列表
  6. print(HanLP.extractSummary(document,2))
  7. [这是由北京印刷学院教授夏小奇带领团队设计的《北京2022年冬残奥会开幕式》手册, 在北京2022年冬残奥会开幕式上]

2.4 依存句法分析

  1. from pyhanlp import *
  2. print(HanLP.parseDependency("普京在会谈中强调,俄方将全面完成在乌克兰的行动。"))
  3. 1 普京 普京 nh nrf _ 3 主谓关系 _ _
  4. 2 在会谈中 在会谈中 i l _ 3 状中结构 _ _
  5. 3 强调 强调 v v _ 0 核心关系 _ _
  6. 4 , , wp w _ 3 标点符号 _ _
  7. 5 俄方 俄方 n n _ 11 主谓关系 _ _
  8. 6 将 将 d d _ 11 状中结构 _ _
  9. 7 全面完成 全面完成 i l _ 11 定中关系 _ _
  10. 8 在 在 p p _ 11 定中关系 _ _
  11. 9 乌克兰 乌克兰 ns ns _ 8 介宾关系 _ _
  12. 10 的 的 u u _ 8 右附加关系 _ _
  13. 11 行动 行动 v vn _ 3 动宾关系 _ _
  14. 12 。 。 wp w _ 3 标点符号 _ _

可以使用南大NLP实验室开发的可视化工具:http://nlp.nju.edu.cn/tanggc/tools/DependencyViewer.exeicon-default.png?t=M1L8http://nlp.nju.edu.cn/tanggc/tools/DependencyViewer.exe

2.5 短语提取

  1. from pyhanlp import *
  2. text = "全国上下共同努力,统筹疫情防控和经济社会发展,全年主要目标任务较好完成"
  3. #抽取5个短语
  4. phraseList = HanLP.extractPhrase(text, 5)
  5. print(phraseList);
  6. [全国上下共同努力, 疫情防控, 经济社会发展, 防控经济社会, 统筹疫情]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/348930?site
推荐阅读
相关标签
  

闽ICP备14008679号