Nutch1.2增加IKAnalyzer中文分词

原版nutch中对中文的处理是按字划分,而不是按词划分。为适应我们的使用习惯必须加上中文分词,我加的是 IKAnalyzer。下面是我的方法,我把前台和后台爬虫用两种方法实现中文分词,后台直接替换nutch的analyzer,前台则修改NutchAnalysis.jj(注:我的前台和后台是两个项目)。

前台修改:

在src/java/org/apache/nutch/analysis包下找到NutchAnalysis.jj

(1) 在 PARSER_BEGIN(NutchAnalysis)部分的导入声明中增加如下段
             

    (2)在 TOKEN_MGR_DECLS : {    下面增加如下段
       

   (3) 到 TOKEN : { 部分,找到| <SIGRAM: <CJK> >,这代表按字划分,修改为| <SIGRAM: (<CJK>)+ >

并在其后面加上

(4)用javacc工具生成NutchAnalysis.jj的源代码,将生成的所有java源代码全部覆盖到 src/java/org/apache/nutch/analysis包下.
       有异常的话抛出就行.

后台爬虫修改:

 修改src/java/org/apache/nutch/analysis包下的NutchDocumentAnalyzer,

在private static Analyzer ANCHOR_ANALYZER;后面加上

 
 在ANCHOR_ANALYZER = new AnchorAnalyzer();后面加上
   

 把 tokenStream修改为:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值