使用 Bright Data CLI 与 MCP,将 Claude Code 接入实时 Web Scraping 能力,实现 Amazon 多站价格抓取、SERP 搜索和 AI Agent 自动化
先给你看一张我上周截的图。
我在 Claude Code 里丢了一句话:“帮我对比这个商品在美国站和德国出口下的价格差异”,然后什么都没做。它自己去抓了 amazon.com,又抓了 amazon.de,发现两边币种不一样,自己跑去搜了当天的欧元汇率,最后甩给我一张表:美国站 $18.00,德国站 19,00 €,换算后德国贵约 21%。
整个过程 Claude 调用了三次工具,我一行代码没写。让它长出这只"上网的手"的,是一条命令:brightdata add mcp。
这篇文章不是功能罗列。我想还原一件我最近真正做成的事——把实时网页数据接进 AI Agent,让它从"凭训练记忆瞎编"变成"抓到当下事实再回答"。全程用 Bright Data CLI(官方 npm 包@brightdata/cli,命令行别名bdata)串起来。每一步都对应我踩过的一个具体坑,你照着能复现。
背景:我在给团队做一个基于 Claude Code 的选品调研 Agent,要它盯竞品价格、搜行业舆情、读商品详情再给建议。听起来不难,真动手才知道——"让 Agent 上网"这件事,比让它推理难十倍。
说明:文中
bdata就是brightdata的简写别名。Bright Data CLI 注册即领每月 5,000 credits 免费额度,无需绑卡,跟完这篇所有实验绰绰有余。
装好它,只花了我两分钟
先把工具装上。要求很低,Node.js ≥ 20 就行:
npminstall-g@brightdata/cli# macOS/Linux 也可以:curl -fsSL https://cli.brightdata.com/install.sh | sh装完brightdata login登录,支持 OAuth、API Key、环境变量三种。我本地走的交互式登录,浏览器点一下就回来了;CI 里用BRIGHTDATA_API_KEY最省事。
然后brightdata init走一遍初始化向导,选默认输出格式(我选了 markdown)、确认 zone,几个回车搞定。
装完先看一眼家底。brightdata --version是 0.3.2,brightdata budget看额度。这里说清一个容易懵的点:你在这里看到都是0,只是你的余额,网站里右上角是有显示送的5000额度。CLI 会根据调用的产品类型消耗对应 Credits,基础抓取通常消耗较少,而结构化 Pipelines 按返回记录计费。
为什么我不自己搭爬虫?因为那才是真正的地狱。目标站的反爬指纹、reCAPTCHA、数据中心 IP 被拉黑、数据要等前端 JS 渲染完才出现……requests拿回来一个空壳,Selenium 又慢又容易被识破。我要的只是"干净的网页内容",却得先解决一整套基础设施工程。Bright Data 的思路是把这层整个外包:海量住宅 IP 轮换(官方称 4 亿+)、CAPTCHA 求解、JS 渲染全在它后端自动完成,我在命令行这头完全无感。
第一步:一条命令,把任意网页变成喂给模型的干净文本
Bright Data CLI 的scrape命令可以自动抓取网页并输出 Markdown,无需自己处理代理、CAPTCHA 或 JavaScript 渲染。Agent 要读网页,最理想的输入正是 Markdown——干净、带结构、省 token。brightdata scrape默认就吐 Markdown:
brightdata scrape https://news.ycombinator.com-ohn.md背后那一整套反爬、代理、渲染我一概不用管,回来就是正文。想要整页截图喂多模态模型也行,加-f screenshot,后端直接把页面渲染成图返回:
brightdata scrape https://news.ycombinator.com-fscreenshot-opage.png这一步解决的是"能不能拿到内容"。但我的 Agent 很快提了个更刁的需求。
第二步:它不要一坨文本,它要能直接算的字段
做价格对比,Agent 需要的是规整字段:商品名、价格、库存、评论数。让大模型从整页 Markdown 里一个个抠字段,既烧 token 又容易抠错。
brightdata pipelines就是干这个的——官方 Scraper APIs 已覆盖100+ 网站,提供字段级的结构化采集能力,直接吐 JSON。brightdata pipelines list能列全,Amazon、LinkedIn 公开主页、Google Maps 评论、YouTube 评论都在里面。
我拿一台 Samsung Chromebook 试了amazon_product,回来的字段干净到可以直接灌进 Agent:title、initial_price(212.22)、currency(USD)、availability(In Stock)、reviews_count(660)、brand、asin、categories……全是结构化好的键值,一个都不用我自己解析。
这里插一句实测教训:amazon_product只认 amazon 域名。我一开始手贱丢了个淘宝链接进去,直接validation_error报错。抓非平台站就老老实实用scrape,平台数据才走pipelines——这是文档里写的真实边界,不是我瞎猜的。喂进 Agent 的从一坨文本变成干净字段后,它的推理准确率和 token 效率同时上来了。更省心的是,平台改版后的解析维护被 Bright Data 那头接管,我再不用为选择器失效熬夜。
👉 如果你也想让 AI Agent 拥有实时 Web Data,而不是依赖过时的训练记忆,Bright Data CLI 每月送 5,000 credits 免费额度,装好几分钟就能复现本文所有实验。免费开始使用 →
第三步:让它自己会"搜",而不只是"抓"
盯价格只是起点。我更想要 Agent 有"发现能力"——自己去搜"这品类最近有什么新品、有什么舆情",再挑重点深读。
brightdata search直接调搜索引擎,--engine选 Google、Bing、Yandex,返回结构化 JSON(自然结果、广告、相关问题都在)。它真正的威力是能当 Unix 管道的一等公民:--json输出天然 pipe-friendly。我把"搜索 → 取第一条链接 → 深抓"串成一条流水线:
brightdata search"web scraping tools 2026"--enginegoogle--json\|jq-r'.organic[0].link'\|xargsbrightdata scrape一条命令,先搜、再筛、再读。写进 Shell 丢进 crontab,就是个无人值守的情报采集器。
第四步:同一件商品,换个国家出口,价格真的不一样
选品有个隐藏坑:同一件商品,美国站和德国站的价格、可用性可能完全不同,Agent 拿错地区数据去比价就是灾难。
scrape的--country参数指定出口国家,这事一条命令解决。我拿《Atomic Habits》这本书试(图书的 ASIN 全球通用,是干净的对照物):
brightdata scrape"https://www.amazon.com/dp/0735211299"--countryus-obook-us.md brightdata scrape"https://www.amazon.de/dp/0735211299"--countryde-obook-de.md从两份输出的 Buy Box 数据里取主价格,结果一目了然:美国站$18.00,德国站19,00 €。
这里也有个真实教训值得说:我第一次拿一台美国版 SKU 的 Chromebook 做对比,德国站抓回来 grep 到个价格就以为是它的德国价。后来让 Claude 认真看 Buy Box 才发现——那台机器在德国站根本没人上架,购买框是空的,我 grep 到的是"相关推荐"里别的商品。这恰恰说明为什么要用--country:选品 Agent 拿美国站数据去判断德国市场,会得出"有货、有价"的错误结论,实际当地压根买不到。换成两站都在售的书,才拿到干净的 $18 vs 19€ 对比。
高潮:一条命令,把这一切变成 Agent 的"原生器官"
前面每一步我都是在终端手动跑,再把结果贴给 Agent。太笨了。真正的目标是——让 Agent 自己调这些能力。
brightdata add mcp就是那把钥匙,把整套抓取能力作为 MCP server 注入编码代理:
brightdataaddmcp--agentclaude-code--global一条命令,✓ Added Bright Data MCP to Claude Code。--agent还能一次接多个(claude-code,cursor),codex配--global全局接入。值得一提的是,Bright Data MCP 本身免费,可直接接入 Claude Code、Cursor 等支持 MCP 的 Agent,接入不额外收费——真正消耗 credits 的是后端实际发生的抓取/搜索调用。
接好、重启 Claude Code,那个"睁眼瞎"的 Agent 就睁眼了。我丢给它一句最普通的需求,没提任何工具名:
https://www.amazon.com/dp/B09S3HNMHF 这个商品现在多少钱、有货吗?
它自己判断出"我记忆里没有实时价",于是Called bright-data,抓页面、定位 Buy Box、确认主价格,回我:$212.22、有货、4.3/5(660 条评价),还标注了数据来自哪个配送地址。
再往上一层,就是开头那张图。我让它对比美德两站书价,它调了两次bright-data抓两国页面,发现币种不同,自己发起一次 Web Search 查当天欧元汇率,换算后给出"德国站约贵 $3.79(+21%)"。这种"发现问题→自己补一步→给出结论"的链路,是我手动贴数据永远给不了它的。
我还试过更硬核的:让它查"Anker 最新充电宝有没有负面舆情"。它Called bright-data 2 times搜+抓,读了官方召回页、PCMag、中文报道,最后整理出一张召回时间线——按 Agent 的梳理,从 2025 年 6 月首次召回上百万台,到 2026 年 4 月最新一轮全球自愿召回,脉络清清楚楚(这些数字是 Agent 从抓取内容里汇总的,我截图存证,采信前你可以点开它引用的原始来源再核一遍)。
到这一步,它已经不是"一个会推理的模型",而是"一个能自己上网核实、再回答的分析师"。
还有一手我准备下次上:网站改版让 AI 自己修
爬虫最怕目标站改版——字段一乱,搁过去就是半夜救火。具备这类能力的**Self-Healing Scraper(自愈爬虫),**对应的产品是Bright Data Scraper Studio(CLI 子命令为brightdata scraper)。这块能力我还没在生产里跑满两周,但按官方文档,它给了一套自愈闭环:create <url> "<自然语言描述>"让 AI 生成爬虫、产出稳定的 collector ID(c_...);失效时scraper heal <id> "<提示>"让 AI 自动修。
按文档描述,它默认停在审批门:返回awaiting_approval和preview_result,人工核对预览没问题再approve才上线;不想手动就加--auto-approve,另有--max-retries、--no-retry做精细控制。这套"run → inspect → heal → approve"的思路,正是我打算用来终结改版救火的——等我实测过再来补细节。
横向对比:为什么不自己搭?
| 能力 | Bright Data CLI | 自写 Python(Scrapy/Selenium) | curl / wget |
|---|---|---|---|
| 反爬指纹伪装 | ✅ 后端自动 | ❌ 手动维护 | ❌ 无 |
| CAPTCHA 求解 | ✅ 内置 | ❌ 需接打码平台 | ❌ 无 |
| 住宅 IP 轮换 | ✅ 内置(官方称 4 亿+) | ⚠️ 需自购代理池 | ❌ 无 |
| JS 渲染 | ✅ 自动 | ⚠️ 需 Selenium | ❌ 无 |
| 结构化输出 | ✅ json/csv/ndjson | ⚠️ 需自写解析 | ❌ 原始 HTML |
| 100+ 网站提取器 | ✅ 内置 | ❌ 逐个自建 | ❌ 无 |
| 多地区抓取 | ✅--country(移动端--mobile) | ⚠️ 需自建代理 | ❌ 无 |
| AI 生成 + 自愈 | ✅ create/heal/approve | ❌ 全手动救火 | ❌ 无 |
| MCP 接入 Agent | ✅ 一条命令 | ❌ 自行封装 | ❌ 无 |
| 免费额度 | ✅ 每月 5,000 credits | N/A | N/A |
我这种"想让 Agent 尽快用上实时数据、又不想养一支爬虫运维队"的人,结论很清楚:把基础设施外包,精力留给业务逻辑。
这套打法还能用在哪
我的场景是选品 Agent,但"给 Agent 接上互联网"这条路是通用的:客服 Agent 实时查订单页,投研 Agent 抓公告与舆情,增长 Agent 盯竞品动态,运营 Agent 采公开点评。只要你的 Agent 需要"当下的、真实的、结构化的"网页数据,这套 CLI + MCP 就能直接嵌进去。
FAQ
合规吗?工具只采集公开可访问数据,不支持抓取需登录的私有页面。使用请遵守目标站条款与当地法规。
支持哪些 Agent?add mcp目前可一键接入 Claude Code、Cursor、Codex 等支持 MCP 的编码代理,--agent还能一次指定多个(如claude-code,cursor)。
免费额度会过期吗?每月 5,000 credits 按月刷新(不累积到下月),注册即用,无需绑卡。
触发限速怎么办?底层自动轮换住宅 IP,极少触发;scraper heal还提供--max-retries/--no-retry精细控制。
能进 CI/CD 吗?可以,环境变量注入凭证即可无人值守运行。
写在最后
从"靠记忆回答"到"先查证再回答",我没有重新打造一套 Agent,只是替它接上了实时 Web Data。
如果你正在开发 Claude Code、Cursor、OpenAI Agent 或其他 MCP Agent,不妨花几分钟试一次 Bright Data CLI。等你真正看到 Agent 自己搜索、抓取、整理资料,再把结果交给模型推理,就会明白为什么越来越多 AI Agent 都把 Web Access 当成了标配能力。
说到底,我真正买到的不是代理,而是让 AI Agent 获得实时 Web Data 的能力。
👉 免费开始使用 Bright Data CLI →(每月 5,000 credits,无需绑定信用卡)