Pular para o conteúdo principal
A API de busca do Firecrawl permite realizar pesquisas na web e, opcionalmente, fazer scraping dos resultados em uma única operação.
  • Escolha formatos de saída específicos (markdown, HTML, links, screenshots)
  • Pesquise na web com parâmetros personalizáveis (localização, etc.)
  • Opcionalmente, recupere o conteúdo dos resultados em vários formatos
  • Controle a quantidade de resultados e defina limites de tempo
Para mais detalhes, consulte a Referência da API do endpoint /search.

Fazendo uma pesquisa com o Firecrawl

endpoint /search

Usado para realizar pesquisas na web e, opcionalmente, obter conteúdo dos resultados.

Instalação

# pip install firecrawl-py

from firecrawl import Firecrawl

firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")

Uso básico

from firecrawl import Firecrawl

firecrawl = Firecrawl(api_key="fc-SUA-API-KEY")

results = firecrawl.search(
    query="firecrawl",
    limit=3,
)
print(results)

Resposta

Os SDKs retornarão o objeto de dados diretamente. O cURL retornará a carga completa.
JSON
{
  "success": true,
  "data": {
    "web": [
      {
        "url": "https://www.firecrawl.dev/",
        "title": "Firecrawl - A API de dados da web para IA",
        "description": "A API de rastreamento, scraping e busca na web para IA. Feita para escala. A Firecrawl entrega toda a internet para agentes de IA e desenvolvedores.",
        "position": 1
      },
      {
        "url": "https://github.com/mendableai/firecrawl",
        "title": "mendableai/firecrawl: Transforme sites inteiros em conteúdo pronto para LLM ... - GitHub",
        "description": "A Firecrawl é um serviço de API que recebe uma URL, a rastreia e a converte em Markdown limpo ou dados estruturados.",
        "position": 2
      },
      ...
    ],
    "images": [
      {
        "title": "Início Rápido | Firecrawl",
        "imageUrl": "https://mintlify.s3.us-west-1.amazonaws.com/firecrawl/logo/logo.png",
        "imageWidth": 5814,
        "imageHeight": 1200,
        "url": "https://docs.firecrawl.dev/",
        "position": 1
      },
      ...
    ],
    "news": [
      {
        "title": "Startup da Y Combinator, a Firecrawl, está pronta para pagar US$ 1 milhão para contratar três agentes de IA como funcionários",
        "url": "https://techcrunch.com/2025/05/17/y-combinator-startup-firecrawl-is-ready-to-pay-1m-to-hire-three-ai-agents-as-employees/",
        "snippet": "Agora publicou três novos anúncios no quadro de vagas da YC voltados “exclusivamente a agentes de IA” e reservou um orçamento total de US$ 1 milhão para viabilizar isso.",
        "date": "há 3 meses"
        "position": 1
      },
      ...
    ]
  }
}

Tipos de resultados de busca

Além dos resultados da web padrão, o Search oferece tipos de resultados especializados por meio do parâmetro sources:
  • web: resultados da web padrão (padrão)
  • news: resultados focados em notícias
  • images: resultados de busca de imagens
Você pode solicitar várias fontes em uma única chamada (por exemplo, sources: ["web", "news"]). Quando fizer isso, o parâmetro limit é aplicado por tipo de fonte — assim, limit: 5 com sources: ["web", "news"] retorna até 5 resultados da web e até 5 resultados de notícias (10 no total). Se você precisar de parâmetros diferentes por fonte (por exemplo, valores diferentes de limit ou scrapeOptions diferentes), faça chamadas separadas.

Categorias de pesquisa

Filtre os resultados por categorias específicas usando o parâmetro categories:
  • github: Pesquise em repositórios do GitHub, código, issues e documentação
  • research: Pesquise em sites acadêmicos e de pesquisa (arXiv, Nature, IEEE, PubMed, etc.)
  • pdf: Pesquise por PDFs
Pesquise especificamente em repositórios do GitHub:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -d '{
    "query": "web scraping em Python",
    "categories": ["github"],
    "limit": 10
  }'
Pesquise sites acadêmicos e de pesquisa:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -d '{
    "query": "transformers em aprendizado de máquina",
    "categories": ["pesquisa"],
    "limit": 10
  }'
Combine várias categorias em uma única pesquisa:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -d '{
    "query": "redes neurais",
    "categories": ["github", "pesquisa"],
    "limit": 15
  }'

Formato de resposta de categoria

Cada resultado de pesquisa inclui um campo category indicando sua fonte:
{
  "success": true,
  "data": {
    "web": [
      {
        "url": "https://github.com/example/neural-network",
        "title": "Implementação de Rede Neural",
        "description": "Uma implementação de redes neurais em PyTorch",
        "category": "github"
      },
      {
        "url": "https://arxiv.org/abs/2024.12345",
        "title": "Avanços na Arquitetura de Redes Neurais",
        "description": "Artigo científico sobre melhorias em redes neurais",
        "category": "research"
      }
    ]
  }
}
Exemplos:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -d '{
    "query": "openai",
    "sources": ["news"],
    "limit": 5
  }'
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-SUA_CHAVE_DE_API" \
  -d '{
    "query": "Júpiter",
    "sources": ["imagens"],
    "limit": 8
  }'

Pesquisa de imagens em alta definição com filtro por tamanho

Use operadores de imagem para encontrar imagens em alta resolução:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -d '{
    "query": "pôr do sol imagesize:1920x1080",
    "sources": ["images"],
    "limit": 5
  }'
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-SUA_API_KEY" \
  -d '{
    "query": "papel de parede de montanha larger:2560x1440",
    "sources": ["images"],
    "limit": 8
  }'
Resoluções HD comuns:
  • imagesize:1920x1080 - Full HD (1080p)
  • imagesize:2560x1440 - QHD (1440p)
  • imagesize:3840x2160 - 4K UHD
  • larger:1920x1080 - HD ou superior
  • larger:2560x1440 - QHD ou superior

Busca com Coleta de Conteúdo

Pesquise e recupere conteúdo dos resultados de busca em uma única operação.
from firecrawl import Firecrawl

firecrawl = Firecrawl(api_key="fc-YOUR_API_KEY")

# Pesquisar e fazer scraping de conteúdo
results = firecrawl.search(
    "firecrawl web scraping",
    limit=3,
    scrape_options={
        "formats": ["markdown", "links"]
    }
)
Todas as opções do endpoint /scrape são compatíveis neste endpoint de busca por meio do parâmetro scrapeOptions.

Resposta com conteúdo extraído

{
  "success": true,
  "data": [
    {
      "title": "Firecrawl - A API definitiva de web scraping",
      "description": "A Firecrawl é uma poderosa API de web scraping que transforma qualquer site em dados limpos e estruturados para IA e análise.",
      "url": "https://firecrawl.dev/",
      "markdown": "# Firecrawl\n\nA API definitiva de web scraping\n\n## Transforme qualquer site em dados limpos e estruturados\n\nA Firecrawl facilita a extração de dados de sites para aplicações de IA, pesquisa de mercado, agregação de conteúdo e muito mais...",
      "links": [
        "https://firecrawl.dev/pricing",
        "https://firecrawl.dev/docs",
        "https://firecrawl.dev/guides"
      ],
      "metadata": {
        "title": "Firecrawl - A API definitiva de web scraping",
        "description": "A Firecrawl é uma poderosa API de web scraping que transforma qualquer site em dados limpos e estruturados para IA e análise.",
        "sourceURL": "https://firecrawl.dev/",
        "statusCode": 200
      }
    }
  ]
}

Opções avançadas de busca

A API de busca do Firecrawl oferece diversos parâmetros para personalizar suas buscas:

Personalização de localização

from firecrawl import Firecrawl

firecrawl = Firecrawl(api_key="fc-YOUR_API_KEY")

# Pesquisa com configuração de localização (Alemanha)
search_result = firecrawl.search(
    "ferramentas de web scraping",
    limit=5,
    location="Germany"
)

# Processar os resultados
for result in search_result.data:
    print(f"Título: {result['title']}")
    print(f"URL: {result['url']}")
Use o parâmetro tbs para filtrar resultados por período:
from firecrawl import Firecrawl

firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")

results = firecrawl.search(
    query="firecrawl",
    limit=5,
    tbs="qdr:d",
)
print(len(results.get('web', [])))
Valores comuns de tbs:
  • qdr:h - Última hora
  • qdr:d - Últimas 24 horas
  • qdr:w - Última semana
  • qdr:m - Último mês
  • qdr:y - Último ano
Para um filtro temporal mais preciso, você pode especificar intervalos de datas exatos usando o formato de intervalo personalizado:
from firecrawl import Firecrawl

# Inicialize o cliente com sua API key
firecrawl = Firecrawl(api_key="fc-YOUR_API_KEY")

# Buscar resultados de dezembro de 2024
search_result = firecrawl.search(
    "firecrawl updates",
    limit=10,
    tbs="cdr:1,cd_min:12/1/2024,cd_max:12/31/2024"
)

Tempo limite personalizado

Defina um tempo limite personalizado para operações de pesquisa:
from firecrawl import FirecrawlApp

# Inicialize o cliente com sua chave de API
app = FirecrawlApp(api_key="fc-YOUR_API_KEY")

# Defina um tempo limite de 30 segundos
search_result = app.search(
    "complex search query",
    limit=10,
    timeout=30000  # 30 segundos em milissegundos
)

Implicações de custos

O custo de uma pesquisa é de 2 créditos por 10 resultados de pesquisa. Se as opções de scraping estiverem ativadas, os custos padrão de scraping se aplicam a cada resultado de pesquisa:
  • Basic scrape: 1 crédito por página da web
  • PDF parsing: 1 crédito por página de PDF
  • Enhanced proxy mode: 4 créditos adicionais por página da web
  • JSON mode: 4 créditos adicionais por página da web
Para ajudar a controlar os custos:
  • Defina parsers: [] se a análise de PDF não for necessária
  • Use proxy: "basic" em vez de "enhanced" quando possível, ou defina como "auto"
  • Limite o número de resultados de pesquisa com o parâmetro limit

Opções avançadas de scraping

Para mais detalhes sobre as opções de scraping, consulte a documentação do recurso Scrape. Tudo, exceto o FIRE-1 (Agente) e o recurso rastreioDeMudanças, é compatível com este endpoint de Search.