搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

dgtlmoon/changedetection.io

运维与部署

自托管的网页变更监测服务,定时抓取页面、JSON API 和 PDF,并通过多种通知渠道发送变更提醒。

35,582
2,219
Python
Apache-2.0
创建于 5 年前

项目介绍

changedetection.io 是一个自托管的网页监测服务:按设定的时间间隔抓取目标页面,记录内容差异,并通过 Discord、Slack、Telegram、邮件、Webhook 等渠道通知。适合需要跟踪价格、补货、政府公告、招聘页面、版本说明或页面篡改,但不想自己维护一套脚本的人。

抓取内容可以用 CSS、XPath 或可视化选择器定位;JSON API 可以用 JSONPath 或 jq 提取字段;PDF 文件的文本变化也能监测。基于 Chrome/Playwright 的抓取器用于 JavaScript 渲染页面,还能在比较前执行填写表单、点击按钮等浏览器步骤。可选的 LLM 规则和摘要能过滤无关变化,或把原始 diff 转成自然语言,通过 LiteLLM 接入包括本地端点在内的多种模型 AI 摘要教程、LiteLLM 支持列表。

用 Docker 启动

在仓库根目录克隆代码后,用自带的 Compose 文件启动:

docker compose up -d

也可以直接运行独立容器 Docker 安装说明:

docker run -d --restart always -p "127.0.0.1:5000:5000" \
  -v datastore-volume:/datastore --name changedetection.io \
  docker.io/dgtlmoon/changedetection.io

打开 http://127.0.0.1:5000,添加要监测的 URL,选择抓取器和过滤规则,设置检查间隔,并在该监测项的编辑页添加一个或多个通知 URL。:latest 标签对应稳定版,:dev 对应 master 分支 Docker 标签说明。Python 方式从 PyPI 安装,并指定一个空数据目录启动 PyPI 页面:

pip3 install changedetection.io
changedetection.io -d /path/to/empty/data/dir -p 5000

Windows 用户需要按 wiki 的安装页操作,README 没有给出 Windows 命令行安装步骤 Windows 安装。

通知与 API

通知基于 Apprise 库,通知 URL 可以指向 Webhook、邮件地址、Microsoft Teams、Office 365 以及 Apprise 支持的其它服务 通知配置。通知标题和正文支持 Jinja2 模板。REST API 可以程序化管理监测项、标签和通知,并提供交互式文档和 OpenAPI 规范用于生成客户端。

使用约束

  • JavaScript 渲染、可视化选择器和浏览器步骤依赖 Playwright 抓取器;README 把自带的抓取器与付费订阅关联 可视化选择器。
  • 启用 LLM 功能后,页面差异和提取的文本会发送给你配置的模型服务商,API 费用由你承担;README 明确提示模型输出可能错误或遗漏 AI 说明。
  • 你需要负责遵守被监测站点的服务条款、robots.txt 和适用的隐私法规,尤其是个人数据被发送到 AI 服务商时。
  • 软件以 Apache-2.0 许可、按现状提供,商业支持需另行联系 许可证。
  • 代理按监测项单独配置,被目标站封 IP 时可能需要外部代理服务 代理配置。

HotRepo 点评

该项目在 2021 至 2023 年间多次登上 Hacker News,2023 年的讨论获得 253 分和 56 条评论。讨论中有用户提到需要监测那些没有订阅源或邮件列表的页面,例如政府合同和票务页面 HN 讨论。仓库星数规模较大,测试工作流也在持续运行。近期只有 2026-11-06 的一条 Python 日榜记录,当天新增 62 星,单次快照不足以判断趋势。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。

Hacker News 讨论

ChangeDetection, monitor any website change
▲ 253 · 56 条评论 · 2023年9月1日
Show HN: Changedetection.io detect changes in websites and JSON feeds
▲ 147 · 29 条评论 · 2022年1月3日
Changedetection.io “turns websites into news” releases 0.42
▲ 1 · 1 条评论 · 2023年5月21日