Heritrix源码分析(六) Heritrix的文件结构分析(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642618
本博客已迁移到本人独立博客: http://www.yun5u.com/
欢迎加入Heritrix群(QQ):109148319,10447185 , Lucene/Solr群(QQ) : 118972724
每通过Heritrix运行一次抓取后,发现在该Job目录下就会有很多文件。这里说明下每个文件的作用,同时更主要介绍它的日志文件,因为我们可以通过日志文件发现Heritrix的抓取情况。首先贴个图:
以上就是Heritrix完成的文件结构,现在一一说明
| 序号 | 文件名 | 说明 |
| 1 | order.xml | Heritrix运行的所有配置,一个order.xml就代表一个抓取任务 |
| 2 | seeds.txt | 种子文件,Heritrix从里面的URL开始抓取 |
| 3 | state | Heritrix采用BDB去保存URL,这个目录就是bdb目录 |
| 4 | scratch | 保存网页内容,每一个URL网页内容都对应一对ris和ros文件 |
| 5 | logs | 保存了Heritrix抓取时的日志,会这种介绍。可以从这些日志文件挖掘抓取情况 |
| 6 | checkpoints | 等同于数据库的checkpoint,Heritrix可以设置定时,然后定时备份其所有文件,也就是这里介绍的所有文件。同时在做这个操作的时候Heritrix暂停所有抓取. |
| 7 | seeds-report.txt | 种子抓取汇报,主要针对seeds.txt里的种子URL做个说明。等下会详细说明... |
| 8 | responsecode-report.txt | 抓取URL的服务器响应代码以及该代码的URL个数。等下会详细说明... |
| 9 | processors-report.txt | 每个处理器的抓取报告,等下会详细说明 |
| 10 | mimetype-report.txt | 网页类型抓取汇报,等下会详细说明 |
| 11 | frontier-report.txt | 调度器处理报告,等下会详细说明 |
| 12 | crawl-report.txt | 抓取汇报,等下会详细说明 |
| 13 | crawl-manifest.txt | 里面包含了Heritrix涉及到的文件 |
| 14 | hosts-report.txt | 域抓取汇报,等下会详细说明 |
现在重点说明一下Heritrix的所有日志文件:
1.抓取汇报文件:crawl-report.txt
抓取名字:Crawl Name
抓取状态:Crawl Status
抓取用时:Duration Time
成功抓取的种子数:Total Seeds Crawled
没有抓取的种子数:Total Seeds not Crawled
共抓取的host个数:Total Hosts Crawled
共抓取的文档数(URL数):Total Documents Crawled
处理速度(文档/秒):Processed docs/sec
宽带速率(KB/秒):Bandwidth in Kbytes/sec
抓取的字节数:Total Raw Data Size in Bytes
共抓取的字节数:Novel Bytes: 11644599984 (11 GB)
2.调度器汇报:frontier-report.txt
1)队列描述:
处理中队列:IN-PROCESS QUEUES
准备队列:READY QUEUES
延迟队列:SNOOZED QUEUES
不在活动状态队列:INACTIVE QUEUES
退休队列:RETIRED QUEUES
2)属性描述:
queue:队列ID,为class key
currentSize:当前队列包含URL个数
totalEnqueues:进入该队列的URL个数
sessionBalance:预算值
lastCost:上一个URL所花费成本
(averageCost):平均成本
lastDequeueTime:上一个URL出队列的时间
wakeTime:醒来的时间
totalSpend/totalBudget:总花费
errorCount:出现错误的URL个数
lastPeekUri:上一个获取的URL
lastQueuedUri:上一个进入队列的URL
3.抓取host汇报(按urls个数从大到小排序):hosts-report.txt
[#urls]:该host下URL个数
[#bytes]:该host下所抓取的字节数
[host]:host
[#robots]:被爬虫协议拒绝的url个数
[#remaining]:剩下还未处理的URL个数
4.网页类型(一般为text/dns和text/html)抓取汇报:mimetype-report.txt
[#urls]:该网页类型的url个数
[#bytes]:该网页类型一共处理的字节数
[mime-types]:网页类型(text/dns和text/html)
5.处理器汇报:processors-report.txt
1)总体汇报:Processors report
Job being crawled:该JOB来源的JOB
Number of Processors:处理器个数,包括无效的处理器
NOTE:处理器说明
2)单个Processor汇报:
Processor:处理器名
Function:处理器功能
CrawlURIs handled:该处理器下处理的URL个数
Recovery retries:
Links extracted:抽取出来的URL个数
6.Http response汇报:responsecode-report.txt
[rescode]:Http response code
1:请求http
200:http成功相应
302:暂时性重定向
500:http服务器内部错误
[#urls]:是该code的URL个数
Heritrix源码分析(六) Heritrix的文件结构分析(转)的更多相关文章
- Heritrix源码分析(九) Heritrix的二次抓取以及如何让Heritrix抓取你不想抓取的URL
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/644396 本博客已迁移到本人独立博客: http://www.yun5u ...
- Heritrix源码分析(十三) Heritrix的控制中心(大脑)CrawlController(二)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/650744 本博客已迁移到本人独立博客: http://www.yun5u. ...
- Heritrix源码分析(七) Heritrix总体介绍(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642794 本博客已迁移到本人独立博客: http://www.yun ...
- Heritrix源码分析(十一) Heritrix中的URL--CandidateURI和CrawlURI以及如何增加自己的属性(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/649889 本博客已迁移到本人独立博客: http://www.yun5u.com/ ...
- Heritrix源码分析(十) Heritrix中的Http Status Code(Http状态码)(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/649737 本博客已迁移到本人独立博客: http://www.yun5u ...
- phpcms 源码分析六:index文件
这次是逆雪寒对index.php的分析: /* [/php] [ 本帖最后由 逆雪寒 于 2007-12-25 16:12 编辑 ] 尽量每天都有新的东西每天都能进一小步 现在开始讲 index.ph ...
- Heritrix源码分析(十四) 如何让Heritrix不间断的抓取(转)
欢迎加入Heritrix群(QQ):109148319,10447185 , Lucene/Solr群(QQ) : 118972724 本博客已迁移到本人独立博客: http://www.yun5u ...
- Heritrix源码分析(十四)
近段时间在搞定Lucene的一些问题,所以Heritrix源码分析暂时告一段落.今天下午在群里有同学提到了Heritrix异常终止的问题以及让Heritrix不停的抓取(就是抓完一遍后载入种子继续抓取 ...
- angular源码分析:injector.js文件分析——angular中的依赖注入式如何实现的(续)
昨天晚上写完angular源码分析:angular中jqLite的实现--你可以丢掉jQuery了,给今天定了一个题angular源码分析:injector.js文件,以及angular的加载流程,但 ...
随机推荐
- m_pMainWnd(转载)
今天写程序时遇到个简单而又很有意思的问题,封装了一个网络接口类,发送数据以及网络的回调接口都在这个类里面,打算在回调函数里给AfxGetMainWnd()发送消息以更新主界面的数据,同时程序有一个登录 ...
- copy
拷贝文件,不覆盖重复文件 yes no|cp -i a b
- Hadoop完全分布式集群配置
1.前话 寒假实在太闲了,所以闲着无聊地去了解"大数据"这个新概念,这几年到处都在说什么大数据时代的,不能不让我感到好奇啊. 大数据有啥用?随便谷歌百度一大堆我也不多说了. 我自己 ...
- [iOS]SourceTree+oschina实现代码远程托管
在iOS开发, 涉及到多人协同开发的时候, 这个时候, 我们就得利用版本控制系统(例如GIT), 来合并和管理代码了, 今天我们来讲一下, 利用 SourceTree+oschina进行版本控制 先来 ...
- HighCharts开发说明及属性详解
一.HighCharts开发说明: HighCharts 开发实际上配置HighCharts每个部分,比如配置标题(title),副标题(subtitle)等,其中每个部分又有更细的参数配置,比如标题 ...
- Java:字符串缓冲区StringBuffer和StringBuilder的使用
StringBuffer特点: 1.是字符缓冲区,一个容器(不论缓冲区内容怎么变化,StringBuffer这个容器对象都不会改变) 2.是可变长度的 3.可以直接操作多个数据类型 4.最终会通过to ...
- Android 图片的缩略图
<1>简介 之前往往是通过Bitmap.Drawable和Canvas配合完成,需要写一系列繁杂的逻辑去缩小原有图片,从而得到缩略图. 现在我给大家介绍一种比较简单的方法:(网上有) 在A ...
- power designer 连接数据库提示“connection test failed”
利用powerdesigner反向生成表结构时,需要mysql连接,配置好连接,测试时直接报:connection test failed”! OS:WIN7 旗舰版 64位 JDK: 64位 Pow ...
- ASP.NET 在IIS7.5下自定义404错误页面的方法
.net 4.0 本机调试时一切正常,配置如下 <customErrors redirectMode="ResponseRewrite" mode="On& ...
- SSIS ->> Null & Null Functions
SSIS不支持值为NULL的变量.每种类型的变量都有自己的默认值. 做了一个测试,用一个Execute SQL Task输出一个NULL值给A变量,然后把A变量传到到另外一个Execute SQL T ...