Firecrawl 爬虫工具
Firecrawl 是一个强大的网页内容抓取服务,能够绕过常见的反爬检测机制,支持 JavaScript 渲染页面的内容提取。当 OpenClaw 内置的 web_fetch 工具无法抓取某个页面时,可以自动切换到 Firecrawl。
为什么需要 Firecrawl?
许多现代网站采用了反爬措施:
- 需要 JavaScript 渲染才能显示内容(SPA 应用)
- 检测无头浏览器特征并拒绝访问
- 使用 Cloudflare 或其他 WAF 拦截爬虫请求
Firecrawl 通过隐身模式(Stealth Mode)和真实浏览器环境解决这些问题。
获取 API Key
- 访问 firecrawl.dev 注册账号
- 在控制台找到 API Key
- 将其配置到 OpenClaw 中
配置方法
在 OpenClaw 配置文件中添加 Firecrawl 配置:
json5
{
tools: {
web: {
fetch: {
firecrawl: {
apiKey: "${FIRECRAWL_API_KEY}"
}
}
}
}
}推荐使用环境变量
将 API Key 存储在环境变量 FIRECRAWL_API_KEY 中,避免将密钥直接写入配置文件。
bash
# 在 shell 配置文件(~/.bashrc 或 ~/.zshrc)中添加
export FIRECRAWL_API_KEY="fc-your-api-key-here"作为 web_fetch 的备用(Fallback)
配置 Firecrawl 后,OpenClaw 会按以下策略决定是否使用它:
- 首先尝试内置的
web_fetch工具(免费、快速) - 如果抓取失败或返回内容不完整,自动切换到 Firecrawl
- Firecrawl 使用隐身模式抓取,返回完整的页面内容
你也可以在任务中明确指定使用 Firecrawl:
bash
openclaw run "用 Firecrawl 抓取 https://example.com 的最新价格信息"隐身模式与机器人规避
Firecrawl 如何绕过反爬检测?
- 真实浏览器指纹:模拟真实用户的浏览器特征(User-Agent、字体、分辨率等)
- JavaScript 渲染:完整执行页面 JavaScript,等待动态内容加载完成
- IP 轮换:自动切换出口 IP,避免触发频率限制
- 行为模拟:模拟人类的滚动、点击行为
合规使用提醒
使用 Firecrawl 抓取网站内容时,请遵守目标网站的使用条款(ToS)和 robots.txt 规定。不要将其用于未经授权的数据采集。
常见问题
API 调用失败怎么办?
- 检查 API Key 是否正确配置且未过期
- 确认账号余额是否充足(Firecrawl 按使用量计费)
- 查看 Firecrawl 官方状态页确认服务是否正常
- 检查目标 URL 是否在 Firecrawl 支持的抓取范围内
抓取结果不完整怎么办?
某些页面需要登录后才能查看完整内容,这类情况 Firecrawl 也无法解决。建议结合浏览器工具和手动登录(Manual Login)来处理需要身份验证的页面。
下一步:工具系统总览