基于Golang的分布式爬虫管理平台,支持Python、NodeJS、Java、Go、PHP等多种编程语言以及多种爬虫框架。git
项目自今年三月份上线以来受到爬虫爱好者们和开发者们的好评,很多使用者还表示会用Crawlab搭建公司的爬虫平台。通过近数月的迭代,咱们陆续上线了定时任务、数据分析、网站信息、可配置爬虫、自动提取字段、下载结果、上传爬虫等功能,将Crawlab打造得更加实用,更加全面,可以真正帮助用户解决爬虫管理困难的问题。github
Crawlab主要解决的是大量爬虫管理困难的问题,例如须要监控上百个网站的参杂scrapy
和selenium
的项目不容易作到同时管理,并且命令行管理的成本很是高,还容易出错。Crawlab支持任何语言和任何框架,配合任务调度、任务监控,很容易作到对成规模的爬虫项目进行有效监控管理。数据库
本次v0.3.0
版本是一次重大更新,主要是将原来基于Celery的Python版本后台用Golang替代了。更新内容以下:编程
用Golang重构的初衷是为了解决一些根本性的bug,例如定时任务没法稳定触发,节点不会自动显示为离线,等等。重构后的API会更加稳定,更加高性能,之前任务列表响应大概在几百毫秒,而如今仅仅须要几毫秒。此外,本次重构优化了用户使用流程,例如以前须要手动部署爬虫,须要用户点击不少次才能运行爬虫;而如今,全部爬虫都是自动部署,代价是用户上传爬虫以后须要等待不到1分钟的时间,待爬虫文件经过GridFS部署到全部节点以后,才能够运行(固然,主节点是能够直接运行的)。本次重构还加入了一些附加功能,例如用户权限的功能(提供了基础的权限管理)、节点拓扑图、文件管理等等。总的来讲,本次更新将Crawlab打造得更加稳定和实用。后端
很遗憾,因为时间紧张,没有将可配置爬虫移植到新版Crawlab上。可是咱们后面会将该功能加入进来。微信
不过,若是您有更好的idea,欢迎随时提需求。框架
若是您以为Crawlab对您的平常开发或公司有帮助,请加做者微信 tikazyq1 并注明"Crawlab",做者会将你拉入群。欢迎在Github上进行star,以及,若是遇到任何问题,请随时在Github上提issue。另外,欢迎您对Crawlab作开发贡献。scrapy