nutch中文分词(通过插件的方式)

1、需要的工具:IKAnalyzer jar包(将其命名为analysis-zh.jar)  javacc工具 ant

2、部署nutch工程到eclipse中。

3、定义自己的分词类,代码如下

                       

package com.gpower.nutch.plugin;
import java.io.Reader;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.TokenStream;
import org.apache.nutch.analysis.NutchAnalyzer;
import org.wltea.analyzer.lucene.IKAnalyzer;

public class MyAnalyzer extends NutchAnalyzer{
	private final static Analyzer ANALYZER = new IKAnalyzer();
	@SuppressWarnings("unused")
	private static final Log LOG = LogFactory.getLog(MyAnalyzer.class);
	@Override
	public TokenStream tokenStream(String fieldName, Reader reader) {

					
		return ANALYZER.tokenStream(fieldName, reader);
				
	}

}

   4、将此文件在eclipse中打包成MyAnalyzer.jar文件

    5、为插件编写plugin.xml文件

         

<?xml version="1.0" encoding="UTF-8"?>
<plugin id="MyAnalyzer-zh" name="Analyzer_self" version="1.0.0" provider-name="nutch.org">
    <runtime>
        <library name="MyAnalyzer-zh.jar"><export name="*"/></library>
    </runtime>
    <requires>
        <import plugin="nutch-extensionpoints"/>
    </requires>
    <extension id="com.gpower.nutch.plugin.MyAnalyzer"
               name="Self Nutch Plugin Analyzer"
               point="org.apache.nutch.analysis.NutchAnalyzer">
       <implementation id="MyAnalyzer-zh"
				class="com.gpower.nutch.plugin.MyAnalyzer">
           <parameter name="lang" value="zh"/>
       </implementation>
    </extension>
</plugin>

 

   6、运行NGramProfile类,生成zh.ngp文件,将生成的文件拷贝到src/plugin/languageidentfier/src/java目录下的org.apache.nutch.anaysis.lang包下面

7、修改NutchAnalysis文件,编译此文件,覆盖(详见本博客中的另一篇关于nutch中文分词的文章)

8、创建目录Myanalyzer,在此目录下放入(plugin.xml,MyAnalyzer.jar,analysis-zh.jar),然后将此目录拷贝到nutch-1.0\plugins\目录下。

9、ant编译工程(详见本博客中的另一篇关于nutch中文分词的文章)

10、爬虫、部署、测试(详见本博客中的另一篇关于nutch中文分词的文章)

你可能感兴趣的:(apache,eclipse,xml,ant,Lucene)