python做SEO相关事情,我在之前的文章已经讲到过,今天给大家分享python中文分词的一些知识。
说到分词,如果是做GOOGLE的朋友,那用python分词很简单,可以直接根据空格来分词,或者有相关的nltk模块来处理。
中文分词的话,就比较麻烦,因为不能通过空格来分词,并且分词还得考虑语义问题等。
下面列出几个比较好的中文分词:我用的比较多的是结巴分词,下面详细介绍下:
1 结巴分词 0.22 发布,Python 中文分词组件
jieba 支持三种分词模式:
精确模式,试图将句子最精确地切开,适合文本分析;
全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。
并且有5个功能:1分词 2添加自定义词典 3 关键词提取 4 词性标注 5 并行分词
Python 2.x 下的安装
全自动安装:easy_install jieba 或者 pip install jieba
半自动安装:先下载http://pypi.python.org/pypi/jieba/ ,解压后运行python setup.py install
手动安装:将jieba目录放置于当前目录或者site-packages目录
通过import jieba 来引用 (第一次import时需要构建Trie树,需要几秒时间)
Python 3.x 下的安装
目前master分支是只支持Python2.x 的
Python3.x 版本的分支也已经基本可用: https://github.com/fxsjy/jieba/tree/jieba3k
git clone https://github.com/fxsjy/jieba.git
git checkout jieba3k
python setup.py install
2 pymmseg-cpp: 是一个Python端口pymmseg-CPP,的rmmseg CPP项目的。 rmmseg-CPP是一个MMSEG中文分词算法的实现在一个Ruby的C + +接口。
3 Loso:Loso是一个用Python编写的中文分词系统。
它最初被开发为改善Plurk搜索,但适用简体中文。
4 smallseg :
smallseg -- 开源的的轻量级的中文分词工具包
特点:可自定义词典、速度快、可在Google App Engine上运行。
5 句读:http://judou.org/
1 开放的中文分词项目
2 高性能、高可用性分词系统