浏览 7427 次
锁定老帖子 主题:heritrix学习总结
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-04-15
最后修改:2009-04-15
从http://crawler.archive.org/下载解压到本地 E:\heritrix-1.14.3 2 配置环境变量 HERITRIX_HOME=E:\heritrix-1.14.3 path后追加 ;%HERITRIX_HOME%\bin 3 配置 heritrix 拷贝E:\heritrix-1.14.3\conf\jmxremote.password.template到E:\heritrix-1.14.3下 并从命名为jmxremote.password 修改E:\heritrix-1.14.3\conf下的heritrix.properties 文件 用UrltraEditor或其他的文本编辑工具打开,找到 heritrix.cmdline.admin = admin是空的 这是登陆heritrix UI的用户名和密码 格式为 username:password heritrix.cmdline.admin = admin:admin heritrix.cmdline.port = 8080 配置端口 为了不和tomcat的8080端口冲突我改为8888 用winrar 打开E:\heritrix-1.14.3下的heritrix-1.14.jar文件,将其目录中的profiles文件夹拷到 E:\heritrix-1.14.3\conf目录下即完成heritrix的配置 (用些网友说要将jmxremote.password文件的属性改为只读,我不知道为什么?,官方文档里也没说) 4 启动heritrix 开始 -》运行 -》cmd 打开cmd端口 输入heritrix --admin=admin:admin --admin heritrix的启动参数 必须的* 弹出一个Heritrix窗口 打印。。。。。。。。。。。。。Heritrix version: 1.14.3 cmd窗口打印出 2009-04-15 星期三 10:42:03.04 Starting heritrix Heritrix 1.14.3 is running. Web console is at: http://127.0.0.1:8888 Web console login and password: admin/admin 表示启动完成 5 抓取任务 用浏览器打开http://127.0.0.1:8888 输入用户名和密码 选Jobs选项, 在Create New Job 下选择 With defaults 子项 Create new crawl job based on default profile Name of new job 和Description 随便写 Seeds 填写要抓取的网站 http://www.verycd.com/ (必须以/结尾) 单击Modules 按钮 Select Modules and Add/Remove/Order Processors 从上而下,可以看到,需要配置的内容共有7项 1.CrawlScope CrawlScope用于配置当前应该在什么范围内抓取网页链接。比如,如果选择BroadScope,则表示当前 抓 取的范围不受限制,但如果选择了HostScope,则表示抓取的范围在当前的Host内。 选择 org.archive.crawler.scope.BroadScope 单击change按钮即可 2.URI Frontier URI Frontier是一个URL的处理器,它将决定下一个被处理的URL是什么。同时,它还会将经由处理器 链所解析出来的URL加入到等待处理的队列中去。在例子中,使用BdbFrontier类来做为处理器,全权 掌管URL的分配 选择 org.archive.crawler.frontier.BdbFrontier 单击change按钮即可 3.Pre Processors 这个队列中,所有的处理器都是用来对抓取时的一些先决条件做判断的。比如判断robot.txt的信息等 ,它是整个处理器链的入口 选择org.archive.crawler.prefetch.Preselector 和 org.archive.crawler.prefetch.PreconditionEnforcer 两项 (在下拉列表中选择好,点击Add添加即可 ) 4.Fetcher:从名称上看,它用于解析网络传输协议,比如解析DNS、HTTP或FTP等 选择org.archive.crawler.fetcher.FetchDNS org.archive.crawler.fetcher.FetchHTTP 两个单击Add添加 5.Extractors 它主要用是于解析当前获取到的服务器返回内容,这些内容通常是以字符串形式缓存的。在这个队列中 ,包括了一系列的工具,如解析HTML、CSS等。在解析完毕,取出页面中的URL后,将它们放入队列中,等 待下次继续抓取 org.archive.crawler.extractor.ExtractorHTTP org.archive.crawler.extractor.ExtractorHTML org.archive.crawler.extractor.ExtractorCSS org.archive.crawler.extractor.ExtractorJS org.archive.crawler.extractor.ExtractorSWF 6.Writers Writers主要是用于将所抓取到的信息写入磁盘。通常写入磁盘时有两种形式,一种是采用压缩的方式写 入,在这里被称为Arc方式,另一种则采用镜象方式写入。当然处理起来,镜象方式要更为容易一些。 默认的是Arc方式 点击旁边的Remove 删除 在下拉框中选择 org.archive.crawler.writer.MirrorWriterProcessor 单击Add添加 7 Post Processors 在整个抓取解析过程结束后,进行一些扫尾的工作,比如将前面Extractor解析出来的URL有条件的加入 到待处理队列中去 org.archive.crawler.postprocessor.CrawlStateUpdater org.archive.crawler.postprocessor.LinksScoper org.archive.crawler.postprocessor.FrontierScheduler 单击Add添加 【在设置时,可以看见在队列的右侧总是有“Up”、“Down”和“Remove”这样的操作是因为在处理器链 的设置过程中,每一个队列中的处理器都是要分先后顺序的】 设置运行时的参数 在设置完处理链后,选择Jobs菜单的“Settings”项进入运行参数设置页面 . 进入运行参数设置页面 后,有很多可以设定的参数,对于需要了解详情的设置,请点击设置框左边的“?”号,可看到弹出的帮 助信息。这里只要更改 “HTTP-Header”项中的内容,更改其属性值user-agent和 from 其中user-agent中的 PROJECT_URL_HERE 对应自己的完整URL地址,(http://192.168.16.128) from中设置自己的合法email地址 只需是格式正确的邮件地址就可以 @VERSION@是设置heritrix的版本 填上1.14.3 user-agent Mozilla/5.0 (compatible; heritrix/1.14.3 +http://192.168.16.128) 设置完成后单击“Submit job”链接 会回到Job是页面 显示了“Job created”,这表示刚才所设置的抓取任务已经被成功的建立。同时,在下面的“Pending Jobs”一栏,可以清楚的看到刚刚被创建的Job,它的状态目前为“Pending”。 最后启动这个任务。回到“Console”界面上,可以看到刚刚创建的任务已经显示了出来,等待我们开始 它。 单击面版中的“Start”链接,就会将此时处于“Pending”状态的抓取任务激活,令其开始抓取 此时,面版中出现了一条抓取状态栏,它清楚的显示了当前已经被抓取的链接数量 抓取完毕后在E:\heritrix-1.14.3\目录下生成以个jobs目录 进入jobs 可以看到 verycd-20090415024225919 其中verycd就是job的名称 进去 里面有一个mirror目录 是因为在前面设置了Writer的类型为MirrorWriter 里面每一个站点的URL地址即为保存的目录名称 至此 heritrix抓取任务就到此结束... 附上用lucene做的简易网页搜索 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-05-21
请问你后面附的图 就是用heritrix爬下来 然后用lucene做的索引吗?不过用heritrix爬下来的jobs文件夹下 只有很少的.html文件 而你的好像有180多项 这是怎么回事呢?还有就是mirror文件夹下的子文件夹的名字都是url地址? 其实我想要的就是这些这些地址所对应的那个页面的内容,不知道我的表述清不清楚,如果能看明白,希望指点一下
|
|
返回顶楼 | |