Website Traffic Checker:读取 Similarweb 最近 6 个月流量估算

拆解 SandBase Website Traffic Checker 如何读取 Similarweb 最近 6 个已发布月份的访问估算,以及比较时必须保留的边界。

SandBase Website Traffic Checker 指南的深色电影感封面

公开流量工具最容易制造“假精确”:竞品显示 240 万访问,两个月曲线向上,策略 PPT 里就悄悄把估算值写成了审计数据。

SandBase Website Traffic Checker 把问题收窄:输入域名,读取 Similarweb 最近 6 个已发布月份的全球访问量估算。它适合在相同来源、相同窗口下做方向性比较,不代表拿到了对方的私有 analytics。

先说结论

  • 单次调用一次 similarweb/traffic-engagement。
  • Lab 默认查询 6 个已发布月份、全球、按月的 visits。
  • 按 2026-11-08 检查的公式,一个指标查六个月估算为 $0.45,运行前仍需重查。
  • Similarweb 数值来自 panel 与 partner data,是估算,不是精确统计。
  • 比较域名时必须使用相同参数,并记录抓取日期。

Website Traffic Checker 输入页 保留自 2026-11-02 原文的历史截图,图中价格不能作为当前扣费依据。页面在登录前就写明来源、指标、6 个月窗口和价格,并要求只输入不带协议和路径的域名。

工具向 API 请求了什么

页面示例调用 similarweb/traffic-engagement,参数包含域名、按月粒度、全球 country code、起止月份、visits 指标与 main_domain_only。这些参数不能省略讨论,因为“流量”不是一个统一数字:国家、域名合并方式、指标与时间窗都会改变结果。

Similarweb API 目录 Similarweb 目录是数据 provider 层。Lab 只选择一个端点和一个有限指标,没有把整套目录压成万能分数。

估算为什么仍然有用

只要方法保持一致,估算可以回答比较问题:两个竞品是否呈现相似季节性?潜在合作方大致属于哪个流量层级?某个域名的方向变化是否大到值得继续调查?

它不能回答精确内部问题:独立用户数、转化、付费与自然渠道归因、campaign ROI,或一次变化是否具有统计意义。网站自己的 first-party analytics 才是内部流量权威。

安全表述不安全表述
“在这个 6 个月窗口里,Similarweb 对 A 的估算高于 B。”“A 的真实访问量就是这个数字。”
“最近已发布月份的估算持续上升。”“增长由某次 campaign 导致。”
“该合作方看起来处于更高流量层级。”“它拥有这么多客户。”

Similarweb traffic-engagement 端点 原文保留的历史端点截图,图中取整价格不是当前完整费用报价。直接端点页适合做定时比较。每条时间序列都要保存完整请求,否则后续图表无法复现。

已经有 key,下一步怎么接

拿到 key 只解决了鉴权。Agent 还需要知道用哪个接口、参数怎么填,以及这次允许查多大范围。按你当前的情况选择:

  • **已经创建 key:**把它配置到本机的 SANDBASE_API_KEY 环境变量或密钥管理器,随后使用下方 Python 示例或端点 Playground。不要把 key 发进 Agent 对话、写入源码或放进截图。
  • **Agent 已连接 SandBase:**沿用现有连接,让它先搜索 Similarweb,再 inspect 选中的工具。给出域名、起止月份、指标和请求预算,不必重复安装。
  • **准备从零开发:**把 setup Skill 和 Markdown Quickstart 交给编程 Agent,让它先检查项目再选择接入方式。凭据在本地配置,先看清它准备的请求再执行。

可以把下面这段任务一起发给 Agent:

帮我通过 SandBase 接入 Similarweb。先检查项目是否已有可用连接。准备一次 cnn.com 的全球月访问量查询,范围为 2026 年 4 月至 9 月,main_domain_only=false。先 inspect 当前参数和价格,计算整次请求的预估费用,把请求给我确认后再运行。不要查询其他域名,也不要自动重试。缺失数据保留未知。

需要连续月份的趋势,用 Traffic & Engagement;只想看某一个月的概况,先查看 Website Traffic Snapshot。后者必填裸域名,可选 month 格式为 YYYY-MM,国家范围同样仅有 ww。快照是另一笔独立请求,不应在趋势查询失败时自动追加调用。

六个月的费用不能只看基础价

旧版 Lab 页面在 2026-11-02 显示每次 $0.075。这是历史页面展示,并非已经验证的六个月实际扣费。2026-11-08 检查到的 Traffic & Engagement 公式是:$0.075 基础价 × 逗号分隔的指标数 × 包含首尾月份的月数。

请求范围公式估算(美元)
一个指标、一个月$0.075
一个指标、4 月至 9 月,共六个月$0.45
两个受支持的指标、六个月$0.90

这些是应用账户折扣前的公式估算,不是扣费记录。指标名称必须先确认,填入两个字符串不代表接口都支持。Snapshot 本次检查到的基础价为每次 $0.30。两个契约都没有标注免费额度,不能直接套用平台的免费调用宣传;执行前仍应核对当前价格。

趋势接口必填 domain、start_date、end_date 和 metrics,本变体只支持 country=ww 与 granularity=monthly。不要从其他 Similarweb 产品复制地区码或按日参数。main_domain_only 默认是 true,原教程示例明确选择 false,比较结果时要保持这个口径。月份格式合法也不代表该月数据已经发布。

API 调用边界

平台数据 API 使用 POST /v1/api/similarweb/traffic-engagement,完成响应的业务数据位于 outputs[0].data。本文记录的是页面公开请求,不假设深层结果结构。写数据库 mapper 前,应先保存并裁剪一份带日期的真实响应。

用 Python 发起一次有边界的请求

先运行 python -m pip install requests,在本地配置环境变量,再把代码保存为 traffic.py。运行 python traffic.py 会发起一次可能计费的请求,因此先核对六个月 $0.45 的公式估算与当前价格。这里使用 Model API POST 执行路由,目录页不是执行地址。

Python
import os
import re
import requests


def month_number(value):
    if not re.fullmatch(r"[0-9]{4}-(0[1-9]|1[0-2])", value):
        raise ValueError("Use YYYY-MM with a month from 01 to 12")
    year, month = map(int, value.split("-"))
    if year < 1:
        raise ValueError("Year must be positive")
    return year * 12 + month


def fetch_visits(domain, start_date, end_date):
    # Require a bare DNS hostname; do not silently strip URLs or credentials.
    label = r"[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?"
    if len(domain) > 253 or not re.fullmatch(rf"{label}(?:\.{label})+", domain):
        raise ValueError("Use a bare hostname such as cnn.com")
    months = month_number(end_date) - month_number(start_date) + 1
    if months < 1:
        raise ValueError("end_date must not precede start_date")
    key = os.environ.get("SANDBASE_API_KEY", "").strip()
    if not key:
        raise RuntimeError("Set SANDBASE_API_KEY in your local environment")
    try:
        response = requests.post(
            "https://api.sandbase.ai/v1/api/similarweb/traffic-engagement",
            headers={"Authorization": f"Bearer {key}"},
            json={"domain": domain, "start_date": start_date,
                  "end_date": end_date, "metrics": "visits", "country": "ww",
                  "granularity": "monthly", "main_domain_only": False},
            timeout=(10, 90), allow_redirects=False,
        )
        if not 200 <= response.status_code < 300:
            raise RuntimeError(f"SandBase HTTP {response.status_code}; inspect before retrying")
        body = response.json()
    except ValueError:
        raise RuntimeError("SandBase returned invalid JSON") from None
    except requests.RequestException:
        raise RuntimeError("Request failed; check run history before retrying") from None
    if not isinstance(body, dict) or body.get("status") != "completed":
        raise RuntimeError("Run did not complete; inspect its status and error")
    outputs = body.get("outputs")
    if not isinstance(outputs, list) or not outputs or not isinstance(outputs[0], dict):
        raise RuntimeError("Missing outputs[0]")
    if "data" not in outputs[0] or not isinstance(outputs[0]["data"], dict):
        raise RuntimeError("Missing object at outputs[0].data")
    return outputs[0]["data"]


if __name__ == "__main__":
    # Historical window, one request; data availability is not guaranteed.
    data = fetch_visits("cnn.com", "2026-04", "2026-09")
    print("Payload keys:", sorted(data))

代码只检查请求参数和完成态信封,再打印业务对象的键名。空对象不等于零访问量;这里没有假定 visits 数组、绘图字段或缺月补零逻辑。2026-11-08 修订核对了接口契约,并用离线 mock 响应测试代码,没有新增付费流量实测。HTTP 错误、非 JSON 或未完成状态都会停止执行。超时也不能证明服务端没有执行,应先查运行记录,再决定是否重试。

想看站点权威度,应使用独立的 Domain Rating 工具;想看模型推荐,用 AEO Check;补充公司背景时可参考 LinkedIn 公司研究工作流,不要把公司资料与流量估算混成一个指标。

可辩护的比较流程

  1. 统一成裸域名,并决定是否合并子域名。
  2. 固定国家、指标、粒度和月份范围。
  3. 保存 API 请求、provider 与抓取日期。
  4. 画图时不删除“不好看”的月份。
  5. 先比较方向和数量级,再讨论精确差值。
  6. 新闻、发布与季节性要单独调查。
  7. 所有图表都标注“Similarweb estimate”。

小站和窄区域站点可能更嘈杂,甚至没有估算。没有数据不等于 0 流量,只能说明该请求没有得到可用值。

常见问题

数字是精确值吗?

不是。页面明确称其为来自 panel 与 partner data 的 Similarweb estimates。

为什么只显示 6 个月?

Lab 选择了紧凑的近期窗口。API 用户可在端点文档支持范围内设置日期参数。

能替代 Google Analytics 吗?

不能。第一方分析衡量自己站点的埋点数据,内部决策应以它为准。

最后判断

Website Traffic Checker 的价值,是把一个边界清晰的比较做得很快:一个域名、一个 provider、全球月访问量、6 个已发布月份。只要边界一直显示,它能告诉你下一步去哪调查;它不能把外部估算变成另一家公司的 analytics 账号。