无需 KYC — 无身份证、无自拍、无证件。加密货币支付:BTC, USDT, USDC, ETH, SOL, LTC
语言: 简体中文
获取 API 密钥

用例 · 监控 · /batch

网站变更监控:把公开页面 diff 成干净的 Markdown

比较原始 HTML 时,每次广告或 token 变化都会触发告警。比较正文 Markdown 时,只会标出读者会注意到的变化:新价格、改写的条款、新的更新日志条目。

最后更新:

快速回答

如何监控网页的内容变化?

按计划把每个页面读取为正文 Markdown,存储文本,并与上一版本比较;只在文本变化时告警。WebReaderAPI 每个批量任务最多读取 100 个 URL,移除广告和菜单使其无法触发误报,截至 2026 年 10 月,每页从 US$0.07/千页 起收取一个积分。无需 KYC;用加密货币支付。

用 WebReaderAPI 做监控

EndpointPOST https://webreaderapi.com/api/v1/batch,然后 GET https://webreaderapi.com/api/v1/jobs/{job_id}
批量大小每个批量任务最多 100 个 URL
比较的内容正文 Markdown,不含广告、菜单或横幅
计费1 积分 = 读取 1 个页面且无需浏览器;当页面需要浏览器渲染 JavaScript 时为 2 积分。失败的请求,或被网站 robots.txt 拒绝的请求,不扣费
示例量每天检查 200 个页面 = 每月约 6,000 个页面
价格US$3.75 仅需 10,000 个网页;积分永不过期

哪些内容值得监控?

那些措辞对你的业务很重要、又会在不通知的情况下变化的页面:

  • 供应商和竞争对手的定价页,用于查看新方案和价格变动。
  • 你所依赖的条款、隐私政策和退款政策,用于捕捉发生变化的条款。
  • 你所依赖工具的变更日志和发布说明,用于应对破坏性变更。
  • 你的产品所链接的文档页面,用于快速修复错误的指引。
  • 你所在领域监管机构或标准组织发布的公告。

把清单限定为公开页面。个人资料和需要登录的页面不在范围内。

为什么对比 Markdown 而不是 HTML?

因为 HTML 一直在变,内容却没变。轮播广告、会话令牌、页脚里的时间戳和 A/B 测试标记,会让同一页面的两次加载都不一样。对 HTML 做对比会把这些噪声变成告警,然后人们就不再读了。

正文 Markdown 在对比之前就去掉了大部分噪声。剩下的就是人实际阅读的文字:标题、段落、列表和表格。对这段文字做对比,结果简短、可读、值得告警。

Python:检查一组页面并打印变化内容
import difflib
import json
import os
import pathlib
import time

import requests

API = "https://webreaderapi.com/api/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
STORE = pathlib.Path("snapshots.json")
URLS = [
    "https://example.com/pricing",
    "https://example.com/legal/terms",
    "https://example.com/changelog",
]

old = json.loads(STORE.read_text(encoding="utf-8")) if STORE.exists() else {}
job = requests.post(API + "/batch", headers=HEADERS, json={"urls": URLS}, timeout=60).json()
results, cursor, delay = [], None, 5
while True:
    params = {"cursor": cursor} if cursor else {}
    page = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json()
    results += page.get("results", [])
    cursor = page.get("next_cursor")
    if page["status"] == "done" and not cursor:
        break
    if not cursor:
        time.sleep(delay)
        delay = min(delay * 2, 60)

new = dict(old)
for item in results:
    if "markdown" not in item:
        print("not read:", item["url"], item.get("error", {}).get("code"))
        continue
    before = old.get(item["url"], "")
    if before and before != item["markdown"]:
        diff = difflib.unified_diff(before.splitlines(), item["markdown"].splitlines(), lineterm="", n=0)
        print("CHANGED:", item["url"])
        print("\n".join(list(diff)[:40]))
    new[item["url"]] = item["markdown"]
STORE.write_text(json.dumps(new, ensure_ascii=False), encoding="utf-8")

多久检查一次,怎么才礼貌?

页面实际多久变化一次,就多久检查一次,不要更频繁。每天适合定价页和变更日志;每周适合政策和文档。每小时读一次的页面,很少比每天读一次提供更多信息,成本却高 24 倍。

WebReaderAPI 会为每个页面遵循 robots.txt,并在整站抓取 (crawl) 任务中遵守站点的 Crawl-delay。站点不允许的页面会被跳过且不计费,所以严格的站点会直接从报告中消失。如果你需要访问拒绝 robots 的页面,请询问站点所有者。

监控要花多少钱?

每次检查每个页面一个积分。以下是 2026 年 10 月价格下的几个例子:

  • 50 个页面,每天:每月约 1,500 个页面。10,000 个网页(US$3.75)能用六个多月。
  • 200 个页面,每天:每月约 6,000 个页面。50,000 个网页(US$14.25)能用约八个月。
  • 1,000 个页面,每周:每月约 4,300 个页面,接近上一种情况。

需要浏览器的页面消耗两个积分;对已知是纯 HTML 的页面设置 render=false,把消耗保持在一个积分。

哪个 pack 适合监控?

用页面数乘以每月检查次数,然后选一个能用几个月的 pack。积分永不过期。

测试

10,000 个网页

US$3.75

US$0.38/千页

  • 用你的真实 URL 试一试
  • 与最大积分包使用同一个 API
  • 积分永不过期
选择 10,000 个网页

入门版

50,000 个网页

US$14.25

US$0.28/千页

  • AI 智能体或 RAG 原型
  • 抓取文档站点
  • 积分永不过期
选择 50,000 个网页

构建

100,000 个网页

US$21.75

US$0.22/千页

  • 生产级智能体和 RAG 流水线
  • 批量和整站抓取任务
  • 积分永不过期
选择 100,000 个网页

所有套餐均包含: 正文提取 · 需要时渲染 JavaScript · 失败和被拒绝的页面不收费 · 积分永不过期

变更监控:常见问题

WebReaderAPI 会发送告警吗?

不会。它读取页面并返回 Markdown;由你的脚本对比版本,并通过邮件、聊天或工单发送告警。上面的代码会把变化的行打印出来,作为起点。

如何避免日期和计数器造成的误报?

对比正文 Markdown,而不是 HTML,并在对比前去掉你已知每次加载都会变化的行,例如“5 分钟前更新”。大多数轮换元素在正文提取时就已经被去掉了。

能监控需要 JavaScript 的页面吗?

能。使用 render=auto 时,没有 JavaScript 就是空白的页面会在无头浏览器中渲染,消耗两个积分。无需 JavaScript 就能正常显示的页面仍为一个积分。

能监控整个站点而不是一组页面吗?

能:运行整站抓取 (crawl) 任务而不是批量任务,然后逐页对比。对大型站点,先对比 sitemap 的 lastmod 日期,只重读有变化的页面。

低至 US$0.07/千页 · 无需 KYC

获取 API 密钥