1. 前言

本文并不是讲解爬虫的相关技术实现的,而是从实用性的角度,将抓取并存入 MongoDB 的数据 用 InfluxDB 进行处理,而后又通过 Grafana 将爬虫抓取数据情况通过酷炫的图形化界面展示出来。

在开始之前,先对 Grafana 和 InfluxDB 做一下简要的介绍:

Grafana:是一个开源的分析和监控系统,拥有精美的web UI,支持多种图表,可以展示influxdb中存储的数据,并且有报警的功能。

**Influxdb **:是一款开源的时间序列数据库,专门用来存储和时间相关的数据(比如我用它存储某个时间点爬虫抓取信息的数量)。

最终能实现的效果是这样的:

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

请注意以下操作,都是 Mac 下实现的。但是原理是相似的,你可以在自己的 PC 上进行试验。

2. 安装配置 InfluxDB

安装 InfluxDB

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

修改配置文件/usr/local/etc/influxdb.conf,如果原文件中没有对应配置项,需自己添加。

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

3. 安装配置 Grafana

安装 Grafana

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

并修改 Grafana 配置文件 /usr/local/etc/grafana/grafana.ini,内容如下:

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

4. 爬虫代码

由于这里主是要介绍如何将 Grafana 和 InfluxDB 与爬虫进行结合的方案,而不是主讲爬虫原理,而且代码也比较多,影响可读性,所以就不贴出爬取的代码。

5. 监控脚本

考虑到可能要增加爬虫到监控中,因此这里使用了热更新对监控进行动态配置。

配置文件 influx_settings.conf 主要用于热更新相关设置。

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

如何动态读取这个配置文件的设置呢?需要写一个脚本来监控。代码如下:

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

来试着运行一下

python3 influx_monitor.py

运行,得到下图内容,表示监控脚本运行成功。

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

另建窗口,修改配置文件 influx_settings.conf

# 修改间隔时间为8秒

interval = 8

切换至第一次运行 influxDB 的窗口,会提示配置更新,说明配置热更新生效。

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

6. 配置 Grafana

首先打开 Chrome 浏览器,输入 http://127.0.0.1:3000 登录 grafana 页面。

连接本地 influxDB 数据库,操作如下图。

在红色方框内选择 Type 类型为 InfluxDB,并输入URL:http://localhost:8086

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

在红框内输入influxDB数据库名称

新建 dashboard

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

新建 graph 类型 dashboard

修改 dashboard 设置

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

点击红色方框修改设定

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

修改 dashboard 配置

设置监控的数据对象

在监控脚本中,写入influxDB的代码如下,其中 "measurement" 对应 表名,"fields" 对应写入的字段;

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

7. 运行爬虫文件

启动 MongoDB 数据库服务。

brew services mongodb start

新建一个 terminal 窗口,运行爬虫文件。

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

爬虫文件运行成功

我们可以在刚刚打开的控制台里查看效果展示:

手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面

怎么样?学会了吗?

python图形化监控系统界面_手把手教你实现一个可视化爬虫监控系统,酷炫的图形化界面...相关推荐

  1. 手把手教你打造一个可视化接口自动化测试系统

    现如今,接口开发几乎成为一个互联网公司的标配了,无论是web还是app,哪怕是小程序,都离不开接口作为支撑,当然,这里的接口范围很广,从http到websocket,再到rpc,只要能实现数据通信的都 ...

  2. java学生考勤系统视频_手把手教你做一个Java 学生信息、选课、签到考勤、成绩管理系统附带完整源码及视频开发教程...

    四个阶段的学生信息系统视频教程终于录制完成了,这里把这四个阶段的系统打个包,如果想一次性全部获取那就点击文章下方的获取按钮,也可以根据下面给出的每个阶段的地址去分别获取,这里简单介绍下四个阶段. 第一 ...

  3. java学生签到系统视频教程_手把手教你做一个Java web学生信息、选课、签到考勤、成绩管理系统附带完整源码及视频开发教程...

    四个阶段的Java web学生信息系统视频教程终于录制完成了,系统用到的知识点有:jsp+servlet+mysql+jquery+ajax,前端采用的是当下最流行的easyui管理框架,全部采用面向 ...

  4. 手把手教你做一个物联网视频监控项目(三)流媒体方案实现

    往期文章 手把手教你做一个物联网视频监控项目(一) 介绍 手把手教你做一个物联网视频监控项目(二)MJPG-streamer方案实现 文章目录 前言 一.软硬件准备 二.流媒体方案的实现之FFmpeg ...

  5. python k线合成_手把手教你写一个Python版的K线合成函数

    手把手教你写一个Python版的K线合成函数 在编写.使用策略时,经常会使用一些不常用的K线周期数据.然而交易所.数据源又没有提供这些周期的数据.只能通过使用已有周期的数据进行合成.合成算法已经有一个 ...

  6. acer台式电脑怎么重装系统_手把手教你宏碁台式机如何重装系统

    宏基台式机在全球PC销量中排行第三,使用的用户群比较庞大.可对于完全没有重装经验的新手用户来说要怎么对宏碁台式机重装系统呢?别着急,接下来小编就将宏碁电脑一键重装系统win8系统的教程分享给大家. 手 ...

  7. Blender图解教程:手把手教你做一个马里奥金币 之 图片转法线贴图法(附模型下载)

    <Blender图解教程:手把手教你做一个马里奥金币 之 比较传统的方法>介绍了一种用Blender制作法线贴图的流程,本文介绍一种更加省事的方法. 步骤 效果图 概要 步骤 1. 建模 ...

  8. python刷题一亩三分地_手把手教你用python抓网页数据【一亩三分地论坛数据科学版】...

    前言:. visit 1point3acres.com for more. 数据科学越来越火了,网页是数据很大的一个来源.最近很多人问怎么抓网页数据,据我所知,常见的编程语言(C++,java,pyt ...

  9. bootstraptable 怎么在特定行添加数据_手把手教你做一个“渣”数据师,用Python代替老情人Excel...

    大数据文摘出品 来源:medium 编译:张大笔茹 十年前,你说你是做数据的,大家的反应就是 -- 用 Excel 做做表. 现在,要成为一个合格的数据分析师,你说你不会 Python,大概率会被江湖 ...

  10. ubuntu修改u盘权限_手把手教你使用U盘安装Ubuntu系统

    Linux一直以来都是比较小众的系统,特别是在国内,用户相对Windows来说,更是少,甚至给人一种高端,复杂的印象,不过这些年来,使用linux的人越来越多了,而Ubuntu作为Linux系统中用户 ...

最新文章

  1. AI时代,谈数据分析时我们要谈些什么?
  2. 安徽信息技术初中会考上机考试模拟_中学信息技术上机操作考试技巧
  3. 剑指offer 从上往下打印二叉树
  4. Java中操作Excel的3种方法,太好用了!
  5. SpringMVC架构
  6. 拒绝搜索引擎抓取页面
  7. DS Storage Manager 忘记管理密码恢复
  8. PMP之四个敏捷会议
  9. 大数据时代,数据分析师的职业发展规划
  10. 计算机课程设计心得,课程设计心得体会450字
  11. 使用html2canvas保存html或者div内容为图片及自定义名称
  12. 知乎视频:联合创作盘活内容价值
  13. mysql excel 数据处理_将excel的数据进行sql处理
  14. 何为相干光通信系统?
  15. Symmetric Eigenvalue Decomposition
  16. 给你一个app如何测试?面试题
  17. 使用cmd命令行实现百度云不限速下载
  18. 相关性分析 addmodulescore得到的每个细胞评分与page_enrichments得到的每个细胞评分的相关性
  19. mta计算机证书有用么,微软MTA认证有用吗 微软MTA证书含金量高吗
  20. 如何查看淘宝同款商品最低价?怎么查看最低成交价?

热门文章

  1. 手工删除oracle的方法
  2. (转)我在赶集网的两个月(完整版)(一)
  3. 「代码随想录」关于多重背包,你该了解这些!
  4. Macs Fan Control Pro for mac(电脑风扇控制软件)v1.5.10中文
  5. Mac小白入门小技巧
  6. 电商系统设计之商品 (上)
  7. C++11之 Move semantics(移动语义)(转)
  8. PostgreSQL在何处处理 sql查询之八
  9. 为翻译软件提供云端语料库支持,Tmxmall 瞄准了语言领域的大数据
  10. 熊猫猪新系统測试之二:Mac OS X 10.10 优胜美地