[转]Heritrix之旅之CrawlController

Heritrix web界面功能介绍 一、安装heritrix访问GitHub地址:https://github.com/internetarchive/heritrix3 我这里采用Clone的方式,使用的IDE是IntelliJ IDEA 导入完成后的结果如下: 二、启动Heritrixhttps://webarchive.jira.com/wiki/display/Heritrix/Running+Heritrix+ 阅读详情
 

文章来源http://www.cnblogs.com/MichaelYin/archive/2011/08/25/2153633.html

一转眼暑假就快要结束了,暑假也是在趁着找工作之前花时间折研究了一下Heritrix,这段时间会花点时间把这块学习和心得来做一个总结,一方面对知识的夯实,另一方面也能对园子里面的朋友有所帮助。

Heritrix的一些介绍网上都有,我在这里也就不做介绍了,直接进入正题。

Heritrix抓取任务的核心类就是CrawlController,这个对象将决定一个抓取任务的开始和结束

00//order.xml文件的封装
01private transient CrawlOrder order;
02//
03private transient CrawlScope scope;
04//处理链列表
05private transient ProcessorChainList processorChains;
06//为抓取线程提供uri
07private transient Frontier frontier;
08 
09//线程池
10private transient ToePool toePool;
11 
12//缓存,保存了当前抓取任务抓取过的Host名称和Server名称
13private transient ServerCache serverCache;
14 
15// This gets passed into the initialize method.
16 
17private transient SettingsHandler settingsHandler;

crawler_overview1

上面这个图就是CrawlController和抓取过程中的几个关键的组件的关系图,CrawlController包含了这几个组件并对整个抓取进行管理

CrawlController的初始化是在initialize方法中完成的,根据传入的SettingsHandler得到抓取必须的参数,进行初始化,然后完成其他的一些必须的初始化工作。

二次开发的时候我们也可以自己完成这些过程,但是有几个必须的过程是必须要走的,首先就是需要构造一个XMLSettingsHandler对象,将order.xml信息装入,然后构造一个CrawlController对象,然后将XMLSettingsHandler放入到CrawlController的initialize方法中去,当完成上述工作之后,CrawlController就可以准备开始进行抓取了。

其实上述所说的过程就是Heritrix类中doOneCrawl方法的实现的过程,我们可以直接将order.xml的文件路径放入方法然后进行抓取

0XMLSettingsHandler handler = new XMLSettingsHandler(new File(
1crawlOrderFile));
2handler.initialize();
3CrawlController controller = new CrawlController();
4controller.initialize(handler);
5if (listener != null) {
6controller.addCrawlStatusListener(listener);
7}
8controller.requestCrawlStart();
爬虫heritrix资料 爬虫heritrix资料 完整的爬虫heritrix资料,希望对你有帮助 立即下载

相关推荐

反激电源RCD尖峰吸收电路的原理以及调试

反激电源RCD尖峰吸收电路的原理以及调试

mnmmnmn的博客 9250

搜索引擎搭建:heritrix+lucene

原文链接:http://harttle.com/2013/11/05/se-project.html采用 heritix+pagerank+lucene 方式搭建搜索引擎原型,并评估其性能。爬虫(Heritrix)heritrix 是用作web归档的爬虫框架,java语言实现,具有 Apache License 自由软件许可。我们采用heritrix抓取网页数据。可参照官方 Guide:https:

分享技术,共建开放平台 1292

NRF52832串口通信避坑指南:从SDK配置到硬件流控(RTS/CTS)实战

本文详细介绍了NRF52832串口通信的实战指南,从SDK配置到硬件流控(RTS/CTS)的完整实现。通过分析UARTE模块特性、解决SDK版本差异问题、正确配置硬件引脚以及实现稳定通信的代码示例,帮助开发者避开常见陷阱,确保高效可靠的串口通信。特别强调了硬件流控在高速通信中的重要性及其实践方法。

weixin_33739646的博客 283

扩展Heritix之添加Extractor

api帮助查询文档http://crawler.archive.org/apidocs/ Heritrix内嵌的Extractor并不能够很好的完成所需要的工作,这不是说它不够强大,而是因为在解析一个网页时,常常有特定的需要。比如,可能只想抓取某种格式的链接,或是抓取某一特定格式中的文本片断。Heritrix所提供的大众化的Extractor只能够将所有信息全部抓取下来。在这种情况下,就无法控制

lycos的六度空间 3122

硬件单板类机考复习提纲

6、 功率晶体管低导通损耗时处于的状态(饱和状态、放大状态、截止状态)(放大器的采样频率特性)总结:元器件特性(电阻、电容、二极管、三极管、晶体、晶振、MOS、磁珠等)信号质量问题产生根因(单调性、边沿过缓、毛刺、回沟、抖动等)3、 几种电容容量范围大小(超级电容、钽电容、陶瓷电容、铝电容)66、背板连接器接触设计的接触顺序(先导向、再地针、最后信号针)28、逻辑电平接口的特性(CMOS、TTL、ECL、PECL)76、差分电平(lvpecl、RS-422/485、cml)

2303_79562407的博客 1万+

西门子840D新建项目

1、需要一个32位的WIN7或者XP系统,并且已经在系统中安装完成西门子840Dsl开发包和VS2008。(我采用的是XP系统虚拟机) 2、在开始->所有程序找到如下位置 3、在这个位置打开Visual Studio 4、文件->新建->项目 名称和位置都可以随意更改,点击确定。 5、在左侧选择第二个选项进入下面的界面 点击“Add Screen”按钮 可以修改“class name”然后点击“OK”返回上一个界面,再点击“Add Form” 可以修...

qq_36987047的博客 1861

使用Heritrix进行主题抓取

使用Heritrix进行主题抓取

baalhuo的博客 4400

UPF2.1进阶指南:如何优雅地处理Hard Macro与Top-Level Port的电源意图

本文深入解析UPF2.1在复杂SoC设计中的高级电源意图建模,重点探讨Hard Macro与顶层端口的电源管理实战技巧。通过`power_model`和`set_port_attribute`的高级应用,解决第三方硬核IP电源建模不透明、顶层端口电源属性定义不当等工程难题,提供可靠的电源管理方案,确保芯片设计性能与功耗的精确控制。

weixin_30443747的博客 171

深入学习Heritrix---解析CrawlController

 当我们以Web UI方式使用Heritrix时,点击任务开始(start)按钮时,Heritrix就开始了它的爬取工作.但它的内部执行流程是怎样的呢?别急,下面将慢慢道来.(一)CrawlJobHandler当点击任务开始(start)按钮时,将执行它的startCrawler()方法:if(sAction.equalsIgnoreCase("start")){     

走向架构师之路 3002

13、数据可视化与分组操作:Danfo.js 实战指南

本文深入介绍了如何使用 Danfo.js 进行数据可视化与分组操作。内容涵盖多种图表的创建与配置,如折线图、散点图、箱线图、小提琴图、直方图和柱状图,并结合 Plotly.js 实现丰富的交互式可视化效果。同时,详细讲解了数据聚合的‘分割-应用-组合’模式,包括分组数据、遍历分组、apply 方法及 agg 聚合操作,帮助开发者高效处理和分析结构化数据。适用于 Dnotebook、HTML 及主流前端框架的应用场景。

o1p2q3r的博客 99

YOLOv8 架构改造实战:添加 P2 小目标检测头与 P6 超大目标检测头

上采样是指将特征图的空间尺寸变大(例如从 20×20 → 80×80),用来提升图像的分辨率。常见于解码器结构或特征融合中。下采样是指将特征图的空间尺寸缩小(例如从 256×256 → 128×128),通常用于减少计算量、提取更高级语义特征。操作目的方法尺寸变化上采样放大特征图插值算法变大(如2×)下采样压缩特征图、提取语义stride卷积等变小(如1/2)

FJN110的博客 575

Heritrix1.14源码分析(12) Heritrix的控制中心(大脑)CrawlController

转自:http://blog.youkuaiyun.com/jazywoo123/article/details/8223246 CrawlController的确是Heritrix的大脑,在Heritrix中拥有无上的权利!可以控制Heritrix的启动、暂停、停止,也定时进行数据统计、数据汇报和文件管理。同时CrawlController也基本上贯穿整个Heritrix代码,和CrawlURI一

梁江江 1023

基于YOLOv5/v8/v10的垃圾分类识别系统:设计实现与性能优化(附代码+数据集)

做完这个毕设,你已经掌握了从数据准备、模型训练到界面开发的全流程。把模型部署到树莓派上,做个真正的“智能垃圾桶”硬件装置;加入语音提示功能,检测到垃圾后自动语音播报类别;试试融合多个YOLO模型的优势,让分类精度再上一个台阶。按照这个教程一步步做,你的毕设不仅能顺利完成,还能做出很多亮点。要是过程中遇到啥问题,别慌,慢慢琢磨或者咱们一起聊聊,肯定能把这个毕设做成让你满意的作品。

know_F0727的博客 463

【转】 深入学习Heritrix---解析CrawlController

深入学习Heritrix---解析CrawlController<br />转自:http://www.cnblogs.com/hustcat/archive/2008/10/11/1308866.html<br /> <br /> <br />当我们以Web UI方式使用Heritrix时,点击任务开始(start)按钮时,Heritrix就开始了它的爬取工作.但它的内部<br />执行流程是怎样的呢?别急,下面将慢慢道来.<br />(一)CrawlJobHandler<br />当点击任务开始(sta

strawbingo的专栏 977

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

heritrix java_爬虫技术框架——Heritrix

Heritrix是一个由Java开发的开源Web爬虫系统,用来获取完整的、精确的站点内容的深度复制,具有强大的可扩展性,运行开发者任意选择或扩展各个组件,实现特定的抓取逻辑。一、Heritrix介绍Heritrix采用了模块化的设计,用户可以在运行时选择要用的模块。它由核心类(core classes)和插件模块(pluggable modules)构成。核心类可以配置,但不能被覆盖,插件模块可以...

weixin_39945810的博客 437

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

深入学习Heritrix---解析CrawlController(转)

当我们以Web UI方式使用Heritrix时,点击任务开始(start)按钮时,Heritrix就开始了它的爬取工作.但它的内部 执行流程是怎样的呢?别急,下面将慢慢道来. (一)CrawlJobHandler 当点击任务开始(start)按钮时,将执行它的startCrawler()方法: if(sAction.equalsIgnoreCase("start")){...

weixin_34055910的博客 88

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Heritrix源码分析(十二) Heritrix的控制中心(大脑)CrawlController(一)

CrawlController的确是Heritrix的大脑,在Heritrix中拥有无上的权利!可以控制Heritrix的启动、暂停、停止,也定时进行数据统计、数据汇报和文件管理。同时CrawlController也基本上贯穿整个Heritrix代码,和CrawlURI一样。同时CrawlController纯代码页进2000行,下面就先介绍里面的属性和主要方法,同时对一些灵活用法也加以介绍:

春夏秋冬过 905

heritrix 以CrawlController(后台)的方式运

转自  http://blog.youkuaiyun.com/songzhen640/archive/2008/07/16/2662443.aspx heritrix 以CrawlController(后台)形式运行的代码实现理解不一定对,不过我实现了在文件内可以改写order.xml 在写一个 seeds.txt  其中抓取的内容就在该文件夹内package main;import ja

海的男人 691

heritrix的主要功能模块

1、Frontier(链接工厂)是Heritrix最核心的部分,有三个核心的方法:next,schedule,finished,其原型及作用如下: a) 程提供一个链接.Heritrix的所有处理线程(ToeThread)都是通过调用该方法获取链接的 b) schedule(CandidateURI caURI):调度待处理的链接 c) finished(CrawlURI cURI):

kivcare的专栏 1068

解析CrawlController

当我们以Web UI方式使用Heritrix时,点击任务开始(start)按钮时,Heritrix就开始了它的爬取工作.但它的内部 执行流程是怎样的呢?别急,下面将慢慢道来. (一)CrawlJobHandler 当点击任务开始(start)按钮时,将执行它的startCrawler()方法: if(sAction.equalsIgnoreCase("start")) {

Winhye 600
下一篇: 在Myeclise中配置heritrix1.14.4
KnightWoOoO
博客等级 码龄16年 6粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值