如何为 Claude Code 添加网页抓取:让你的代理访问完整网页

网页搜索返回摘要,网页抓取返回完整页面。了解如何通过一个 CLI 为 Claude Code 提供完整网页访问,用于研究、竞品分析和内容提取。

by AnyCap

你让 Claude Code 去调研竞争对手的定价页。它先搜索网页,只返回一段摘要:“起价为每月 29 美元。”这远远不够。你需要完整的价格表、功能对比、企业版层级——也就是页面的真实内容。

网页搜索给你摘要。网页抓取给你整页内容。

下面介绍如何把网页抓取接入 Claude Code——这样你的代理就能读取完整网页、提取结构化数据,并把这些调研结果直接纳入工作流。


网页搜索 vs 网页抓取:有什么区别?

二者相关,但职责不同:

网页搜索 网页抓取
返回内容 摘要、链接、引用 以干净 Markdown 形式返回完整页面内容
最适合 快速回答、发现信息、事实核查 深度调研、内容提取、竞品分析
速度 几秒钟 几秒到一分钟(完整页面获取)
数据深度 表层 完整——每个标题、段落、表格都保留
使用场景 “X 的价格是多少?” “提取整个定价页并和我们的价格对比”

你的代理两者都需要。先搜索找到合适页面,再抓取才能真正读懂。


为什么 Claude Code 需要网页抓取

Claude Code 擅长推理你的代码库。它可以重构函数、编写测试,并跨文件排查问题。但当它需要调研某些内容时——比如竞争对手的 API 文档、某个库的更新日志、某个产品的功能列表——就会碰到瓶颈。

网页搜索有帮助,但摘要能提供的信息有限。一个定价页可能有 12 个套餐,一个文档页可能有 40 个章节,一个更新日志可能覆盖 3 年的发布记录。150 个字符的摘要只告诉你一件事,整页内容才告诉你全部。

网页抓取可以把完整页面交给你的代理。然后它就能:

  • 提取结构化数据(价格档位、功能列表、API 端点)
  • 逐项比较竞争对手的产品
  • 将文档直接用于代码生成(“严格按照文档中的说明实现认证”)
  • 跟踪时间变化(每周抓取同一页面并对比结果)

方法一:手动网页抓取(脆弱方案)

你可以把 Claude Code 配置为直接调用抓取服务。选择一个提供商(Firecrawl、Jina、ScrapingBee),注册账号,获取 API key,然后接入代理。

手动方案的流程:

  1. 注册抓取服务
  2. 获取 API key
  3. 编写 Claude Code 可以调用的 shell 脚本或 MCP 配置
  4. 处理速率限制、重试和抓取失败
  5. 解析响应并回传给代理上下文

这适合偶尔使用。但一旦规模上来就容易出问题——不同网站会封锁不同抓取器,各家速率限制不同,而维护这些集成会消耗原本用于开发的时间。


方法二:用于抓取的 MCP 服务器

网页抓取的 MCP 服务器把抓取逻辑封装成可复用的集成。Firecrawl 的 MCP 服务器最常见——Claude Code 调用它,它就会从任意 URL 返回干净的 Markdown。

这种设置比手动对接 API 轻量,但你仍然要管理:

  • 每种能力一个 MCP 服务器(抓取和搜索是分开的)
  • 提供商特定的速率限制和身份验证
  • 在不同抓取提供商之间切换时的格式不一致

方法三:一个 CLI 同时负责搜索 + 抓取(AnyCap 方式)

这种方式把搜索和抓取合并到一个命令界面中。你的代理先搜索找到页面,再抓取整页内容——全部通过同一个 CLI 完成。

# 第 1 步:搜索相关页面
anycap search --prompt "competitor pricing pages SaaS 2026" --citations

# 第 2 步:抓取最相关结果的完整内容
anycap crawl --url "https://competitor.com/pricing" -o pricing.md

运行时负责:

  • 结构化输出。 页面会被转换为干净的 Markdown——保留标题、段落、表格和代码块。
  • JavaScript 渲染。 动态页面(SPA、React 应用)会在提取前渲染。
  • 干净内容。 导航、广告和模板内容会被剔除,剩下正文。
  • 统一格式。 无论来源如何,所有抓取页面都会返回相同的 Markdown 结构。

安装:

npm i -g anycap
anycap login
anycap skill install --target ~/.claude/skills/anycap-cli/

免费安装 AnyCap — 新用户 250 点数


真实用例:竞品研究流程

你的代理需要把自家产品的定价和三个竞争对手进行对比。完整流程如下:

# 1. 搜索竞争对手的定价页
anycap search --prompt "competitor A pricing plans 2026" --citations
anycap search --prompt "competitor B pricing plans 2026" --citations
anycap search --prompt "competitor C pricing plans 2026" --citations

# 2. 抓取每个定价页的完整内容
anycap crawl --url "https://competitor-a.com/pricing" -o competitor-a.md
anycap crawl --url "https://competitor-b.com/pricing" -o competitor-b.md
anycap crawl --url "https://competitor-c.com/pricing" -o competitor-c.md

# 3. 将抓取到的内容交给 Claude Code 分析
# 现在 Claude Code 拥有完整的定价数据,可以输出:
# - 对比表
# - 定价定位建议
# - 功能差距分析

你的代理已经完成了调研、抓取、分析和建议——全部在一次会话中完成。无需手动打开浏览器标签页,也不用复制粘贴。


真实用例:文档驱动开发

你的代理需要实现一个 API 集成。与其猜测认证流程,不如先抓取官方文档:

# 抓取 API 认证文档
anycap crawl --url "https://api.provider.com/docs/auth" -o auth-docs.md

# 抓取端点参考文档
anycap crawl --url "https://api.provider.com/docs/endpoints" -o endpoints.md

# 现在 Claude Code 是根据真实文档实现集成,
# 而不是依赖可能已经过时的训练数据

这就是“Claude Code,实现 Stripe 集成”(依赖训练数据,可能过时)和“Claude Code,抓取最新的 Stripe 文档,并严格按文档实现集成”(准确、最新、可靠)的区别。


真实用例:竞品监控

设置一个循环调研工作流。你的代理按计划抓取竞争对手页面,并对比结果:

# 抓取竞争对手更新日志
anycap crawl --url "https://competitor.com/changelog" -o competitor-changelog-$(date +%Y%m%d).md

# 抓取竞争对手功能页
anycap crawl --url "https://competitor.com/features" -o competitor-features-$(date +%Y%m%d).md

# 与上周的抓取结果进行比较
diff competitor-features-20260511.md competitor-features-20260518.md

每周执行一次。你的代理会在你的产品团队从客户那里得知之前,就先发现新功能、价格变化和信息更新。


搜索 + 抓取:完整调研栈

网页搜索负责发现。网页抓取负责阅读。两者结合,构成了代理的完整调研能力:

步骤 命令 作用
1. 发现 anycap search 带有可靠引用地找到相关页面
2. 提取 anycap crawl 将完整页面内容拉取为干净 Markdown
3. 分析 Claude Code 基于提取内容进行推理
4. 行动 Claude Code 根据结果执行实现、比较或汇报

这就是有依据的调研——你的代理不依赖训练数据或不完整摘要,而是基于真正、最新、重要页面的内容来工作。


什么时候抓取,什么时候搜索

适合用搜索的时候... 适合用抓取的时候...
你需要快速答案 你需要完整页面
你在寻找有哪些页面存在 你已经知道需要哪一页,而且想拿到全部内容
你需要带引用、经过验证的摘要 你需要结构化数据提取
速度优先 深度优先
答案能放进摘要里 答案是表格、列表,或分布在多个章节

大多数调研流程都会同时使用两者:搜索用于发现,抓取用于提取。


FAQ

网页抓取能处理 JavaScript 渲染的页面吗?

可以。运行时会在提取前渲染动态内容(React、Vue、SPA)。你在浏览器里看到什么,代理就能拿到什么。

网页抓取和 Claude Code 内置网页搜索有什么不同?

Claude Code 内置网页搜索返回的是摘要和简短片段。网页抓取返回的是完整页面内容的 Markdown——每个标题、段落、表格和代码块都保留。快速回答用搜索,需要深度时用抓取。

我能在一次会话中抓取多个页面吗?

可以。每个 URL 运行一次 anycap crawl。你的代理可以遍历 URL 列表并顺序抓取。所有结果都会保存为本地 Markdown 文件。

如果某个页面阻止爬虫怎么办?

有些页面会阻止自动访问。运行时会尊重 robots.txt,并妥善处理访问限制。如果页面无法抓取,代理会收到清晰的错误信息,不会静默失败。

这在 Cursor 和 Codex 里也能用吗?

可以。anycap crawl 使用同一套 CLI,能在 Claude Code、Cursor 和 Codex 中运行。安装一次,所有代理都能用。


最后总结

网页搜索告诉你的代理“有什么”。网页抓取让你的代理“读到它”。对于竞品调研、文档驱动开发和内容提取来说,只靠搜索是不够的。

把两者都给你的代理。用搜索去发现,用抓取去理解。


让 Claude Code 获得完整网页访问能力——通过一个 CLI 同时搜索 + 抓取


📖 接下来读什么


相关文章


由 AnyCap 团队撰写。我们构建了 capability runtime,让你的代理拥有带引用的网页搜索、完整页面抓取,以及在无需你介入的情况下完成调研所需的一切。