⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 github.com/crawlab-team/crawlab 「crawlab-team」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言都将得到认真回复。甚至不知道如何读源码也可以请教噢。
  4. 新的源码解析文章实时收到通知。每周更新一篇左右。
  5. 认真的源码交流微信群。

简介

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

谁适合使用 Crawlab?

  • 网路爬虫工程师: 通过集成爬虫程序到 Crawlab,网路爬虫工程师可以聚焦于爬虫的核心解析逻辑,从而避免浪费过多时间在开发通用模块上,例如任务队列、存储、日志、消息通知等。
  • 运维工程师: Crawlab 对于运维工程师来说最大的好处是部署便利(对于爬虫程序和 Crawlab 本身)。Crawlab 支持 Docker 或 Kubernetes 一键安装。
  • 数据分析师: 数据分析师如果能写代码(例如 Python),则可以开发爬虫程序(例如 Scrapy)然后上传到 Crawlab,然后就可以把所有脏活累活交给 Crawlab,它能够自动抓取数据。
  • 其他: 准确的说,任何人都能够享受 Crawlab 自动化带来的便利。虽然 Crawlab 尤其擅长执行网络爬虫任务,但它不仅限于此,它能够被用来运行其他类型的任务,例如数据处理和自动化。

快速开始

请打开命令行并执行下列命令。请保证已经提前安装了 docker-compose。

git clone https://github.com/crawlab-team/examples
cd examples/docker/basic
docker-compose up -d

接下来,可以看 docker-compose.yml (包含详细配置参数),以及参考 文档 来查看更多信息。

文档:https://docs.crawlab.cn/zh/guide/

运行

Docker

请用docker-compose来一键启动,甚至不用配置 MongoDB 数据库,「当然我们推荐这样做」。在当前目录中创建docker-compose.yml文件,输入以下内容。

version: '3.3'
services:
master:
image: crawlabteam/crawlab:latest
container_name: crawlab_example_master
environment:
CRAWLAB_NODE_MASTER: "Y"
CRAWLAB_MONGO_HOST: "mongo"
volumes:
- "./.crawlab/master:/root/.crawlab"
ports:
- "8080:8080"
depends_on:
- mongo

worker01:
image: crawlabteam/crawlab:latest
container_name: crawlab_example_worker01
environment:
CRAWLAB_NODE_MASTER: "N"
CRAWLAB_GRPC_ADDRESS: "master"
CRAWLAB_FS_FILER_URL: "http://master:8080/api/filer"
volumes:
- "./.crawlab/worker01:/root/.crawlab"
depends_on:
- master

worker02:
image: crawlabteam/crawlab:latest
container_name: crawlab_example_worker02
environment:
CRAWLAB_NODE_MASTER: "N"
CRAWLAB_GRPC_ADDRESS: "master"
CRAWLAB_FS_FILER_URL: "http://master:8080/api/filer"
volumes:
- "./.crawlab/worker02:/root/.crawlab"
depends_on:
- master

mongo:
image: mongo:4.2
container_name: crawlab_example_mongo
restart: always

然后执行以下命令,Crawlab 主节点、工作节点+ MongoDB 就启动了。打开http://localhost:8080就能看到界面。

docker-compose up -d

Docker 部署的详情,请见相关文档。

文档:https://docs.crawlab.cn/zh/guide/installation/docker.html

界面截图

与其他框架比较

现在已经有一些爬虫管理框架了,因此为啥还要用 Crawlab?

因为很多现有当平台都依赖于 Scrapyd,限制了爬虫的编程语言以及框架,爬虫工程师只能用 scrapy 和 python。当然,scrapy 是非常优秀的爬虫框架,但是它不能做一切事情。

Crawlab 使用起来很方便,也很通用,可以适用于几乎任何主流语言和框架。它还有一个精美的前端界面,让用户可以方便的管理和运行爬虫。

开源地址

https://github.com/crawlab-team/crawlab

文章目录
  1. 1. 简介
  2. 2. 谁适合使用 Crawlab?
  3. 3. 快速开始
  4. 4. 运行
    1. 4.0.0.1. Docker
  • 5. 界面截图
  • 6. 与其他框架比较
  • 7. 开源地址