mcpField
P
price-comparison

price-comparison

github.com/brightdata生产力268355 次安装2 周前更新
代码仓库

关于 price-comparison

price-comparison 是用于商品比价的技能,可查找有货且条件可比的低价商品。它通过 Bright Data CLI(`bdata`)收集实时零售商报价并统一整理,生成带引用的比较结果和购买建议。

主要功能

  1. 01实时收集零售商报价
  2. 02统一整理并排序商品报价
  3. 03核查运费与库存
  4. 04处理货币和地区差异
  5. 05生成引用比较和购买建议

适用场景

  1. 01比较不同零售商的价格
  2. 02查找有货的商品报价
  3. 03权衡运费与商品成色

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/brightdata/skills --skill price-comparison

安装后在 Claude Code 中输入/price-comparison确认已加载。

附带文件references/output-and-pricing.md

详细介绍

价格比较

通过实时零售商数据(而非过时的训练知识),找到真正值得购买产品的渠道——价格最低、有货且卖家信誉良好。 结合 Bright Data CLI(bdata)进行数据采集,再通过规范化和排序层,生成一张附有引用的比较表,并给出明确的购买建议。

绝不引用训练知识中的价格。 价格和库存每小时都在变化。始终先获取实时数据,再进行比较。如果某个来源获取失败,请如实说明,绝不猜测填补价格空缺。

前提条件

  1. 已安装 Bright Data CLI:
    curl -fsSL https://cli.brightdata.com/install.sh | bash
    
  2. 已完成一次性登录:
    bdata login    # or: bdata login --device  (SSH / headless)
    

采集前进行验证:

if ! command -v bdata >/dev/null 2>&1; then
    echo "bdata CLI not installed — see skills/bright-data-best-practices/references/cli-setup.md"
elif ! bdata zones >/dev/null 2>&1; then
    echo "bdata not authenticated — run: bdata login"
fi

如果任一检查失败,请停止并转到设置流程。

核心工作流

  1. 明确范围 —— 要找什么产品(名称、ASIN 或 URL)?要查哪些零售商(默认:Amazon + Google Shopping)?要查哪个国家/地区(默认:US——这会影响价格、货币、可售情况以及适用的零售商)?除了价格之外,还关注什么(评价、配送/Prime、全新还是翻新)?
  2. 解析后再采集 —— 如果只有产品名称,先使用零售商的 discover_by_* 抓取器和 bdata search --type shopping,将其解析为具体的产品 URL/报价,然后再获取每家零售商的结构化数据。并行执行相互独立的调用。
  3. 规范化 —— 比较之前,先将每条结果归并为 references/output-and-pricing.md 中的统一报价架构。将所有价格换算为同一货币,并注明所用汇率和日期。
  4. 排序并标记 —— 按含运费的总成本排序。标记无货、翻新/二手以及第三方卖家报价——价格较低但无货或为二手的商品,默认不能算作赢家。
  5. 交付 —— 生成比较表(输出 A),然后给出明确的“最佳购买选择”建议。每份报告都应指出有货商品中最便宜的选项以及任何重要的权衡因素。

数据采集规则

  • 先将名称解析为 URL。 通常一开始不会有干净的 URL。使用零售商的关键词发现抓取器和 bdata search "<product>" --type shopping --json 找到准确商品,然后将这些 URL 输入商品数据管道。
  • 对于受支持的零售商,优先使用数据管道而非抓取。 Amazon、Walmart、eBay、Best Buy 和 Google Shopping 都有预构建的抓取器,可返回干净的价格/可售情况/评分 JSON。绝不要运行 bdata scrape amazon.com——Amazon 会拦截抓取器;数据管道能稳定绕过这一限制。
  • 查询抓取器,绝不猜测。 依次运行 bdata pipelines search、bdata pipelines info <dataset_id> <method>,再运行 bdata pipelines run。绝不猜测 dataset_id 或字段名称。完整工作流参见 brightdata-cli 技能和数据管道参考。
  • 需要解析或比较输出时,始终传入 --json。
  • 注意成本效益——标准比较约需 3–8 次 bdata 调用,而不是 50 次。只获取用户询问的报价,不要获取页面上的所有卖家信息。
  • 并行执行——在同一条回复中通过多个 Bash 工具调用并行执行相互独立的调用;不要等 Amazon 返回后才开始查询 Walmart。
  • 每个价格都必须有来源 URL 和采集时间戳。 绝不提供无来源或无日期的价格。
  • 绝不编造价格或填补空缺。 如果零售商没有返回结果,请在“缺失数据与注意事项”中说明。

零售商模块

根据产品和地区选择合适的零售商。美国电子产品 → Amazon + Best Buy + Walmart + Google Shopping;市场平台/二手商品 → eBay;美国以外地区 → 确认当地的 Amazon 域名,并添加适用于该地区的零售商。

支持的零售商:按商品 URL
bdata pipelines search "<retailer> product"        # pick the dataset_id for the right domain
bdata pipelines info <dataset_id> collect_by_url   # check required fields
bdata pipelines run <dataset_id> collect_by_url "<product-url>" -o <retailer>.json

每个 URL 返回一条记录,包含价格、标题、可售情况、评分和卖家。同一家零售商的多个 URL 可在一次 run 中传入。使用适用于所在地区的零售商域名(Amazon 示例:amazon.com、amazon.de、amazon.co.uk,等等)。

按关键词发现(仅知道名称时)
bdata pipelines info <dataset_id>                  # look for a discover_by_* method
bdata pipelines info <dataset_id> <method>         # see its input fields
bdata pipelines run <dataset_id> <method> --<field> "<product name>" --limit-per-input 5

从结果中找到正确的产品 URL,然后对其运行 collect_by_url。每条返回记录都会计费,因此请将 --limit-per-input 设得较小。

Google Shopping — 跨零售商概览
bdata pipelines search "google shopping"
bdata pipelines run <dataset_id> collect_by_url "<google-shopping-product-url>" -o gshopping.json

已有 Shopping 产品 URL 后,适合快速查看多个卖家的信息。若要从名称查找该 URL(并快速了解价格范围),请使用 SERP shopping:

bdata search "iPhone 17 Pro 256GB" --type shopping --country us --json
未知或本地零售商 — 抓取页面
bdata scrape "https://retailer.example/product-page"

然后从 Markdown 中提取价格、货币和库存情况。适用于没有专用管道的本地零售商(例如区域性电子产品连锁店)。

切勿硬编码抓取器。 使用 bdata pipelines search 选择 dataset_id,并通过 bdata pipelines info 查看输入字段。 两个抓取器可能同名,因此请核对域名。缺失或未知字段会在计费前导致操作失败。

区域处理

  • 国家会改变一切——价格、货币、库存以及当地存在的零售商都会不同。运行前务必确认地区;仅当用户未说明时才默认使用美国。
  • 向 bdata search 传入 --country <code>,以获取本地化的 SERP/Shopping 结果(例如,以 --country il 表示以色列,de、uk)。
  • 在产品 URL 中使用当地的 Amazon 域名。 许多地区(例如以色列)既会通过 amazon.com 国际配送购买,也会通过本地连锁店购买——请涵盖两者,并标明配送/进口方面的影响。
  • 将货币统一为一种展示货币,注明所用汇率和日期,并在数据集中保留每项报价的原币价格。

输出

阅读 references/output-and-pricing.md,了解:

  • 标准化报价记录架构(表格和数据集输出的行结构)。
  • 总成本排序规则(已知时计入价格 + 运费 + 进口税/税费;确定赢家前先检查是否有货及商品状况)。
  • 货币标准化约定。
  • 输出模板——A(对比表 + 建议)、B(结构化数据集)、C(两者)。

输出质量标准

  1. 每个价格都必须附带来源 URL 和时间戳——不得提供未注明日期或来源的价格。
  2. 价格旁始终显示供货情况——缺货的低价商品不算赢家。明确标注翻新/二手/第三方商品。
  3. 指出一项“最佳购买选择”——选择状况可比且有货的最低价,并说明次选项及用户可能选择它的原因。
  4. 如实说明缺口——列出本次查询未返回结果或受限的零售商。注明价格看起来过时或属于“起价”范围的情况。
  5. 注明货币和地区——例如“$ USD · 地区:US”,或注明换算所用汇率。
  6. 绝不估算缺失的价格。 报告缺口,不要自行填补。

评论

支持 Markdown