Skip to main content

バッチスクレイピング

単一のバッチジョブで複数のURLをスクレイピングする
2 min read

バッチスクレイピングでは、1つのジョブで複数のURLをスクレイピングできます。URLのリストと任意のパラメータを渡すと、Firecrawl がそれらを並行して処理し、すべての結果をまとめて返します。

  • 明示的に指定したURLのリストを対象とする点を除き、/crawl と同様に動作します
  • 同期モードと非同期モードに対応
  • 構造化抽出を含む、すべてのスクレイピングオプションをサポート
  • ジョブごとに同時実行数を設定可能

オペレーション#

タスクAPIリファレンスSDKでの呼び方
バッチを開始batch-scrapebatchScrape / batch_scrape, startBatchScrape / start_batch_scrape
ステータスと結果を確認batch-scrape-getgetBatchScrapeStatus / get_batch_scrape_status
実行中のバッチをキャンセルbatch-scrape-deleteIDを指定してバッチジョブをキャンセルまたは削除
Errorsを確認batch-scrape-get-errors失敗したURL向けのエラー/ステータス確認ヘルパー

仕組み#

バッチスクレイプは、次の2つの方法で実行できます。

モードSDK メソッド (JS / Python)動作
同期batchScrape / batch_scrapeバッチを開始し、完了まで待機して、すべての結果を返します
非同期startBatchScrape / start_batch_scrapeバッチを開始し、ポーリングまたは Webhook 用のジョブ ID を返します

基本的な使い方#

レスポンス#

batchScrape / batch_scrape を呼び出すと、バッチ完了時に完全な結果が返されます。

完了

startBatchScrape / start_batch_scrape を呼び出すと、getBatchScrapeStatus / get_batch_scrape_status、API エンドポイント /batch/scrape/{id}、または Webhook を使って追跡できるジョブ ID が返されます。ジョブの結果は、完了後 24 時間まで API 経由で取得できます。この期間を過ぎても、activity logs からバッチスクレイプの履歴と結果を確認できます。

並行実行数#

デフォルトでは、バッチスクレイプジョブはチームのブラウザ同時実行数の上限をフルに使用します (Rate Limits を参照) 。maxConcurrency パラメータでジョブごとにこの上限を下げることができます。

たとえば、maxConcurrency: 50 とすると、そのジョブは同時に 50 件までしかスクレイプを実行しません。大規模なバッチでこの値を低くしすぎると処理が大幅に遅くなるため、他のジョブ用に同時実行枠を残す必要がある場合にのみ減らしてください。

構造化抽出#

バッチスクレイプを使用して、バッチ内のすべてのページから構造化データを抽出できます。これは、URLのリストに同じスキーマを適用したい場合に便利です。

レスポンス#

batchScrape / batch_scrape は完全な結果を返します:

完了

startBatchScrape / start_batch_scrape はジョブ ID を返します:

Webhooks#

バッチ内の各 URL がスクレイプされるたびにリアルタイムで通知を受け取れるよう、webhook を設定できます。これにより、バッチ全体の完了を待たずに結果を即時に処理できます。

cURL

イベントの種類#

イベント説明
batch_scrape.startedバッチスクレイプジョブが開始されました
batch_scrape.page1件のURLのスクレイプに成功しました
batch_scrape.completedすべてのURLの処理が完了しました
batch_scrape.failedバッチスクレイプジョブでエラーが発生しました

ペイロード#

各Webhook配信には、次の構造のJSONボディが含まれます:

Webhook シグネチャの検証#

Firecrawl から送信されるすべての webhook リクエストには、HMAC-SHA256 シグネチャを含む X-Firecrawl-Signature ヘッダーが含まれます。Webhook が正当なものであり、改ざんされていないことを確認するために、必ずこのシグネチャを検証してください。

  1. アカウント設定の Advanced タブ から webhook secret を取得する
  2. X-Firecrawl-Signature ヘッダーからシグネチャを取り出す
  3. secret を使って、生のリクエストボディに対して HMAC-SHA256 を計算する
  4. タイミング攻撃耐性のある (タイミングセーフな) 関数を用いて、計算結果とシグネチャヘッダーを比較する
Warning

シグネチャを事前に検証せずに webhook を処理しないでください。X-Firecrawl-Signature ヘッダーには、sha256=abc123def456... という形式でシグネチャが含まれています。

JavaScript と Python による実装の完全な例については、Webhook セキュリティのドキュメント を参照してください。

詳細なイベントペイロード、高度な設定、トラブルシューティングなどを含む webhook の包括的なドキュメントについては、Webhooks ドキュメント を参照してください。

Firecrawl API key が必要な AI agent の方は、自動オンボーディング手順について firecrawl.dev/agent-onboarding/SKILL.md を参照してください。