文档章节

爬虫管理平台Crawlab v0.3.0发布(Golang版本)

tikazyq
 tikazyq
发布于 2019/09/17 17:18
字数 1166
阅读 98
收藏 0

基于Golang的分布式爬虫管理平台,支持Python、NodeJS、Java、Go、PHP等多种编程语言以及多种爬虫框架。

项目自今年三月份上线以来受到爬虫爱好者们和开发者们的好评,不少使用者还表示会用Crawlab搭建公司的爬虫平台。经过近数月的迭代,我们陆续上线了定时任务、数据分析、网站信息、可配置爬虫、自动提取字段、下载结果、上传爬虫等功能,将Crawlab打造得更加实用,更加全面,能够真正帮助用户解决爬虫管理困难的问题。

Crawlab主要解决的是大量爬虫管理困难的问题,例如需要监控上百个网站的参杂scrapyselenium的项目不容易做到同时管理,而且命令行管理的成本非常高,还容易出错。Crawlab支持任何语言和任何框架,配合任务调度、任务监控,很容易做到对成规模的爬虫项目进行有效监控管理。

更新内容

本次v0.3.0版本是一次重大更新,主要是将原来基于Celery的Python版本后台用Golang替代了。更新内容如下:

  • Golang后端: 将原先的Python代码由Golang重构,提高了稳定性和性能
  • 节点拓扑图: 将节点拓扑结构可视化了
  • 节点系统信息: 可以看到节点的系统信息,例如操作系统、CPU数量,执行文件等等
  • 节点监控升级: 节点通过Redis来注册监控
  • 文件管理: 能够修改爬虫文件,并且提供代码高亮
  • 登录/注册/用户管理: 要求用户登录使用Crawlab,允许用户注册和用户管理,加入了基于角色的权限管理
  • 自动爬虫部署: 爬虫被自动同步/部署到所有在线节点
  • 更小的Docker镜像: 通过多阶段构建,将原先的Docker镜像大小从1.3G瘦身到700M

为什么会重构Crawlab

用Golang重构的初衷是为了解决一些根本性的bug,例如定时任务无法稳定触发,节点不会自动显示为离线,等等。重构后的API会更加稳定,更加高性能,以前任务列表响应大概在几百毫秒,而现在仅仅需要几毫秒。此外,本次重构优化了用户使用流程,例如之前需要手动部署爬虫,需要用户点击很多次才能运行爬虫;而现在,所有爬虫都是自动部署,代价是用户上传爬虫之后需要等待不到1分钟的时间,待爬虫文件通过GridFS部署到所有节点之后,才可以运行(当然,主节点是可以直接运行的)。本次重构还加入了一些附加功能,例如用户权限的功能(提供了基础的权限管理)、节点拓扑图、文件管理等等。总的来说,本次更新将Crawlab打造得更加稳定和实用。

Crawlab截屏预览

登录

首页

节点列表

节点拓扑图

爬虫列表

爬虫概览

爬虫分析

爬虫文件

任务详情 - 抓取结果

定时任务

为什么没有可配置爬虫

很遗憾,由于时间紧张,没有将可配置爬虫移植到新版Crawlab上。但是我们后面会将该功能加入进来。

接下来的计划

  • 日志管理,更加中心化的日志管理
  • 其他SQL数据库支持,支持储存结果为MySQL、Postgres等主流数据库
  • 可配置爬虫
  • 异常监控,日志错误异常,零值异常等
  • 统计数据可视化,更多图表功能

不过,如果您有更好的idea,欢迎随时提需求。

社区

如果您觉得Crawlab对您的日常开发或公司有帮助,请加作者微信 tikazyq1 并注明"Crawlab",作者会将你拉入群。欢迎在Github上进行star,以及,如果遇到任何问题,请随时在Github上提issue。另外,欢迎您对Crawlab做开发贡献。


本篇文章由一文多发平台ArtiPub自动发布

© 著作权归作者所有

tikazyq

tikazyq

粉丝 16
博文 16
码字总数 35673
作品 1
私信 提问
加载中

评论(0)

基于 golang 的 xApi Manager 正式开源,为您提供更好的操作体验

基于 golang 的 xApi Manager 正式开源,为您提供更好的操作体验 kstalen 2019年5月28日暂无评论 阅读 12 次 XAPI MANAGER -专业实用的开源接口管理平台,为程序开发者提供一个灵活,方便,快...

kstalen
2019/05/28
0
0
golang: beego自动化部署

springboot: springboot+mongodb+docker实例 golang: beego自动化部署 数据库管理平台NetopGO简介 Go语言开发 Go语言圣经(中文版) Go语言(golang)开源项目大全 Go语言诞生5周年!10大Go语言...

d_watson
2016/05/20
235
0
xApi Manager v3发布,基于golang全新打造而成

xApi Manager-哆啦接口管理平台 XAPI MANAGER -专业实用的开源接口管理平台,为程序开发者提供一个灵活,方便,快捷的API管理工具,让API管理变的更加清晰、明朗 基于golang开发的V3版本已上...

duolatech
2019/05/21
2K
7
bzppx-codepub v0.8 预览版,现代的持续集成发布系统

暴走皮皮虾之代码发布系统,是现代的持续集成发布系统,由后台管理系统和agent两部分组成,一个运行着的agent就是一个节点,本系统并不是造轮子,是"鸟枪"到"大炮"的创新,对"前朝遗老"的革命. 特点...

phachon
2018/03/21
789
1
后台数据可视化管理平台生成框架 GoAdmin v1.0.0-alpha 发布

GoAdmin 第一个预发布1.0版本上线了。 golang作为一门蓬勃发展的编程语言,得益于其众多优异的特性,在过去几年内越来越受到编程人员的青睐。而对于golang,在后台管理,数据可视化管理领域却...

cg33
2019/10/08
3.4K
9

没有更多内容

加载失败,请刷新页面

加载更多

一款提升IT运维工作效率的工具,你值得拥有!

IT运维的工作内容主要是负责服务器硬件配置、独立主机或虚拟化产品的开通维护、服务器日常运行监控和管理等,具体的要看企业对这个岗位的要求。 而像运维这样的岗位,我个人是推荐可以使用一...

欢乐马在开源
20分钟前
44
0
IDEA 多线程Debug

一、问题描述 在idea中的进行调试时,代码中有多线程,想对线程中的代码进行跟踪,代码如下: for (int i = 0; i < 5; i++) { final int index = i; exec...

Airship
24分钟前
19
0
jenkins 插件加速

参考:https://my.oschina.net/VASKS/blog/3106314 主要是自己创建一个nginx, 让jenkins从清华源下载。 以下是创建nginx的Dockerfile Dockerfile FROM nginxADD nginx.conf /etc/nginx/ngi......

杰仪
25分钟前
29
0
五分钟自学编程:怎样才能学好笔试面试最爱考察的算法

原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者。 本文思维导图 什么是算法 上回我们有一篇文章,讲述了作为一个新人程序员,如何学习数据结构这门课程,其实呢,数据结构和...

黄小斜
28分钟前
24
0
面试题 11:旋转数组的最小数字

题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋...

Oaki
34分钟前
50
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部