Skip to main content
Firecrawl rastrea sitios web de forma eficiente para extraer datos completos mientras gestiona infraestructuras web complejas. El proceso:
  1. Análisis de URL: Examina el sitemap y rastrea el sitio web para identificar enlaces
  2. Recorrido: Sigue enlaces de manera recursiva para encontrar todas las subpáginas
  3. Extracción (scraping): Extrae contenido de cada página, gestionando JS y límites de tasa
  4. Salida: Convierte los datos a Markdown limpio o a un formato estructurado
Esto garantiza una recopilación exhaustiva de datos desde cualquier URL de partida.

Pruébalo en el Playground

Prueba el rastreo en el playground interactivo, sin escribir código.

Rastreo

punto de conexión /crawl

Se utiliza para rastrear una URL y todas las subpáginas accesibles. Esto envía un trabajo de rastreo y devuelve un ID de trabajo para verificar el estado del rastreo.
De forma predeterminada, el rastreador ignorará los enlaces de una página si no son descendientes directos de la URL que proporcionas. Así, website.com/other-parent/blog-1 no se devolvería si rastreas website.com/blogs/. Si quieres incluir website.com/other-parent/blog-1, usa el parámetro crawlEntireDomain. Para rastrear subdominios como blog.website.com al rastrear website.com, usa el parámetro allowSubdomains.
De forma predeterminada, el rastreador incluye el sitemap del sitio web para descubrir URLs (sitemap: "include"). Si configuras sitemap: "skip", el rastreador solo encontrará páginas accesibles a través de enlaces HTML que partan de la URL raíz. Recursos como PDFs o páginas muy anidadas que estén listadas en el sitemap pero no enlazadas directamente desde ninguna página HTML se omitirán. Para obtener la máxima cobertura, mantén la configuración predeterminada sitemap: "include".

Instalación

Uso

Cada página rastreada consume 1 crédito. El limit de rastreo predeterminado es de 10.000 páginas — establece un limit más bajo para controlar el consumo de créditos (por ejemplo, limit: 100). Se aplican créditos adicionales para ciertas opciones: el modo JSON cuesta 4 créditos adicionales por página, el proxy mejorado cuesta 4 créditos adicionales por página y el análisis de PDF cuesta 1 crédito por página de PDF.

Opciones de scraping en crawl

Todas las opciones del endpoint Scrape están disponibles en Crawl mediante scrapeOptions (JS) / scrape_options (Python). Se aplican a cada página que el crawler raspa: formatos, proxy, caché, acciones, ubicación, etiquetas, etc. Consulta la lista completa en la referencia de la API de Scrape.

Respuesta de la API

Si usas cURL o el método starter, se devolverá un ID para verificar el estado del rastreo.
Si usas el SDK, consulta los métodos a continuación para conocer el comportamiento de waiter vs starter.

Consultar trabajo de rastreo

Se usa para verificar el estado de un trabajo de rastreo y obtener su resultado.
Los resultados de los trabajos están disponibles a través de la API durante 24 horas después de su finalización. Después de este periodo, aún puedes ver tu historial de rastreos y resultados en los activity logs.
Las páginas en el array data de los resultados del rastreo son páginas que Firecrawl extrajo correctamente, incluso si el sitio de destino devolvió un error HTTP como 404. El campo metadata.statusCode muestra el código de estado HTTP del sitio de destino. Para recuperar las páginas que Firecrawl no pudo extraer (por ejemplo, errores de red, tiempos de espera o bloqueos por robots.txt), usa el endpoint dedicado Get Crawl Errors (GET /crawl/{id}/errors).

Manejo de respuestas

La respuesta varía según el estado del rastreo. Para respuestas incompletas o de gran tamaño que superen los 10 MB, se proporciona un parámetro de URL next. Debes solicitar esta URL para obtener los siguientes 10 MB de datos. Si el parámetro next no está presente, indica el final de los datos del rastreo. El parámetro skip define el número máximo de resultados incluidos en cada bloque de resultados devueltos.
Los parámetros skip y next solo son relevantes cuando se consume la API directamente. Si usas el SDK, nos encargamos de esto por ti y devolveremos todos los resultados de una vez.

Métodos del SDK

Hay dos maneras de usar el SDK:
  1. Rastrear y esperar (crawl):
    • Espera a que el rastreo termine y devuelve la respuesta completa
    • Gestiona la paginación automáticamente
    • Recomendado para la mayoría de los casos de uso
La respuesta incluye el estado del rastreo y todos los datos extraídos:
  1. Iniciar y luego verificar el estado (startCrawl/start_crawl):
    • Devuelve de inmediato un ID de rastreo
    • Permite verificar el estado manualmente
    • Útil para rastreos de larga duración o lógica de sondeo personalizada

WebSocket de rastreo

El método de Firecrawl basado en WebSocket, Crawl URL and Watch, permite la extracción y el monitoreo de datos en tiempo real. Inicia un rastreo con una URL y personalízalo con opciones como límites de páginas, dominios permitidos y formatos de salida; ideal para necesidades de procesamiento de datos inmediatas.

Webhook de rastreo

Puedes configurar webhooks para recibir notificaciones en tiempo real a medida que avanza el rastreo. Esto te permite procesar las páginas conforme se van extrayendo, en lugar de esperar a que finalice todo el rastreo.
cURL

Referencia rápida

Tipos de eventos:
  • crawl.started - Cuando se inicia el rastreo
  • crawl.page - Por cada página extraída correctamente
  • crawl.completed - Cuando finaliza el rastreo
  • crawl.failed - Si ocurre un error durante el rastreo
Carga útil básica:

Seguridad: Verificación de firmas de webhooks

Cada solicitud de webhook de Firecrawl incluye un encabezado X-Firecrawl-Signature que contiene una firma HMAC-SHA256. Verifica siempre esta firma para asegurarte de que el webhook sea auténtico y no haya sido manipulado. Cómo funciona:
  1. Obtén tu secreto de webhook en la pestaña Advanced de la configuración de tu cuenta
  2. Extrae la firma del encabezado X-Firecrawl-Signature
  3. Calcula el HMAC-SHA256 del cuerpo sin procesar (raw) de la solicitud usando tu secreto
  4. Compárala con el encabezado de la firma usando una función segura frente a ataques de temporización
Nunca proceses un webhook sin verificar primero su firma. El encabezado X-Firecrawl-Signature contiene la firma en el formato: sha256=abc123def456...
Para ver ejemplos completos de implementación en JavaScript y Python, consulta la documentación de seguridad de webhooks.

Documentación completa

Para una documentación completa sobre webhooks, incluidos payloads de eventos detallados, la estructura del payload, configuración avanzada y resolución de problemas, consulta la documentación de webhooks.