Website Monitor

🔭 零依赖轻量监控,秒级感知网站变化

轻量级网站监控工具,支持变化检测、宕机告警、内容匹配,无需数据库,适合运维自动化。

收藏
6.7k
安装
1.6k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Website Monitor 是一款零依赖(仅 Python 标准库 + requests)的轻量级网站监控脚本,提供三种核心检测模式:

1. 状态检查(check):快速验证网站可访问性,返回 HTTP 状态码与响应时间;
2. 变化监控(watch):基于文本哈希对比检测页面内容变更,自动生成差异对比(diff);

3. 内容匹配(match):支持正则表达式,检测特定关键词出现或消失。

状态数据以文件形式存储(--state-dir),通过 URL 哈希命名避免冲突,支持数百个站点并行管理。可配合 batch 模式批量监控,返回标准化退出码(0=正常/匹配,1=变更/未匹配,2=宕机),便于集成到 CI/CD 或 cron 定时任务。

显著优点

  • 零架构成本:无需数据库、消息队列或外部 SaaS,单机即可运行;
  • 标准化输出:退出码设计符合 Unix 管道哲学,易于脚本编排;
  • 精准变更检测:基于内容哈希而非时间戳,避免无效告警;
  • 轻量级依赖:单文件脚本,部署门槛低。

潜在缺点与局限性

  • 无历史数据:仅保存最新状态快照,无法回溯长期趋势;
  • 单点执行:缺乏分布式探针,无法检测区域性网络问题;
  • 基础告警机制:依赖退出码和 stdout,需自行对接邮件/Slack/短信等通知渠道;
  • 反爬风险:高频请求可能触发目标站点的 WAF 或限流策略;
  • 动态内容干扰:JS 渲染页面、CSRF Token、广告轮播等会导致哈希频繁变动。

适合人群

  • 个人开发者、小型团队寻求低成本的站点可用性监控;
  • 需要监控静态页面、API 端点、价格页面的变更通知;
  • 已将 OpenClaw 或类似 CLI 工具链集成到工作流的自动化用户。

常规风险

  • 隐私泄露:状态目录可能包含敏感 URL,需确保 --state-dir 权限(建议 0700);
  • 资源占用:批量监控高并发时可能消耗带宽与目标服务器资源;
  • 误报累积:未配置白名单规则时,时间戳、随机广告等内容会导致频繁误报,降低告警可信度。

Website Monitor 内容

scripts文件夹
手动下载zip · 4.4 kB
monitor.pytext/plain
请选择文件