﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-1，2，3。。。 大道以多岐路亡羊，学者以多方丧生。-随笔分类-信息检索,搜索</title><link>http://www.cnitblog.com/schkui/category/4309.html</link><description>政府为什么敢控制物价，不敢控制房价，---- 因为为房，是(多或少)数官员和大商人的一起的利益。。。怕影响自己的政绩...    </description><language>zh-cn</language><lastBuildDate>Mon, 26 Sep 2011 14:22:23 GMT</lastBuildDate><pubDate>Mon, 26 Sep 2011 14:22:23 GMT</pubDate><ttl>60</ttl><item><title>(转载) Nutch 初体验</title><link>http://www.cnitblog.com/schkui/archive/2006/11/29/19723.html</link><dc:creator>爱易</dc:creator><author>爱易</author><pubDate>Wed, 29 Nov 2006 08:24:00 GMT</pubDate><guid>http://www.cnitblog.com/schkui/archive/2006/11/29/19723.html</guid><wfw:comment>http://www.cnitblog.com/schkui/comments/19723.html</wfw:comment><comments>http://www.cnitblog.com/schkui/archive/2006/11/29/19723.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/schkui/comments/commentRss/19723.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/schkui/services/trackbacks/19723.html</trackback:ping><description><![CDATA[
		<p>前几天看到卢亮的 <a href="http://www.wespoke.com/archives/000879.php">Larbin 一种高效的搜索引擎爬虫工具</a> 一文提到 <a href="http://www.nutch.org/">Nutch</a>，很是感兴趣，但一直没有时间进行测试研究。趁着假期，先测试一下看看。用搜索引擎查找了一下，发现中文技术社区对 <a href="http://larbin.sourceforge.net/index-eng.html">Larbin</a> 的关注要远远大于 Nutch 。只有一年多前何东在他的<a href="http://hedong.3322.org/">竹笋炒肉</a>中对 Nutch 进行了一下<a href="http://hedong.3322.org/archives/000247.html">介绍</a>。</p>
		<p>
				<strong>Nutch vs Lucene</strong>
				<br />Lucene 不是完整的应用程序，而是一个用于实现全文检索的软件库。<br />Nutch 是一个应用程序，可以以 Lucene 为基础实现搜索引擎应用。</p>
		<p>
				<strong>Nutch vs GRUB</strong>
				<br />
				<a href="http://www.grub.org/">GRUB</a> 是一个分布式搜索引擎(<a href="http://www.dbanotes.net/archives/2004/12/grubwebce.html">参考</a>)。用户只能得到客户端工具(只有客户端是开源的)，其目的在于利用用户的资源建立集中式的搜索引擎。<br />
Nutch 是开源的，可以建立自己内部网的搜索引擎，也可以针对整个网络建立搜索引擎。自由(Free)而免费(Free)。</p>
		<p>
				<strong>Nutch vs Larbin</strong>
				<br />
"Larbin只是一个爬虫，也就是说larbin只抓取网页，至于如何parse的事情则由用户自己完成。另外，如何存储到数据库以及建立索引的事情 larbin也不提供。［引自<a href="http://www.wespoke.com/archives/000879.php">这里</a>］<br />
Nutch 则还可以存储到数据库并建立索引。<br /><img alt="Nutch Architecture.png" src="http://www.dbanotes.net/archives/images/Nutch%20Architecture.png" height="220" width="316" /><br />
［引自<a href="http://www.nutch.org/twiki/Main/Presentations/www2004.pdf">这里</a>］
</p>
		<p>Nutch 的早期版本不支持中文搜索，而最新的版本(2004-Aug-04 发布了 <a href="http://www.nutch.org/release/">0.5</a>)已经做了很大的改进。相对先前的 0.4 版本，有 20 多项的改进，结构上也更具备扩展性。0.5 版经过测试，对中文搜索支持的也很好。</p>
		<p>下面是我的测试过程。</p>
		<p>前提条件(这里Linux 为例，如果是 Windows 参见手册)：</p>
		<ul>
				<li>Java 1.4.x 。因为我的系统上安装的Oracle 10g 已经有 Java 了。设定环境变量：NUTCH_JAVA_HOME 。
<blockquote><pre>[root@fc3 ~]# export NUTCH_JAVA_HOME=/u01/app/oracle/product/10.1.0/db_1/jdk/jre<br /></pre></blockquote></li>
				<li>Tomcat 4.x 。从<a href="http://jakarta.apache.org/tomcat/">这里</a>下载。
</li>
				<li>足够的磁盘空间。我预留了 4G 的空间。</li>
		</ul>
		<p>
首先下载最新的稳定版：</p>
		<blockquote>
				<pre>[root@fc3 ~]# wget http://www.nutch.org/release/nutch-0.5.tar.gz<br /></pre>
		</blockquote>
		<p>解压缩:</p>
		<blockquote>
				<pre>[root@fc3 ~]# tar -zxvf nutch-0.5.tar.gz<br />......<br />[root@fc3 ~]# mv nutch-0.5 nutch<br /></pre>
		</blockquote>
		<p>测试一下 nutch 命令：</p>
		<blockquote>
				<pre>[root@fc3 nutch]# bin/nutch <br />Usage: nutch COMMAND<br />where COMMAND is one of:<br />  crawl             one-step crawler for intranets<br />  admin             database administration, including creation<br />  inject            inject new urls into the database<br />  generate          generate new segments to fetch<br />  fetchlist         print the fetchlist of a segment<br />  fetch             fetch a segment's pages<br />  dump              dump a segment's pages<br />  index             run the indexer on a segment's fetcher output<br />  merge             merge several segment indexes<br />  dedup             remove duplicates from a set of segment indexes<br />  updatedb          update database from a segment's fetcher output<br />  mergesegs         merge multiple segments into a single segment<br />  readdb            examine arbitrary fields of the database<br />  analyze           adjust database link-analysis scoring<br />  server            run a search server<br /> or<br />  CLASSNAME         run the class named CLASSNAME<br />Most commands print help when invoked w/o parameters.<br />[root@fc3 nutch]# <br /></pre>
		</blockquote>
		<p>Nutch 的爬虫有两种方式</p>
		<ul>
				<li>
爬行企业内部网(Intranet crawling)。针对少数网站进行。用 <em>crawl</em> 命令。</li>
				<li>爬行整个互联网。 使用低层的 <em>inject, generate, fetch</em> 和 <em>updatedb</em> 命令。具有更强的可控制性。 
</li>
		</ul>
		<p>以本站(http://www.dbanotes.net)为例，先进行一下针对企业内部网的测试。</p>
在 nutch 目录中创建一个包含该网站顶级网址的文件 urls ，包含如下内容：
<blockquote><pre>http://www.dbanotes.net/<br /></pre></blockquote><p>然后编辑conf/crawl-urlfilter.txt 文件，设定过滤信息，我这里只修改了MY.DOMAIN.NAME:</p><blockquote><pre># accept hosts in MY.DOMAIN.NAME<br />+^http://([a-z0-9]*\.)*dbanotes.net/<br /></pre></blockquote><p>运行如下命令开始抓取分析网站内容：</p><blockquote><pre>[root@fc3 nutch]# bin/nutch crawl urls -dir crawl.demo -depth 2 -threads 4 &gt;&amp; crawl.log<br /></pre></blockquote><p>
depth 参数指爬行的深度，这里处于测试的目的，选择深度为 2 ；<br />
threads 参数指定并发的进程 这是设定为 4 ；</p><p>
在该命令运行的过程中，可以从 crawl.log 中查看 nutch 的行为以及过程:</p><blockquote><pre>......<br />050102 200336 loading file:/u01/nutch/conf/nutch-site.xml<br />050102 200336 crawl started in: crawl.demo <br />050102 200336 rootUrlFile = urls <br />050102 200336 threads = 4<br />050102 200336 depth = 2<br />050102 200336 Created webdb at crawl.demo/db<br />......<br />050102 200336 loading file:/u01/nutch/conf/nutch-site.xml<br />050102 200336 crawl started in: crawl.demo<br />050102 200336 rootUrlFile = urls<br />050102 200336 threads = 4<br />050102 200336 depth = 2<br />050102 200336 Created webdb at crawl.demo/db<br />050102 200336 Starting <acronym title="Unified Resource Locator">URL</acronym> processing<br />050102 200336 <strong>Using <acronym title="Unified Resource Locator">URL</acronym> filter: net.nutch.net.RegexURLFilter</strong><br />......                               <br />050102 200337 Plugins: looking in: /u01/nutch/plugins                  <br />050102 200337 parsing: /u01/nutch/plugins/parse-html/plugin.xml        <br />050102 200337 parsing: /u01/nutch/plugins/parse-pdf/plugin.xml         <br />050102 200337 parsing: /u01/nutch/plugins/parse-ext/plugin.xml         <br />050102 200337 parsing: /u01/nutch/plugins/parse-msword/plugin.xml      <br />050102 200337 parsing: /u01/nutch/plugins/query-site/plugin.xml        <br />050102 200337 parsing: /u01/nutch/plugins/protocol-http/plugin.xml     <br />050102 200337 parsing: /u01/nutch/plugins/creativecommons/plugin.xml<br />050102 200337 parsing: /u01/nutch/plugins/language-identifier/plugin.xml<br />050102 200337 parsing: /u01/nutch/plugins/query-basic/plugin.xml       <br />050102 200337 logging at INFO                                          <br />050102 200337 fetching http://www.dbanotes.net/                        <br />050102 200337 http.proxy.host = null                                   <br />050102 200337 http.proxy.port = 8080                                   <br />050102 200337 http.timeout = 10000                                     <br />050102 200337 http.content.limit = 65536                               <br />050102 200337 http.agent = NutchCVS/0.05 (Nutch; http://www.nutch.org/docs/en/bot.html; n<br />utch-agent@lists.sourceforge.net)<br />050102 200337 fetcher.server.delay = 1000                              <br />050102 200337 http.max.delays = 100                                    <br />050102 200338 http://www.dbanotes.net/: setting encoding to GB18030    <br />050102 200338 <acronym title="Creative Commons">CC</acronym>: found http://creativecommons.org/licenses/by-nc-sa/2.0/ in rdf of http:<br />//www.dbanotes.net/<br />050102 200338 <acronym title="Creative Commons">CC</acronym>: found text in http://www.dbanotes.net/               <br />050102 200338 status: 1 pages, 0 errors, 12445 bytes, 1067 ms          <br />050102 200338 status: 0.9372071 pages/s, 91.12142 kb/s, 12445.0 bytes/page<br />050102 200339 Updating crawl.demo/db                                   <br />050102 200339 Updating for crawl.demo/segments/20050102200336          <br />050102 200339 Finishing update                                         <br />                                                                       64,1           7%<br />050102 200337 parsing: /u01/nutch/plugins/query-basic/plugin.xml<br />050102 200337 logging at INFO<br />050102 200337 fetching http://www.dbanotes.net/<br />050102 200337 http.proxy.host = null<br />050102 200337 http.proxy.port = 8080<br />050102 200337 http.timeout = 10000<br />050102 200337 http.content.limit = 65536<br />050102 200337 http.agent = NutchCVS/0.05 (Nutch; http://www.nutch.org/docs/en/bot.html;<br /> nutch-agent@lists.sourceforge.net)<br />050102 200337 fetcher.server.delay = 1000<br />050102 200337 http.max.delays = 100<br />......<br /></pre></blockquote><p>
之后配置 Tomcat (我的 tomcat 安装在 /opt/Tomcat) ，
</p><blockquote><pre>[root@fc3 nutch]# rm -rf /opt/Tomcat/webapps/ROOT*<br />[root@fc3 nutch]# cp nutch*.war /opt/Tomcat/webapps/ROOT.war<br />[root@fc3 webapps]# cd /opt/Tomcat/webapps/<br />[root@fc3 webapps]# jar xvf ROOT.war<br />[root@fc3 webapps]# ../bin/catalina.sh start<br /></pre></blockquote><p>浏览器中输入 http://localhost:8080 查看结果(远程查看需要将 localhost 换成相应的IP)：</p><img alt="nutch web search interface.png" src="http://www.dbanotes.net/archives/images/nutch%20web%20search%20interface.png" height="360" width="648" /><p>搜索测试：</p><img alt="nutch web search result.png" src="http://www.dbanotes.net/archives/images/nutch%20web%20search%20result.png" height="367" width="650" /><img src ="http://www.cnitblog.com/schkui/aggbug/19723.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/schkui/" target="_blank">爱易</a> 2006-11-29 16:24 <a href="http://www.cnitblog.com/schkui/archive/2006/11/29/19723.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>(转载) 试用nutch </title><link>http://www.cnitblog.com/schkui/archive/2006/11/29/19712.html</link><dc:creator>爱易</dc:creator><author>爱易</author><pubDate>Wed, 29 Nov 2006 03:50:00 GMT</pubDate><guid>http://www.cnitblog.com/schkui/archive/2006/11/29/19712.html</guid><wfw:comment>http://www.cnitblog.com/schkui/comments/19712.html</wfw:comment><comments>http://www.cnitblog.com/schkui/archive/2006/11/29/19712.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/schkui/comments/commentRss/19712.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/schkui/services/trackbacks/19712.html</trackback:ping><description><![CDATA[今天看站点的log，发现有几个搜索<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://www.nutch.org/" title="一个新生的开源搜索引擎实现" _base_href="http://hedong.3322.org/archives/">nutch</a>的反向链接过来。其实我只是在<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://hedong.3322.org/archives/000238.html" title="JAVA编码规范" _base_href="http://hedong.3322.org/archives/">java编码规范一文</a>提了一下这个词，这样的结果肯定让前来的朋友倍感失望。<br />
　　下面将我对nutch的一些试用公布一下，供有兴趣的朋友参阅。需要说明的是，nutch现在没有稳定的release，还在不断地根据反馈进行修
改，而且目前还不支持汉语的检索。总而言之，现在这个版本对中国用户而言还不实用。我想，这也应当是一直研究并关注nutch的<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://www.chedong.com/" title="车东的blog" _base_href="http://hedong.3322.org/archives/">车东</a>没有写笔记的原因吧。<br />
　　前几天和车东在msn上谈起，觉得目前搭建网站时实现本站检索的最好的方案，是采用车东基于<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://jakarta.apache.org/lucene/" title="一个高性能的全文检索API" _base_href="http://hedong.3322.org/archives/">lucene</a>的开源项目<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://sourceforge.net/projects/weblucene/" title="基于Lucene/XML的站内全文检索解决方案" _base_href="http://hedong.3322.org/archives/">web lucene的软件包</a>。而nutch似乎比较适合于建立垂直搜索引擎网站，至少目前如此，我认为。

<a name="more" _base_href="http://hedong.3322.org/archives/"></a><h4>1、下载安装</h4><br />
　　不知为什么，这个网站不能直接访问。我用的是2003-09-18的打包(有兴趣的朋友可<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://hedong.3322.org/archives/docs/nutch-2003-09-18.tar.gz" _base_href="http://hedong.3322.org/archives/">从此下载</a>)，在Red Hat Linux 8.0+JRE 1.4.1+Tomcat 4.1试用通过。<br /><div class="code">tar zxvf nutch-2003-09-18.tar.gz<br />
cd nutch-2003-09-18    &lt;----命令执行完后所在目录称之为$NUTCH_HOME，仅供描述之用。<br />
ant<br />
ant package<br />
bin/nutch  &lt;---如果一切正常，此时应出现“Usage: nutch COMMAND”等字样<br /></div><br /><h4>2、试运行脚本说明</h4><br />
　　这个脚本是cutting在tutorial中说明的整理。脚本中的命令最好通过脚本依次运行，$s1、$s2和$s3三个变量的赋值表达式是一样的，但三个值不相同，这依赖于运行的上下文。我第一次运行时，就犯了弱智的错误，拆开运行，结果出错。:)<br /><div class="code"><table _base_href="http://hedong.3322.org/archives/" border="1"><tbody _base_href="http://hedong.3322.org/archives/"><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/">初始准备</td><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">mkdir db</td><td _base_href="http://hedong.3322.org/archives/">建立目录存放web database</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">mkdir segments</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch admin db -create</td><td _base_href="http://hedong.3322.org/archives/">建一个新的空的数据库</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/">第一轮抓取</td><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch inject db -dmozfile content.rdf.u8 -subset 3000</td><td _base_href="http://hedong.3322.org/archives/">从DMOZ列表中取得URL并加入数据库</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch generate db segments</td><td _base_href="http://hedong.3322.org/archives/">根据数据库内容，生成一个抓取列表(fetchlist)</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">s1=`ls -d segments/2* | tail -1`</td><td _base_href="http://hedong.3322.org/archives/">刚才生成的抓取列表放在最后一个目录中，取其名</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch fetch $s1</td><td _base_href="http://hedong.3322.org/archives/">利用机器人抓页面</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch updatedb db $s1</td><td _base_href="http://hedong.3322.org/archives/">利用抓取结果更新数据库</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/">第二轮抓取</td><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch analyze db 5</td><td _base_href="http://hedong.3322.org/archives/">迭代5次分析页面的链接</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch generate db segments -topN 1000</td><td _base_href="http://hedong.3322.org/archives/">将排行前1000个URL生成新的抓取列表</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">s2=`ls -d segments/2* | tail -1`</td><td _base_href="http://hedong.3322.org/archives/">执行抓取、更新、并迭代2次分析链接</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch fetch $s2</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch updatedb db $s2</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/">第三轮抓取</td><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch analyze db 2</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch generate db segments -topN 1000</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">s3=`ls -d segments/2* | tail -1`</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch fetch $s3</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch updatedb db $s3</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch analyze db 2</td><td _base_href="http://hedong.3322.org/archives/">（为下一次做准备？）</td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/">索引并去重</td><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch index $s1</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch index $s2</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch index $s3</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">bin/nutch dedup segments dedup.tmp</td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/">重启tomcat</td><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/"><br /></td></tr><tr _base_href="http://hedong.3322.org/archives/"><td _base_href="http://hedong.3322.org/archives/"><br /></td><td _base_href="http://hedong.3322.org/archives/">catalina.sh start</td><td _base_href="http://hedong.3322.org/archives/">在./segments所在的目录中启动</td></tr></tbody></table></div><br /><h4>3、脚本的改动与下载</h4><br />
　　DMOZ的文件太大了，下载不易，如果仅为实验，似乎也没必要从那里选URL。我改了一下脚本，在$NUTCH_HOME目录下建立一个urls.txt文件，里面一行一个打算搜索的网站的URL，nutch将从这个urls.txt中取站点的URL。<br />
　　脚本可以<a href="http://www.infomall.cn/cgi-bin/mallgate/20031008/http://hedong.3322.org/archives/docs/all.sh" title="nutch运行脚本" _base_href="http://hedong.3322.org/archives/">下载</a>以参考,运行脚本放在$NUTCH_HOME目录下，参考下列命令运行：<div class="code">sh all.sh</div><h4>4、提供web检索</h4><br />
　　前面忙活了半天，只是把网页抓回来、解析了网页并做作了索引。下面说明一下如何利用nutch自己带的jsp程序提供检索服务。<br /><div class="code">cd $TOMCATHOME/webapps<br />
mv ROOT ROOTOLD<br />
mkdir ROOT<br />
cd ROOT<br />
cp $NUTCH_HOME/nutch-2003-09-18.war ./ROOT.war<br />
jar xvf ROOT.war<br />
cd $NUTCH_HOME<br />
$TOMCAT_HOME/bin/shutdown.sh<br />
$TOMCAT_HOME/bin/catalina.sh start<br /></div><br />
　　此时，如果不出意外，应可以访问了。<br />
　　我的试用URL是http://cdls.nstl.gov.cn/se/，（其中我把nutch改动了一下，没把它放在ROOT目录下），供参考。此时，不要检索汉字，只能检索英文，如hedong 或lucene什么的。

<p>　　试用仓促，难免有错，欢迎朋友进行交流。</p><p>参考文献：<br />
基于Lucene/XML的站内全文检索解决方案<br />
http://www.chedong.com/tech/weblucene.html</p><p>Lucene学习笔记（2）<br />
http://hedong.3322.org/archives/000208.html</p><img src ="http://www.cnitblog.com/schkui/aggbug/19712.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/schkui/" target="_blank">爱易</a> 2006-11-29 11:50 <a href="http://www.cnitblog.com/schkui/archive/2006/11/29/19712.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>