Skip to main content

Instalação

Para instalar o SDK do Firecrawl para Node, você pode usar o npm:
Node.js

Uso

  1. Obtenha uma chave de API em firecrawl.dev
  2. Defina a chave de API como uma variável de ambiente chamada FIRECRAWL_API_KEY ou passe-a como parâmetro para a classe FirecrawlApp.
Veja um exemplo de como usar o SDK com tratamento de erros:
Node

Extraindo dados de uma URL

Para extrair dados de uma única URL com tratamento de erros, use o método scrapeUrl. Ele recebe a URL como parâmetro e retorna os dados coletados como um dicionário.
Node

Rastreamento de um site

Para rastrear um site com tratamento de erros, use o método crawlUrl. Ele recebe a URL inicial e parâmetros opcionais como argumentos. O parâmetro params permite especificar opções adicionais para a tarefa de rastreamento, como o número máximo de páginas a rastrear, domínios permitidos e o formato de saída. Veja Pagination para paginação automática/manual e limites.
Node

Rastreamento Somente do Sitemap

Use sitemap: "only" para rastrear apenas URLs do sitemap (a URL inicial sempre é incluída e a descoberta de links em HTML é ignorada).
Node

Iniciar um Crawl

Inicie um job sem esperar usando startCrawl. Ele retorna um ID de job que você pode usar para verificar o status. Use crawl quando quiser um “waiter” que bloqueia até a conclusão. Veja Paginação para comportamento e limites de paginação.
Node

Verificando o status do rastreamento

Para verificar o status de um trabalho de rastreamento com tratamento de erros, use o método checkCrawlStatus. Ele recebe o ID como parâmetro e retorna o status atual do trabalho de rastreamento.
Node

Cancelando um Crawl

Para cancelar um job de crawl, use o método cancelCrawl. Ele recebe o ID do job retornado por startCrawl como parâmetro e retorna o status do cancelamento.
Node.js

Mapeando um site

Para mapear um site com tratamento de erros, use o método mapUrl. Ele recebe a URL inicial como parâmetro e retorna os dados mapeados como um dicionário.
Node.js

Rastreando um site com WebSockets

Para rastrear um site com WebSockets, use o método crawlUrlAndWatch. Ele recebe a URL inicial e parâmetros opcionais como argumentos. O parâmetro params permite especificar opções adicionais para a tarefa de rastreamento, como o número máximo de páginas a rastrear, os domínios permitidos e o formato de saída.
Node
Os endpoints do Firecrawl para crawl e batch retornam uma URL next quando há mais dados disponíveis. O SDK de Node faz paginação automática por padrão e agrega todos os documentos; nesse caso, next será null. Você pode desativar a paginação automática ou definir limites.

Rastreamento

Use o método waiter crawl para a experiência mais simples, ou inicie um job e faça a paginação manualmente.
Rastreamento simples (paginação automática, padrão)
Rastreamento manual com controle de paginação (página única)
  • Inicie um job e, em seguida, recupere uma página por vez com autoPaginate: false.
Node
Rastreamento manual com limites (paginação automática + parada antecipada)
  • Mantenha a paginação automática ativada, mas interrompa antecipadamente com maxPages, maxResults ou maxWaitTime.
Node

Coleta em lote

Use o método waiter batchScrape ou inicie uma tarefa e pagine manualmente.
Raspagem em lote simples (paginação automática, padrão)
Coleta manual em lote com controle de paginação (página única)
  • Inicie um job e, em seguida, recupere uma página por vez com autoPaginate: false.
Node
Coleta manual em lote com limites (paginação automática + parada antecipada)
  • Mantenha a paginação automática ligada, mas interrompa antes com maxPages, maxResults ou maxWaitTime.
Node

Browser

Inicie sessões de navegador na nuvem e execute código remotamente.

Criar sessão

Node

Executar código

Node
Execute JavaScript em vez de Python:
Node
Execute bash com o agent-browser:
Node

Perfis

Salve e reutilize o estado do navegador (cookies, localStorage, etc.) entre sessões:
Node

Conectar via CDP

Para controle completo do Playwright, conecte-se diretamente usando a URL do CDP:
Node

Listar e Encerrar Sessões

Node

Tratamento de erros

O SDK trata os erros retornados pela API do Firecrawl e lança as exceções apropriadas. Se ocorrer um erro durante uma solicitação, uma exceção será lançada com uma mensagem descritiva. Os exemplos acima mostram como lidar com esses erros usando blocos try/catch.