本文分享自 6丁一的猫 的博客,主要是python调用hanlp进行命名实体识别的方法介绍。以下为分享的全文。

1、python与jdk版本位数一致

2、pip install jpype1(python3.5)

3、类库hanlp.jar包、模型data包、配置文件hanlp.properties放在一个新建目录

4、修改hanlp.properties中root根目录,找到data

代码调用如下:

1|#coding:utf-8

2|'''

3|Created on 2017-11-21

4|

5|@author: 刘帅

6|'''

7|

8|

9|from jpype import *

10|

11|startJVM(getDefaultJVMPath(), "-Djava.class.path=D:\hanlp\hanlp-1.3.4.jar;D:\hanlp", "-Xms1g", "-Xmx1g") # 启动JVM,Linux需替换分号;为冒号:

12|HanLP = JClass('com.hankcs.hanlp.HanLP')

13|# 中文分词

14|print(HanLP.segment('你好,欢迎在Python中调用HanLP的API'))

testCases = [

15|    "商品和服务",

16|    "结婚的和尚未结婚的确实在干扰分词啊",

17|    "买水果然后来世博园最后去世博会",

18|    "中国的首都是北京",

19|    "欢迎新老师生前来就餐",

20|    "工信处女干事每月经过下属科室都要亲口交代24口交换机等技术性器件的安装工作",

21|    "随着页游兴起到现在的页游繁盛,依赖于存档进行逻辑判断的设计减少了,但这块也不能完全忽略掉。"]

22|for sentence in testCases: print(HanLP.segment(sentence))

23|# 命名实体识别与词性标注

24|NLPTokenizer = JClass('com.hankcs.hanlp.tokenizer.NLPTokenizer')

25|print(NLPTokenizer.segment('中国科学院计算技术研究所的宗成庆教授正在教授自然语言处理课程'))

26|# 关键词提取

27|document = "水利部水资源司司长陈明忠9月29日在国务院新闻办举行的新闻发布会上透露," \

28|           "根据刚刚完成了水资源管理制度的考核,有部分省接近了红线的指标," \

29|           "有部分省超过红线的指标。对一些超过红线的地方,陈明忠表示,对一些取用水项目进行区域的限批," \

30|           "严格地进行水资源论证和取水许可的批准。"

31|print(HanLP.extractKeyword(document, 2))

32|# 自动摘要

33|print(HanLP.extractSummary(document, 3))

34|# 依存句法分析

35|print(HanLP.parseDependency("徐先生还具体帮助他确定了把画雄鹰、松鼠和麻雀作为主攻目标。"))

36|shutdownJVM()

结果如下:

1|[你好/vl, ,/w, 欢迎/v, 在/p, Python/nx, 中/f, 调用/v, HanLP/nx, 的/ude1, API/nx]

2|[商品/n, 和/cc, 服务/vn]

3|[结婚/vi, 的/ude1, 和/cc, 尚未/d, 结婚/vi, 的/ude1, 确实/ad, 在/p, 干扰/vn, 分词/n, 啊/y]

4|[买/v, 水果/n, 然后/c, 来/vf, 世博园/n, 最后/f, 去/vf, 世博会/n]

5|[中国/ns, 的/ude1, 首都/n, 是/vshi, 北京/ns]

6|[欢迎/v, 新/a, 老/a, 师生/n, 前来/vi, 就餐/vi]

最新文章

  1. 一个有趣的CM
  2. javascript 核心语言笔记- 2 语法结构
  3. windows核心编程 - 线程基础
  4. java 给指定时间加上天数or给当前日期加天数
  5. 山东省滕州市木石镇化石沟村QQ群116528924
  6. 2016 - 1 - 22 HTTP(二)
  7. Javascript 正则表达式校验数字
  8. JS操作Radio与Select
  9. 发布方配ASP.NET网站服务器
  10. Contest1065 - 第四届“图灵杯”NEUQ-ACM程序设计竞赛(个人赛)B一个简单的问题
  11. C#对word、excel、pdf等格式文件的操作总结
  12. Project Euler problem 61
  13. AngularJS展示数据的ng-bind指令和{{}} 区别
  14. IDL 的读写
  15. BZOJ 2463: [中山市选2009]谁能赢呢?(新生必做的水题)
  16. java中强,软,弱,虚引用 以及WeakHahMap
  17. HDFS配额管理(实战)
  18. 《java入门第一季》之java语法部分小案例
  19. Pac-Man 吃豆人
  20. 转自: linux svn命令行无法拉取中文名称的文件

热门文章

  1. (十七)线程,connect的第五个参数
  2. [Luogu] 魔法树
  3. Poj 3764 The xor-longest Path(Trie树+xor+贪心)
  4. 索引有B+索引和hash索引,各自的区别
  5. spring MVC 拦截有几种实现方式
  6. 2018-2019-2 20175226王鹏雲 实验四《Android程序设计》实验报告
  7. C# 7 .NET / CLR / Visual Studio version requirements
  8. P2456 [SDOI2006]二进制方程
  9. 自定义vue-cli生成项目模板配置(1)
  10. 为macos开启外接显示器hdpi分辨率