heritrix 下载、安装、配置

找了很多资料,很多方法都会报错,看了这个个方法,才最终解决,就应用了这个方法,并附上自己的理解。


一、下载:

  到 网站搜索heritrix, 然后分别下载下来heritrix-1.14.4.zip

     (注意在装载之前需要装java运行环境,我先装了jdk-8-windows-x64,然后在装载了eclipse-standard-kepler-SR2-win32-x86_64,最后才装了heritrix-1.14.4.zip

  

二、配置

  1. 解压 heritrix-1.14.4.zip ,假设解压到了盘根目录下并把解压后的文件夹命名为heritrix(进入c:/heritrix/conf 复制文件jmxremote.password.template c:/heritrix 下并把文件重新命名为jmxremote.password 

  然后修改其内容为下:

  monitorRole @123456789@ ->monitorRole admin (@ 之间设置的是密码后面是-> 用户角色用户名)

  controlRole @123456789@ ->controlRole shi

  并设置文件jmxremote.password 的属性为只读

  3. 进入c:/heritrix/conf 打开文件heritrix.properties ,修改其中的几项key-value 

  heritrix.cmdline.admin = admin:770629 ( 用户名:密码)

  heritrix.cmdline.port = 8080 (heritrix 服务器默认端口号8080, 保证该端口不被占用就不用改了)

  4. 打开cmd ,切换目录到c:/heritrix/bin

  然后敲入命令:heritrix.cmd --admin=admin:123456789

  会出现如下错误:

1 WARNING: It's currently not possible to run Heritrix in background

2      on Windows. It was just started minimized in a new Window

3      and will be shut down as soon as you log off.

4 2011 / 02 / 25 周五 23 : 49 : 27.00 Starting heritrix

5 Heritrix failed to start properly. Possible causes:

6 - Login and password have not been specified (see --admin switch )

7 - another program uses the port for the web UI ( 8080 by default )

8  (e.g. another Heritrix instance)

9 - JMX password file is missing or permissions not set correctly

10 JMX permissions file missing. A template can be found in

11  E:\framework\heritrix-1.14 . 4 \conf\jmxremote.password.template.

12 Copy it to

13  E:\framework\heritrix-1.14 . 4 \jmxremote.password

14 and edit the passwords at the end of the file. Then, make sure

15 the file is read-restricted to only the user that the Heritrix

16 Java VM will run as. For example:

  5. 再设置文件的为只读,并且要设置文件的拥有者只能为当前登录系统的用户,删除文件的其他用户或角色权限。修改方法:

  文件->属性->"安全"标签页->高级->"权限"标签页->更改权限按钮

  ->取消"包括从该对象的父项继承的权限"的勾选-,同时再删除其他多余的用户或角色权限(只留下当前登录系统的用户)

  如果删除不了要全部设定他们的权限限定

  

里面的用户要全部设定权限,不然会报错的要


  

Heritrix是一个开源,可扩展的web爬虫项目。用户可以使用它来从网上抓取想要的资源。Heritrix设计成严格按照robots.txt文件的排除指示和META robots标签。其最出色之处在于它良好的可扩展性,方便用户实现自己的抓取逻辑。 Heritrix是一个爬虫框架,其组织结构如图2.1所示,包含了整个组件和抓取流程: Heritrix采用的是模块化的设计,各个模块由一个控制器类(CrawlController类)来协调,控制器是整体的核心。控制器结构图如图2.2所示:   图2.2 CrawlController类结构图 CrawlController类是整个爬虫的总控制者,控制整个抓取工作的起点,决定整个抓取任务的开始和结束。CrawlController从Frontier获取URL,传递给线程池(ToePool)中的ToeThread处理。 Frontier(边界控制器)主要确定下一个将被处理的URL,负责访问的均衡处理,避免对某一Web服务器造成太大的压力。Frontier保存着爬虫的状态,包括已经找到的URI、正在处理中的URI和已经处理过的URI。 Heritrix是按多线程方式抓取的爬虫,主线程把任务分配给Teo线程(处理线程),每个Teo线程每次处理一个URL。Teo线程对每个URL执行一遍URL处理器链。URL处理器链包括如下5个处理步骤。整个流程都在图2.1中。 (1)预取链:主要是做一些准备工作,例如,对处理进行延迟和重新处理,否决随后的操作。 (2)提取链:主要是下载网页,进行DNS转换,填写请求和响应表单。 (3)抽取链:当提取完成时,抽取感兴趣的HTML和JavaScript,通常那里有新的要抓取的URL。 (4)写链:存储抓取结果,可以在这一步直接做全文索引。Heritrix提供了用ARC格式保存下载结果的ARCWriterProcessor实现。 (5)提交链:做和此URL相关操作的最后处理。检查哪些新提取出的URL在抓取范围内,然后把这些URL提交给Frontier。另外还会更新DNS缓存信息。 服务器缓存(Server cache)存放服务器的持久信息,能够被爬行部件随时查到,包括被抓取的Web服务器信息,例如DNS查询结果,也就是IP地址。 标签:Heritrix
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值