在RH9+J2EE5.0+TOMCAT5.0.28,使用Nutch-0.6完成了企业内部网简单测试,并记录碰到的问题和解决方法
今天的天气真是热死了!没办法,呆在家里吧,有空调凉快些。于是想到了研究Nutch
这是个开源的搜索引擎,现在已列入Apache的Lucene的子项目了。最新版本是0.6(2005年1月)。以前我安装过,没有成功。这次终于成功了,做了简单测试
参考文章来源:
Nutch文档
作者Fenng: http://www.dbanotes.net/archives/2005/01/nutch_aee.html
Apache Nutch Wiki: http://wiki.apache.org/nutch/GettingNutchRunningWithResin
一 系统需要
下面是Nutch文档的说明
1.Java 1.4.x, either from Sun or IBM on Linux is preferred. Set NUTCH_JAVA_HOME to the root of your JVM installation.
2.Apache's Tomcat 4.x.
3.On Win32, cygwin, for shell support. (If you plan to use CVS on Win32, be sure to select the cvs and openssh packages when you install, in the "Devel" and "Net" categories, respectively.)
4.Up to a gigabyte of free disk space, a high-speed connection, and an hour or so.
关于第一项,我也不清楚是说JAVA的J2SE版本还是J2EE版本。上一次我用J2SE的时候就没有成功。但这并不能确定一定和JAVA版本有关。这里我使用的是J2EE5.0(前几天研究什么东西刚下的,顺便拿来用,呵呵)JAVA在LINUX的安装能够参考我以前的BLOG。然后就是设定系统环境变量NUTCH_JAVA_HOME了。
#vi /etc/profile
加入下面内容:
NUTCH_JAVA_HOME="/usr/local/j2ee1.5/jdk"
EXPORT最后加入 NUTCH_JAVA_HOME
第二项安装TOMCAT很简单,下载binary包解压即可。我用的是tomcat5.0.28
第三项我们用的是Linux不用管Windows的配置
第四项预留足够的硬盘空间(G字节级别)。我只搜我的小站,估计也占用不了多少空间^_^
二 安装使用Nutch
1.安装
下载Nutch-0.6.tar.gz
#tar zxvf Nutch-0.6.tar.gz
#mv Nutch-0.6 /usr/local/nutch
测试Nutch
#/usr/local/nutch/bin/nutch
出现几行提示信息,说明安装成功
2.抓取页面
我只做了内部网(Intranet)的测试
在 nutch 目录中创建一个包含该网站顶级网址的文档 urls ,包含如下内容:
http://10.40.x.x/(我的主机的内网网址,这里用我以前架的LAMP测试)
#cd /usr/local/nutch
#touch urls
#vi urls
加入 http://10.40.x.x/ 保存退出
然后编辑conf/crawl-urlfilter.txt 文档,设定过滤信息
+^http://10.40.x.x/
保存退出以后开始抓取了!
#bin/nutch crawl urls -dir lystudio.test -depth 2 -threads 4 >& crawl.log
depth 参数指爬行的深度,这里处于测试的目的,选择深度为 2 ;
threads 参数指定并发的进程 这是设定为 4
只过了2分钟,爬完了(站太小了……)
之后配置 Tomcat (我的 tomcat 安装在 /usr/local/tomcat5) ,
# rm -rf /usr/local/tomcat5/webapps/ROOT*
# cp nutch-0.6.war /usr/local/tomcat5/webapps/ROOT.war
# cd /usr/local/tomcat5/webapps/
# jar xvf ROOT.war
# ../bin/catalina.sh start
浏览器中输入 http://localhost:8080 查看结果(远程查看需要将 localhost 换成相应的IP):
出现了页面!但是测试发现不能正常搜索页面,并出现以下错误:
500 Servlet Exception
java.lang.NullPointerException
at net.nutch.searcher.NutchBean.init(NutchBean.java:82)
.....
去Nutch Wiki找资料,据说是segment文档夹位置的问题。默认的是./segment所以我们应该修改为实际的地址。我的是
/usr/local/nutch/lystudio.test/segment
解决方法是这样描述的:
找到tomcat的ROOT目录下的一个文档:nutch-site.xml
#vi /usr/local/tomcat5/webapps/ROOT/WEB-INF/classes/nutch-site.xml
修改成下面样式:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="nutch-conf.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<nutch-conf>
<property>
<name>searcher.dir</name>
<value>/usr/local/nutch/lystudio.test</value>
<description>My path to nutch's searcher dir.</description>
</property>
</nutch-conf>
然后重启TOMCAT,终于能够搜索了:
至此我的测试已完成。关于中文搜索,以后有时间再做(能够发现,上面页面的中文在Firefox1.0.5下有问题,调整页面编码也没有起作用,应该是Nutch配置中修改吧)。
说明:本人对搜索引擎没有任何研究,这里只是体验一次搜索的乐趣而已^_^
相关推荐
5. **配置文件**:如 `conf/nutch-default.xml` 和 `conf/nutch-site.xml`,分别包含 Nutch 的默认配置和用户自定义配置。 6. **抓取策略**:Nutch 支持基于链接的抓取策略,如 PR(PageRank)和 TF-IDF(Term ...
在这个"apache-nutch-1.4-bin.tar.gz"压缩包中,包含了运行 Nutch 的所有必要组件和配置文件,适合初学者和开发者快速部署和实验。 **Nutch 的核心组成部分:** 1. **爬虫(Spider)**:Nutch 的爬虫负责在网络中...
这个源码包 "apache-nutch-1.3-src.tar.gz" 和 "nutch-1.3.tar.gz" 包含了 Nutch 1.3 的源代码和编译后的二进制文件,对于开发者和研究者来说是非常有价值的资源。 **Nutch 概述** Nutch 是基于 Java 开发的,遵循 ...
nutch配置nutch-default.xml
Nutch是一款刚刚诞生的完整的开源搜索引擎系统,可以结合数据库进行索引,能快速构建所需系统。Nutch 是基于Lucene的,Lucene为 Nutch 提供了文本索引和搜索的API,所以它使用Lucene作为索引和检索的模块。Nutch的...
apache-nutch-2.3.1-src.tar ,网络爬虫的源码, 用ivy2管理, ant runtime 编译 apache-nutch-2.3.1-src.tar ,网络爬虫的源码, 用ivy2管理, ant runtime 编译
在“apache-nutch-1.7-src.tar.gz”这个压缩包中,你将获得Nutch 1.7的源代码,这使得开发者可以深入了解其工作原理,并对其进行定制和扩展。解压后的文件夹“apache-nutch-1.7”包含了所有必要的组件和配置文件。 ...
apache-nutch-1.4-bin.tar.gz.part2
nutch不用安装,是个应用程序,下载后为nutch-1.6.tar.gz,双击桌面上的cygwin快捷方式;执行以下命令: $ cd D:/Downloads/Soft $ tar zxvf nutch-1.0.tar.gz 在e盘下面出现nutch-0.9文件夹说明解压成功了.然后环境...
nutch-1.0-dev.jar nutch devlope
4. **配置与部署**:解压 "apache-nutch-1.9" 文件后,需要根据你的环境配置`conf/nutch-site.xml`文件,设置包括抓取间隔、并发度、存储路径等参数。同时,可能还需要配置`conf/regex-urlfilter.txt`和`conf/...
apache-nutch-1.4-bin.part2
apache-nutch-1.4-bin.part1
apache-nutch-1.4-bin.tar.gz.part1
这个`apache-nutch-1.6-src.tar.gz`文件包含了Nutch 1.6的源代码,允许开发者深入研究其内部机制,定制自己的爬虫需求,或者为项目贡献代码。 源代码包`apache-nutch-1.6`中通常包含以下几个关键部分: 1. **源...
Nutch 初体验 - DBA Notes
在“apache-nutch-1.4-src.tar.gz”这个压缩包中,包含了Nutch 1.4版本的源代码,用户可以根据自己的需求对代码进行定制和扩展。 Nutch 的主要组件包括以下几个方面: 1. **网络爬虫(Crawler)**:Nutch 的网络...
### Nutch Param Set详解 Nutch 是一个高度可扩展且开放源码的网络爬虫项目,主要用于抓取和索引互联网上的数据。本篇将基于提供的文件内容对 Nutch 的参数设置进行深入解析,帮助读者更好地理解 Nutch 中各个组件...
在 Nutch-2.3-src.tar.gz 压缩包中,你将找到 Apache Nutch 的源代码,这为开发者提供了深入理解其工作原理和自定义功能的机会。以下是对这个版本中关键知识点的详细介绍: 1. **Java 编程语言**:Nutch 是用 Java ...
- `src/conf`:存放配置文件,如 `nutch-site.xml`,用于设置爬虫的行为和各种参数。 - `src/test`:测试代码,包括单元测试和集成测试,有助于理解和验证 Nutch 的工作原理。 - `src/bin`:包含命令行工具,如 `...