本博客属原创文章,转载请注明出处: http://www.yun5u.com/articles/heritrix3-5.html
我觉得Heritrix很直观的一点就是有控制台,但以前我忽略了这个功能,直接代码启动Heritrix,然后放在Tomcat里.后期才慢慢发
现一个UI界面的价值.可以很方便的获知抓取情况,甚至完全在千里之外控制它的抓取.其实慢慢的发现很多开源框架都会有一个UI界面.我觉得这也是大势所
趋.但在界面上Heritrix3.0也改动很大,以前采用JSP,所以需要Servlet容器.而Heritrix3.0则通过Rest,我现在还是没
完全体会到Rest的好处.虽然在做开放平台,也要用到Rest.以后在慢慢挖掘.
界面从上而下,截图会表明以下的编号(以后补上)…
1. Job test-job (8 launches, last 13h45m ago )
test-job job名
8 launches 载入8次
last 13h45m ago 上一次载入的时间是13h45m,也就是13小时45分钟
2. 7个按钮,build,launch,pause,unpause,checkpoint,terminate,teardown
1) Build:从无到有创建一个抓取任务
2) Launch:载入一个抓取任务,该抓取任务必须先存在.配置好了的话,可以在该抓取任务基础上进行增量抓取.
3) Pause:暂停抓取任务.不会立即停止,要各个线程
4) Unpause:重启抓取
5) Checkpoint:如同数据库的checkpoint,备份一个抓取任务.备份时会暂停
6) Terminate:终止抓取任务.
7) Teardown:Heritrix3.0可以运行多个抓取任务,点击该按钮后,当前任务会从多个任务中删除.
3. configuration: .\jobs\yunjiaoyu-dearedu\crawler-beans.cxml
[edit
]
点击可以修改和查看配置文件crawler-beans.cxml
4. Job Log (more
)
抓取任务运行日志,一般记录当前Job的build,launch,pause等时间.如果配置文件crawler-beans.cxml有错误,也会记录在该日志中.点击more可以查看更多.
5. Job is Active: RUNNING
Job当前运行状态
1) RUNNING:运行中
2)
6. Totals
118715 downloaded + 88955 queued = 207674 total
11 GiB crawled (11 GiB novel, 0 B dup-by-hash, 0 B not-modified)
抓取统计,
1) 118715 downloaded:已下载的URL个数,这里的下载是获取了网页内容的URL个数,而非写入硬盘.
2) 88955 queued:队列中还等待抓取的URL个数.
3) 207674 total:一共处理的URL个数,也就是118715 downloaded+88955 queued
4) 11 GiB crawled:已获取所有网页内容的字节数
5) 11 GiB novel:所有一般网页内容字节数
6) 0 B dup-by-hash:通过URL hash去重的字节数
7) 0 B not-modified:通过http header中last modified对比,表示网页无更新.所有该网页的字节数
7. Alerts
none
通知,一般是一些异常信息.
8. Rates
1.49 URIs/sec (2.3 avg); 35 KB/sec (222 avg)
抓取速度:
1) 1.49 URIs/sec (2.3 avg):其中1.49 URIs/sec表示当前是每秒平均抓取1.49个URL, 2.3 avg是平均抓取2.3个URL
2) 35 KB/sec (222 avg):其中35 KB/sec表示当前每秒抓取35K, 222 avg表示平均抓取速度是222K/秒
9. Load
4 active of 50 threads; 1 congestion ratio; 20678 deepest queue; 12707 average depth
负载情况:
1) 4 active of 50 threads:50个线程里有4个是活跃的
2) 1 congestion ratio:堵塞率为1
3) 20678 deepest queue:最深的队列为20678,也就是说该队列有20678个URL
4) 12707 average depth:队列平均深度为12707
10. Elapsed
14h21m40s133ms
抓取用时,这里是14小时21分钟40秒133毫秒
11.
Threads
50 threads: 44 ABOUT_TO_GET_URI, 6 ABOUT_TO_BEGIN_PROCESSOR; 44 , 6 fetchHttp
线程运行状态.
1) 50 threads: 50个线程
2) 44 ABOUT_TO_GET_URI:44个线程正在等待获取URL去抓取(温柔抓取)
3) 6 ABOUT_TO_BEGIN_PROCESSOR:6个线程开始处理
4) 44 , 6 fetchHttp:44和6号线程正在运行fetchHttp处理器
12.
Frontier
16 URI queues: 10 active (6 in-process; 0 ready; 4 snoozed); 0 inactive; 0 ineligible; 0 retired; 6 exhausted [RUN: 0 in, 0 out]
调度器运行状态:
1)
16 URI queues:一共有16个队列
2)
10 active(6 in-process; 0 ready; 4 snoozed):有10个队列处于活动状态中,其中6个正在处理,0个正在准备,4个睡眠中(抓取过快,需要暂停响应的时间)
3)
0 inactive:0个处于未活动状态中
4)
0 ineligible:0个队列为不合格队列
5)
0 retired:0个队列为重试队列
6)
6 exhausted [RUN: 0 in, 0 out]:6个队列已经耗尽,如抓取完毕,或抓取URL限制已经达到
13. Memory
419129 KiB used; 989888 KiB current heap; 989888 KiB max heap
内存是使用情况:
1) 419129 KiB used:419129K正在使用
2) 989888 KiB current heap:当前为989888K
3) 989888 KiB max heap:最大为989888K
14. Crawl Log more
对应crawl.log,记录每一个URL的运行情况.
15. Reports
CrawlSummary
Seeds
Hosts
SourceTags
Mimetypes
ResponseCode
Processors
FrontierSummary
ToeThreads
报表.
1) CrawlSummary
:总体情况,如已抓取种子数,URL处理数,下载数,下载字节数等
2) Seeds
:列出每个种子的抓取情况,如状态,重定向等
3) Hosts
:每个host抓取情况.如该host的URL个数,抓取字节数,剩下要抓取的URL数量等
4) SourceTags
:对应seedModule中的sourceTags配置
5) Mimetypes
:对应http-header中的Content-Type.统计不同类型的URL数,抓取字节数
6) ResponseCode
:对应http response code的统计,统计不同response code的URL个数,
7) Processors
:各个处理器链ProcessorChain中的各个处理器Processor,以及处理器处理的处理URL个数基本情况
8) FrontierSummary
:调度器报表,一般人看不懂,接下来会着重说明
9) ToeThreads
:每个线程的当前运行情况,可以看出每个URL运行到哪一步
16. Files
Browse Job Directory
浏览当前Job下的所有文件,但只能读,不能修改.
17. Configuration-referenced Paths
当前Job所引用的文件路径,每个文件,可以点击进去查看.
18. Advanced
Scripting console
Browse beans
增强功能.
1) Scripting console
脚本控制台,可以输入脚本去控制和获取Heritrix抓取,很有意思.日后会着重说明.这也是Heritrix3.0为什么一定要基于JDK6的原因.
2) Browse beans
:浏览Bean,可以动态浏览和修改每个Bean,如此也可以动态修改Heritrix的抓取.的确很强悍!
19. Copy
Copy job to
as profile
拷贝当前bean,备份需要.
分享到:
相关推荐
Heritrix 3.0 是一个强大的网络抓取框架,其设计目的是为了高效、灵活地爬取互联网上的信息。在Heritrix 3.0中,`crawler-beans.cxml` 文件扮演着至关重要的角色,它是整个爬虫的配置中心,负责定义和管理爬虫的行为...
在Heritrix 3.0和3.1版本中,引入了一个基于Spring-container的配置系统,这使得设置管理更加灵活。此外,3.X版本的另一个显著改变是采用了一种新的模型,允许在同一个作业目录下重启作业,而无需每次都创建新的作业...
Heritrix是一款强大的开源网络爬虫工具,由互联网档案馆(Internet Archive)开发,主要用于抓取和保存网页内容。Heritrix 1.14.4是该软件的一个较早版本,但依然具有广泛的适用性,尤其对于学习和研究网络爬虫技术...
Heritrix 作为一款强大的网络爬虫工具,不仅提供了丰富的功能和配置选项,还拥有一个友好的用户界面,使得即使是初次使用的用户也能快速上手。通过上述介绍,我们对 Heritrix 3.0 和 3.1 版本有了较为全面的了解,...
Heritrix是一个强大的开源Web网络爬虫,由Java编写,主要功能是从互联网上抓取数据,为搜索引擎提供丰富的资源。它的可扩展性是其一大亮点,允许开发者自定义组件以适应不同的抓取需求。Heritrix最初来源于...
Heritrix 是一个开源的网络爬虫工具,用于抓取网页并进行深度索引或分析。在配置和使用 Heritrix 时,有几个关键步骤和注意事项需要了解。 首先,要开始配置 Heritrix,你需要从官方网站下载源码包(如 heritrix ...
近期需要使用heritrix-1.14.4,配了半天才配好,这个是控制台执行版本. 注意:解压到相关目录,之后配置系统环境变量"HERITRIX_HOME"到该解压目录(Java环境已经配置好)。 使用控制台命令启动 : heritrix --admin=...
Heritrix是一个强大的开源网络爬虫工具,用于批量抓取互联网上的网页。它提供了一种高效、可配置的方式来收集和处理网页数据。本篇将详细解释Heritrix系统的使用、核心概念、工作原理以及关键组件。 首先,Heritrix...
Heritrix是一个强大的Java开发的开源网络爬虫,主要用于从互联网上抓取各种资源。它由www.archive.org提供,以其高度的可扩展性而著称,允许开发者自定义抓取逻辑,通过扩展其内置组件来适应不同的抓取需求。本文将...
6. **Web-based用户界面**:提供关于Heritrix的图形用户界面的使用指南,包括如何创建、编辑和管理爬取任务(Job)。 7. **安全考虑**:讨论在使用Heritrix时应关注的安全问题,比如权限控制、凭证管理和避免未经...
本节将详细介绍如何在Eclipse环境中搭建Heritrix,并进行必要的配置,以便能够顺利地启动Heritrix并执行抓取任务。 ##### 2.1 在Eclipse中搭建MyHeritrix工程 1. **新建Java工程** 在Eclipse中新建一个名为`...
Heritrix是一款开源的网络爬虫工具,由互联网档案馆(Internet Archive)开发,用于抓取互联网上的网页和资源。这个强大的工具允许用户自定义抓取策略,以便于构建自己的网络数据采集系统。Heritrix提供了高度可配置...
在使用Heritrix时,"heritrix-1.14.0"这个压缩包文件包含了一系列必要的组件和库,包括核心爬虫引擎、解析器、存储模块以及各种配置文件。解压后,用户通常会找到以下几部分: 1. **bin**:存放可执行脚本,如启动...
2. 设计和开发一个网络爬虫,使用Heritrix等工具抓取与垂直领域相关的网页数据。 3. 存储和预处理抓取到的数据。这通常涉及到文本清洗、去重、格式转换等步骤,确保数据质量。 4. 使用Lucene建立索引系统。这部分...
5. **使用教程**:描述中提到的链接是一个CSDN博客文章,提供了Heritrix的安装、配置和使用指南。在这个教程中,你将学习如何设置运行环境,配置Heritrix的配置文件,启动爬虫,以及监控和管理爬虫的运行状态。 6. ...
标题和描述都表明这是一份关于Heritrix学习的宝贵资料集合,包含了一系列的教程和经验分享。 首先,我们来看"利用Heritrix构建特定站点爬虫.mht"这个文件。这个文件很可能详细介绍了如何定制Heritrix来抓取特定网站...
1. **Web控制管理界面**:Heritrix提供了一个基于Web的用户界面,方便用户监控、配置和控制爬虫任务。用户可以通过这个界面启动、暂停、停止爬虫作业,并查看作业状态。 2. **宽带爬虫**:支持高速爬取网站,充分...
### Heritrix介绍 #### 一、概述 Heritrix是一款功能强大的网络爬虫工具,主要应用于互联网资源的抓取工作。它完全基于Java语言开发,并且是开源的,这使得Heritrix不仅具备高度的灵活性,同时也拥有广泛的社区...
Heritrix是一款由互联网档案馆(Internet Archive)开发的开源网络爬虫框架,它使用Java语言编写,支持高度定制化的需求。Heritrix的设计初衷是为了满足大规模网页归档的需求,但因其灵活的架构和丰富的API,也被广泛...