- Cuida das complexidades: proxies, cache, limites de taxa, conteúdo bloqueado por JS
- Lida com conteúdo dinâmico: sites dinâmicos, páginas renderizadas em JS, PDFs, imagens
- Gera markdown limpo, dados estruturados, capturas de tela ou HTML.
Extraindo dados de uma URL com o Firecrawl
endpoint /scrape
Instalação
Uso
Resposta
Formatos de Scrape
- Markdown (
markdown
) - Resumo (
summary
) - HTML (
html
) - HTML bruto (
rawHtml
) (sem modificações) - Captura de tela (
screenshot
, com opções comofullPage
,quality
,viewport
) - Links (
links
) - JSON (
json
) - saída estruturada
Extraia dados estruturados
endpoint /scrape (com json)
JSON
Extraindo sem esquema
prompt
para o endpoint. O LLM escolhe a estrutura dos dados.
JSON
Opções do formato JSON
json
, passe um objeto dentro de formats
com os seguintes parâmetros:
schema
: JSON Schema para a saída estruturada.prompt
: Prompt opcional para orientar a extração quando houver um schema ou quando você preferir uma orientação leve.
Interagindo com a página com ações
wait
antes/depois de executar outras ações para dar tempo suficiente para a página carregar.
Exemplo
Saída
Localização e idioma
Como funciona
Uso
location
no corpo da sua requisição com as seguintes propriedades:
country
: Código de país ISO 3166-1 alpha-2 (por exemplo, ‘US’, ‘AU’, ‘DE’, ‘JP’). O padrão é ‘US’.languages
: Uma lista (array) de idiomas e localidades preferidos para a requisição, em ordem de prioridade. O padrão é o idioma da localização especificada.
Cache e maxAge
- Janela de frescor padrão:
maxAge = 172800000
ms (2 dias). Se a página em cache for mais recente do que isso, ela é retornada instantaneamente; caso contrário, a página é coletada novamente e então armazenada em cache. - Desempenho: Pode acelerar as coletas em até 5x quando os dados não precisam estar ultra recentes.
- Sempre buscar conteúdo novo: Defina
maxAge
como0
. - Evitar armazenamento: Defina
storeInCache
comofalse
se você não quiser que o Firecrawl armazene em cache os resultados desta requisição.
Scraping em lote de várias URLs
Como funciona
/crawl
. Ele cria um job de raspagem em lote e retorna um ID do job para você acompanhar o status da raspagem em lote.
O SDK oferece 2 métodos: síncrono e assíncrono. O método síncrono retorna os resultados do job de raspagem em lote, enquanto o método assíncrono retorna um ID do job que você pode usar para verificar o status da raspagem em lote.
Como usar
Resposta
Sincronamente
Concluído
Assíncrono
/batch/scrape/{id}
. Este endpoint deve ser usado enquanto a tarefa ainda estiver em execução ou logo após sua conclusão, pois as tarefas de batch scrape expiram após 24 horas.