Heritrix3.0 的安装,使用

1、下载heritrix3.0heritrix3.1,解压。运行cmd,进入到bin目录下(如笔者的目录:

cd D:\heritrix-3.1.0\bin)。运行命令:

heritrix -a admin:admin ,这里冒号前面admin是用户名,后面是密码,这样将会在另一个新建的窗口中运行heritrix程序。

在浏览器地址栏输入https://localhost:8443,注意这里是https,端口号为8443,进入webUI控制页面。


2、在"Create new job directory with recommended starting configuration"标签下的文本框里输入新任务的名字。然后点击create按钮。(注意在heritrix3.0中,Job Directories只承认有.cxml的文件的工作目录,在你想要放置job的目录下,新建文件夹,并将conf\jobs\profile-defaults下的,profile-crawler-beans.cxml拷贝过去,可修改名称为crawler-beans.cxml,输入路径,然后点add添加进去)


3、点击Job Directories列表下新建任务的名字,将会进入新工作的配置页面。


在页面的顶端,有一个名叫craw-beans.cxml的配置文件,旁边有一股edit的链接。

4、点击"edit",配置内容将会出现,配置内容是可以被编辑的。


为使抓取工作进行,你至少需要修改几个属性。

a. 首先要给metadata.operatorContactUrl 属性赋值,例如:http://www.archive.org

其在idsimpleOverridesbean内。内容如下:

metadata.operatorContactUrl=ENTER_AN_URL_WITH_YOUR_CONTACT_INFO_HERE_FOR_WEBMASTERS_AFFECTED_BY_YOUR_CRAWL,表示控制爬虫的url,将其值改为

metadata.operatorContactUrl=http://www.archive.org

b. longerOverrides bean<prop>下,输入爬行开始的URL如http://www.giftour.com


替换为要爬行的URL。如下:


5、点save changes,回到工作页面。点buildJob Log会显示INFO Job instantiated


6、点击launch按钮,将会暂停,点击unpause,爬行工作就开始了。


以下就是你抓到的数据。




值得注意的地方

运行一个简单的抓取,先要修改以下地方.

1.创建Job

<bean id="simpleOverrides">
<property name="properties">
<value>
metadata.operatorContactUrl=ENTER_AN_URL_WITH_YOUR_CONTACT_INFO_HERE_FOR_WEBMASTERS_AFFECTED_BY_YOUR_CRAWL
metadata.jobName=basic
metadata.description=Basic crawl starting with useful defaults   </value>
</property>
</bean>

1)metadata.operatorContactUrl   你控制Heritrix的URL,一般是http://127.0.0.1

2)metadata.jobName 表示你的抓取名字,我们刚才创建的是test_job,那就修改为test_job

3)metadata.description 表示对这个抓取任务的简单描述,我们这里就描述为 firt crawl job

2.设置种子

<bean id="longerOverrides">
<property name="properties">
<props>
<prop key="seeds.textSource.value">

# URLS HERE
http://example.example/example

</prop>
</props>
</property>
</bean>

以上的http://example.example/example就表示是种子了,这里设置你想抓取的种子.比如我这里设置http://guoyunsky.blogcn.com

3)完善job信息和本机信息

<bean id="metadata" autowire="byName">
<property name="operatorContactUrl" value="[see override above]"/>
<property name="jobName" value="[see override above]"/>
<property name="description" value="[see override above]"/>
<!-- <property name="operator" value=""/> -->
<!-- <property name="operatorFrom" value=""/> -->
<!-- <property name="organization" value=""/> -->
<!-- <property name="audience" value=""/> -->
<property name="userAgentTemplate"
value="Mozilla/5.0 (compatible; heritrix/@VERSION+@OPERATOR_CONTACT_URL@)"/>
</bean>

这个Bean按道理可以通过刚才设置的simpleOverrides来获取,但貌似不完善,我们还是自己再设置下吧.

1) operatorContactUrl 控制爬虫的URL,一般是http://127.0.0.1

2)jobName  抓取任务名字,这里是test_job

3) description 描述,这里是first crawl job

4)以上几个属性除了userAgentTemplate有必要设置的话,都可以不设置.userAgentTemplate这里设置是为了伪造浏览器去抓取数据,

如果没有设置该值,则很容易被防爬虫的网站K掉,这里设置@VERSION为3.0,+@OPERATOR_CONTACT_URL为操作爬虫联系方式,

我这里填我的emal:guoyunsky@hotmail.com

以上三个bean设置完毕的话,就可以运行抓取了.不过是全网抓取.

这里回到操作界面,默认的是https://localhost:8443/,正常的话会在Job Directories下显示刚才创建的test_job,如果没有的话点下rescan按钮,重新扫描一下.显示除了test_job后我们点击它,这时就会进入该job的控制台了



Heritrix是IA的开放源代码,可扩展的,基于整个Web的,归档网络爬虫工程 Heritrix工程始于2003年初,IA的目的是开发一个特殊的爬虫,对网上的 资源进行归档,建立网络数字图书馆,在过去的6年里,IA已经建立了400TB的数据。 IA期望他们的crawler包含以下几种: 宽带爬虫:能够以更高的带宽去站点爬。 主题爬虫:集中于被选择的问题。 持续爬虫:不仅仅爬更当前的网页还负责爬日后更新的网页。 实验爬虫:对爬虫技术进行实验,以决定该爬什么,以及对不同协议的爬虫爬行结果进行分析的。 Heritrix的主页是http://crawler.archive.org Heritrix是一个爬虫框架,可加如入一些可互换的组件。 它的执行是递归进行的,主要有以下几步: 1。在预定的URI中选择一个。 2。获取URI 3。分析,归档结果 4。选择已经发现的感兴趣的URI。加入预定队列。 5。标记已经处理过的URI Heritrix主要有三大部件:范围部件,边界部件,处理器链 范围部件:主要按照规则决定将哪个URI入队。 边界部件:跟踪哪个预定的URI将被收集,和已经被收集的URI,选择下一个URI,剔除已经处理过的URI。 处理器链:包含若干处理器获取URI,分析结果,将它们传回给边界部件 Heritrix的其余部件有: WEB管理控制台:大多数都是单机的WEB应用,内嵌JAVA HTTP 服务器。 操作者可以通过选择Crawler命令来操作控制台。 Crawler命令处理部件:包含足够的信息创建要爬的URI。 Servercache(处理器缓存):存放服务器的持久信息,能够被爬行部件随时 查到,包括IP地址,历史记录,机器人策略。 处理器链: 预取链:主要是做一些准备工作,例如,对处理进行延迟和重新处理,否决随后的操作。 提取链:主要是获得资源,进行DNS转换,填写请求和响应表单 抽取链:当提取完成时,抽取感兴趣的HTML,JavaScript,通常那里有新的也适合的URI,此时URI仅仅被发现,不会被评估 写链:存储爬行结果,返回内容和抽取特性,过滤完存储。 提交链:做最后的维护,例如,测试那些不在范围内的,提交给边界部件 Heritrix 1.0.0包含以下关键特性: 1.用单个爬虫在多个独立的站点一直不断的进行递归的爬。 2。从一个提供的种子进行爬,收集站点内的精确URI,和精确主机。 3。主要是用广度优先算法进行处理。 4。主要部件都是高效的可扩展的 5。良好的配置,包括: a。可设置输出日志,归档文件和临时文件的位置 b。可设置下载的最大字节,最大数量的下载文档,和最大的下载时间。 c。可设置工作线程数量。 d。可设置所利用的带宽的上界。 e。可在设置之后一定时间重新选择。 f。包含一些可设置的过滤机制,表达方式,URI路径深度选择等等。 Heritrix的局限: 1。单实例的爬虫,之间不能进行合作。 2。在有限的机器资源的情况下,却要复杂的操作。 3。只有官方支持,仅仅在Linux上进行了测试。 4。每个爬虫是单独进行工作的,没有对更新进行修订。 5 。在硬件和系统失败时,恢复能力很差。 6。很少的时间用来优化性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值