Raspagem básica com o Firecrawl
/scrape
.
Extração de PDFs
parsers
(por exemplo, parsers: ["pdf"]
) quando quiser garantir a extração de PDFs.
Opções de scraping
Formatos (formats
)
- Tipo:
array
- Strings:
["markdown", "links", "html", "rawHtml", "summary"]
- Formatos de objeto:
- JSON:
{ type: "json", prompt, schema }
- Captura de tela:
{ type: "screenshot", fullPage?, quality?, viewport? }
- Rastreamento de alterações:
{ type: "changeTracking", modes?, prompt?, schema?, tag? }
(requermarkdown
)
- JSON:
- Padrão:
["markdown"]
Conteúdo da página inteira vs conteúdo principal (onlyMainContent
)
- Type:
boolean
- Description: Por padrão, o scraper retorna apenas o conteúdo principal. Defina como
false
para retornar o conteúdo da página inteira. - Default:
true
- Tipo:
array
- Descrição: Tags/classes/IDs HTML a serem incluídas na extração.
- Tipo:
array
- Descrição: Tags/classes/IDs HTML a serem excluídos da extração.
Aguardar a página ficar pronta (waitFor
)
- Tipo:
integer
- Descrição: Milissegundos para esperar antes de fazer o scraping (use com moderação).
- Padrão:
0
Atualidade e cache (maxAge
)
- Tipo:
integer
(milissegundos) - Descrição: Se houver uma versão em cache da página mais recente do que
maxAge
, o Firecrawl a retorna imediatamente; caso contrário, faz uma nova raspagem e atualiza o cache. Defina0
para sempre buscar conteúdo novo. - Padrão:
172800000
(2 dias)
Tempo de requisição (timeout
)
- Tipo:
integer
- Descrição: Duração máxima, em milissegundos, antes de abortar.
- Padrão:
30000
(30 segundos)
Processamento de PDF (parsers
)
- Tipo:
array
- Descrição: Controla o comportamento de processamento. Para processar PDFs, defina
parsers: ["pdf"]
.
Ações (actions
)
- Tipo:
array
- Descrição: Sequência de etapas do navegador a serem executadas antes da extração.
- Ações compatíveis:
wait
{ milliseconds }
click
{ selector }
write
{ selector, text }
press
{ key }
scroll
{ direction: "up" | "down" }
scrape
{ selector }
(extrair um subelemento)executeJavascript
{ script }
pdf
(aciona a renderização em PDF em alguns fluxos)
Exemplo de uso
cURL
- Retornar o conteúdo completo da página em markdown.
- Incluir o markdown, o HTML bruto, o HTML, os links e uma captura de tela na resposta.
- Incluir apenas as tags HTML
<h1>
,<p>
,<a>
e elementos com a classe.main-content
, excluindo quaisquer elementos com os IDs#ad
e#footer
. - Aguardar 1000 milissegundos (1 segundo) antes de iniciar o scraping para permitir o carregamento da página.
- Definir a duração máxima da solicitação de scraping em 15000 milissegundos (15 segundos).
- Analisar PDFs explicitamente via
parsers: ["pdf"]
.
Extração em JSON via formatos
formats
para extrair dados estruturados de uma só vez:
Endpoint /extract
Rastreando várias páginas
/v2/crawl
.
cURL
Verificar job de rastreamento
cURL
Paginação/Próxima URL
next
, uma URL para a próxima página de resultados.
Prévia do prompt e dos parâmetros de crawl
prompt
em linguagem natural para o Firecrawl deduzir as configurações de crawl. Veja a prévia delas primeiro:
cURL
Opções do crawler
/v2/crawl
, você pode personalizar o comportamento do rastreamento com:
includePaths
- Tipo:
array
- Descrição: Padrões de regex a incluir.
- Exemplo:
["^/blog/.*$", "^/docs/.*$"]
excludePaths
- Tipo:
array
- Descrição: Padrões de regex a serem excluídos.
- Exemplo:
["^/admin/.*$", "^/private/.*$"]
maxDiscoveryDepth
- Tipo:
integer
- Descrição: Profundidade máxima de descoberta para encontrar novas URLs.
limit
- Type:
integer
- Description: Número máximo de páginas a rastrear.
- Default:
10000
crawlEntireDomain
- Tipo:
boolean
- Descrição: Explora por páginas relacionadas (irmãs/pais) para cobrir todo o domínio.
- Padrão:
false
allowExternalLinks
- Tipo:
boolean
- Descrição: Segue links para domínios externos.
- Padrão:
false
allowSubdomains
- Tipo:
boolean
- Descrição: Segue subdomínios do domínio principal.
- Padrão:
false
delay
- Tipo:
number
- Descrição: Atraso, em segundos, entre as extrações.
- Padrão:
undefined
scrapeOptions
- Tipo:
object
- Descrição: Opções para o scraper (veja Formatos acima).
- Exemplo:
{ "formats": ["markdown", "links", {"type": "screenshot", "fullPage": true}], "includeTags": ["h1", "p", "a", ".main-content"], "excludeTags": ["#ad", "#footer"], "onlyMainContent": false, "waitFor": 1000, "timeout": 15000}
- Padrões:
formats: ["markdown"]
, cache ativado por padrão (maxAge ~ 2 dias)
Exemplo de uso
cURL
Mapeando links do site
/v2/map
identifica URLs relacionadas a um site específico.
Uso
cURL
Opções de mapa
search
- Tipo:
string
- Descrição: Filtra links que contêm determinado texto.
limit
- Tipo:
integer
- Descrição: Número máximo de links a serem retornados.
- Padrão:
100
sitemap
- Tipo:
"only" | "include" | "skip"
- Descrição: Controla o uso do sitemap durante o mapeamento.
- Padrão:
"include"
includeSubdomains
- Tipo:
boolean
- Descrição: Inclui os subdomínios do site.
- Padrão:
true