• 分布式爬虫管理平台Crawlab安装与使用


    Why,为什么需要爬虫管理平台?

    以下摘自官方文档:

      Crawlab主要解决的是大量爬虫管理困难的问题,例如需要监控上百个网站的参杂scrapyselenium的项目不容易做到同时管理,而且命令行管理的成本非常高,还容易出错。

    Crawlab支持任何语言和任何框架,配合任务调度、任务监控,很容易做到对成规模的爬虫项目进行有效监控管理。

      项目自 2019 年 3 月份上线以来受到爬虫爱好者们和开发者们的好评,超过一半的使用者表示已经在用 Crawlab 作为公司的爬虫管理平台。

    经过近数月的迭代,陆续上线了 定时任务、数据分析、可配置爬虫、SDK、消息通知、Scrapy 支持、Git 同步等功能,

    将Crawlab打造得更加实用,更加全面,能够真正帮助用户解决爬虫管理困难的问题。

    以下是Crawlab的一些页面:

    主页

    爬虫列表页

    爬虫文件编辑

    定时任务

    消息通知

    ----------------

    真香,想起自己以前写的大大小小的的爬虫脚本。如果早些使用crawlab来管理说不定还是能发挥余热的。

    抱着对定时任务、消息通知、数据分析等功能的期待。

    开始了安装及使用之旅~

    安装:

    系统:阿里云centos7

    这里使用最简单的安装方法,docker安装。

    先用docker下载crawlab镜像:

    docker pull tikazyq/crawlab:latest

    关于docker常用命令及简介,这篇文章写的很全:

    https://blog.csdn.net/javahelpyou/article/details/104587242

    还需要安装docker-compose,在安装了python3 的前提下:

    pip3 install docker-compose

    安装后可执行docker-compose ps验证是否安装正常。

    启动crawlab:

    需要先找到docker-compose.yml文件所在文件夹,shell在根目录下执行:

    find  -name "docker-compose.yml"

    转到该文件夹直接执行:

    docker-compose up

    即可运行。

    在浏览器中输入 http://localhost:8080就可以看到界面。

     如果布置到了公网记得开放8080端口及重设密码。

    这里mongodb及redis也是使用docker-compose一同安装管理。

    所以建议您将数据库持久化,因为否则的话,一旦您的 Docker 容器发生意外导致关闭重启,您的数据将丢失。

    至于数据持久化、mongodb及redis密码设置、数据库端口映射。等等修改配置文件docker-compose.yml即可。

    可以到官方文档查看说明:

    https://docs.crawlab.cn/Installation/Docker.html

    使用测试:

    以这个网站为例。

    http://quotes.toscrape.com/

    上面有一些名人名句,需要抓的是句子内容、作者及标签。

    可配置爬虫(当然也能上传运行自定义的爬虫):

    使用crawlab生成个可配置爬虫,即在web界面点几下就能生成一个爬虫。

    添加爬虫后可在“配置”这里配置开始url,一些字段xpath及下一页的xpath

    也可到“文件”进一步修改错漏的地方:

    配置好后运行->查看结果

    定时爬虫:

    将上面设置的爬虫设置定时运行。

    为了看清楚效用,设置了每分钟运行一次,它是基于linux下的crontab设置的定时任务

    关于crontab的配置可参考:

    https://blog.csdn.net/wade3015/article/details/90289751

    ok,可以看到有在定时运行,没毛病~

    感谢阅读,以上~

  • 相关阅读:
    细数阿里云在使用 Docker 过程中踩过的那些坑
    细数阿里云在使用 Docker 过程中踩过的那些坑
    javascript – 从页面停用浏览器打印选项(页眉,页脚,页边距)?
    jquery children()方法
    jquery 获取输入框的值
    java BigDecimal加减乘除
    window.print()打印时,如何自定义页眉/页脚、页边距
    深入分析:12C ASM Normal冗余中PDB文件块号与AU关系与恢复
    我不是药神,救不了你的穷根
    Install fail! Error: EPERM: operation not permitted
  • 原文地址:https://www.cnblogs.com/byadmin/p/12434975.html
Copyright © 2020-2023  润新知