Heritrix 1.14.4的配置和初次使用

刚刚进行了Heritrix的配置,参考了网上不少资料,最后终于配置成功。写下心得:
如下有些语句直接拷贝过来的,我只是把有问题的地方,修改一下。java

新建Java Project工程
在Eclipse中新建一个Java Project工程,删除掉工程中的两个文件目录bin和src(后面会自动添加)。
向新建的Java Project添加Heritrix-1.14.4文件
将目录heritrix-1.14.4-src\src\java\下面的三个目录:org,com,st一块儿拷贝到新建工程目录下面。
将目录heritrix-1.14.4-src\src\conf\下面的:三个目录(包括:modules、profiles、selftest),以及四个文件(heritrix.properties、jmxremote.password.template、heritrix.cacerts、jndi.properties)一块儿拷贝到新建的工程目录下面。
将目录heritrix-1.14.4-src\src\resources\下面的三个文件,包括:arcMetaheaderBody.xsl等拷贝到新建的工程目录下,会弹出已存在,直接覆盖。
将目录heritrix-1.14.4\下面的webapps目录拷贝到新建工程目录下这里,webapps目录下面有两个WAR包(即admin.war和selftest.war)。
刷新工程右键单击工程,将heritrix-1.14.4\下的lib文件夹拷贝到工程下。而后将文件的路径加入工程中。
web

修改工程里class文件中的第3行和倒数第2行为浏览器

<classpathentry kind="src" path=""/>(此处将path后面的src改成空)网络

<classpathentry kind="output" path=""/>(修改同上)
app

修改heritrix.properties属性文件
修改heritrix.version=1.14.4,heritrix.jobsdir到抓取的数据存储的位置(默认的job),heritrix.cmdline.admin(admin:admin)登陆帐号密码,heritrix.cmdline.port(8888)运行的端口(此处要当心,首先肯定你本身的8888端口未被占用,不然换其它的端口便可)。webapp


上述一切修改完后,会出现sun.net.www.protocol.file.FileURLConnection的错误
这是由于是sun包是受保护的包,默认为只有sun公司的软件才能使用,进入Windows–Preferences—Java—Compiler—Errors/Warnings— Deprecated and trstricted API— Forbidden reference (access rules):— change to warning,对受保护的包使用warning便可。
运行package org.archive.crawler包中Heritrix.java文件便可完成配置ide

在浏览器中输入http://localhost:8888/即进入页面网站

使用:
(1) 登录后,在导航栏选择”Jobs”,呈现的第一项是”Create New Job”,选择第四小项”With defaults”。输入项的前两项Name和Description随意,Seeds很是重要:http://www.163.com/ 注意最后一个反斜杠必须。spa

(2) 选择下边的”Modules”,进入Module配置页(Heritrix的扩展功能都是经过模块概念实现的,能够实现本身的模块完成本身想要的功能)。其中第一项 “Select Crawl Scope” 使用默认的 “org.archive.crawler.deciderules.DecidingScope”。倒数第三项 “Select Writers ” 删除默认的 “org.archive.crawler.writer.ARCWriterProcessor” ,后添加”org.archive.crawler.writer.MirrorWriterProcessor”,这样执行任务的时候抓取到的页面会以镜像的方式放在本地的目录结构中,而不是生成ARC存档文件。.net

(3) 选择”Modules”右边的”Submodules”,在第一项内容中 “crawl-order ->scope->decide-rules->rules” 删除掉其中的 “acceptIfTranscluded” (org.archive.crawler.deciderules.TransclusionDecideRule) 的这一项抓取做用域的规则。不然当Http请求返回301或者302时Heritrix会去抓取其余域下的网页。

(4) 在第二行导航栏中选择”Settings”进入Job的配置页面,其中主要修改两项:http-headers 下的user-agent 和 from:
user-agent主要是指运行Heritrix的用户的配置,即便用者的机器配置。首先是浏览器的选择,好比IE/7.0;其中 @VERSION@是指使用Heritrix的版本号,这里应该是1.14.4;最后面的PROJECT_URL_HERE是指本机地址:http://127.0.0.1。
from 改成本身的邮箱

(5) 在第二行导航栏中选择最右边的”Submit job” (6) 在第一行导航栏中选择第一项的”Console”,点击”Start”,抓取任务正式开始,时间长短有网络情况和所抓取网站的深度有关。

相关文章
相关标签/搜索