安装
Python
使用
- 在 firecrawl.dev 获取 API key
- 将该 API key 设置为名为
FIRECRAWL_API_KEY
的环境变量,或在实例化Firecrawl
类时作为参数传入。
Python
抓取单个 URL
scrape
方法。它将该 URL 作为参数并返回抓取到的文档。
Python
爬取网站
crawl
方法。它接收起始 URL 和可选的 options 作为参数。通过 options,你可以为爬取任务指定其他设置,例如爬取的最大页面数、允许的域名,以及输出 formats。有关自动/手动分页与限制,请参见 Pagination。
Python
开始 Crawl
想要非阻塞方式?请查看下方的异步类部分。
start_crawl
启动任务,无需等待。它会返回一个用于检查状态的任务 ID
。需要直到完成才返回的阻塞式等待器时,请使用 crawl
。分页行为与限制见分页。
Python
检查爬取状态
get_crawl_status
方法。该方法接收任务 ID 作为参数,并返回该爬取任务的当前状态。
Python
取消爬取
cancel_crawl
方法。传入由 start_crawl
返回的任务 ID 作为参数,该方法会返回取消结果。
Python
网站映射
map
生成网站的 URL 列表。你可以通过选项自定义映射过程,例如排除子域或利用 sitemap。
Python
使用 WebSockets 爬取网站
start_crawl
启动任务,并使用 watcher
辅助工具订阅。调用 start()
之前,使用任务 ID 创建一个 watcher,并附加处理器(例如:page、completed、failed)。
Python
分页
next
URL。Python SDK 默认会自动分页并汇总所有文档;此时 next
为 None
。你可以禁用自动分页或设置上限。
爬取
crawl
可获得最简便的体验,或者启动一个作业并手动翻页。
简单抓取(自动分页,默认)
- 参见抓取网站中的默认流程。
手动爬取并控制分页(单页)
- 先启动任务,然后将
auto_paginate=False
,按页逐次获取。
Python
手动抓取并设定限制(自动分页 + 提前停止)
- 保持自动分页开启,但可通过
max_pages
、max_results
或max_wait_time
提前停止。
Python
批量抓取
batch_scrape
,或启动任务后手动分页处理。
简单批量爬取(自动分页,默认)
- 参见默认流程:Batch Scrape。
手动批量抓取并控制分页(单页)
- 先启动作业,然后将
auto_paginate=False
,一次获取一页。
Python
受限的手动批量抓取(自动分页 + 提前停止)
- 保持自动分页开启,但可通过
max_pages
、max_results
或max_wait_time
提前停止。
Python
错误处理
异步类
AsyncFirecrawl
类。其方法与 Firecrawl
一致,但不会阻塞主线程。
Python