Why,为什么需要爬虫管理平台?
以下摘自官方文档:
Crawlab主要解决的是大量爬虫管理困难的问题,例如需要监控上百个网站的参杂scrapy
和selenium
的项目不容易做到同时管理,而且命令行管理的成本非常高,还容易出错。
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
使用测试:
以这个网站为例。
上面有一些名人名句,需要抓的是句子内容、作者及标签。
可配置爬虫(当然也能上传运行自定义的爬虫):
使用crawlab生成个可配置爬虫,即在web界面点几下就能生成一个爬虫。
添加爬虫后可在“配置”这里配置开始url,一些字段xpath及下一页的xpath
也可到“文件”进一步修改错漏的地方:
配置好后运行->查看结果
定时爬虫:
将上面设置的爬虫设置定时运行。
为了看清楚效用,设置了每分钟运行一次,它是基于linux下的crontab设置的定时任务
关于crontab的配置可参考:
https://blog.csdn.net/wade3015/article/details/90289751
ok,可以看到有在定时运行,没毛病~
感谢阅读,以上~