Eclipse构建Heritrix

         最近在研究垂直搜索方面的内容,众所周知,搜索的第一步就是网络爬虫对相关网页的下载。开源的网络爬虫有很多,比较热门的有Larbin,Heritrix,Nutch等。Larbin主要是用C++写的,只能用于Linux平台,且已经好久不更新了。而Nutch已经是一个成型的搜索引擎,它提供了我们运行搜索引擎的全部工具,包括全文搜索和网络爬虫。为了让自己深入理解搜索引擎的架构,我放弃了Larbin和Nutch,选择了纯粹的开源网络爬虫——Heritrix。Heritrix是一个网络爬虫框架,基于JAVA编写,可在Windows和Linux下运行,因此很适合这次的研究工作。

       Heritrix有安装包和源码包两种,对于安装包,只需到官网下载之后解压到本地磁盘,对环境和部分文件进行配置之后即可运行,具体方法这里不再详述。今天主要是讲下如何在Eclipse中构建Heritrix以便进行开发工作。

       网上有很多的方案和指导,大部分都是大同小异,我也是经过搜寻多篇文章综合之后才构建成功。下面的方法经本人实践过,希望可以给大家以后的安装带来方便。

       1.先到网上下载安装包和开发包,我下的是heritrix-1.14.4.zip和heritrix-1.14.4-src.zip,然后分别解压。

       2.在Eclipse新建一个javaproject工程Heritrix。

       3.把heritrix-1.14.4-src.zip解压中的src/java中的com、st、org文件夹复制到工程Heritrix的src下。

       4.把heritrix-1.14.4-src.zip解压中的src中的conf文件夹复制到工程Heritrix根目录下。

       5.把heritrix-1.14.4-src.zip解压中的lib文件夹复制到工程Heritrix根目录下。

       6.把heritrix-1.14.4-src.zip解压中的src/resources/org/archive/util中的tlds-alpha-by-domain.txt文件复制到工程Heritrix中org.archive.util包下,直接在Eclipse中Heritrix工程中修改。

       7.把heritrix-1.14.4.zip解压中的webapps文件夹复制到工程Heritrix根目录下。(注意这里是heritrix-1.14.4.zip,即复制的是安装包下面的webapps,我一开始没注意,直接把源码包里面的webapps复制过去了)

       8.对配置文件进行修改,找到conf下heritrix.properties文件,对下面几行进行修改。

          heritrix.version = 1.14.4               (版本号,这个修不修改无所谓)

       heritrix.cmdline.admin = admin:admin    (设置登录用的帐号名和密码)

       heritrix.cmdline.port = 8088            (8080端口可能被占用,所以我用了8088端口来访问)

       9.对工程进行jar包导入,将lib下面所有的jar包导入工程中,具体是:右键Heritrix——Build Path——Configure Build Path——Add External JARs,然后添加lib下面所有的jar包即可。

       10.在工程中找到org.archive.crawler.Heritrix.java右键——Run As——Run Configurations——Classpath——UserEntries——Advanced——AddFolders,然后添加conf文件夹,点击Run开始运行。

       11.右击Heritrix项目工程,右键Run As——Run Configuration——Browse选择工程项目,点击search,输入Heritrix后,弹出Heritrix—org archivecrawler,选择,然后点击Apply即可运行。(很多文章没有这一步,所以我一直没运行成功,控制台出现的是usage,和困惑,后来还好在一篇文章中看到这个,最后运行成功了)

         到这里整个配置过程结束,Heritrix中的控制台就会出现接下来的内容:

          06:39:21.109 EVENT  Starting Jetty/4.2.23
            06:39:21.312 EVENT  Started WebApplicationContext[/,Heritrix Console]
            06:39:21.437 EVENT  Started SocketListener on 127.0.0.1:8088
            06:39:21.437 EVENT  Started org.mortbay.jetty.Server@14a9972
            Heritrix version: 1.14.4

         在浏览器输入:http://127.0.0.1:8088 就会出现:

         

         输入用户名和密码即可。(用户名和密码就是上面设置的admin,admin)


         可能出现的问题:

          Access restriction: The type xxx is not accessible due to restriction on required library。。

         主要是因为Eclipse 默认把这些受访问限制的API设成了ERROR。只要把Windows-Preferences-Java-Complicer- Errors/Warnings里面的Deprecated and restricted API中的Forbidden references(access rules)选为Warning就可以编译通过。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值