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

python调用hanlp分词包手记

楼主#
更多 发布于:2018-12-26 13:01
python调用hanlp分词包手记

图片:封面.jpg


hanlp作为一款重要的分词工具,本月初的时候看到大快搜索发布了hanlp的1.7版本,新增了文本聚类、流水线分词等功能。关于hanlp1.7版本的新功能,后面有使用的到时候在给大家分享。本篇分享一个在python里调用hanlp分词包的过程文章,供需要的朋友参考学习交流!以下为文章内容:

1.在python下安装pyhanlp
sudo pip install pyhanlp
详见pyhanlp官方文档

2.pyhanlp的一些使用方法
1)Hanlp.segment的使用
from pyhanlp import *
print HanLP.segment("今天开心了吗?")
#输出:[今天/t, 开心/a, 了/ule, 吗/y, ?/w]
(2)其它API函数的使用。
pyhanlp里已经含有以下这些功能了,可以直接调用)
1 - # API列表
2CustomDictionary= LazyLoadingJClass('com.hankcs.hanlp.dictionary.CustomDictionary')
3 HanLP = SafeJClass('com.hankcs.hanlp.HanLP')
4 HanLP.Config = JClass('com.hankcs.hanlp.HanLP$Config')
5PerceptronLexicalAnalyzer= SafeJClass('com.hankcs.hanlp.model.perceptron.PerceptronLexicalAnalyzer')
6 DoubleArrayTrieSegment = SafeJClass('com.hankcs.hanlp.seg.Other.DoubleArrayTrieSegment')
7AhoCorasickDoubleArrayTrie = SafeJClass('com.hankcs.hanlp.collection.AhoCorasick.AhoCorasickDoubleArrayTrie')
8IOUtil = SafeJClass('com.hankcs.hanlp.corpus.io.IOUtil')
9TraditionalChineseTokenizer=SafeJClass('com.hankcs.hanlp.tokenizer.TraditionalChineseTokenizer')

调用方法
analyzer=PerceptronLexicalAnalyzer()
a =analyzer.analyze("今天开心了吗?")
print a

3.其它更多的功能的实现。
比如繁体分词,自动生成摘要这些hanlp能实现的,但不在以上API函数里面的,我们可以通过以下方法。
首先要在“../pyhanlp/init.py”pycharm文件下通过jclass语句引入更深类路径。比如(我引入的是中文繁体分词这个API函数)
TraditionalChineseTokenizer=SafeJClass('com.hankcs.hanlp.tokenizer.TraditionalChineseTokenizer')
然后就可以直接调用了,真的超级棒。
print TraditionalChineseTokenizer.segment('三華裔獲得傑出青年獎‘)
#输出:[三/m, 華裔/n, 獲得/v, 傑出青年/nz, 獎/n]
-其它更多的API函数的路径请参考java原代码。
---------------------
作者:小傻子kkk

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

返回顶部