监控网页数字变化,增大提醒,减小不提醒

本贴最后更新于 1103 天前,其中的信息可能已经事过境迁

如果单纯监控网页上的数字范围比较简单,比如监控价格低于 100 元提醒,由于参考值 100 是固定的,只需要每次抓取价格与 100 做比较就可以了。但是如果要做到价格上涨时提醒而且降价时不提醒,就比较复杂了,因为每次抓取价格后跟上一次的抓取结果进行比较,就必须想办法记住上一次的价格。幸好木头浏览器提供一个自定义变量的功能,可以把价格记录在自定义变量中,然后每次抓取价格都与记住的这个变量比较,并把最新的价格赋值给变量。
有了思路后马上实践一下,为了测试方便,用一个随机数生成页面代替价格(库存)监控,具体步骤如下:
1、先打开这个随机数生成页面观察一下,点击“生成”按钮都在页面末尾显示一个大于 1 且小于 100 的随机数,然后再次点击生成,如果生成的数值比原来的大,就报警提醒,反之则不提醒。
1 网页随机数.png

2、创建一个打开网址的步骤,添加监控的网址。
2 添加网址.png

3、创建自定义变量的步骤,创建一个名为“old“的变量,用来存放每次抓取的数字,并设置初始值为 0。
3 自定义变量存放数值.png

4、创建一个定时控制步骤,设置间隔 5 秒执行一次,即每 5 秒点击一次生成按钮,并监控数字是否增大。
4 定时生成数字监控.png

5、创建一个点击元素步骤,用来点击生成按钮。先点击【添加】按钮,在弹出的【添加点击目标】对话框中,点击【自动获取】按钮,会弹出页面元素选择状态,将鼠标移到网页上的【生成】按钮处单击右键,并在弹出的快捷菜单中,选择【获取元素并返回】,就成功获得【生成】按钮元素的参数。最后点击【确定】添加点击目标。
5 点击生成按钮.png

6、创建一个抓取内容步骤,用来抓取页面上的数字。先点击【添加】按钮,在弹出的【抓取元素设置】对话框中,设置别名为“new“,这样抓取到的数值将保存在名为”new"的变量中。点击【自动获取】按钮,会弹出页面元素选择状态,将鼠标移到网页抓取数字元素处单击右键,并在弹出的快捷菜单中,选择【获取元素并返回】,就成功获得页面数字元素的参数。最后点击【确定】添加抓取内容。
6 抓取页面数字内容.png

7、创建一个监控其它的步骤,用来监控当前步骤的运行次数,如果是第一次运行,只记录抓取的页面数字,之后运行才和上一次抓取的数字进行对比。如下图所示,设置当运行次数大于 1 时,执行 yes 节点内容(进行数字对比),反之执行 no 节点内容(由于 no 节点什么也不做,会继续执行下一个步骤)。
7 监控运行次数.png

8、在监控其它步骤的 Yes 子节点下创建一个监控变量的步骤,如下图所示,添加监控条件为“new”变量大于“old"变量。满足条件时执行本步骤的 Yes 子节点(报警提醒),反之执行 No 子节点(什么也不做)。注意这里不能直接输入变量名称,那样是无效的,应该在输入框内点击鼠标右键选择对应的变量。

8 比较数字是否增大.png

9、在监控变量的 Yes 子节点中设置报警提醒方式,可以选择弹出窗口提醒,并设置弹窗内容显示原数字和增长后的数字;同时还可以勾选声音提醒和微信邮件提醒。
9 页面数字变化提醒方式.png

10、最后增加一个自定义变量步骤,把”new“变量的值赋值给”old“变量,成为下一次监控的比较值。
10 保存数字变量.png

11、全部设置完成后,打开项目管理器的【项目】菜单,保存当前项目。选中项目的根节点,点击开始按钮就可以执行本项目了。浏览器间隔 5 秒就会点击一次页面上的【生成】按钮,如果生成的随机数比原来的数值大,就会在屏幕右下角弹窗报警提醒,弹窗内容显示前后两次抓取的数字,同时发出警报提示音和微信邮件提醒。
11 页面数字变大提醒效果.png

   监控网页数字增长提醒而降低不提醒,这是页面数字监控中最复杂的情况。如果监控数字是固定比较值,则无需设置和保存自定义变量。
  • 工具

    子曰:“工欲善其事,必先利其器。”

    275 引用 • 682 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • mutousoft
    作者

    ❤️

  • 其他回帖
  • geekpie

    上古软件 没想到还在

    1 回复
mutousoft
网页变化监控与自动控制 韶关

推荐标签 标签

  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    27 引用 • 66 回帖
  • TGIF

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    284 引用 • 4481 回帖 • 654 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    275 引用 • 682 回帖
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    40 引用 • 40 回帖 • 2 关注
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖 • 5 关注
  • Pipe

    Pipe 是一款小而美的开源博客平台。Pipe 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    131 引用 • 1114 回帖 • 151 关注
  • SendCloud

    SendCloud 由搜狐武汉研发中心孵化的项目,是致力于为开发者提供高质量的触发邮件服务的云端邮件发送平台,为开发者提供便利的 API 接口来调用服务,让邮件准确迅速到达用户收件箱并获得强大的追踪数据。

    2 引用 • 8 回帖 • 439 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖 • 1 关注
  • 笔记

    好记性不如烂笔头。

    304 引用 • 777 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    396 引用 • 3416 回帖
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    4 引用 • 55 回帖 • 9 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1083 引用 • 3461 回帖 • 285 关注
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 40 关注
  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 684 关注
  • WebComponents

    Web Components 是 W3C 定义的标准,它给了前端开发者扩展浏览器标签的能力,可以方便地定制可复用组件,更好的进行模块化开发,解放了前端开发者的生产力。

    1 引用 • 25 关注
  • HHKB

    HHKB 是富士通的 Happy Hacking 系列电容键盘。电容键盘即无接点静电电容式键盘(Capacitive Keyboard)。

    5 引用 • 74 回帖 • 407 关注
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    261 引用 • 662 回帖
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    5 引用 • 26 回帖 • 492 关注
  • JRebel

    JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。

    26 引用 • 78 回帖 • 623 关注
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    129 引用 • 793 回帖
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 635 关注
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖 • 3 关注
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    536 引用 • 672 回帖 • 1 关注
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    84 引用 • 139 回帖
  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    123 引用 • 168 回帖
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    40 引用 • 24 回帖