java爬虫 webcollector_Java爬虫-WebCollector | 学步园

爬虫简介:

WebCollector是一个无须配置、便于二次开发的JAVA爬虫框架(内核),它提供精简的的API,只需少量代码即可实现一个功能强大的爬虫。

爬虫内核:

WebCollector致力于维护一个稳定、可扩的爬虫内核,便于开发者进行灵活的二次开发。内核具有很强的扩展性,用户可以在内核基础上开发自己想要的爬虫。源码中集成了Jsoup,可进行精准的网页解析。

量级:

WebCollector最常用的爬取器BreadthCrawler使用2^24的布隆过滤器进行URL管理,可处理2^24量级的数据,也就是3000W的网页。用户可以通过自定义插件来定制处理能处理更大量级数据的爬虫。

插件:

基于WebCollector内核,可以自己编写爬虫的http请求、链接解析器、爬取信息更新器、抓取器等模块,WebCollector把这些基于内核编写的模块称作"插件",通过不同的插件组合,可以在1分钟内,把WebCollector组装成一个全新的爬虫。

WebCollector内置了一套插件(cn.edu.hfut.dmic.webcollector.plugin.redis)。基于这套插件,可以把WebCollector的任务管理放到redis数据库上。在早期版本中,redis插件可以让爬虫处理较高量级的数据。从1.35版本开始,爬取器BreadthCrawler已经比使用redis插件的爬取器(RedisCrawler)具有更高的爬取量级。所以目前还是推荐使用BreadthCrawler作为爬取器。

用户可以根据自己的需求,去开发适合自己的插件。

MAVEN:

教程:

DEMO1:

用WebCollector制作一个爬取《知乎》并进行问题精准抽取的爬虫(JAVA)

设计框架:

7c1b888f83688c614aa96376bbbf072d.png

Generator:抓取任务生成模块。

Filter:过滤器。对生成的任务进行过滤。

Fetcher:爬取任务。

Parser:解析任务(主要为链接抽取)。

Handler:消息机制。使用WebCollector的开发者通过handler可以快速定制自己的爬虫。WebCollector并没有使用Nutch的插件机制,而是使用handler来完成对爬虫功能的扩展。爬虫每遍历到一个页面,就会发送一个Message给Handler,开发者只要定制自己的Handler,即可对页面进行自定义操作。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WebCollector是一个无须配置、便于二次开发的Java爬虫框架(内核),它提供精简的的API,只需少量代码即可实现一个功能强大的爬虫WebCollector-Hadoop是WebCollector的Hadoop版本,支持分布式爬取。 WebCollector致力于维护一个稳定、可扩的爬虫内核,便于开发者进行灵活的二次开发。内核具有很强的扩展性,用户可以在内核基础上开发自己想要的爬虫。源码中集成了Jsoup,可进行精准的网页解析。2.x版本中集成了selenium,可以处理JavaScript生成的数据。 WebCollector特性: 1、自定义遍历策略,可完成更为复杂的遍历业务,例如分页、AJAX 2、可以为每个 URL 设置附加信息(MetaData),利用附加信息可以完成很多复杂业务,例如深度获取、锚文本获取、引用页面获取、POST 参数传递、增量更新等。 3、使用插件机制,用户可定制自己的Http请求、过滤器、执行器等插件。 4、内置一套基于内存的插件(RamCrawler),不依赖文件系统或数据库,适合一次性爬取,例如实时爬取搜索引擎。 5、内置一套基于 Berkeley DB(BreadthCrawler)的插件:适合处理长期和大量级的任务,并具有断点爬取功能,不会因为宕机、关闭导致数据丢失。 6、集成 selenium,可以对 JavaScript 生成信息进行抽取 7、可轻松自定义 http 请求,并内置多代理随机切换功能。 可通过定义 http 请求实现模拟登录。 8、使用 slf4j 作为日志门面,可对接多种日志 9、使用类似Hadoop的Configuration机制,可为每个爬虫定制配置信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值