/extract
エンドポイントは、任意の数のURLやドメイン全体から構造化データを収集する作業を簡略化します。URLのリストを、必要に応じてワイルドカード(例: example.com/*
)とともに用意し、取得したい情報を記述するプロンプトまたはスキーマを指定してください。Firecrawl がクロール、解析、統合の処理を担い、小規模から大規模までのデータセットに対応します。
/extract は他のエンドポイントとは課金方法が異なります。詳細は Extract pricing を参照してください。
/extract
の使用
- 単一ページ
例:https://firecrawl.dev/some-page
- 複数ページ/ドメイン全体
例:https://firecrawl.dev/*
/*
を使用すると、Firecrawl はそのドメイン内で検出可能なすべてのURLを自動的にクロールして解析し、指定のデータを抽出します。この機能は実験的です。問題が発生した場合は help@firecrawl.com までご連絡ください。
使用例
- urls: 1つ以上のURLを含む配列。広範なクロールのためにワイルドカード(
/*
)に対応。 - prompt(スキーマがない場合のみ任意): 取得したいデータ、またはそのデータの構造化方法を記述する自然言語のプロンプト。
- schema(プロンプトがない場合のみ任意): すでにJSONのレイアウトが分かっている場合に用いる、より厳密な構造定義。
- enableWebSearch(任意):
true
の場合、指定ドメイン外のリンクもたどって抽出を実行。
レスポンス(SDK)
JSON
ジョブのステータスと完了
- ジョブ ステータスの取得: /extract/ エンドポイントにリクエストを送り、ジョブが実行中か完了済みかを確認します。
- 結果を待つ: デフォルトの
extract
メソッド(Python/Node)を使う場合、SDK が完了まで待機して最終結果を返します。 - 開始してポーリング: スタート メソッド(
start_extract
(Python)またはstartExtract
(Node))を使う場合、SDK はすぐにジョブ ID を返します。進行状況の確認にはget_extract_status
(Python)またはgetExtractStatus
(Node)を使用します。
このエンドポイントは、進行中または最近完了した(24 時間以内の)ジョブにのみ有効です。
取りうる状態
- completed: 抽出が正常に完了しました。
- processing: Firecrawl がリクエストを処理中です。
- failed: エラーが発生し、データを完全に抽出できませんでした。
- cancelled: ユーザーによってジョブがキャンセルされました。
処理待ちの例
JSON
完成例
JSON
スキーマなしでの抽出
prompt
を渡すだけで構いません。基盤のモデルが適切な構造を自動で選択するため、探索的または柔軟なリクエストに適しています。
JSON
Web検索で結果を向上させる
enableWebSearch = true
を設定すると、指定したURLの範囲を超えてクロールが拡張されます。これにより、リンク先のページから補助的・関連情報を取得できます。
以下は、ドライブレコーダー(ダッシュカム)に関する情報を抽出し、関連ページのデータで結果を補強する例です:
ウェブ検索を使った応答例
JSON
URL なしでの抽出
/extract
エンドポイントは、特定の URL を指定せずに、プロンプトを使って構造化データを抽出できるようになりました。リサーチや正確な URL が分からない場合に便利です。現在はアルファ版です。
既知の制限事項(ベータ)
-
大規模サイトのカバレッジ
巨大なサイト(例:「Amazonの全商品」)を単一のリクエストで完全にカバーすることは、まだサポートしていません。 -
複雑な論理クエリ
「2025年の投稿をすべて見つけて」のようなリクエストは、期待するデータを確実にすべて返せない場合があります。より高度なクエリ機能を開発中です。 -
稀に発生する不一致
特に非常に大規模または動的なサイトでは、実行ごとに結果が異なることがあります。通常は主要な情報を捉えますが、多少のばらつきが生じる可能性があります。 -
ベータ版の状態
/extract
はまだベータ版のため、機能やパフォーマンスは今後も進化します。改善のためのバグ報告やフィードバックをお待ちしています。
FIRE-1 の使用
/extract
エンドポイントで FIRE-1 エージェントを活用できます。
例(cURL):
FIRE-1 はすでに稼働しており、プレビュー版として利用可能です。