changedetection.io 是一个开源的网页变化检测工具:你告诉它要盯哪个网页,它会按你设定的频率反复检查,页面内容一旦发生变化,就通过邮件、Discord、Telegram、Slack、Webhook 等渠道通知你。它适合需要盯价格波动、商品补货、官网公告、招聘页面、PDF 文档更新的人——从普通买家到运维工程师、数据分析师都能用。项目托管在 GitHub 的 dgtlmoon/changedetection.io 仓库,拥有 34.1k star,最新版本 0.60.6 于 2026 年 9 月 14 日发布,采用 Apache-2.0 许可,可免费自托管。
它解决什么问题
网页不会主动告诉你它变了。盯三五个页面靠人肉刷新还勉强可行,盯几十上百个页面就完全不现实:你总不可能每小时把所有页面都点一遍。changedetection.io 把这件事完全自动化——它定期抓取页面内容,与上一次的结果做对比,发现差异就按你配置的方式通知你。
通知渠道覆盖主流工具
通知能力基于 Apprise 库实现,支持几十种目标渠道:Discord、邮件、Slack、Telegram、Webhook、Microsoft Teams、Syslog 等。Webhook 是一种让程序主动把事件推送到你指定网络地址的机制,方便把通知接进自己的系统。每条监控规则(watch)都可以单独指定用哪个渠道通知、多久检查一次,还能设定只在工作时间检查。
AI 过滤噪音:从「有变化」到「只提醒你在意的变化」
这是项目近几个版本重点发展的能力,也是它区别于传统监控工具的地方。
传统变化检测的逻辑是「只要有变化就提醒」。但网页上导航栏、页脚、广告位这类无关区域经常变动,产生大量假阳性(不该提醒却提醒了)。changedetection.io 的 AI 变化检测规则允许你用自然语言写下意图,例如「价格低于 50 美元才提醒我」「商品缺货时提醒我」「忽略导航和页脚变化」。每次检测到差异,AI 会对照你的意图判断是否值得通知,无关变化直接被静默过滤。
配套的 AI 摘要功能把原始差异(diff,即两个版本内容之间的差异)翻译成一句话人话,例如「价格从 89.99 美元降至 67.00 美元」或「商品列表新增了 3 个商品」。
模型选择很灵活:可以用 OpenAI、Gemini、Anthropic 等云服务,也可以用 Ollama、vLLM、LM Studio 在本地跑开源模型,数据不出内网。底层通过 LiteLLM 统一接入 100 多家模型服务。AI 能力整体经用户自行配置,是否使用、用哪家模型由部署者决定。
典型用法
价格与库存监控。 盯商品页的价格变动,设置价格上限、下限和变动百分比,降价或恢复上架时第一时间收到通知;断货时得到缺货提醒。
官网、公告与招聘页。 政府网站更新、公司招聘页出现新职位、安全公告发布——这些信息往往只出现在自己网站上,不订阅邮件列表就很容易错过。
PDF 与文档监控。 监控 PDF 文件的文本内容变化,以及文件大小和校验和(验证文件是否被替换的指纹值),适合跟踪合同、法规类文档的更新。
JSON API 监控。 用 JSONPath 或 jq(两种从 JSON 数据中精确定位字段的查询语法)过滤接口返回的数据,只监控你关心的字段,还能监控网站源码里内嵌的 JSON 数据;接口字段变化同样可以触发通知或调用其他 API。
网页篡改监控。 监控 HTML 源码的意外变化,用于发现网站被篡改的迹象,是合规(如 PCI)场景的常用手段。
安装与上手
提供三种自托管方式:Docker(docker compose up -d,或 docker run 单容器)、pip(pip3 install changedetection.io 后运行 changedetection.io -d 数据目录 -p 5000)、Windows 安装包。装好后浏览器访问 http://127.0.0.1:5000 即可使用,自带中文等多语言界面。
不想自己维护的也可以用官方托管服务(SaaS),每月 8.99 美元,含抓取代理和 Chrome 渲染支持;官方页面说明其定价约为同类商业服务的一半。
结论
网页变化监控这件事,changedetection.io 是目前开源社区认可度最高的方案之一:34.1k star、221 个发布版本、154 位贡献者,且保持活跃更新(0.60.6 于 2026 年 9 月 14 日发布)。一句话记住它:一个可以自己部署的网页监控机器人,盯价格、盯库存、盯公告,变了就通知你,还能用 AI 帮你过滤掉无关变化。