Pular para o conteúdo principal
A raspagem em lote permite raspar várias URLs em uma única tarefa. Passe uma lista de URLs e parâmetros opcionais, e o Firecrawl as processa simultaneamente e retorna todos os resultados de uma só vez.
  • Funciona como /crawl, mas para uma lista explícita de URLs
  • Modos síncrono e assíncrono
  • Suporta todas as opções de raspagem, incluindo extração estruturada
  • Concorrência configurável por tarefa

Como funciona

Você pode executar um scrape em lote de duas formas:

Uso básico

Resposta

Chamar batchScrape / batch_scrape retorna os resultados completos quando o lote é concluído.
Concluído
Chamar startBatchScrape / start_batch_scrape retorna um ID de job que você pode acompanhar via getBatchScrapeStatus / get_batch_scrape_status, o endpoint da API /batch/scrape/{id} ou webhooks. Os resultados do job ficam disponíveis via API por 24 horas após a conclusão. Depois desse período, você ainda pode visualizar o histórico e os resultados dos seus batch scrapes nos activity logs.

Concorrência

Por padrão, uma tarefa de raspagem em lote usa todo o limite de navegadores simultâneos da sua equipe (consulte Rate Limits). Você pode reduzir isso por tarefa com o parâmetro maxConcurrency. Por exemplo, maxConcurrency: 50 limita essa tarefa a 50 raspagens simultâneas. Definir esse valor muito baixo em lotes grandes vai tornar o processamento significativamente mais lento, então só o reduza se você realmente precisar deixar capacidade para outras tarefas em execução simultânea.

Extração estruturada

Você pode usar a coleta em lote para extrair dados estruturados de cada página do lote. Isso é útil quando você quer aplicar o mesmo esquema a uma lista de URLs.

Resposta

batchScrape / batch_scrape retorna resultados completos:
Concluído
startBatchScrape / start_batch_scrape retorna um ID de tarefa:

Webhooks

Você pode configurar webhooks para receber notificações em tempo real conforme cada URL do seu lote é raspada. Isso permite processar os resultados imediatamente, em vez de esperar a conclusão de todo o lote.
cURL

Tipos de evento

Payload

Cada envio de webhook inclui um corpo JSON com a seguinte estrutura:

Verificando assinaturas de webhook

Toda requisição de webhook do Firecrawl inclui o cabeçalho X-Firecrawl-Signature contendo uma assinatura HMAC-SHA256. Sempre verifique essa assinatura para garantir que o webhook é autêntico e não foi adulterado.
  1. Obtenha o segredo do seu webhook na aba Advanced das configurações da sua conta
  2. Extraia a assinatura do cabeçalho X-Firecrawl-Signature
  3. Calcule o HMAC-SHA256 do corpo bruto da requisição usando o seu segredo
  4. Compare com o cabeçalho de assinatura usando uma função segura contra ataques de timing
Nunca processe um webhook sem verificar sua assinatura antes. O cabeçalho X-Firecrawl-Signature contém a assinatura no formato: sha256=abc123def456...
Para exemplos completos de implementação em JavaScript e Python, consulte a documentação de Segurança de Webhooks. Para uma documentação abrangente sobre webhooks, incluindo payloads detalhados de eventos, configuração avançada e solução de problemas, consulte a documentação de Webhooks.
Você é um agente de IA que precisa de uma Firecrawl API key? Consulte firecrawl.dev/agent-onboarding/SKILL.md para obter instruções automatizadas de onboarding.