跳到正文
🟠 需外部服务 — 需自备相关账号/权限 进阶 数据与监控

网页内容监控告警

监控任意网页的价格、公告、招聘信息等内容变化,一旦出现变动立刻推送 Telegram 通知。

⚔️ 难度 ★★☆ 进阶
⏱ 配置耗时 10-15 分钟
🎁 掉落 节省 10-15 分钟
📜 所需秘籍 agent-reach telegram
🦞 部署 可一键部署

🎯 做完你会得到

指定网页有内容变化时,你的手机 Telegram 秒收通知,附上变化的具体内容。

🛠 需要什么

  • agent-reach
  • telegram

👤 适合谁

  • 运营人员
  • 投资人
  • 竞品调研者

⚡ 效果预览

目标网页内容变化时,5分钟内收到 Telegram 推送提醒

⚠️ 待验证案例:本案例基于 OpenClaw cron + 网页读取能力的真实描述,请注意目标网站的反爬限制。如果你跑通了,欢迎联系站长提交验证记录。

🔧 Step 0:先配置消息接收渠道

⚠️ 本案例需要发送通知到你的手机,先配置消息渠道 👉 去配置 Telegram/飞书/微信接入 →

解决什么问题

你盯着某个网页等一个消息——机票降价、招聘名额开放、政策公告更新——却不知道什么时候会变。这个场景让 OpenClaw 替你盯着:

  • 谁会用到:等降价的购物者、求职者、关注政策/公告的研究人员、股票/加密货币价格监控
  • 省了什么:不用反复刷页面,变化自动推到你手机
  • 效果是什么:每隔 N 分钟抓取目标网页,与上次对比,有变化就发 Telegram 通知

典型监控对象

  • 某电商商品价格(降价提醒)
  • 公司招聘页面(职位新增/撤销)
  • 政府/学校官网公告(新政策、录取结果)
  • GitHub Release 页面(新版本发布)
  • 汇率/加密货币价格(突破阈值提醒)

前置条件

  • OpenClaw 已安装,Telegram 已接入(接入教程
  • 知道你想监控的网页 URL
  • Claude Max 账号,或 Anthropic API Key

⚠️ 请确认目标网站允许程序访问(robots.txt)。不要用于爬取有明确禁止的网站。

用到的工具

工具用途获取方式
cron(内置)定时触发监控任务OpenClaw 内置
fetch / curl(内置)抓取网页内容OpenClaw 内置
anthropic/claude-sonnet-4-6比较内容变化,提炼关键差异Claude Max 或 API Key
Telegram(内置)推送告警通知OpenClaw 接入 Telegram 后自动可用

预期结果

做完之后你会看到:

  • 无变化时:OpenClaw 静默运行,什么也不发
  • 有变化时:Telegram 收到消息,格式类似:
    🔔 监控告警:[页面标题]
    检测到内容变化:
    - 旧:机票价格 ¥1,280
    - 新:机票价格 ¥890(降价 ¥390)
    
    查看原页面:https://...

最简上手:发这段话给 OpenClaw

复制下面的内容,把 URL 和时间间隔替换成你想要的:

帮我设置一个网页监控任务:

监控地址:https://example.com/product/123
监控频率:每30分钟检查一次
关注内容:价格、库存状态
告警条件:价格变化超过50元,或库存状态变为"有货"
通知方式:Telegram 发给我,附上变化内容和原页面链接

具体步骤:
1. 先抓取一次当前页面,保存关键内容作为基准快照
2. 每30分钟重新抓取,与基准对比
3. 有符合条件的变化时发 Telegram 通知
4. 告诉我这个任务的 cron job ID

进阶:监控多个页面

如果你有多个监控目标,可以一次配置:

帮我设置多个监控任务:

1. 机票价格监控
   URL:https://[航班页面]
   频率:每小时
   告警:价格低于1000元

2. 招聘页面监控  
   URL:https://[公司招聘页]
   频率:每天早上9点
   告警:出现新职位或职位数量变化

3. GitHub Release 监控
   URL:https://github.com/[项目]/releases
   频率:每6小时
   告警:出现新的 Release 标签

全部用 Telegram 推送给我。

进阶:设置价格阈值告警

如果你只想在价格低于某个值时才收到通知,可以这样说:

修改我的价格监控任务(job ID: xxx):
只在检测到价格 ≤ 800 元时才发 Telegram 通知,
价格更高时静默记录,不要打扰我。

直接上代码:手动检查一次

如果想先测试一下,让 OpenClaw 手动执行一次检查:

# 让 OpenClaw 读取网页并提取关键内容
curl -s "https://你的目标URL" | head -200

然后告诉 OpenClaw:根据上面的 HTML,提取其中的价格和库存信息,用一句话总结当前状态。

怎么验证成功了

  1. 配置完成后,让 OpenClaw立刻执行一次监控检查,然后假装内容变了,给我发一条测试通知
  2. 检查 Telegram 是否收到格式正确的测试消息
  3. 等到下一个 cron 触发时间,确认任务正常执行(openclaw cron list 查看状态)

踩坑记录

网页内容是动态渲染的(JavaScript 生成)

症状:抓取的 HTML 里没有你想要的内容,只有空白模板。

解法:告诉 OpenClaw这个页面是 SPA,直接 fetch 抓不到内容,需要先检查是否有 API 接口,让它帮你找 XHR/fetch 请求,直接调 API 往往更稳定。

网站有反爬措施(403/429)

症状:抓取时返回 403 Forbidden 或被 CAPTCHA 拦截。

解法

  • 降低频率(从每5分钟改成每小时)
  • 添加 User-Agent 头(让 OpenClaw 在 curl 请求里加 -H "User-Agent: Mozilla/5.0..."
  • 如果网站有官方 API 或 RSS,优先用那个

每次都报内容变化(误报)

症状:Telegram 狂发通知,但内容其实没变。

解法:告诉 OpenClaw监控时只关注价格和库存两个字段,忽略广告、推荐商品、时间戳等动态内容。让它在对比前先过滤掉噪音部分。

cron 任务没执行

症状:设置了定时任务,但没有按时触发。

解法:用 openclaw cron list 检查任务状态,确认任务是 active 而非 paused。时区也要确认是否设置正确(--tz Asia/Shanghai)。

不满意怎么调

  • 想调整频率openclaw cron edit <job-id> --cron "0 */2 * * *" (改成每2小时)
  • 想暂停监控openclaw cron pause <job-id>
  • 想监控多个元素 → 在提示词里列出所有需要关注的字段
  • 想存档历史记录 → 让 OpenClaw 把每次的快照保存到工作区文件,方便回溯
  • 想接入微信 → 替换通知渠道为微信(需接入微信 skill)

延伸阅读

#监控#cron#Telegram#自动化#网页抓取