ScavioScavio
产品定价文档
登录开始使用
  1. 首页
  2. 教程
  3. 如何通过 API 获取 Google 购物结果
教程

如何通过 API 获取 Google 购物结果

使用 Scavio API 以 JSON 格式提取 Google 购物产品列表。为价格情报工具提取价格、商家、评级和产品图像。

获取免费API密钥API文档

Google 购物结果汇总了数千家零售商的产品列表,并在 Google 搜索结果中突出显示。它们是竞争性定价情报、商家发现和市场价格基准的宝贵来源。 Scavio API 在 SERP 响应的 shopping_results 字段中返回 Google 购物结果,包括产品标题、价格、商家、评级和图像 URL。本教程介绍如何提取和分析任何产品类别的 Google 购物数据。

前置条件

  • Python 3.8 或更高版本
  • 请求已安装库
  • Scavio API 密钥
  • 熟悉价格数据分析

操作指南

步骤 1: 获取 Google 购物结果

将“购物”上下文添加到您的查询中或直接查询产品名称。 Google 购物结果显示在 Scavio 响应中的 shopping_results 中。

Python
def get_shopping(product: str) -> list[dict]:
    response = requests.post(
        "https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": API_KEY},
        json={"query": product, "country_code": "us"}
    )
    response.raise_for_status()
    data = response.json()
    return data.get("shopping_results", [])

步骤 2: 按商家提取定价

建立一个字典,将商家名称映射到产品的列出价格。

Python
def prices_by_merchant(items: list[dict]) -> dict:
    result = {}
    for item in items:
        merchant = item.get("source", "Unknown")
        price = item.get("price", "N/A")
        result[merchant] = price
    return result

步骤 3: 寻找最低价格

解析价格并确定提供最低标价的商家。

Python
def lowest_price(items: list[dict]) -> dict | None:
    def parse(item):
        p = item.get("price", "")
        return float(p.replace("$", "").replace(",", "")) if p else float("inf")
    return min(items, key=parse, default=None)

步骤 4: 生成价格情报摘要

打印各商家价格范围的摘要并突出显示最优惠的价格。

Python
items = get_shopping("iPhone 16 Pro")
merchants = prices_by_merchant(items)
best = lowest_price(items)
print(f"Found {len(items)} listings")
print(f"Best price: {best.get('price')} from {best.get('source')}")
for m, p in list(merchants.items())[:5]:
    print(f"  {m}: {p}")

Python 示例

Python
import os
import requests

API_KEY = os.environ.get("SCAVIO_API_KEY", "your_scavio_api_key")
ENDPOINT = "https://api.scavio.dev/api/v1/search"

def get_shopping(product: str) -> list[dict]:
    r = requests.post(ENDPOINT, headers={"x-api-key": API_KEY},
                      json={"query": product, "country_code": "us"})
    r.raise_for_status()
    return r.json().get("shopping_results", [])

def lowest_price(items: list[dict]) -> dict | None:
    def val(item):
        p = item.get("price", "")
        return float(p.replace("$", "").replace(",", "")) if p else float("inf")
    return min(items, key=val, default=None)

if __name__ == "__main__":
    items = get_shopping("Sony WH-1000XM5 headphones")
    best = lowest_price(items)
    print(f"{len(items)} shopping listings found")
    if best:
        print(f"Lowest: {best.get('price')} at {best.get('source')}")
    for item in items[:5]:
        print(f"  {item.get('source', 'N/A')}: {item.get('price', 'N/A')}")

JavaScript 示例

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY || "your_scavio_api_key";
const ENDPOINT = "https://api.scavio.dev/api/v1/search";

async function getShopping(product) {
  const res = await fetch(ENDPOINT, {
    method: "POST",
    headers: { "x-api-key": API_KEY, "Content-Type": "application/json" },
    body: JSON.stringify({ query: product, country_code: "us" })
  });
  const data = await res.json();
  return data.shopping_results || [];
}

async function main() {
  const items = await getShopping("Sony WH-1000XM5 headphones");
  const sorted = items.sort((a, b) => {
    const pa = parseFloat((a.price || "").replace(/[$,]/g, "")) || Infinity;
    const pb = parseFloat((b.price || "").replace(/[$,]/g, "")) || Infinity;
    return pa - pb;
  });
  console.log(`${items.length} listings found`);
  sorted.slice(0, 5).forEach(i => console.log(`${i.source}: ${i.price}`));
}
main().catch(console.error);

预期输出

JSON
{
  "shopping_results": [
    {
      "title": "Sony WH-1000XM5 Wireless Headphones",
      "price": "$279.00",
      "source": "Best Buy",
      "rating": "4.8",
      "reviews": 9842,
      "link": "https://bestbuy.com/...",
      "thumbnail": "https://cdn.bestbuy.com/..."
    }
  ]
}

相关教程

  • 如何为亚马逊和沃尔玛构建价格比较工具
  • 如何通过 API 获取沃尔玛产品搜索数据

常见问题

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

Python 3.8 或更高版本. 请求已安装库. Scavio API 密钥. 熟悉价格数据分析. Scavio API密钥注册即送50个免费积分。

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

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

相关资源

Best Of

最佳 Google Maps 商业数据 API(2026 年 5 月)

Read more
Best Of

Google I/O 2026 AI模式变化后最佳搜索API

Read more
Glossary

Google Maps Places API成本

Read more
Comparison

Google CSE (Paid Tier) vs Third-Party SERP API (Scavio, SerpApi, Serper)

Read more
Glossary

搜索 API 供应商格局(2026)

Read more
Comparison

Brave Search API vs Scavio

Read more

开始构建

使用 Scavio API 以 JSON 格式提取 Google 购物产品列表。为价格情报工具提取价格、商家、评级和产品图像。

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

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

产品

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

开发者

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

替代方案

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

工具

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

© 2026 Scavio. 保留所有权利。

Featured on TAAFT
服务条款隐私政策