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

2019-08-01 09:48:58 +08:00
 tikazyq

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

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

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

更新内容

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

为什么会重构 Crawlab

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

Crawlab 截屏预览

登录

首页

节点列表

节点拓扑图

爬虫列表

爬虫概览

爬虫分析

爬虫文件

任务详情 - 抓取结果

定时任务

为什么没有可配置爬虫

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

接下来的计划

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

社区

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

2513 次点击
所在节点    Go 编程语言
2 条回复
locoz
2019-08-01 10:25:28 +08:00
大佬牛逼 大佬牛逼 大佬牛逼
tikazyq
2019-08-01 10:27:41 +08:00
@locoz 紧随 Loco 大佬的步伐

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/588065

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX