君子博学而日参省乎己 则知明而行无过矣

博客园 首页 新随笔 联系 订阅 管理
  1057 随笔 :: 381 文章 :: 141 评论 :: 169万 阅读

Heritrix是一个比较经典的开源爬虫,本人打算用它来做一些数据采集应用

网上关于heritrix系列的博文 大多是老版本的(1.14.4版本),Heritrix 3.1.0版本的文章则极其稀少

由于新的版本相对老版本改动比较大,所以本人不能循老版本的套路了

(Heritrix 3.1.0 版本引入spring容器管理,相对增强了对spring熟悉的开发人员的亲和性)

 首先介绍新的Heritrix 3.1.0 版本怎么在eclipse下搭建环境,以便于自己调试与开发

网上介绍在Eclipse中搭建Heritrix 3.1.0的文章总是讲的很复杂,无疑增加了开发人员对它的敬畏感,不利于Heritrix 3.1.0的普及

其实经过本人实践,哪有那么复杂呢

本人是通过maven来管理项目的,首先在eclipse下建立maven项目,然后在项目的pom.xml文件里面添加heritrix3.1.0的依赖文件

复制代码
       <dependency>
            <groupId>org.archive.heritrix</groupId>
            <artifactId>heritrix-commons</artifactId>
            <version>3.1.0</version>
            <scope>compile</scope>
        </dependency>    
        <dependency>
            <groupId>org.archive.heritrix</groupId>
            <artifactId>heritrix-modules</artifactId>
            <version>3.1.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.archive.heritrix</groupId>
            <artifactId>heritrix-engine</artifactId>
            <version>3.1.0</version>
            <scope>compile</scope>
        </dependency>
复制代码

其他相关的依赖会自动导入,不用我们来一个一个的手工添加了(其实前两个依赖都不用手动添加,heritrix-engine会自动关联)

至此,heritrix3.1.0在eclipse中搭建环境 完毕

那么,我们怎么启动这个应用呢,新建启动类,在main函数里面加入如下代码:

public static void main(String[] args) throws Exception {
        //String[] args={"-a","admin:admin"};
        new Heritrix().instanceMain(args);         
    }

在应用的Arguments参数里面配置"-a admin:admin"

然后在eclipse上点击运行 java Application,运行成功控制台会输出如下信息(我已经配置了一个任务,所以会出现“信息: added crawl job: myjob”)



然后在浏览器输入:https://localhost:8443,输入用户名及密码(
用户名及密码均为admin),就可以看到Heritrix3.1.0的UI界面了


上面视图是我已经添加了一个采集任务的界面

配置好Heritrix 3.1.0的eclipse环境后,就比较方便的调试它了,而且很方面的查看Heritrix 3.1.0源码

---------------------------------------------------------------------------

本系列Heritrix 3.1.0 源码解析系本人原创

转载请注明出处 博客园 刺猬的温驯

本文链接 http://www.cnblogs.com/chenying99/archive/2013/04/10/3011604.html

posted on   刺猬的温驯  阅读(5073)  评论(8编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示