新闻  |   论坛  |   博客  |   在线研讨会
nutch的中文分词插件
singlerwong | 2008-07-17 14:48:29    阅读:16172   发布文章

试用了好多的中文插件,有CJK,ICTCLAS的还有IK_CAnaylzer的,经过试用测试后,发现最后一个比较好用。CJK基本就是二元分词没有一点意义。本文分两个部分,第一部分是两种插件测试结果的对比,第二部分是如果给nutch增加插件。
第一部分:
================================原文=============================================
他从马上摔下来了。
你马上下来一下。
结合成分子时
薄熙来字词担任商务部长以来,一直兢兢业业。
张华平1995年离开江西鄱阳老家就读于北方工业大学,如今已经是中科院计算所的副研究员,他说ICTCLAS就像是他的孩子一样珍爱;
=================================ICTCLAS==========================================
他 从 马 上 摔 下 来 了 。
你 马上 下来 一下 。
结合 成 分子 时
薄熙来 字 词 担任 商务 部长 以来 , 一直 兢兢业业 。
张华平 1995年 离开 江西 鄱阳 老家 就读 于 北方 工业 大学 , 如今 已经 是 中科院 计算 所 的 副 研究员 , 他 说 ICTCLAS 就 像 是 他 的 孩子 一样 珍爱 ; 
=================================IK_CAnalyzer======================================
马上 摔下来 摔下 下来 来了 马上 上下 下来 来一下 一下 一 下 结合 合成 成分 分子 子时 时 薄熙来 字词 担任 商务部长 商务部 商务 部长 以来 一直 一 兢兢业业 业 张华 平 1995年 1995 年 离开 开江 江西 鄱阳 老家 就读于 就读 北方 工业大学 工业 业大 大学 大 如今 已经是 已经 中科院 计算所 计算 副研究员 研究员 研究 员 ictclas 就像 像是 孩子 一样 一 珍爱 爱 
==============================总结===========================================
大家发现了吧,后一种分词的可能性更多,更适合做中文搜索引擎。

第二部分
IK_CAnalyzer的下载地址:
http://download.csdn.net/source/160428
这个下载到是一个jar文件,我命名成analysis-ikc.jar,在项目的plugins目录下建立了一个新的目录:analysis-ikc,把该jar包复制过来,建立了一个plugin.xml,代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<plugin
   id="analysis-ikc"
   name="Basic Indexing Filter"
   version="1.0.0"
   provider-name="nutch.org">

   <runtime>
      <library name="analysis-ikc.jar">
         <export name="*"/>
      </library>
   </runtime>

   <requires>
      <import plugin="nutch-extensionpoints"/>
   </requires>

   <extension id="org.mira.lucene.analysis"
              name="IK_CAnalyzer"
              point="org.mira.lucene.analysis.IK_CAnalyzer">
   <implementation id="NutchAnalyzer"
                      class="org.apache.nutch.analysis.NutchAnalyzer"/>
   </extension>
</plugin>
===================我是分割线=============================================
修改nutch-default.xml文件,主要是里面的plugin.includes段,把analysis-ikc写入value对中,如果你还添加了别的分词插件,要把别的插件的名字删掉,写入下面的plugin.excludes里面。保存退出,重启tomcat,然后就可以执行爬行了。
爬行时,先建立一个urls目录,里面建立网址文件,比如我的eepw文件,里面只有一个网址。
再修改crawl-filter.txt把里面网址部分的正则表达式改掉,然后就可以在nutch目录下执行爬行了。爬好后修改tomcat里面classes/nutch-site.xml里面,把搜索目录改成你的索引目录,重启tomcat后,就可以执行搜索了。
爬行命令:[root@xxx] # bin/nutch crawl nutch -dir crawl.eepw -depth 3 -threads 4 -topN 50 >&crawl.log

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
[ 匿名]  2008-09-18 13:36:05 

在nutch-0.9版本下,按照上述操作,结果在抓取时跑出了异常,Job failed。 能否更为详细的说一下具体的配置过程。

legu_007  2008-08-02 00:08:49 

我试了一下,没起效果,crawl的时候还是按默认的中文单字切分建的索引。

legu_007  2008-08-02 00:07:14 

我有疑问,你这样仅仅改动了一下配置文件而已,执行crawl命令的时候是如何保证调用的analyzer是analysis-ikc.jar包里面的分析器?

你们呢个 [ 匿名]  2008-08-01 23:38:47 

慰问慰问

Melinda  2008-07-23 17:35:16 

挺好

singlerwong  2008-07-21 13:14:53 

0.9版的

[ 匿名]  2008-07-19 13:39:52 

请问您用的nutch哪个版本?

推荐文章
最近访客