Install
openclaw skills install @tobewin/firecrawl-wrapperWeb data for everyone. Powered by Firecrawl. Scrape, search, crawl, interact with websites — all in plain language. No technical skills needed.
openclaw skills install @tobewin/firecrawl-wrapper由 Firecrawl 提供底层技术支持。这是一个简化封装,让不懂技术的用户也能直接用上 Firecrawl 的强大能力。
⚠️ 数据外发提醒:所有搜索关键词、网页 URL、页面内容、操作指令均会被发送至 Firecrawl API(api.firecrawl.dev)进行处理。请勿输入涉及敏感/机密内容的 URL 或关键词。
⚠️ 交互操作风险:interact 功能可以填写表单、点击按钮、登录账号、下载文件。使用前请确认目标网站是你自己的或你有权操作,避免误操作。
⚠️ 爬取整站注意:crawl 功能会批量访问目标网站上的页面,请尊重网站的 robots.txt 和服务条款。大量爬取可能对目标服务器造成负担。
💡 无需任何配置即可使用。Firecrawl 当前有免费额度,开箱即用。 用量超出后可自行订阅 Firecrawl 并配置 API Key。
| 能力 | 用户怎么说 | 做了什么 |
|---|---|---|
| 🔍 搜索 | "搜一下 AI 新闻" | 搜索网络,返回结果列表 |
| 📄 抓取 | "帮我抓一下这个页面" | 获取页面的完整内容(markdown) |
| 🗺️ 发现页面 | "这个网站有哪些页面" | 列出网站上所有链接 |
| 📦 爬取整站 | "把这个网站全部爬下来" | 批量获取整个网站的内容 |
| 🖱️ 交互操作 | "在亚马逊上搜机械键盘" | 打开页面 → 搜索 → 拿结果 |
| 📊 智能提取 | "提取这个页面的表格数据" | AI 自动识别结构化数据 |
每次返回结果末尾都加一句:
──────────────
Powered by Firecrawl 🔥
返回过长内容时(scrape markdown >2000字,crawl >5页): 先总结关键信息,再问 "内容比较长,需要我全部展示吗?要不要我帮你进一步分析?"
每次回答完,主动引导下一步:
要不要我帮你:
- 搜一下相关内容?
- 把这个网站的其他页面也抓下来?
- 针对这些内容做一份总结?
只有当用户明确表达想查找网络信息时才使用。以下情况不触发:用户日常闲聊、询问概念解释、查询本地信息。
scripts/firecrawl_wrapper.py search <query> [条数]
默认 5 条。返回后格式化:
🔍 "关键词" 搜索结果 (3条)
━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. 标题1
📝 简介...
🔗 <url>
2. 标题2
📝 简介...
🔗 <url>
引导: "要不要我打开哪个结果看看详情?"
当用户提供了具体的 URL 并要求获取页面内容时使用。不要主动猜测 URL 去抓取。
scripts/firecrawl_wrapper.py scrape <url>
返回后按长度处理:
2000字 → 展示前1000字 + "...(内容较长,需要全部展示吗?)"
📄 页面标题
━━━━━━━━━━━━━━━━━━━━━━━━━━━
[正文内容]
引导: "要不要我把这个网站的其他内容也爬下来?或者帮你总结一下重点?"
当用户想了解某个已知网站的结构(有哪些子页面/链接)时使用。
scripts/firecrawl_wrapper.py map <url>
🗺️ 共发现 N 个页面
━━━━━━━━━━━━━━━━━━━━━━━━━━━
📄 /page1
📄 /page2
...
引导: "要不要我帮你把感兴趣的内容都抓下来?"
只有当用户明确要求爬取整个网站或批量获取大量页面时才使用。默认上限 50 页,用户可指定更多。
scripts/firecrawl_wrapper.py crawl <url> [max_pages]
默认 50 页,用户可以说 "我要 200 页"。
**如果直接返回了结果:**
📦 爬取完成!共收集 N 个页面 ━━━━━━━━━━━━━━━━━━━━━━━━━━━
**如果返回 job_id(后台运行中):**
爬取任务已启动 🔄 任务ID: xxxxxx 正在后台收集数据,稍等一下...
让我查查进度...
→ 然后等 5 秒调 `scripts/firecrawl_wrapper.py crawl-status <job_id>`,重复直到完成或用户说不等了。
**引导:** "需要我对这些内容做总结、翻译,或者导出成报告吗?"
---
### 5. 交互操作
> ⚠️ **操作风险**:interact 可以填写表单、点击按钮、登录账号、下载文件。**执行前务必先向用户确认**,让用户明白即将在哪个网站上执行什么操作。
当用户要求**在指定网页上执行点击、搜索、填表、登录等操作**时使用。操作前须确认:
1. 用户确实想操作这个网站
2. 用户清楚操作的内容(如搜索关键词、填表内容)
scripts/firecrawl_wrapper.py interact "<操作说明>"
🖱️ 操作结果 ━━━━━━━━━━━━━━━━━━━━━━━━━━━ 在 上执行: "<操作说明>"
[操作结果]
**示例:**
用户:帮我在亚马逊上搜机械键盘 AI:正在打开亚马逊搜索...
🖱️ 操作结果 ━━━━━━━━━━━━━━━━━━━━━━━━━━━ 机械键盘搜索结果已获取,以下是热门商品:
**引导:** "要我对某个商品点进去看详情吗?或者换个关键词重新搜索?"
---
### 6. 智能提取
当用户想**从指定页面中提取结构化数据**(表格、产品列表、联系方式等)时使用。用户须提供 URL 和提取要求。
scripts/firecrawl_wrapper.py extract "<提取要求>"
📊 提取结果 ━━━━━━━━━━━━━━━━━━━━━━━━━━━ 从 中提取: "<提取要求>"
[结构化数据]
**引导:** "需要我把这些数据整理成表格或者保存下来吗?"
---
## API Key 配置(可选)
**免费用户不需要任何配置,直接就能用。**
如果免费额度不够,用户可以:
1. 访问 https://www.firecrawl.dev 注册账号
2. 在 Dashboard 获取 API Key(格式:`fc-...`)
3. 设置环境变量:
```bash
export FIRECRAWL_API_KEY=fc-你的key
AI 的行为:
"免费额度用完了。要不要我教你去申请一个 API Key?几分钟就好。"
错误处理对照表:
| 用户看到 | AI 应该怎么说 |
|---|---|
HTTP 402 | "免费额度用完了。要不要申请 API Key?" |
HTTP 429 | "请求太快了,请稍后再试。" |
Network error | "网络连接失败,请检查网络。" |
| 非法 URL | "请输入正确的网址,以 http:// 或 https:// 开头。" |
本 skill 是 Firecrawl 的简化封装,集成以下 Firecrawl 官方能力:
更多高级功能请参考 Firecrawl 官方文档。