点击空白处退出提示
作品详情
在力所能及的情况下,最大限度的提高 Web爬虫开发人员的生产力,爬虫框架里的一股清流
主要功能
基于webcollector开发的完整的分布式爬虫框架,该框架特点如下:
1、完全分布式:由管理端(Admin)、调度端(Master)和多个Worker组成,各个组件通过Http协议通信。
2、完全配置化:通过Admin端的页面配置规则就可以爬取任何网站的数据,当然不同网站的难度不一样,会有不同的组件分别针对处理登录、验证码、封IP等问题。
3、可扩展的任务队列:任务队列由Redis实现,根据任务的状态有四种不同的任务队列:初始、执行中、成功、失败。您也可以扩展不同的任务调度算法,默认是公平调度。
4、可定义持久化方式:爬取结果中,属性数据默认持久化到MonogoDB,当然您可以扩展更多的存储类型。
5、稳定和容错:任何一个爬虫任务都会重试和记录,只有任务真正成功了才会被移到成功队列,失败会有失败的原因描述。
技术选型
● 核心框架:webcollector Spring boot
● 任务调度:Spring + Quartz
● 持久层框架:Spring Jpa
● 数据库&连接池:Alibaba Druid MongoDB MySql
● 缓存框架:Redis Ehcache
● 日志管理:SLF4J、Log4j2
● 前端框架: Bootstrap + Jquary
开发环境配置:
1.安装JDK8
2.安装mysql数据库,用作存储解析规则等数据,需要创建一个“crawler”的数据库实例,并执行quartz相关的数据库脚本:quartz.sql(见发布包或源码)。
3.安装redis
4.安装mongoDB用于存放结果数据
5.安装ftp服务器软件ftpserver(可选,用于存放下载图片)
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论