ScavioScavio
产品定价文档
登录开始使用
  1. 首页
  2. 教程
  3. 如何使用一个 API 构建跨平台品牌监控
教程

如何使用一个 API 构建跨平台品牌监控

在单一管道中跨 Google、TikTok、Amazon 和 YouTube 建立品牌监控。使用一个 API 跟踪提及、情绪和声音分享。

获取免费API密钥API文档

跨平台品牌监控可在单个统一管道中跟踪您的品牌在 Google 搜索结果、TikTok 视频、亚马逊产品列表和 YouTube 内容中的表现。您可以使用适用于 Google、Amazon 和 YouTube 的 Scavio 搜索 API 以及适用于 TikTok 的 Scavio TikTok API,这两个端点覆盖四个平台,而无需同时使用四个具有不同身份验证方案、速率限制和响应格式的独立 API。本教程构建了一个每日监控管道,输出包含提及计数、情绪信号和竞争对手基准的统一品牌健康报告。

前置条件

  • 已安装 Python 3.10+
  • 请求已安装库
  • 来自 scavio.dev 的 Scavio API 密钥
  • 要监控的品牌名称和 1-2 个竞争对手名称

操作指南

步骤 1: 设置共享 API 客户端

创建两个辅助函数:一项用于搜索 API(Google、Amazon、YouTube),一项用于 TikTok API。两者都使用相同的 API 密钥,但身份验证模式不同。

Python
import requests, os

API_KEY = os.environ['SCAVIO_API_KEY']
SEARCH_URL = 'https://api.scavio.dev/api/v1/search'
TIKTOK_URL = 'https://api.scavio.dev/api/v1/tiktok'

def search_api(body: dict) -> dict:
    resp = requests.post(SEARCH_URL,
        headers={'x-api-key': API_KEY, 'Content-Type': 'application/json'},
        json=body)
    resp.raise_for_status()
    return resp.json()

def tiktok_api(endpoint: str, body: dict) -> dict:
    resp = requests.post(f'{TIKTOK_URL}/{endpoint}',
        headers={'Authorization': f'Bearer {API_KEY}',
                 'Content-Type': 'application/json'},
        json=body)
    resp.raise_for_status()
    return resp.json()

步骤 2: 监控 Google、Amazon 和 YouTube 提及

在每个平台上搜索品牌提及信息。计算您的品牌在自然搜索结果、亚马逊列表和 YouTube 视频中出现的次数。

Python
def monitor_google(brand: str) -> dict:
    data = search_api({'query': f'"{brand}"', 'country_code': 'us'})
    organic = data.get('organic_results', [])
    return {'platform': 'google', 'mentions': len(organic),
            'top_result': organic[0]['title'] if organic else None}

def monitor_amazon(brand: str) -> dict:
    data = search_api({'platform': 'amazon', 'query': brand, 'marketplace': 'US'})
    products = data.get('products', [])
    return {'platform': 'amazon', 'listings': len(products),
            'avg_rating': sum(p.get('rating', 0) for p in products) / max(len(products), 1)}

def monitor_youtube(brand: str) -> dict:
    data = search_api({'platform': 'youtube', 'query': brand})
    videos = data.get('videos', [])
    return {'platform': 'youtube', 'videos': len(videos),
            'top_video': videos[0].get('title') if videos else None}

for fn in [monitor_google, monitor_amazon, monitor_youtube]:
    result = fn('yourBrand')
    print(result)

步骤 3: 监控 TikTok 提及和主题标签的存在

在 TikTok 中搜索品牌视频提及并检查品牌标签统计数据。将这两个信号结合起来即可得出 TikTok 存在分数。

Python
def monitor_tiktok(brand: str) -> dict:
    # Video mentions
    search_data = tiktok_api('search/videos',
        {'keyword': brand, 'count': 20, 'cursor': 0})['data']
    video_count = len(search_data.get('videos', []))
    total_plays = sum(v.get('stats', {}).get('playCount', 0)
                      for v in search_data.get('videos', []))
    # Hashtag presence
    try:
        hashtag_data = tiktok_api('hashtag', {'hashtag': brand})['data']
        hashtag_views = hashtag_data['stats']['view_count']
    except Exception:
        hashtag_views = 0
    return {
        'platform': 'tiktok',
        'video_mentions': video_count,
        'total_plays': total_plays,
        'hashtag_views': hashtag_views
    }

tiktok_stats = monitor_tiktok('yourBrand')
print(tiktok_stats)

步骤 4: 建立统一的日报

将所有平台数据合并到一个报告中。每天运行一次,以跟踪一段时间内的品牌健康状况。将竞争对手品牌添加到基准声音份额中。

Python
import json
from datetime import date

def brand_report(brands: list) -> dict:
    report = {'date': date.today().isoformat(), 'brands': {}}
    for brand in brands:
        report['brands'][brand] = {
            'google': monitor_google(brand),
            'amazon': monitor_amazon(brand),
            'youtube': monitor_youtube(brand),
            'tiktok': monitor_tiktok(brand)
        }
    # Share of voice: total mentions across platforms
    for brand in brands:
        data = report['brands'][brand]
        total = (data['google']['mentions'] + data['amazon']['listings'] +
                 data['youtube']['videos'] + data['tiktok']['video_mentions'])
        data['total_mentions'] = total
    grand_total = sum(b['total_mentions'] for b in report['brands'].values())
    for brand in brands:
        sov = report['brands'][brand]['total_mentions'] / max(grand_total, 1)
        report['brands'][brand]['share_of_voice'] = round(sov * 100, 1)
    with open(f'brand_monitor_{date.today()}.json', 'w') as f:
        json.dump(report, f, indent=2)
    return report

report = brand_report(['yourBrand', 'competitorA', 'competitorB'])
for brand, data in report['brands'].items():
    print(f"{brand}: {data['total_mentions']} mentions, {data['share_of_voice']}% SoV")

步骤 5: 估算每月 API 成本

计算所有平台日常监控的信用使用量。每个 API 调用需要 1 个积分,价格为 0.005 美元。每天在 4 个平台上运行 3 个品牌大约需要 15-20 个积分。

Python
def estimate_monthly_cost(num_brands: int, runs_per_day: int = 1) -> dict:
    # Per brand per run: 1 Google + 1 Amazon + 1 YouTube + 2 TikTok = 5 credits
    credits_per_run = num_brands * 5
    daily_credits = credits_per_run * runs_per_day
    monthly_credits = daily_credits * 30
    cost = monthly_credits * 0.005
    return {
        'brands': num_brands,
        'daily_credits': daily_credits,
        'monthly_credits': monthly_credits,
        'monthly_cost': f'${cost:.2f}',
        'recommended_plan': '$30/7K credits' if monthly_credits <= 7000
            else '$100/28K credits' if monthly_credits <= 28000
            else '$250/85K credits'
    }

for n in [3, 10, 25]:
    est = estimate_monthly_cost(n)
    print(f"{est['brands']} brands: {est['monthly_credits']} credits/mo "
          f"({est['monthly_cost']}), plan: {est['recommended_plan']}")

Python 示例

Python
import requests, os, json
from datetime import date

API_KEY = os.environ['SCAVIO_API_KEY']
SEARCH_URL = 'https://api.scavio.dev/api/v1/search'
TIKTOK_URL = 'https://api.scavio.dev/api/v1/tiktok'

def search_api(body):
    return requests.post(SEARCH_URL,
        headers={'x-api-key': API_KEY, 'Content-Type': 'application/json'},
        json=body).json()

def tiktok_api(endpoint, body):
    return requests.post(f'{TIKTOK_URL}/{endpoint}',
        headers={'Authorization': f'Bearer {API_KEY}',
                 'Content-Type': 'application/json'},
        json=body).json()

def monitor_brand(brand):
    google = search_api({'query': f'"{brand}"', 'country_code': 'us'})
    amazon = search_api({'platform': 'amazon', 'query': brand, 'marketplace': 'US'})
    youtube = search_api({'platform': 'youtube', 'query': brand})
    tiktok = tiktok_api('search/videos', {'keyword': brand, 'count': 20, 'cursor': 0})
    return {
        'google_mentions': len(google.get('organic_results', [])),
        'amazon_listings': len(amazon.get('products', [])),
        'youtube_videos': len(youtube.get('videos', [])),
        'tiktok_videos': len(tiktok.get('data', {}).get('videos', [])),
    }

brands = ['yourBrand', 'competitorA', 'competitorB']
report = {b: monitor_brand(b) for b in brands}
for brand, data in report.items():
    total = sum(data.values())
    print(f'{brand}: {total} total mentions across 4 platforms')
    for k, v in data.items():
        print(f'  {k}: {v}')

JavaScript 示例

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
const SEARCH_URL = 'https://api.scavio.dev/api/v1/search';
const TIKTOK_URL = 'https://api.scavio.dev/api/v1/tiktok';

async function searchApi(body) {
  const r = await fetch(SEARCH_URL, {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify(body)
  });
  return r.json();
}

async function tiktokApi(endpoint, body) {
  const r = await fetch(`${TIKTOK_URL}/${endpoint}`, {
    method: 'POST',
    headers: { 'Authorization': `Bearer ${API_KEY}`, 'Content-Type': 'application/json' },
    body: JSON.stringify(body)
  });
  return r.json();
}

async function monitorBrand(brand) {
  const [google, amazon, youtube, tiktok] = await Promise.all([
    searchApi({ query: `"${brand}"`, country_code: 'us' }),
    searchApi({ platform: 'amazon', query: brand, marketplace: 'US' }),
    searchApi({ platform: 'youtube', query: brand }),
    tiktokApi('search/videos', { keyword: brand, count: 20, cursor: 0 })
  ]);
  return {
    google: (google.organic_results || []).length,
    amazon: (amazon.products || []).length,
    youtube: (youtube.videos || []).length,
    tiktok: (tiktok.data?.videos || []).length
  };
}

async function main() {
  for (const brand of ['yourBrand', 'competitorA', 'competitorB']) {
    const data = await monitorBrand(brand);
    const total = Object.values(data).reduce((a, b) => a + b, 0);
    console.log(`${brand}: ${total} mentions (G:${data.google} A:${data.amazon} Y:${data.youtube} T:${data.tiktok})`);
  }
}

main().catch(console.error);

预期输出

JSON
{
  "date": "2026-05-12",
  "brands": {
    "yourBrand": {
      "google_mentions": 10,
      "amazon_listings": 5,
      "youtube_videos": 8,
      "tiktok_videos": 14,
      "total_mentions": 37,
      "share_of_voice": 45.1
    },
    "competitorA": {
      "total_mentions": 28,
      "share_of_voice": 34.1
    },
    "competitorB": {
      "total_mentions": 17,
      "share_of_voice": 20.7
    }
  }
}

3 brands: 450 credits/mo ($2.25), plan: $30/7K credits
10 brands: 1500 credits/mo ($7.50), plan: $30/7K credits
25 brands: 3750 credits/mo ($18.75), plan: $30/7K credits

相关教程

  • 如何构建预算 TikTok 品牌监控系统
  • 如何通过 API 跟踪 TikTok 标签趋势
  • 如何构建跨平台搜索管道

常见问题

大多数开发者在15到30分钟内完成本教程。您需要一个Scavio API密钥(免费套餐即可)和可用的Python或JavaScript环境。

已安装 Python 3.10+. 请求已安装库. 来自 scavio.dev 的 Scavio API 密钥. 要监控的品牌名称和 1-2 个竞争对手名称. Scavio API密钥注册即送50个免费积分。

可以。免费套餐注册即送50个积分,完全足够完成本教程并构建一个可运行的原型解决方案。

Scavio提供原生LangChain包(langchain-scavio)、MCP服务器以及适用于任何HTTP客户端的REST API。本教程使用 the raw REST API, 但您可以根据需要适配您选择的框架。

相关资源

Best Of

最佳 TikTok 标签分析 API (2026)

Read more
Best Of

2026 年最佳 YouTube 数据 API

Read more
Glossary

TikTok 非官方 API

Read more
Comparison

TikTok Proxy Scraping vs TikTok Third-Party API (Scavio, TikAPI)

Read more
Solution

API YouTube

Read more
Glossary

TikTok API 合规与抓取对比

Read more

开始构建

在单一管道中跨 Google、TikTok、Amazon 和 YouTube 建立品牌监控。使用一个 API 跟踪提及、情绪和声音分享。

获取免费API密钥阅读文档
ScavioScavio

面向AI智能体的实时搜索API。搜索所有平台,不仅仅是Google。

产品

  • 功能
  • 定价
  • 控制台
  • 联盟计划

开发者

  • 文档
  • API参考
  • 快速开始
  • MCP集成
  • Python SDK

替代方案

  • Tavily替代方案
  • SerpAPI替代方案
  • Firecrawl替代方案
  • Exa替代方案

工具

  • JSON格式化
  • cURL转代码
  • Token计数器
  • 全部工具

© 2026 Scavio. 保留所有权利。

Featured on TAAFT
服务条款隐私政策