快来学习怎么可视化监控你的爬虫

你们好,我是四毛,下面是个人我的公众号,欢迎关注。有问题的能够私信我,看到就会回复。

 

更新 2018年08月03日14:39:32

其实能够利用scrapy的扩展展现更多的数据,立个flag,后面更新上来python

 

好,开始今天的文章。git

今天主要是来讲一下怎么可视化来监控你的爬虫的状态。github

相信你们在跑爬虫的过程当中,也会好奇本身养的爬虫一分钟能够爬多少页面,多大的数据量,固然查询的方式多种多样。今天我来说一种可视化的方法。sql

关于爬虫数据在mongodb里的版本我写了一个能够热更新配置的版本,即添加了新的爬虫配置之后,不用重启程序,便可获取刚刚添加的爬虫的状态数据,你们能够经过关注个人公众号之后, 回复“可视化”便可获取脚本地址。

1.成品图

 

这个是监控服务器网速的最后成果,显示的是下载与上传的网速,单位为M。爬虫的原理都是同样的,只不过将数据存到InfluxDB的方式不同而已, 以下图。mongodb

能够实现对爬虫数量,增量,大小,大小增量的实时监控。数据库

 

2. 环境

  • InfluxDb,是目前比较流行的时间序列数据库;
  • Grafana,一个可视化面板(Dashboard),有着很是漂亮的图表和布局展现,功能齐全的度量仪表盘和图形编辑器,支持Graphite、zabbix、InfluxDB、Prometheus和OpenTSDB做为数据源
  • Ubuntu
  • influxdb(pip install influxdb)
  • Python 2.7

 

3. 原理

获取要展现的数据,包含当前的时间数据,存到InfluxDb里面,而后再到Grafana里面进行相应的配置便可展现;json

 

4. 安装

    4.1 Grafana安装

             官方安装指导服务器

安装好之后,打开本地的3000端口,便可进入管理界面,用户名与密码都是admin。app

     4.2 InfulxDb安装

这个安装就网上本身找吧,有不少的配置我都没有配置,就不在这里误人子弟了。scrapy

 

5. InfluxDb简单操做

碰到了数据库,确定要把增删改查学会了啊, 和sql几乎同样,只有一丝丝的区别,具体操做,你们能够参考官方的文档。

  • influx 进入命令行
  • CREATE DATABASE test 建立数据库
  • show databases 查看数据库
  • use test 使用数据库
  • show series 看表
  • select * from table_test 选择数据
  • DROP MEASUREMENT table_test 删表

 

6. 存数据

InfluxDb数据库的数据有必定的格式,由于我都是利用python库进行相关操做,因此下面将在python中的格式展现一下:

其中:

  • measurement, 表名
  • time,时间
  • tags,标签
  • fields,字段

能够看到,就是个列表里面,嵌套了一个字典。其中,对于时间字段,有特殊要求,能够参考这里, 下面是python实现方法:

因此,到这里,如何将爬虫的相关属性存进去呢?以MongoDB为例

完整代码,关注上面的公众号,发送“”可视化“”便可获取。

那么如今咱们已经往数据里存了数据了,那么接下来要作的就是把存的数据展现出来。

 

7.展现数据

7.1 配置数据源

以admin登陆到Grafana的后台后,咱们首先须要配置一下数据源。点击左边栏的最下面的按钮,而后点击DATA SOURCES,这样就能够进入下面的页面:

点击ADD DATA SOURCE,进行配置便可,以下图:

其中,name自行设定;Type 选择InfluxDB;url为默认的http://localhost:8086, 其余的由于我前面没有进行配置,因此默认的便可。而后在InfluxDB Details里的填入Database名,最后点击测试,若是没有报错的话,则能够进入下一步的展现数据了;

7.2 展现数据

点击左边栏的+号,而后点击GRAPH

接着点击下图中的edit进入编辑页面:

从上图中能够发现:

  •   中间板块是最后的数据展现
  • 下面是数据的设置项
  • 右上角是展现时间的设置板块,在这里能够选择要展现多久的数据

7.2.1 配置数据

  1. 在Data Source中选择刚刚在配置数据源的时候配置的NAME字段,而不是database名。
  2. 接着在下面选择要展现的数据。看着就很熟悉是否是,彻底是sql语句的可视化。同时,当咱们的数据放到相关的字段上的时候,双击,就会把能够选择的项展现出来了,咱们要作的就是直接选择便可;
  3. 设置右上角的时间,则可让数据实时进行更新与展现

由于下面的配置实质就是sql查询语句,因此你们按照本身的需求,进行选择配置便可,当配置完之后,就能够在中间的面板里面看到数据了。

 

 

8. 总结

到这里,本篇文章就结束了。其中,对于Grafana的操做我没有介绍的很详细,由于本篇主要讲的是怎么利用这几个工具完成咱们的任务。

同时,里面的功能确实不少,还有能够安装的插件。我本身目前仍是仅仅对于用到的部分比较了解,因此你们能够查询官方的或者别的教程资料来对Grafana进行更深刻的了解,制做出更加好看的可视化做品来。

最后,关注公众号,回复“可视化” 便可获取本文代码哦

相关文章
相关标签/搜索