`
guoyunsky
  • 浏览: 845026 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
3d3a22a0-f00f-3227-8d03-d2bbe672af75
Heritrix源码分析
浏览量:204460
Group-logo
SQL的MapReduce...
浏览量:0
社区版块
存档分类
最新评论

Heritrix3.1.1 新特性,新功能

 
阅读更多

        本博客为原创文章,转载请注明出处:http://guoyunsky.iteye.com/blog/1744866

       本人新浪微博:http://weibo.com/guoyunwb

 

      趁周末看了下Heritrix,这里发现改动还是很大.虽然自己已经不怎么写爬虫,但长期关注一样一直在发展的东西,的确是一件很幸福的事情,让自己可以获益不少.这里整理下,分享给大家.

     Heritrix 3.1.1于2012年5月份发布.以下是它的英文介绍。

      Nicer code editor for crawl config and script console (HER-2001)

The crawl configuration cxml editor and the scripting console editor now use CodeMirror, which adds syntax highlighting, line numbers and other features

       Fixed occasional mangling of DNS records in ARCs and WARCs (HER-1983)

A longstanding bug that caused some DNS records in ARCs and WARCs to be mangled, due to unsafe use of a shared variable among threads, is now fixed.

       Remember all surts across checkpoint/resume (HER-1985)

Surts that were derived from seeds, or listed as surts in the seeds source, or that were added using a .seeds file in the action directory, can now be remembered across checkpoint/resume. For that to work the relevant SurtPrefixedDecideRule must be a top-level bean. The default cxml distributed with heritrix now includes the key decide rule as a top-level bean with id "acceptSurts".

       Support for saving script state (HER-1984)

Added a shared map for arbitrary use during a crawl. It can be used for state persisting for the duration of the crawl, shared among ScriptedProcessor, scripting console and other scripts, or other purposes. In scripts it can be obtained with appCtx.getData().

 

     中文翻译,以及部分讲解.

     1.更友善的界面代码编辑器

Heritrix可以通过UI界面编辑配置文件,Heritrix 3.0开始支持动态脚本(python,js等),但以前的界面的确不太友善。只是一个简单的文本输入框.Heritrix 3.1开始采用CodeMirror(http://codemirror.net/),支持高亮,行数显示等功能。

 

        2.解决ARCs和WARCs记录的DNS数据线程错位异常 (HER-1983)

解决了一个长期的bug,由于线程之间的共享变量不安全使用,导致ARCs和WARCs记录的DNS数据错位。

 

        3.可以记录Surts的所有checkpoint/resume状态 (HER-1985)(理解可能有误,待确认)

Surts都来自于种子,要么作为种子来源在cxml文件中配置,要么来自.seeds文件,或者action directory目录下.现在都可以记录他们的checkpoint/resume状态.(之前只能记录明确的种子来源,而如来自action directory则没法记录)

 

         4.支持可以保存脚本状态 (HER-1984)

在整个抓取过程中,增加了一个可以任意使用的共享map.它可以用于状态持久化,以及在一定数量的ScriptedProcessor,脚本控制台,其他脚本,以及其他用途之间共享.这个共享map在脚本中可以通过appCtx.getData()来获取.(以前执行脚本是暂时的,可能一些脚本需要上下文之类的东西,也就是上一个脚本需要下一个脚本的结果,或者不同脚本之间要共享变量,那Heritrix3.1.1可以支持了。)

 

更多技术文章、感悟、分享、勾搭,请用微信扫描:

0
0
分享到:
评论
1 楼 louningfeng 2016-07-18  
大神,请教一个问题,Hertrix 和 Nutch 有没有提供对于 需要登录的网站的网页抓取的支持,比如 开发人员 可以提供一个基金网的登录账户和密码,然后使用以上两种工具任意一种来获取该账户对应的基金交易流水等网页信息呢 ,非常感谢

相关推荐

    heritrix3.1.1

    Heritrix 3.1.1 是一个强大的网络爬虫工具,专为处理现代Web内容设计,具有高度可配置性和灵活性。它允许用户通过源代码对网页进行深度抓取,从而收集、保存并分析互联网上的数据。这款软件是开放源码的,这意味着...

    heritrix-3.1.0 最新jar包

    - **扩展性**:Heritrix设计为插件式系统,开发者可以编写自己的模块来扩展其功能,如添加新的解析器、过滤器或存储适配器。 总结来说,Heritrix 3.1.0 是一款功能强大、可定制的网络爬虫工具,适用于学术研究、...

    heritrix1.14.0jar包

    在实际使用中,Heritrix可以通过编写自定义模块来扩展其功能,例如添加新的处理器、过滤器或存储适配器。开发者可以通过实现Heritrix提供的接口或继承已有类,将新功能集成到爬虫流程中。 总的来说,Heritrix1.14.0...

    Heritrix爬虫框架 完整版

    Heritrix的核心特性包括: 1. **模块化设计**:Heritrix采用组件化的结构,每个组件负责特定的功能,如URL调度、HTTP请求、页面解析等。这种设计使得用户可以根据需要添加、修改或替换组件,以适应不同的爬取任务。...

    Heritrix3手册翻译

    它在2009年12月发布了3.0.0版本,并随着时间的推移不断更新,提供了3.0.1补丁版和3.2.0版,增加了新的特性和功能,比如更简单的使用方式、持续爬行以及处理大规模爬行任务的能力。Heritrix 3 的文档包括用户指南和...

    网络爬虫Heritrix1.14.4可直接用

    总结来说,Heritrix 1.14.4是一个功能丰富的网络爬虫工具,它的模块化设计和灵活的配置使得它适合各种规模的爬虫项目。通过深入学习和实践,开发者可以掌握网络爬虫的基本原理和技术,并能够构建自己的网络数据获取...

    heritrix-1.14.4

    Heritrix的发展遵循迭代模式,新版本通常会引入新的功能或改进现有功能,以适应不断变化的网络环境。 描述中的"heritrix-1.14.4-src.zip"指示这是源代码包,而非编译后的二进制文件。源代码包对于开发者和高级用户...

    Heritrix(windows版)

    通过源代码,你可以深入理解Heritrix的工作原理,并根据需要修改或扩展它的功能。如果你打算对Heritrix进行二次开发,或者需要解决特定问题,那么这个源代码包是必不可少的。 此外,还有一个名为“官方下载地址.txt...

    Heritrix使用详解与高级开发应用

    Heritrix的其他重要特性还包括支持断点续爬、自动处理重定向、HTTP状态码检查以及内容类型识别等。它还能够处理JavaScript和Flash内容,虽然可能需要借助额外的库或服务来实现。通过集成其他的解析器和解析库,如...

    heritrix爬虫安装部署

    - 运行Heritrix应用并验证功能。 #### 三、Heritrix工作原理 Heritrix的工作原理基于深度优先搜索算法,其核心流程包括: 1. **爬取任务初始化**: 创建新的爬取任务,并配置爬取范围、频率等参数。 2. **页面抓取*...

    heritrix系统使用.ppt

    Heritrix的一个特性是其url队列管理机制。默认情况下,所有属于同一hostname的URL会被放入同一个队列,导致只有一个线程在工作。为了解决这个问题,可以使用如ELF哈希算法来平均分配URL到不同的队列,从而实现更有效...

    heritrix1.14.4(内含src)

    在使用Heritrix 1.14.4时,需要注意的是,由于这是一个较旧的版本,可能会有一些已知的问题或者不支持现代网站的新特性。因此,在实际应用中,可能需要升级到最新版本以获取更好的性能和兼容性。同时,源代码的可用...

    Heritrix搭建好的工程

    在新窗口中,创建一个新的“Java Application”配置,选择Heritrix主类(通常是包含`main`方法的类)作为启动类。 运行Heritrix后,你可以在浏览器中访问其管理界面。通常,默认的访问地址是...

    Heritrix部署直接能运行的项目

    Heritrix 1.0.0包含以下关键特性: 1.用单个爬虫在多个独立的站点一直不断的进行递归的爬。 2。从一个提供的种子进行爬,收集站点内的精确URI,和精确主机。 3。主要是用广度优先算法进行处理。 4。主要部件都...

    heritrix-1.14.2.zip

    6. **测试套件**:用于验证Heritrix功能的测试用例,可以帮助开发者进行调试和验证修改。 使用Heritrix 1.14.2时,首先需要解压这个zip文件,然后根据文档指导配置和编译项目。编译完成后,可以通过命令行启动...

    heritrix-1.10.1

    Heritrix是一个强大的开源网络爬虫工具,专为大规模网页抓取而设计。这款软件的主要目标是提供一个...如果需要进一步了解Heritrix 1.10.1的具体特性,建议查看官方文档和变更日志,以获取关于新功能和改进的详细信息。

Global site tag (gtag.js) - Google Analytics