君子博学而日参省乎己 则知明而行无过矣

博客园 首页 新随笔 联系 订阅 管理

2013年4月20日 #

摘要: 我在分析BdbFrontier对象的void schedule(CrawlURI caURI)、CrawlURI next() 、void finished(CrawlURI cURI)方法是,其实还有一些相关环境没有分析,其实我是有点疲倦本文接下来分析在多线程环境中Heritrix3.1.0系统怎样保持相关对象属性的一致性以及怎样自定义配置相关对象的属性值我们在WorkQueueFrontier类的void schedule(CrawlURI curi)方法里面可以看到@Override public void schedule(CrawlURI curi) { shee... 阅读全文
posted @ 2013-04-20 12:47 刺猬的温驯 阅读(892) 评论(3) 推荐(0) 编辑

摘要: 接下来分析BdbFrontier类的void finished(CrawlURI curi) 方法,完成CrawlURI对象的扫尾工作在BdbFrontier类的父类的父类AbstractFrontier里面org.archive.crawler.frontier.BdbFrontier org.archive.crawler.frontier.AbstractFrontier/** * Note that the previously emitted CrawlURI has completed * its processing (for now). * ... 阅读全文
posted @ 2013-04-20 07:16 刺猬的温驯 阅读(794) 评论(0) 推荐(0) 编辑

摘要: 接下来分析BdbFrontier类的CrawlURI next()方法,该方法是获取下一个待采集的CrawlURI对象该方法是在BdbFrontier类的父类的父类AbstractFrontier里面org.archive.crawler.frontier.BdbFrontier org.archive.crawler.frontier.AbstractFrontier/* (non-Javadoc) * @see org.archive.crawler.framework.Frontier#next() */ public CrawlURI next() thr... 阅读全文
posted @ 2013-04-20 07:02 刺猬的温驯 阅读(1033) 评论(0) 推荐(0) 编辑

摘要: 上文分析了Heritrix3.1.0系统是怎么添加CrawlURI curi对象的,那么在系统初始化的时候,是怎么载入CrawlURI curi种子的呢?我们回顾前面的文章,在我们执行采集任务的launch指令的时候,实际会调用CrawlController对象的void requestCrawlStart()方法/** * Operator requested crawl begin */ public void requestCrawlStart() { hasStarted = true; sendCrawlStateChangeEv... 阅读全文
posted @ 2013-04-20 06:38 刺猬的温驯 阅读(801) 评论(0) 推荐(0) 编辑