赞
踩
2019-06-06 版本V1.0
参考链接:http://www.hankcs.com/nlp/hanlp.html
<dependency>
<groupId>com.hankcs</groupId>
<artifactId>hanlp</artifactId>
<version>portable-1.7.0</version>
</dependency>
测试时,1.7.3失败,所以改为1.7.0
可以实现基本的功能(除去CRF分词和依存句法分析)
将数据和程序分离,用户可以自定义
1、下载data.zip
本机文件位置:E:\data
下载后解压到任意目录,接下来通过配置文件告诉HanLP数据包的位置
data
| -- dictionary
| -- model
用户可以自行增删替换,如果不需要句法分析等功能的话,随时可以删除model文件夹。
2、下载jar和配置文件:hanlp-release.zip
配置文件的作用是告诉HanLP数据包的位置,只需修改第一行
由于我的data目录为 E:\data,所以配置文件(E:\hanlp-1.7.3-release\hanlp.properties)的第一行为:*root=E:* (需要注意python调用时需要把data放到工程文件下,相应的配置文件的root配置的也不一样)
最后将hanlp.properties放入classpath即可,对于多数项目,都可以放到src或resources目录下,编译时IDE会自动将其复制到classpath中。除了配置文件外,还可以使用环境变量HANLP_ROOT来设置root。
github上下载:https://github.com/hankcs/HanLP
在src/test/java/com/hankcs/demo 下会有相应的demo进行测试
本机文件位置:E:\HanLP
里面的一些测试,需要下载相应的语料,放到:E:\HanLP\data\test中便于训练使用
conda install -c conda-forge jpype1
@jpype是为了便于调用jar包
pip install pyhanlp
调用HanLP
from jpype import *
startJVM(getDefaultJVMPath(), "-Djava.class.path=E:\hanlp-1.7.3-release\hanlp-1.7.3.jar;E:\hanlp", "-Xms1g", "-Xmx1g")
HanLP = JClass('com.hankcs.hanlp.HanLP')
以依存句法为例:
from jpype import
*startJVM(getDefaultJVMPath(), "-Djava.class.path=E:\hanlp-1.7.3-release\hanlp-1.7.3.jar;E:\hanlp", "-Xms1g", "-Xmx1g")
HanLP = JClass('com.hankcs.hanlp.HanLP')
print(HanLP.parseDependency("徐先生还具体帮助他确定了把画雄鹰、松鼠和麻雀作为主攻目标。"))#该行可删除
f = open("ab.txt",'w', encoding='utf-8')
print((HanLP.parseDependency("徐先生还具体帮助他确定了把画雄鹰、松鼠和麻雀作为主攻目标。")),file = f)
f.close()
依存句法可视化工具的使用:DependencyViewer
利用工具将文件ab.txt打开
[外链图片转存失败(img-LEjJCfvH-1562570411246)(en-resource://database/453:1)]@w=500h=300
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。