Firecrawl 网页抓取完全指南4 步把任意网页变成 LLM 可用的数据【免费下载链接】firecrawlThe context API to search, scrape, and interact with the web at scale. 项目地址: https://gitcode.com/GitHub_Trending/fi/firecrawl做 AI 应用第一步经常卡在从网页拿到干净数据用 requests 抓到的是带满标签的原始 HTML碰上 JS 动态渲染的页面更是直接失效。Firecrawl 是一个开源的网页抓取 API你给它一个 URL它返回干净的 Markdown 或结构化 JSON代理轮换、动态渲染、反爬对抗这些脏活都由服务端代劳。痛点拆解为什么抓网页比想象中麻烦自己写爬虫通常要连闯四道关渲染问题很多页面内容靠 JavaScript 在浏览器里生成静态请求只能拿到空壳反爬问题IP 被封后需要维护一套代理池还得处理验证码和频率限制解析问题写 CSS 选择器或正则去切 HTML页面一改版代码就崩清洗问题导航栏、广告、脚本混在正文里喂给大模型既费 token 又降智Firecrawl 的定位就是把这四道工序全部收进一次 API 调用里。它既可以自托管跑在自己的机器上也可以用官方托管服务两条路都能走通。能力速览一个 Firecrawl API 能做什么先花 30 秒过一遍核心能力后面所有场景都建立在这些接口上能力说明Scrape单个 URL 转 Markdown、HTML、截图或结构化 JSONCrawl / Map一次请求抓完整站页面或瞬间列出网站全部 URLSearch搜索网络并直接返回结果页的完整正文而不只是一串链接结构化提取按你定义的 JSON Schema 抽字段由 AI 负责填值Actions提取前先执行点击、滚动、输入、等待等操作应对需要交互的页面Search 接口的典型用法传入查询词每个结果同时带回 Markdown 正文和结构化数据省掉搜索→逐个抓→再清洗的链路。最短路径跑通装 SDK、填密钥、发出第一次抓取整个初始化只要三步第一步装 SDK。Python 用户执行pip install firecrawl-pyJavaScript 用户执行npm install mendable/firecrawl-js。第二步拿密钥。到 Firecrawl 官网注册获取 API Key有免费额度写入环境变量FIRECRAWL_API_KEY。第三步发出第一个请求import { FirecrawlApp } from mendable/firecrawl-js; const app new FirecrawlApp({ apiKey: process.env.FIRECRAWL_API_KEY }); const result await app.scrapeUrl(https://example.com);跑通后你拿到的是一段干净 Markdown——没有导航栏、没有脚本标题层级和表格都保留着。写代码之前也可以先用官网的 Playground 在线试跑确认输出满意再落进项目。场景一用数据模型锁定列表页一次抽全字段适合谁需要每天归档列表页数据的人比如把 Hacker News 首页存下来做分析。传统做法是写选择器解析 HTML页面改版一次代码就废。换个思路不描述怎么解析只描述我要什么。用 Pydantic 定义数据结构class NewsItem(BaseModel): title: str rank: str upvotes: str然后把模型对应的 JSON Schema 和formats: [extract]一起传给scrape_urlFirecrawl 的 AI 会照着模型把每条新闻的标题、排名、点赞数逐个填好。仓库里自带完整可运行的示例examples/hacker_news_scraper/执行后一条命令就能得到 30 条完整新闻自动写入带时间戳的 JSON 文件。以后页面怎么改版你只需改模型不用动解析逻辑。场景二一句自然语言做研究AI 自动翻遍相关网页适合谁一次抓取只能看一页但真实任务常常要跨页面收集信息——比如帮我找某城市 2000 美元以下的一居室。Firecrawl 的deep_research能力可以处理这类任务你给一句自然语言查询它自动完成搜索、跟链接、筛选、再抓下一批页面循环多轮。整个调用只需要三个参数maxDepth迭代轮数示例里设为 3timeLimit总时长上限示例设为 180 秒maxUrls最多分析的 URL 数示例设为 20注册一个on_activity回调后每一步动作都会实时打印在终端过程完全透明。输入城市、预算、卧室数和设施偏好几分钟后得到的不是链接堆而是逐条列好价格、位置、设施、优缺点的候选清单最后再交给大模型排序推荐即可。参考实现examples/deep-research-apartment-finder/。同一个套路还能用在市场调研当你只知道公司名、不知道该翻哪些页面时可以先用搜索引擎搜出目标公司的一批结果让大模型从结果里挑出最有价值的 URL只输出一个 JSON 列表最后把选中的 URL 连同提示词一起发给/v1/extract接口批量抽字段。几十秒就能拿到主营业务、规模、联系方式等结构化公司档案。参考实现examples/gemini-2.5-web-extractor/。场景三定时抓取搭一条价格监控流水线适合谁需要长期盯某个数字价格、库存、评分的人。手动刷新太累而价格数据正好是定时 抓取最典型的应用。套路可以照抄写一个脚本每隔固定时间抓取商品页、提取当前价格、追加到数据库或 JSON 文件再套一层 Web 界面展示历史曲线。仓库里的 Amazon 价格跟踪示例 就是按这个结构搭的每天自动落盘一条价格记录界面上画出趋势图跌破阈值还能触发通知。调度不用自己维护。把脚本挂到 GitHub Actions 的 cron 上即可仓库里专门有一篇定时抓取教程讲完整流程examples/blog-articles/scheduling_scrapers/。避坑与调优常见问题解答输出格式怎么选formats参数可以组合markdown、html、json、screenshot任意几种。只喂大模型时用 markdown 最省 token需要留存证据链就同时加 screenshot。怎么控制抓取范围Crawl 支持limitURL 数量上限和includePaths/excludePaths路径白名单与黑名单。抓整站前先小批量试跑确认范围符合预期再放大。字段抽错了怎么办把 Schema 里字段的description写得更具体AI 提取的准确率会明显提升——描述是模型理解字段语义的主要依据。被反爬挡住了不用自己处理代理轮换和反爬对抗是 Firecrawl 内置能力这正是它替代手写 requests 的核心价值。想自托管仓库根目录自带 docker-compose.yaml克隆仓库后启动即可在本地起一套完整服务API、worker、Redis、Playwright 全含在内git clone https://gitcode.com/GitHub_Trending/fi/firecrawl cd firecrawl docker compose up适合数据不能出内网、或想直接改源码的用户。更多部署细节可看 SELF_HOST.md。写在最后Firecrawl 做的事情一句话就能概括把从网页到可用数据这段最琐碎的路压缩成一次 API 调用。装好 SDK、填上密钥、发出第一个请求很快就能看到干净的 Markdown 输出。完整功能说明见 README.md更多场景内部链接 SEO 分析、监控告警等都可以直接翻 examples/ 目录照着改。【免费下载链接】firecrawlThe context API to search, scrape, and interact with the web at scale. 项目地址: https://gitcode.com/GitHub_Trending/fi/firecrawl创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考