本站首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:
日志总数:1304
评论数量:2242
留言数量:5
访问次数:7591327
建立时间:2006年5月29日




[Apache(jakarta)]Nutch version 0.8 安装向导
软件技术

lhwork 发表于 2006/12/13 16:04:24

1、必要的条件 1.1 Java 1.4或1.4以上版本。操作系统推荐用Linux(Sun或IBM的都可以)。记得在环境变量中设置变量NUTCH_JAVA_HOME=你的虚拟机地 址,例如,本人将jdk1.5安装在c:\jdk1.5文件夹下,所以本人的设置为NUTCH_JAVA_HOME=c:\jdk1.5(此为win32 环境下的设置方法)。 1.2 服务器端推荐使用Apache’s Tomcat 4.x或该版本以上的Tomcat。 1.3 当要在win32安装Nutch时,请安装cygwin软件,以提供Linux的shell支持。 1.4 安装Nutch需要消耗G字节的磁盘空间,高速的连接并要花费一个小时左右的时间等等。 2、从这开始 2.1 首先,你必须获得Nutch源码的一个拷贝。你可以从网址:http://lucene.apache.org/nutch/release/ 上下载Nutch的发行版,解开下载的文件包即可。或者通subversion获得最新的源码并且通过Ant工具创建Nutch。 2.2 上述步骤完成以后,你可以通过下面这个命令,试试是否安装成功。 在Nutch所在的目录下,输入  bin/nutch 如果显示了一个有关Nutch命令脚本的文档,那么恭喜你,你已经向成功迈出了重要的一步。 2.3 现在,我们可以准备为我们的搜索引挚去“爬行(crawl)”资料。爬行(crawl)有两种方法: 2.3.1 用crwal命令实现内部网的爬行 2.3.2 整个web网的爬行,除了上面的crwal命令外,我们需要用得一些更为底层的命令以实现更为强大的功能,如inject, generate, fetch以及updatedb等。 3、内部网爬行(测试未通过) 内部网爬行适合用于具有百万级别的web网站。 3.1 内部网:配置 要配置内部网爬行,你必需做如下几项工作: 3.1.1 在nutch所在的文件夹下建立一个包含纯文本文件的根文件夹urls。例如,为了爬行nutch站点,你可以建立一个nutch文本文件,该文件中仅仅 包含nutch的主页。所有有关Nutch的其它页面你将从这个页面搜索得到。这样你在urls/nutch文件中将包含如下的内容: http://lucene.apache.org/nutch/ 3.1.2 接着你要去编辑nutch文件夹下的conf/crawl-urlfilter.txt文件,将该文件中MY.DOMAIN.NAME替换成你要去爬行的 域。例如,如果你想把爬行限制在apache.org域,你就可用apache.org替换上述文件中的MY.DOMAIN.NAME。替换后如下: +^http://([a-z0-9]*\.)*apache.org/ 上述语句的意思包含在apache.org域中的任何url。 3.2 内部网:运行crawl 一旦配置好后,运行crawl是一件简单的事情。只要使用crawl命令。这个命令包含如下这些先项: -dir  dir指定将爬行到信息要存储的目录 -threads threads决定了要同时运行的线程数 -depth depth指出从根页面往下要爬行的深度 -topN topN决定了在每一级的深度上要搜索的最大页面数 例如,一个典型的命令如下: bin/nutch crawl urls -dir crawl -depth 3 -topN 50 一旦命令执行结束,就可以跳到后面的搜索部分(见5)。 4、全网爬行 全网爬行设计去处理非常大量的爬行,它可能要花几个星期的时间才能完成,并起需要多台电脑来运行它。 4.1 下载 http://rdf.dmoz.org/rdf/content.rdf.u8.gz 然后解压 解压命令为: gunzip content.rdf.u8.gz 4.2 创建目录 mkdir dmoz 4.3每搜索5000条URL记录选择一个存进urls文件: bin/nutch  org.apache.nutch.tools. DmozParser content.rdf.u8 -subset 5000 > dmoz/urls 4.4 初始化crawldb: bin/nutch inject crawl/crawldb dmoz 4.5 从crawldb生成fetchlist: bin/nutch generate crawl/crawldb crawl/segments 4.6 fetchlist放置在重新创造的段目录,段目录根据指定的时间创建,我们保存这段变量s1: s1=`ls -d crawl/segments/2* | tail -1` echo $s1 显示结果如:crawl/segments/2006******* /*号部分表示是月日时的数字,如20060703150028 4.7 运行这段: bin/nutch fetch $s1 4.8 完成后更新数据结果: bin/nutch updatedb crawl/crawldb $s1 4.9现在数据库的参考页设在最初,接着来取得新的1000页: bin/nutch generate crawl/crawldb crawl/segments -topN 1000 s2=`ls -d crawl/segments/2* | tail -1` echo $s2 bin/nutch fetch $s2 bin/nutch updatedb crawl/crawldb $s2 4.10 让我们取得周围的更多: bin/nutch generate crawl/crawldb crawl/segments -topN 1000 s3=`ls -d crawl/segments/2* | tail -1` echo $s3 bin/nutch fetch $s3 bin/nutch updatedb crawl/crawldb $s3 4.11 创建索引: bin/nutch invertlinks crawl/linkdb -dir crawl/segments 4.12 使用索引命令: bin/nutch index crawl/indexes crawl/crawldb crawl/linkdb crawl/segments/* 5、搜索 5.1 删除root目录: rm -rf ~/local/tomcat/webapps/ROOT* //.war包在webapps下会自动解压 5.2 拷贝文件: cp nutch*.war ~/local/tomcat/webapps/ROOT.war 5.3修改tomcat/webapps/root/WEB-INF/classes下的nutch-site.xml文件 如下: <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property>       <name>searcher.dir</name>       <value>/home/crawl/nutch-0.8-dev/crawl</value> //索引的目录 </property> </configuration>


阅读全文(2687) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.324 second(s), page refreshed 144770277 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号