关于 firecrawl-scraping
使用 Firecrawl 抓取网页并将内容转换为适合大模型处理的格式的技能,适用于网络研究。它既支持单页抓取,也支持多页网站爬取。
主要功能
- 01将网页转换为简洁的 Markdown
- 02选择 Markdown、HTML、摘要、截图或链接
- 03渲染由 JavaScript 驱动的页面
- 04选择 basic、stealth 或 auto 代理模式
适用场景
- 01收集文章内容用于研究
- 02爬取网站的多个页面
- 03整理网页内容以供分析或编写文档
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ casper-studios/ casper-marketplace --skill firecrawl-scraping安装后在 Claude Code 中输入/firecrawl-scraping确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/single-page.mdwebsite-crawler.mdscripts/firecrawl_scrape.py详细介绍
Firecrawl 网页抓取
概述
抓取单个网页,并将其转换为整洁、适合大模型处理的 Markdown。支持 JavaScript 渲染、反爬保护和动态内容。
快速决策树
What are you scraping?
│
├── Single page (article, blog, docs)
│ └── references/single-page.md
│ └── Script: scripts/firecrawl_scrape.py
│
└── Entire website (multiple pages, crawling)
└── references/website-crawler.md
└── (Use Apify Website Content Crawler for multi-page)
环境配置
# Required in .env
FIRECRAWL_API_KEY=fc-your-api-key-here
获取 API 密钥:https://firecrawl.dev/app/api-keys
常见用法
简单抓取
python scripts/firecrawl_scrape.py "https://example.com/article"
使用选项
python scripts/firecrawl_scrape.py "https://wsj.com/article" \
--proxy stealth \
--format markdown summary \
--timeout 60000
代理模式
| 模式 | 使用场景 |
|---|---|
basic | 普通网站,速度最快 |
stealth | 反爬保护、付费内容(WSJ、NYT) |
auto | 由 Firecrawl 决定(推荐) |
输出格式
markdown- 整洁的 Markdown 内容(默认)html- 原始 HTMLsummary- AI 生成的摘要screenshot- 网页截图links- 网页上的所有链接
费用
每页约 1 个点数。隐身代理可能会消耗额外点数。
安全注意事项
凭据处理
- 将
FIRECRAWL_API_KEY存储在.env文件中(切勿提交到 git) - 可在 https://firecrawl.dev/app/api-keys 重新生成 API 密钥
- 切勿在脚本输出中记录或打印 API 密钥
- 使用环境变量,不要将值硬编码
数据隐私
- 仅抓取可公开访问的网页
- 抓取的内容会由 Firecrawl 服务暂时处理
- Markdown 输出存储在本地
.tmp/目录中 - 截图(如有请求)存储在本地
- 请求完成后,Firecrawl 不会持久保留数据
访问范围
- API 密钥可完整访问抓取功能
- 不提供细粒度权限范围
- 通过 Firecrawl 控制面板监控用量
合规注意事项
- Robots.txt:Firecrawl 默认遵守 robots.txt
- 仅限公开内容:仅抓取可公开访问的页面
- 服务条款:遵守目标网站的 ToS
- 速率限制:内置速率限制可防止滥用
- 隐身代理:仅在必要时使用隐身模式(付费新闻内容,不用于绕过身份验证)
- GDPR:抓取的内容可能包含 PII,请妥善处理
- 版权:尊重抓取内容的知识产权
故障排除
常见问题
问题:点数用尽
症状: API 返回“insufficient credits”或超出配额错误
原因: 账户点数已耗尽
解决方案:
- 在 https://firecrawl.dev/app 查看点数余额
- 升级套餐或购买额外点数
- 降低抓取频率
- 使用
basic代理模式以节省点数
问题:网页未正确渲染
症状: 返回空内容或不完整的 HTML
原因: 含大量 JavaScript 的网页未完全加载
解决方案:
- 使用
--js-render标志启用 JavaScript 渲染 - 使用
--timeout 60000增加超时时间(60 秒) - 对受保护的网站尝试使用
stealth代理模式 - 使用
--wait-for选择器等待特定元素
问题:403 Forbidden 错误
症状: 脚本返回 403 状态码
原因: 网站阻止自动访问
解决方案:
- 启用
stealth代理模式 - 在请求之间添加延迟
- 尝试在不同时间访问(某些网站会按时间段进行速率限制)
- 检查网站是否需要登录(不支持)
问题:Markdown 输出为空
症状: 抓取成功,但 Markdown 为空或格式错误
原因: 动态内容在页面加载后才载入,或页面结构特殊
解决方案:
- 增加等待时间,让 JavaScript 执行
- 使用
--wait-for等待特定内容 - 尝试使用
html格式查看原始内容 - 检查内容是否位于 iframe 中(不一定支持)
问题:超时错误
症状: 请求在完成前超时
原因: 网页加载缓慢或页面内容过大
解决方案:
- 增加超时值(最多 120000ms)
- 使用
basic代理以获得更快响应 - 尽可能指定要抓取的特定网页区域
- 检查网站是否遇到问题
资源
- references/single-page.md - 单页抓取详情
- references/website-crawler.md - 多页网站爬取
集成模式
抓取并分析
技能: firecrawl-scraping → parallel-research 用例: 抓取竞争对手页面,然后分析内容策略 流程:
- 使用 Firecrawl 抓取竞争对手网站页面
- 转换为整洁的 Markdown
- 使用 parallel-research 分析定位、信息传达和功能
抓取并编写文档
技能: firecrawl-scraping → content-generation 用例: 根据网络调研创建摘要文档 流程:
- 抓取有关某个主题的多个文章页面
- 合并 Markdown 内容
- 通过 content-generation 生成摘要文档
抓取并完善 CRM
技能: firecrawl-scraping → attio-crm 用例: 使用网站数据完善公司记录 流程:
- 抓取公司网站(关于页面、团队页面、产品页面)
- 提取关键信息(融资情况、团队规模、产品)
- 使用补充后的数据更新 Attio CRM 中的公司记录
评论
支持 Markdown