1. 下载heritrix-1.14.0
从官网http://crawler.archive.org/downloads.html上下载heritrix-1.14.0.zip和heritrix-1.14.0-src.zip,并分别加压上述两个文件为heritrix-1.14.0和heritrix-1.14.0-src
2. 安装配置heritrix-1.14.0
1) 在eclipse中新建java project,命名为 Heritrix
2) 向工程中添加文件
将文件heritrix-1.14.0-src/src/java/下面的三个目录:org、com、st一起拷贝到Heritrix下面。
将文件heritrix-1.14.0-src/src/conf/下面的三个目录(包括:modules、profiles、selftest),以及四个文件(包括:heritrix.properties、jmxremote.password.template、heritrix.cacerts、jndi.properties)一起拷贝到Heritrix下面。
将文件heritrix-1.14.0-src/src/resources/下面的三个文件(包括:arcMetaheaderBody.xsl、README.txt,其中README.txt没有用处是显而易见的)拷贝到Heritrix下。
将文件heritrix-1.14.0/下面的webapps目录拷贝到Heritrix目录下面,这里,webapps目录下面有两个WAR包(即admin.war和selftest.war)。
将heritrix-1.14.0/下的lib文件夹拷贝到Heritrix下。
3) 添加外部jar包
右键选择 Build Path,选择 Add Library,新建一个用户自定义库 heritrix-1.14,.0,将heritrix-1.14.0-src/lib中所有jar包加入该库中。
4) 修改heritrix.properties属性文件
在 Heritrix/src/下打开 hreritrix.properties,修改如下几项:
heritrix.version = 1.14.0 Heritrix 版本号
heritrix.jobsdir = jobs Heritrix执行抓取任务时内容存放目录,Heritrix/jobs
heritrix.cmdline.admin = admin:admin 登录时的用户名和密码
heritrix.cmdline.port = 9090 运行后台程序时,监听的WebUI使用的端口号
5) 启动Heritrix后台程序
在 Heritrix/src/ 下打开包 org.archive.crawler,打开 Heritrix.java,运行
6) 登录WebUI
浏览器地址栏中输入 http://localhost:9090,输入用户名和密码
选择jobs选项,抓取页为 http://www.szpku.edu.cn/
设置处理器:
1. frontier
org.archive.crawler.frontier.BdbFrontier
2. scope
org.archive.crawler.scope.BroadScope
3. Prefetcher
org.archive.crawler.prefetch.Preselector
org.archive.crawler.prefetch.PreconditionEnforcer
4. Fetcher
org.archive.crawler.fetcher.FetchDNS
org.archive.crawler.fetcher.FetchHTTP
5. Extractor
org.archive.crawler.extractor.ExtractorHTTP
org.archive.crawler.extractor.ExtractorHTML
6. Writer
org.archive.crawler.writer.MirrorWriterProcessor
7. PostProcessor
org.archive.crawler.postprocessor.CrawlStateUpdater
org.archive.crawler.postprocessor.LinksScoper
org.archive.crawler.postprocessor.FrontierScheduler
在Modules中选择org.archive.crawler.deciderules.DecidingScope,然后在Submodule的rules中选择org.archive.crawler.deciderules.MatchesListRegExpDecideRule,在setting中的regexp-list中,增加五个正则表达式,.*szpku.* .*pnbs.pku.* .*stl.pku.* .*pkusz.* .*szcie.pku.*。
submodule中,添加org.archive.crawler.deciderules.MatchesFilePatternDecideRule,限制抓取的文件类型,排除以下文件:
Images: .bmp, .gif, .jp(e)g, .png, .tif(f)
Audio: .mid, mp2, .mp3, .mp4, .wav
Video: .avi, .mov, .mpeg, .ram, .rm, .smil, .wmv
Miscellaneous: .doc, .pdf, .ppt, .swf