<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog01.html" frameborder="0" width="728" scrolling="no" height="90"></iframe>
在Google里面搜索了一些Nutch的资料,还真不多。今天画了两个小时搞了一通,把一些心得纪录下来。
我的jdk 是1.5.x ,Tomcat是5.0.x
1 下载0.7.2 版本的包:里面已经包含了war文件,所以不需要Ant编译了
2 安装Cygwin,这个没什么好说的。
3 把Nutch借压缩到D:/nutch
4 在D:/nutch下面建立一个文件 urls (没有后缀)
http://www.xxx.edu.cn/
5 在D:/nutch/conf/crawl-urlfilter.txt里面,加入
+^http://www.xxx.edu.cn/
6 环境变量加入
NUTCH_JAVA_HOME = D:/jdk1.5.0_06
7 打开cygwin窗口,
cd D:/nutch
在D:/nutch下面执行
bin/nutch crawl urls -dir crawled -depth 3 >& crawl.log
这个命令会在当前目录下建立一个crawled的文件夹,然后对刚才的www.xxx.edu.cn的网站开始检索。
层数是3层,一般最好10层。然后结果输出在crawl.log里面
8 将nutch-0.7.2.war拷贝到tomcat/webapps下面,改名nutch
9 在D:/tomcat/conf/Catalina/localhost/ 建立nutch.xml
<context path="" debug="5" privileged="true" docbase="nutch"></context>
10 启动tomcat,等war解开以后,打开
D:/tomcat/webapps/nutch/WEB-INF/classes/nutch-site.xml
修改如下
<nutch-conf><br><property><br><name>searcher.dir</name><br><value>D:/nutch/crawled/</value><br></property><br></nutch-conf>
11 D:/tomcat/webapps/nutch/zh/include 下面新建header.jsp,内容就是复制header.html,但是
前面加上
contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
%>
在D:/tomcat/webapps/nutch/search.jsp里面,找到并修改为
<include page="<%= language + ">"/></include>
顺便把下面js注释掉
function queryfocus() {
//search.query.focus();
}
12 D:/tomcat/conf/server.xml 找到以下段,并修改
<connector port="8080"></connector> maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true"
URIEncoding="UTF-8" useBodyEncodingForURI="true" />
好了,到此,重启tomcat,访问 http://localhost:8080 就可以看到搜索主页了,而且搜索支持中文
和分词,虽然分得不是很好。
13 接下来一个重要的功能就是增量更新索引。
在D:/nutch下建立recrawl.sh 。内容为
#!/bin/bash
# A simple script to run a Nutch re-crawl
if [ -n "$1" ]
then
crawl_dir=$1
else
echo "Usage: recrawl crawl_dir [depth] [adddays]"
exit 1
fi
if [ -n "$2" ]
then
depth=$2
else
depth=5
fi
if [ -n "$3" ]
then
adddays=$3
else
adddays=0
fi
webdb_dir=$crawl_dir/db
segments_dir=$crawl_dir/segments
index_dir=$crawl_dir/index
# The generate/fetch/update cycle
for ((i=1; i do
bin/nutch generate $webdb_dir $segments_dir -adddays $adddays
segment=`ls -d $segments_dir/* | tail -1`
bin/nutch fetch $segment
bin/nutch updatedb $webdb_dir $segment
done
# Update segments
mkdir tmp
bin/nutch updatesegs $webdb_dir $segments_dir tmp
rm -R tmp
# Index segments
for segment in `ls -d $segments_dir/* | tail -$depth`
do
bin/nutch index $segment
done
# De-duplicate indexes
# "bogus" argument is ignored but needed due to
# a bug in the number of args expected
bin/nutch dedup $segments_dir bogus
# Merge indexes
ls -d $segments_dir/* | xargs bin/nutch merge $index_dir
在cygwin里面,执行
./recrawl crawled 8
意思是更新索引,目录是crawled,层数8 。还可以把天数跟在后面。执行完毕后要重启Tomcat,因为
Nutch.war里面对查询有缓存。
最后可以把这个脚本放到crontab里面,每天夜里2点执行,执行完毕后重新启动Tomcat。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=725937
相关推荐
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0
图解搜索引擎nutch配置,自己制作的教程。因为在网上搜索到的教程很多都是粗略,对于初学nutch搜索引擎很难配置好,所以自己亲自打造了一篇图解教程!希望你能够配置成功!
这里是在网上搜到的Nutch配置的博客,比较详细,担心自己以后配置的时候忘了,所以传到csdn,顺便分享给大家。
摘要:Nutch是一个优秀的基于Java的开放源码搜索引擎,为了使它能够支持中文搜索,本文在分析了Nutch结构的基础上,采用词表分词技术和前向匹配分词算法对中文信息进行分词,以JavaCC脚本实现上下文相关文法中文分析...
linux、webservice、ssl、socket、搜索引擎nutch.rar
[硕士论文]_基于Nutch的垂直搜索引擎的分析与实现.pdf 一个例子学懂搜索引擎(lucene).doc 中文搜索引擎技术揭密.doc 九大开源搜索引擎介绍.txt 基于Nutch的搜索引擎技术.pdf 基于开源工具搭建小型搜索引擎.pdf 整合...
非常实用的分布式搜索引擎开发工具nutch,有兴趣的赶紧下吧!
Nutch搜索引擎·Nutch简介及安装(第1期) Nutch搜索引擎·Solr简介及安装(第2期) Nutch搜索引擎·Nutch简单应用(第3期) Nutch搜索引擎·Eclipse开发配置(第4期) Nutch搜索引擎·Nutch浅入分析(第5期)
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。
Nutch是一个优秀的开放源代码的Web搜索引擎。虽然Nutch的页面排序方法比较合理,但是很多情况下仍然不能 满足需要。分析开源搜索引擎Nutch代码,研究了Nutch的页面排序方法。在Nutch原有的结构基础上提出了3种修改...
Nutch 1.3 学习笔记,讲的比较清楚的文档
学习Lucene和Nutch的入门书籍,学习搜索引擎开发值得一看的书籍
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0
Lucene+Nutch搜索引擎开发
Nutch搜索引擎·Nutch简单应用(第3期) 1.1 Nutch 命令详解 1.2 Nutch 简单应用
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。
Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。