hadoop小学生
精灵王
精灵王
  • 注册日期2018-09-13
  • 发帖数160
  • QQ3234520070
  • 火币360枚
  • 粉丝0
  • 关注0
阅读:2961回复:0

pyhanlp用户自定义词典添加实例说明

楼主#
更多 发布于:2018-12-17 13:21


pyhanlppython版封装的的hanlp,项目地址:https://github.com/hankcs/pyhanlp
经过测试,HanLP比nltk在中文分词和实体识别方面都更好用.

图片:HANLP.jpg


如何向pyhanlp添加自定义的词典?以python 2.7.9为例:
1.安装pyhanlp:pip install pyhanlp
2.在字典路径下添加自定义的词典:CustomDictionary主词典文本路径是data/dictionary/custom/CustomDictionary.txt,用户可以在此增加自己的词语(不推荐);也可以单独新建一个文本文件,通过配置文件;CustomDictionaryPath=data/dictionary/custom/CustomDictionary.txt; 我的词典.txt;来追加词典(推荐)。
具体绝对路径可用hanlp --version获取:
#hanlp --version
jar1.6.3:/usr/local/lib/python2.7/site-packages/pyhanlp/static/hanlp-1.6.3.jar
data 1.6.2: /usr/local/lib/python2.7/site-packages/pyhanlp/static/data
config:/usr/local/lib/python2.7/site-packages/pyhanlp/static/hanlp.properties
#cat /usr/local/lib/python2.7/site-packages/pyhanlp/static/hanlp.properties | grep "CustomDictionaryPath"
3.建议在该路径下添加自己的词典文件例如 我的词典.txt,并将其加入上面的properties文件里的CustomDictionaryPath下面。
#cat 我的词典.txt  
codis集群 nz 1000
今日头条 nz 1000

第一列为词条,第二列为词性(默认为n),第三列为词频
4.然后需要删除缓存文件,这样python才会重新加载新增的文件:
#rm -f CustomDictionary.txt.bin

5.测试新增的词典:
python -c "from pyhanlp import *;print(HanLP.segment('codis集群,今日头条'))"
五月 16, 2018 4:43:14 下午 com.hankcs.hanlp.corpus.io.IOUtil readBytes
警告:读取
/usr/local/lib/python2.7/site-packages/pyhanlp/static/data/dictionary/custom/CustomDictionary.txt.bin时发生异常java.io.FileNotFoundException: /usr/local/lib/python2.7/site-packages/pyhanlp/static/data/dictionary/custom/CustomDictionary.txt.bin (没有那个文件或目录)

报这个错误没有关系,只是个warning,重新加载缓存文件而已。

备注:
HanLP词性列表:详细的词性列表可以查询hanlp项目网站上内容,更为全面详细!
---------------------
作者:明月三千里68

喜欢0 评分0
DKHadoop用着还不错!
游客

返回顶部