pyhanlp用户自定义词典添加实例说明
pyhanlp用户自定义词典添加实例说明
pyhanlp是python版封装的的HanLP,项目地址:https://github.com/hankcs/pyhanlp
经过测试,HanLP比nltk在中文分词和实体识别方面都更好用.
如何向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
pyhanlp用户自定义词典添加实例说明的更多相关文章
- pyhanlp 停用词与用户自定义词典功能详解
hanlp的词典模式 之前我们看了hanlp的词性标注,现在我们就要使用自定义词典与停用词功能了,首先关于HanLP的词性标注方式具体请看HanLP词性标注集. 其核心词典形式如下: 自定义词典 自定 ...
- HanLP用户自定义词典源码分析
HanLP用户自定义词典源码分析 1. 官方文档及参考链接 关于词典问题Issue,首先参考:FAQ 自定义词典其实是基于规则的分词,它的用法参考这个issue 如果有些数量词.字母词需要分词,可参考 ...
- HanLP用户自定义词典源码分析详解
1. 官方文档及参考链接 l 关于词典问题Issue,首先参考:FAQ l 自定义词典其实是基于规则的分词,它的用法参考这个issue l 如果有些数量词.字母词需要分词,可参考:P2P和C2C这种词 ...
- Vue.js Cookbook: 添加实例属性; 👍 axios(4万➕✨)访问API; filters过滤器;
add instance properties //加上$,防止和已经定义的data,method, computed的名字重复,导致被覆写.//可以自定义添加其他符号. Vue.prototype. ...
- myBatis批量添加实例
<!-- 批量添加中转地数据 --> <insert id="addBatch" parameterType="com.isoftstone. ...
- 2------------NLPIR(ICTCLAS2016)分词系统添加用户词典功能
备注:win7 64位系统,netbeans编程 基本代码框架参见我的另一篇文章:NLPIR分词功能 代码实现: package cwordseg; import java.io.Unsupporte ...
- MPS添加管理设备实例NS的过程
MPS添加管理设备实例NS的过程 MPS添加实例NS设备节点: > show snmp community Done > > add snmp community public al ...
- zookeeper动态添加/删除集群中实例(zookeeper 3.6)
一,用来作为demo操作的zookeeper集群中的实例: 机器名:zk1 server.1=172.18.1.1:2888:3888 机器名:zk2 server.2=172.18.1.2:2888 ...
- HanLP二元核心词典解析
HanLP二元核心词典解析 本文分析:HanLP版本1.5.3中二元核心词典的存储与查找.当词典文件没有被缓存时,会从文本文件CoreNatureDictionary.ngram.txt中解析出来存储 ...
随机推荐
- 判断input checkbox选中
$("#chexk").get(0).checked $("#chexk").is(':checked')
- 【Python】unittest-5
#练习9: import unittest from selenium import webdriver import time class GloryRoad(unittest.TestCase): ...
- PMP基本概念
项目是为创造独特的产品,服务或成果而进行的临时性的工作.项目的三个特点是:临时,独特,渐进明细. 运营是遵循组织有流程的重复性工作. 项目组合是为了实现战略目标而组合在一起管理的项目,项目集,子项目组 ...
- vsftp管理脚本(CentOS6用)
#!/bin/bash # ### BEGIN INIT INFO # Provides: vsftpd # Required-Start: $local_fs $network $named $re ...
- Buildroot Savedefconfig
/********************************************************************************* * Buildroot Saved ...
- 【leetcode】58-LengthofLastWord
problem Length of Last Word 只有一个字符的情况: 最后一个word至字符串末尾之间有多个空格的情况: code1 class Solution { public: int ...
- LAMP搭建个人网站
最近发了一篇paper,需要把成果展示出来,想到正好想到自己有一个阿里云服务器,并且在万网上看到www.yongjieshi.com这个域名一年才50块钱,于是决定搭建一个自己的网站 如果linux玩 ...
- The NMEA 0183 Protocol
The NMEA 0183 Protocol NMEA0183 协议是由美国国家海洋电子协会开发.维护并发布的标准,用于航海远洋时使用的电子仪器之间的通信. 目前大部分的 GPS 接受设备都遵循这一标 ...
- render finished
- 《DSP using MATLAB》Problem 5.34
第1小题 代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ...