网页监控提醒工具WebMonitor
什么是 WebMonitor ?
WebMonitor是一款python写的开源的网页监控程序,能监控网页变化和RSS更新,并支持多种通知方式。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 webmonitor ,选择第一个 logicjake/webmonito,不需要选择版本,双击直接下载。

卷
在 docker 文件夹中,创建一个新文件夹,并将其命名为 webmonitor。
| 文件夹 | 装载路径 | 备注 |
|---|---|---|
/docker/webmonitor |
/app/db |
数据库目录 |

端口
端口不能冲突
| 本地端口 | 容器端口 | 类型 |
|---|---|---|
| 8050 | 5000 | TCP |

环境
| 可变 | 值 |
|---|---|
| PORT | 默认为 5000 |
| USERNAME | 用户默认为 admin |
| PASSWORD | 密码默认为 admin |
老苏只修改了密码,其他都还是默认值

运行
在浏览器中输入 http://群晖IP:8050,就能看到登录界面了

登录成功后的主界面

通知方式
默认的通知方式除了邮件,老苏都没有,好在 WebMonitor 还支持自定义的通知方式,可以通过 系统管理 –> 通知方式 –> 增加 自定义通知。

WxPusher
关于 WxPusher 可以看看老苏的之前写的 『 通过WxPusher在群晖上实现微信推送 』
官网上可以找到 POST 示例: https://www.logicjake.xyz/WebMonitor/#/how?id=post
发送网址{data=}。将要发送的body内容放在{data=}内,其中{header}和{content}替换掉标题和内容的位置。以WxPusher为例,格式如下:
1 | # 只要替换成您自己的 appToken 和 uid 值即可 |
保存即可

Alertover
关于 Alertover 可以看看老苏的之前写的 『 用Alertover实现群晖的实时消息推送 』
之前为了安全性,我们设置了
$localOnly = true;,为了能被WebMonitor调用,需改为$localOnly = false;
参考官网 GET 的示例:https://www.logicjake.xyz/WebMonitor/#/how?id=get
Alertover 的格式如下:
1 | http://群晖IP或域名/synology-alertover.php?source=发送源ID&receiver=接收组ID&title={header}&content={content} |
保存即可

RSS监控
在 任务管理 –> RSS监控管理 添加新任务

保存任务

保存任务后不会立即执行

5分钟后微信将收到第一次抓取的信息
但是实际收到的时间有时候是 5 分钟,有时候是 10 分钟,真是让人迷惑啊

之后有变化才会再次通知

Alertover 也是一样的

有变化之后

网页监控
一般都是用来监控价格变化,但老苏暂时没有什么想买的东西,所以就监控下每天发布的新片子吧
打开网址 https://www.bd2020.com/movies/index.htm,按 F12 调出开发者工具
- ① 按左上角的小箭头(Ctrl+Shift+C)开启选择模式
- ② 选定区域后右键高亮的代码
- ③
Copy–>Copy XPath

在 任务管理 –> 网页监控管理 添加新任务
- 任务名称:随便
- 监控网址:填写监控网址
- 元素选择器类型:选择
Xpath - 元素选择器:粘贴上一步复制的内容
- 通知方式:同时添加了
WxPusher和Alertover

保存即可完成监控项目的创建

5分钟后微信将收到第一次抓取的信息

之后有变化才会再次通知

Alertover 也是一样的

有变化之后

参考文档
LogicJake/WebMonitor: 实时监控网页变化,并发送通知(Monitor web page changes in real time and send notifications)
地址:https://github.com/LogicJake/WebMonitor用docker在树莓派上部署网页监控软件WebMonitor | 名实合为
地址:https://blog.mjyai.com/2020/12/22/raspberry-pi-docker-webmonitor/