1、下载heritrix3.0或heritrix3.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
其在id为simpleOverrides的bean内。内容如下:
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,回到工作页面。点build,Job 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:[email protected]
以上三个bean设置完毕的话,就可以运行抓取了.不过是全网抓取.
这里回到操作界面,默认的是https://localhost:8443/,正常的话会在Job Directories下显示刚才创建的test_job,如果没有的话点下rescan按钮,重新扫描一下.显示除了test_job后我们点击它,这时就会进入该job的控制台了