Saltar al contenido principal
La API de búsqueda de Firecrawl te permite realizar búsquedas en la web y, opcionalmente, extraer los resultados en una sola operación.
  • Elige formatos de salida específicos (markdown, HTML, links, capturas de pantalla)
  • Busca en la web con parámetros personalizables (ubicación, etc.)
  • Recupera opcionalmente contenido de los resultados de búsqueda en varios formatos
  • Controla la cantidad de resultados y establece tiempos de espera
Para más detalles, consulta la referencia del punto de conexión /search.

Buscar con Firecrawl

punto de conexión /search

Se usa para realizar búsquedas en la web y, opcionalmente, obtener contenido de los resultados.

Instalación

# pip install firecrawl-py

from firecrawl import Firecrawl

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

Uso básico

from firecrawl import Firecrawl

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

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

Respuesta

Los SDK devolverán directamente el objeto de datos. cURL devolverá el payload completo.
JSON
{
  "success": true,
  "data": {
    "web": [
      {
        "url": "https://www.firecrawl.dev/",
        "title": "Firecrawl - La API de datos web para IA",
        "description": "La API de rastreo, scraping y búsqueda web para IA. Diseñada para escalar. Firecrawl pone todo internet al alcance de agentes y desarrolladores de IA.",
        "position": 1
      },
      {
        "url": "https://github.com/mendableai/firecrawl",
        "title": "mendableai/firecrawl: Convierte sitios web completos en datos listos para LLM ... - GitHub",
        "description": "Firecrawl es un servicio de API que toma una URL, la rastrea y la convierte en Markdown limpio o datos estructurados.",
        "position": 2
      },
      ...
    ],
    "images": [
      {
        "title": "Guía de inicio 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": "La startup de Y Combinator, Firecrawl, está dispuesta a pagar 1 M$ para contratar a tres agentes de IA como empleados",
        "url": "https://techcrunch.com/2025/05/17/y-combinator-startup-firecrawl-is-ready-to-pay-1m-to-hire-three-ai-agents-as-employees/",
        "snippet": "Ahora ha publicado tres nuevos anuncios en la bolsa de trabajo de YC para “solo agentes de IA” y ha reservado un presupuesto total de 1 millón de dólares para lograrlo.",
        "date": "hace 3 meses"
        "position": 1
      },
      ...
    ]
  }
}

Tipos de resultados de búsqueda

Además de los resultados web habituales, Search admite tipos de resultados especializados mediante el parámetro sources:
  • web: resultados web estándar (predeterminado)
  • news: resultados enfocados en noticias
  • images: resultados de búsqueda de imágenes

Categorías de búsqueda

Filtra los resultados de búsqueda por categorías específicas con el parámetro categories:
  • github: Busca en repositorios de GitHub, código, incidencias y documentación
  • research: Busca en sitios académicos y de investigación (arXiv, Nature, IEEE, PubMed, etc.)
Busca específicamente dentro de los repositorios de GitHub:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-TU_API_KEY" \
  -d '{
    "query": "web scraping en Python",
    "categories": ["github"],
    "limit": 10
  }'
Busca en sitios web académicos y de investigación:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-TU_API_KEY" \
  -d '{
    "query": "transformers de aprendizaje automático",
    "categories": ["investigación"],
    "limit": 10
  }'
Combina varias categorías en una sola búsqueda:
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 neuronales",
    "categories": ["github", "investigación"],
    "limit": 15
  }'

Formato de respuesta de categorías

Cada resultado de búsqueda incluye un campo category que indica su fuente:
{
  "success": true,
  "data": {
    "web": [
      {
        "url": "https://github.com/example/neural-network",
        "title": "Implementación de redes neuronales",
        "description": "Implementación de redes neuronales en PyTorch",
        "category": "github"
        "category": "github",
      {
        "url": "https://arxiv.org/abs/2024.12345",
        "title": "Avances en la arquitectura de redes neuronales",
        "description": "Artículo de investigación sobre mejoras en redes neuronales",
        "category": "research"
      }
    ]
  }
}
Ejemplos:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-TU_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-<YOUR_API_KEY>" \
  -d '{
    "query": "jupiter",
    "sources": ["images"],
    "limit": 8
  }'

Búsqueda de imágenes en HD con filtro de tamaño

Usa los operadores de Google Imágenes para encontrar imágenes de alta resolución:
cURL
curl -X POST https://api.firecrawl.dev/v2/search \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer fc-<YOUR_API_KEY>" \
  -d '{
    "query": "atardecer 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-<YOUR_API_KEY>" \
  -d '{
    "query": "fondo de pantalla de montaña larger:2560x1440",
    "sources": ["images"],
    "limit": 8
  }'
Resoluciones HD habituales:
  • imagesize:1920x1080 - Full HD (1080p)
  • imagesize:2560x1440 - QHD (1440p)
  • imagesize:3840x2160 - 4K UHD
  • larger:1920x1080 - HD o superior
  • larger:2560x1440 - QHD o superior

Búsqueda con extracción de contenido

Busca y recupera contenido de los resultados de búsqueda en una sola operación.
from firecrawl import Firecrawl

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

# Buscar y hacer scraping de contenido
results = firecrawl.search(
    "firecrawl web scraping",
    limit=3,
    scrape_options={
        "formats": ["markdown", "links"]
    }
)
Todas las opciones del punto de conexión /scrape son compatibles con este punto de conexión de búsqueda mediante el parámetro scrapeOptions.

Respuesta con contenido rastreado

{
  "success": true,
  "data": [
    {
      "title": "Firecrawl - La API definitiva de web scraping",
      "description": "Firecrawl es una potente API de web scraping que convierte cualquier sitio web en datos limpios y estructurados para IA y análisis.",
      "url": "https://firecrawl.dev/",
      "markdown": "# Firecrawl\n\nLa API definitiva de web scraping\n\n## Convierte cualquier sitio web en datos limpios y estructurados\n\nFirecrawl facilita la extracción de datos de sitios web para aplicaciones de IA, investigación de mercados, agregación de contenido y más...",
      "links": [
        "https://firecrawl.dev/pricing",
        "https://firecrawl.dev/docs",
        "https://firecrawl.dev/guides"
      ],
      "metadata": {
        "title": "Firecrawl - La API definitiva de web scraping",
        "description": "Firecrawl es una potente API de web scraping que convierte cualquier sitio web en datos limpios y estructurados para IA y análisis.",
        "sourceURL": "https://firecrawl.dev/",
        "statusCode": 200
      }
    }
  ]
}

Opciones de búsqueda avanzadas

La API de búsqueda de Firecrawl admite varios parámetros para personalizar la búsqueda:

Personalización de la ubicación

from firecrawl import Firecrawl

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

# Búsqueda con configuración de ubicación (Alemania)
search_result = firecrawl.search(
    "herramientas de web scraping",
    limit=5,
    location="Germany"
)

# Procesar los resultados
for result in search_result.data:
    print(f"Título: {result['title']}")
    print(f"URL: {result['url']}")
Usa el parámetro tbs para filtrar resultados por periodo:
from firecrawl import Firecrawl

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

results = firecrawl.search(
    query="firecrawl",
    limit=5,
    tbs="qdr:d",
)
print(len(results.get('web', [])))
Valores comunes de tbs:
  • qdr:h - Última hora
  • qdr:d - Últimas 24 horas
  • qdr:w - Última semana
  • qdr:m - Último mes
  • qdr:y - Último año
Para un filtrado temporal más preciso, puedes especificar rangos exactos usando el formato de rango de fechas personalizado:
from firecrawl import Firecrawl

# Inicializa el cliente con tu clave de API
firecrawl = Firecrawl(api_key="fc-YOUR_API_KEY")

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

Tiempo de espera personalizado

Configura un tiempo de espera personalizado para las operaciones de búsqueda:
from firecrawl import FirecrawlApp

# Inicializa el cliente con tu clave de API
app = FirecrawlApp(api_key="fc-YOUR_API_KEY")

# Establece un tiempo de espera de 30 segundos
search_result = app.search(
    "complex search query",
    limit=10,
    timeout=30000  # 30 segundos en milisegundos
)

Implicaciones de costos

El uso de este punto de conexión cuesta 1 crédito por resultado de búsqueda. No hay cargos adicionales por scrapes básicos de cada resultado. Sin embargo, ten en cuenta estos factores de costo:
  • Análisis de PDF: 1 crédito por página de PDF (puede incrementar significativamente los costos en PDFs de varias páginas)
  • Modo de proxy stealth: +4 créditos adicionales por resultado de búsqueda
  • modo JSON: +4 créditos adicionales por resultado de búsqueda
Para controlar los costos:
  • Define parsers: [] si no necesitas contenido PDF
  • Usa proxy: "basic" en lugar de "stealth" cuando sea posible
  • Limita la cantidad de resultados de búsqueda con el parámetro limit

Opciones avanzadas de scraping

Para más detalles sobre las opciones de scraping, consulta la documentación de la función Scrape. Todo, excepto FIRE-1 (Agente) y seguimientoDeCambios, es compatible con este punto de conexión de búsqueda.