Home
Login

Transforma sitios web completos en Markdown o datos estructurados listos para LLM, rastrea, indexa y extrae a través de una única API.

AGPL-3.0TypeScript 40.4kmendableaifirecrawl Last Updated: 2025-06-22

Introducción Detallada al Proyecto Firecrawl

Resumen del Proyecto

Firecrawl es un servicio API que recibe una URL, la rastrea y la convierte en markdown limpio o datos estructurados. Rastrea todas las subpáginas accesibles, proporcionando datos limpios para cada página. No requiere un mapa del sitio.

Funciones Principales

1. Extracción Web (Scraping)

  • Extrae una sola URL y obtiene contenido en un formato listo para LLM.
  • Soporta múltiples formatos de salida: markdown, datos estructurados, capturas de pantalla, HTML.
  • Extracción de datos estructurados mediante LLM.

2. Rastreo Web (Crawling)

  • Rastrea todas las URL de una página web y devuelve contenido en un formato listo para LLM.
  • Descubre todas las subpáginas accesibles sin necesidad de un mapa del sitio.
  • Soporta profundidad de rastreo personalizada y reglas de exclusión.

3. Mapeo Web (Map)

  • Ingresa un sitio web para obtener todas las URL del sitio - velocidad extremadamente rápida.
  • Soporta la búsqueda de patrones de URL específicos.

4. Búsqueda Web (Search)

  • Busca en la web y obtiene el contenido completo de los resultados.
  • Parámetros de búsqueda personalizables (idioma, país, etc.).
  • Opción de recuperar varios formatos de contenido de los resultados de búsqueda.

5. Extracción de Datos (Extract)

  • Utiliza IA para obtener datos estructurados de una sola página, múltiples páginas o un sitio web completo.
  • Soporta la definición de reglas de extracción a través de indicaciones (prompts) y esquemas JSON.
  • Soporta patrones de URL comodín.

6. Procesamiento por Lotes (Batching)

  • Nuevo punto final asíncrono para extraer miles de URL simultáneamente.
  • Envía trabajos de extracción por lotes y devuelve un ID de trabajo para verificar el estado.

Características Técnicas

Formato Listo para LLM

  • Markdown: Formato de documento limpio.
  • Datos Estructurados: Datos extraídos en formato JSON.
  • Capturas de Pantalla: Captura visual de la página.
  • HTML: Contenido HTML original.
  • Enlaces y Metadatos: Extracción de información de la página.

Manejo de Situaciones Complejas

  • Proxies y Mecanismos Anti-Robot: Evita las restricciones de acceso.
  • Contenido Dinámico: Maneja el contenido renderizado con JavaScript.
  • Análisis de Salida: Análisis inteligente del contenido.
  • Orquestación: Gestión de flujos de trabajo complejos.

Capacidad de Personalización

  • Exclusión de Etiquetas: Filtra el contenido no deseado.
  • Rastreo Autenticado: Rastrea contenido que requiere autenticación utilizando encabezados personalizados.
  • Profundidad Máxima de Rastreo: Controla el alcance del rastreo.
  • Análisis de Medios: Soporta PDF, DOCX, imágenes.

Funciones Interactivas (Actions)

Se pueden realizar varias acciones antes de extraer el contenido:

  • Clic: Clic en elementos de la página.
  • Desplazamiento: Operaciones de desplazamiento de la página.
  • Entrada: Entrada de texto.
  • Espera: Espera a que se cargue la página.
  • Tecla: Operaciones de teclado.

Ejemplos de Uso de la API

Rastrear un Sitio Web

curl -X POST https://api.firecrawl.dev/v1/crawl \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer fc-YOUR_API_KEY' \
-d '{
  "url": "https://docs.firecrawl.dev",
  "limit": 10,
  "scrapeOptions": {
    "formats": ["markdown", "html"]
  }
}'

Extraer una Sola Página

curl -X POST https://api.firecrawl.dev/v1/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
  "url": "https://docs.firecrawl.dev",
  "formats" : ["markdown", "html"]
}'

Extracción de Datos Estructurados

curl -X POST https://api.firecrawl.dev/v1/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
  "url": "https://www.mendable.ai/",
  "formats": ["json"],
  "jsonOptions": {
    "schema": {
      "type": "object",
      "properties": {
        "company_mission": {"type": "string"},
        "supports_sso": {"type": "boolean"},
        "is_open_source": {"type": "boolean"},
        "is_in_yc": {"type": "boolean"}
      },
      "required": ["company_mission", "supports_sso", "is_open_source", "is_in_yc"]
    }
  }
}'

Soporte de SDK

Python SDK

pip install firecrawl-py
from firecrawl.firecrawl import FirecrawlApp
from firecrawl.firecrawl import ScrapeOptions

app = FirecrawlApp(api_key="fc-YOUR_API_KEY")

# Extraer un sitio web
scrape_status = app.scrape_url(
    'https://firecrawl.dev',
    formats=["markdown", "html"]
)
print(scrape_status)

# Rastrear un sitio web
crawl_status = app.crawl_url(
    'https://firecrawl.dev',
    limit=100,
    scrape_options=ScrapeOptions(formats=["markdown", "html"]),
    poll_interval=30
)
print(crawl_status)

Node.js SDK

npm install @mendable/firecrawl-js
import FirecrawlApp, { CrawlParams, CrawlStatusResponse } from '@mendable/firecrawl-js';

const app = new FirecrawlApp({apiKey: "fc-YOUR_API_KEY"});

// Extraer un sitio web
const scrapeResponse = await app.scrapeUrl('https://firecrawl.dev', {
  formats: ['markdown', 'html'],
});

if (scrapeResponse) {
  console.log(scrapeResponse)
}

// Rastrear un sitio web
const crawlResponse = await app.crawlUrl('https://firecrawl.dev', {
  limit: 100,
  scrapeOptions: {
    formats: ['markdown', 'html'],
  }
} satisfies CrawlParams, true, 30) satisfies CrawlStatusResponse;

Soporte de Integración

Integración con Frameworks LLM

  • Langchain: Versiones en Python y JavaScript.
  • Llama Index: Conector de datos.
  • Crew.ai: Framework de agentes de IA.
  • Composio: Integración de herramientas.
  • PraisonAI: Orquestación de IA.
  • Superinterface: Funciones de asistente.
  • Vectorize: Integración de vectorización.

Frameworks de Bajo Código

  • Dify: Plataforma de construcción de aplicaciones de IA.
  • Langflow: Flujos de IA visuales.
  • Flowise AI: Construcción de IA sin código.
  • Cargo: Integración de datos.
  • Pipedream: Automatización de flujos de trabajo.

Otras Integraciones

  • Zapier: Flujos de trabajo automatizados.
  • Pabbly Connect: Integración de aplicaciones.

Licencia y Despliegue

Licencia de Código Abierto

  • Principalmente GNU Affero General Public License v3.0 (AGPL-3.0).
  • SDK y algunos componentes de la interfaz de usuario utilizan la licencia MIT.

Servicio Gestionado

  • Se proporciona una versión gestionada en firecrawl.dev.
  • Las soluciones en la nube ofrecen funciones adicionales y soporte de nivel empresarial.

Auto-Alojamiento

  • Soporta el despliegue local.
  • Actualmente en desarrollo, integrando módulos personalizados en un repositorio monolítico.
  • Se puede ejecutar localmente, pero aún no está completamente listo para el despliegue auto-alojado.

Casos de Uso

  1. Preparación de Datos para IA: Proporciona datos de entrenamiento limpios para LLM.
  2. Agregación de Contenido: Recopila y organiza contenido de múltiples sitios web.
  3. Análisis de la Competencia: Monitorea los cambios en los sitios web de la competencia.
  4. Investigación SEO: Analiza la estructura y el contenido del sitio web.
  5. Minería de Datos: Extrae información estructurada de sitios web.
  6. Generación de Documentos: Convierte el contenido del sitio web en formatos de documento.

Notas de Uso

Los usuarios son responsables de cumplir con las políticas de los sitios web al utilizar Firecrawl para extraer, buscar y rastrear. Se recomienda a los usuarios que cumplan con las políticas de privacidad y los términos de uso de los sitios web aplicables antes de iniciar cualquier actividad de extracción. Por defecto, Firecrawl cumple con las directivas especificadas en el archivo robots.txt del sitio web durante el rastreo.

Estado del Proyecto

El proyecto se encuentra actualmente en desarrollo activo, con el equipo integrando módulos personalizados en un repositorio monolítico. Aunque aún no está completamente listo para el despliegue auto-alojado, se puede ejecutar localmente para el desarrollo y las pruebas. El proyecto cuenta con una comunidad activa y actualizaciones continuas, siendo una solución líder en el campo de la extracción de datos web.

Star History Chart