`

在eclipse中如何配置nutch1.0

阅读更多

<1>: 首先从http://apache.etoak.com/lucene/nutch/  下载最新的nutch.在这里我使用的是nutch1.0.
<2>: 在eclipse中新建立一个Java Project. 名字自己定义(Nutch). 选择"Create project from existing source",指向自己nutch-1.0的目录.
<3>: 点击下一步,切换到"Libraries"选择"Add Class Folder..." 按钮,从列表中选择"conf".  ---- Add project 'conf' to build path---->Default Output floder ---->选择刚才conf.
<4>: finised.修改conf下面的
(a):nutch-defaul.xml :
<!-- plugin properties -->
<property>
  <name>plugin.folders</name>
  <value>/home/user/tools/nutch-1.0/src/plugin</value> <!--指向nutch1.0目录的plugin-->
  <description>Directories where nutch plugins are located.  Each
  element may be a relative or absolute path.  If absolute, it is used
  as is.  If relative, it is searched for on the classpath.</description>
</property>    
(b):nutch-site.xml:
<property>
  <name>http.agent.name</name>
  <value>xp</value>
  <description>xp</description>
</property>
<property>
  <name>http.agent.description</name>
  <value>Nutch spiderman</value>
  <description> Nutch spiderman</description>
</property>
<property>
  <name>http.agent.url</name>
  <value>http://www.163.com/</value>
  <description>http://www.163.com</description>
</property>
<property>
  <name>http.agent.email</name>
  <value>MyEmail</value>
  <description>xipei_1984@163.com
  </description>
</property>
(c):crawl-urlfilter.txt:
# accept hosts in MY.DOMAIN.NAME
+^http://([a-z0-9]*\.)*163.com/
<5>:http://nutch.cvs.sourceforge.net/nutch/nutch/src/plugin/parse-mp3/lib/,
http://nutch.cvs.sourceforge.net/nutch/nutch/src/plugin/parse-rtf/lib/
下载MP3跟rtf的jar文件,分别拷贝到src/plugin/parse-mp3/lib 和 src/plugin/parse-rtf/lib/文件夹下
<6>:刷新几下,右键选择工程文件夹,选择Build Path->Configure Build Path...在弹出的窗口上,切换到Libraries,选择Add Jars...,添加刚才下载的jar文件到工程。
<7>:到这一步,一般的工程都会有两个错误,nutch的official 1.0 release版本中,这两个问题因为licensing issues没有修复。接下来的就是最关键的部分了。
修改----  src\plugin\parse-rtf\src\java\org\apache\nutch\parse\rtf下RTFParseFactory.java
添加----- import org.apache.nutch.parse.ParseResult;
将  ----- public Parse getParse(Content content) {
改为---- public ParseResult getParse(Content content) {
将  ---- return new ParseStatus(ParseStatus.FAILED,
                               ParseStatus.FAILED_EXCEPTION,
                               e.toString()).getEmptyParse(conf);
改为-----return new ParseStatus(ParseStatus.FAILED,
                ParseStatus.FAILED_EXCEPTION,
              e.toString()).getEmptyParseResult(content.getUrl(), getConf());
将------return new ParseImpl(text,
                         new ParseData(ParseStatus.STATUS_SUCCESS,
                                       title,
                                       OutlinkExtractor.getOutlinks(text, this.conf),
                                       content.getMetadata(),
                                       metadata));
改为------return ParseResult.createParseResult(content.getUrl(),
                             new ParseImpl(text,
                                     new ParseData(ParseStatus.STATUS_SUCCESS,
                                             title,
                                             OutlinkExtractor.getOutlinks(text, this.conf),
                                             content.getMetadata(),
                                             metadata)));

修改------src\plugin\parse-rtf\src\test\org\apache\nutch\parse\rtf下的TestRTFParser.java
将-----parse = new ParseUtil(conf).parseByExtensionId("parse-rtf", content);
改为----parse = new ParseUtil(conf).parseByExtensionId("parse-rtf", content).get(urlString);
到这一步,eclipse上面的工程就会没有错误了 .
<8>:在nutch1.0的目录下新建立一个文件夹urls,然后再在urls中建立一个文本文件url. 写上链接。注意后面要有 "/".
选择Run->Run As->Java Application在弹出的Select Java Application上选择Crawl-org.apache.nutch.crawl.
接下来,选择 Run->Run Configurations…在左边的Java Application下面会有Crawl这一项,选择它,
切换到Arguments,Program Arguments的内容就是要设置的参数,填上urls -dir crawl -depth 3 -topN 50(这里视自己的具体情况而定,urls为链接)
在VM arguments下面填上-Dhadoop.log.dir=logs -Dhadoop.log.file=hadoop.log.
<9>:直接运行吧:看在你的控制台上出现信息了没.

分享到:
评论
1 楼 cqllang 2009-12-04  
解决了问题,感谢。。。

相关推荐

    Eclipse中编译Nutch-1.0

    随后,在Eclipse中创建一个新的Java项目,命名可自定义,如“Nutch”,并在创建过程中选择“从现有源代码创建项目”选项,指向已解压的`nutch-1.0`目录。在项目的Library配置中,需添加`conf`文件夹,并将其置于...

    eclipse配置nutch,eclipse配置nutch

    在配置好基本环境后,还需要创建一个包含起始URL的文件,通常命名为`urls`,并将其放置在项目的根目录下。同时,在`nutch-default.xml`中指定该文件的路径,以及设置HTTP代理名称和URL过滤规则。 #### 步骤6:运行...

    Nutch1.0的API chm格式

    Nutch1.0的API,不过注意没有搜索功能

    Eclipse中编译Nutch-0.9

    - **创建Java Project**:在Eclipse中创建一个新的Java Project,命名为"Nutch",并选择“Create project from existing source”,指向解压后的Nutch-0.9目录。 #### 解决编译错误与外部库集成 - **识别编译错误*...

    开源搜索引擎nutch-1.0.part01.rar

    Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。

    Nutch1.0:Nutch1.0修改版(整合中文分词)原始码修改,编译打包-修改

    在这个特定的“Nutch1.0修改版”中,开发者已经对原始代码进行了调整,以整合中文分词功能。这使得Nutch能够更有效地处理中文网页的抓取和索引,从而在中文搜索引擎应用中发挥更大的作用。 中文分词是中文信息处理...

    在eclipse中部署nutch所缺的包

    在Eclipse中部署Apache Nutch时,可能会遇到缺少特定库文件的问题,这通常是由于Nutch的依赖管理没有完全覆盖所有必需的组件。本教程将详细解释如何解决在Eclipse环境中部署Nutch时遇到的关于MP3和RTF文件解析的缺失...

    nutch Eclipse

    完成上述步骤后,你应该已经成功地在 Eclipse 中配置并修复了 Nutch 1.0 项目的所有错误。现在,你可以编译、运行 Nutch,并开始进行网络抓取和索引任务。在实际使用中,Nutch 可能还需要与其他组件如 Hadoop 集成,...

    Nutch 1.0part6

    Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。

    Nutch1.0 part4

    Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。

    Nutch1.0part5

    Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。

    ant-eclipse-1.0.bin.tar.bz2

    ant-eclipse-1.0 nutch

    nutch-1.0part1

    Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。

    开源搜索引擎nutch-1.0.part09.rar

    Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0

    开源搜索引擎nutch-1.0.part08.rar

    Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0

    开源搜索引擎nutch-1.0.part07.rar

    Nutch 是一个开源的、Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。 nutch 1.0

    debugNutchWithEclipse

    ### 在Eclipse中调试Nutch 1.0 #### 概述 本文旨在提供一个详细的指南,帮助用户在Eclipse IDE环境下配置并调试Nutch 1.0版本。Nutch是一款开源的网络爬虫框架,它能够抓取、索引互联网上的网页,并支持多种插件...

    Nutch-1.0分布式安装手册.rar

    Nutch-1.0分布式安装手册是一份详细指导如何在多台计算机上部署和配置Apache Nutch的文档。Apache Nutch是一款开源的网络爬虫软件,用于抓取互联网上的网页并进行索引,是大数据领域中搜索引擎构建的重要工具。这份...

Global site tag (gtag.js) - Google Analytics