概要
主要な改善点
-
デフォルトで高速化: リクエストは
maxAge
がデフォルトで2日としてキャッシュされ、blockAds
、skipTlsVerification
、removeBase64Images
といった妥当なデフォルト設定が有効です。 -
新しいサマリーフォーマット: フォーマットに
"summary"
を指定すると、ページ内容の簡潔な要約を直接受け取れます。 -
JSON 抽出の更新: JSON 抽出と変更トラッキングは、オブジェクト形式
{ type: "json", prompt, schema }
を使用するようになりました。従来の"extract"
フォーマットは"json"
に名称変更されました。 -
スクリーンショットオプションの強化: オブジェクト形式
{ type: "screenshot", fullPage, quality, viewport }
を使用します。 -
新しい検索ソース:
sources
パラメータを設定することで、Web 結果に加えて"news"
と"images"
も横断検索できます。 -
プロンプトによるスマートクロール: 自然言語の
prompt
をクロールに渡すと、システムがパスや制限を自動的に導出します。ジョブ開始前に導出されたオプションを確認するには、新しい /crawl/params-preview エンドポイントを使用してください。
クイック移行チェックリスト
- v1 クライアントの使用箇所を v2 クライアントに置き換える:
- JS:
const firecrawl = new Firecrawl({ apiKey: 'fc-YOUR-API-KEY' })
- Python:
firecrawl = Firecrawl(api_key='fc-YOUR-API-KEY')
- API: 新しい
https://api.firecrawl.dev/v2/
エンドポイントを使用
- JS:
- フォーマットを更新:
- 必要に応じて
"summary"
を使用 - JSONモード: JSON 抽出には
{ type: "json", prompt, schema }
を使用 - Screenshot および Screenshot@fullPage: オプション指定時は screenshot オブジェクトのフォーマットを使用
- 必要に応じて
- SDK の標準化された非同期フローを採用:
- クロール:
startCrawl
+getCrawlStatus
(またはcrawl
ウェイター) - バッチ:
startBatchScrape
+getBatchScrapeStatus
(またはbatchScrape
ウェイター) - 抽出:
startExtract
+getExtractStatus
(またはextract
ウェイター)
- クロール:
- クロールオプションのマッピング(下記参照)
/crawl/params-preview
でクロールのprompt
を確認
SDK サーフェス(v2)
JS/TS
メソッド名の変更(v1 → v2)
v1 (FirecrawlApp) | v2 (Firecrawl) |
---|---|
scrapeUrl(url, ...) | scrape(url, options?) |
search(query, ...) | search(query, options?) |
mapUrl(url, ...) | map(url, options?) |
v1 | v2 |
---|---|
crawlUrl(url, ...) | crawl(url, options?) (waiter) |
asyncCrawlUrl(url, ...) | startCrawl(url, options?) |
checkCrawlStatus(id, ...) | getCrawlStatus(id) |
cancelCrawl(id) | cancelCrawl(id) |
checkCrawlErrors(id) | getCrawlErrors(id) |
v1 | v2 |
---|---|
batchScrapeUrls(urls, ...) | batchScrape(urls, opts?) (waiter) |
asyncBatchScrapeUrls(urls, ...) | startBatchScrape(urls, opts?) |
checkBatchScrapeStatus(id, ...) | getBatchScrapeStatus(id) |
checkBatchScrapeErrors(id) | getBatchScrapeErrors(id) |
v1 | v2 |
---|---|
extract(urls?, params?) | extract(args) |
asyncExtract(urls, params?) | startExtract(args) |
getExtractStatus(id) | getExtractStatus(id) |
v1 | v2 |
---|---|
generateLLMsText(...) | (v2 SDK にはありません) |
checkGenerateLLMsTextStatus(id) | (v2 SDK にはありません) |
crawlUrlAndWatch(...) | watcher(jobId, ...) |
batchScrapeUrlsAndWatch(...) | watcher(jobId, ...) |
Python(同期)
メソッド名の変更(v1 → v2)
v1 | v2 |
---|---|
scrape_url(...) | scrape(...) |
search(...) | search(...) |
map_url(...) | map(...) |
v1 | v2 |
---|---|
crawl_url(...) | crawl(...) (waiter) |
async_crawl_url(...) | start_crawl(...) |
check_crawl_status(...) | get_crawl_status(...) |
cancel_crawl(...) | cancel_crawl(...) |
v1 | v2 |
---|---|
batch_scrape_urls(...) | batch_scrape(...) (waiter) |
async_batch_scrape_urls(...) | start_batch_scrape(...) |
get_batch_scrape_status(...) | get_batch_scrape_status(...) |
get_batch_scrape_errors(...) | get_batch_scrape_errors(...) |
v1 | v2 |
---|---|
extract(...) | extract(...) |
start_extract(...) | start_extract(...) |
get_extract_status(...) | get_extract_status(...) |
v1 | v2 |
---|---|
generate_llms_text(...) | (v2 SDK では未対応) |
get_generate_llms_text_status(...) | (v2 SDK では未対応) |
watch_crawl(...) | watcher(job_id, ...) |
Python(非同期)
AsyncFirecrawl
は同じメソッドを備えており(すべて await 可能)、そのまま利用できます。
フォーマットとスクレイプオプション
- 基本的な用途には文字列フォーマットを使用:
"markdown"
,"html"
,"rawHtml"
,"links"
,"summary"
。 parsePDF
の代わりにparsers: [ { "type": "pdf" } | "pdf" ]
を使用。- JSON、変更トラッキング、スクリーンショットにはオブジェクトフォーマットを使用:
JSONフォーマット
スクリーンショットフォーマット
クロールオプションの対応表(v1 → v2)
v1 | v2 |
---|---|
allowBackwardCrawling | (削除)crawlEntireDomain を使用 |
maxDepth | (削除)maxDiscoveryDepth を使用 |
ignoreSitemap (bool) | sitemap (例:「only」「skip」「include」) |
(なし) | prompt |