多语言展示
当前在线:164今日阅读:55今日分享:34

怎样利用Nutch搭建自己的搜索引擎和爬虫

Nutch是Java平台上运用得较为广泛的爬虫工具,开发社区也相当活跃,版本更新很快。可以利用Nutch配置中文分词工具,搭建一个简单的抓取和搜索服务。
工具/原料
1

Nutch-1.1

2

IK中文分词(也可以用Paoding或者Imdict)

3

Linux环境或(Cygwin)

步骤/方法
1

到Nutch.apache.org下载最新版本的Nutch

2

到code.google.com/p/ik-analyzer/下载IK分词器

3

修改部分Nutch源代码,以使其适应中文搜索。(其实Nutch自带有语言检测机制,不过不太靠谱,一般都是强制采用中文分词)中文分词是以插件形式加载的。

4

实现一个继承了NutchAnalyzer类的中文分词类,覆盖其中的tokenStream方法。 保存在src/plugin/analyze-zh上(名字自己定),并填写plugin.xml文件。

5

修改NutchAnalysis的parse方法,代码大致如下: Query query = new Query(conf);  StringReader input = new StringReader(queryString); org.apache.lucene.analysis.Tokenizer tokenizer = new org.wltea.analyzer.lucene.IKTokenizer(input,true);  terator its = tokenizer.getAttributeImplsIterator();  while(tokenizer.incrementToken()) { TermAttribute t = tokenizer.getAttribute(TermAttribute.class); String[] array = { t.term() }; //OffsetAttribute oa = tokenizer.getAttribute(OffsetAttribute.class); query.addRequiredPhrase(array); } return query;

6

...

注意事项

添加searcher.dir属性到nutch-site.xml中,指定索引文件所在目录。

推荐信息