Saltar al contenido principal
La supervisión de sitios web abarca un sitio completo en lugar de una lista fija de URL. En cada comprobación, se ejecuta un crawl para la url objetivo, se hace scraping de cada página descubierta y se compara el resultado con la última instantánea conservada. Eso detecta páginas añadidas, modificadas y eliminadas, no solo cambios en páginas que ya habías indicado. Es la opción adecuada para sitios de documentación, blogs, registros de cambios, centros de ayuda y sitios de la competencia. Esta página trata el objetivo crawl. La programación, los objetivos y la evaluación, el seguimiento de cambios, las notificaciones y los precios son comunes a todos los tipos de monitor. Consulta la descripción general de la supervisión.

Crear un monitor de sitio web

Crea un monitor con un objetivo crawl para obtener un diff de cada página descubierta en cada rastreo durante cada comprobación:
from firecrawl import Firecrawl

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

monitor = firecrawl.create_monitor(
    name="Docs monitor",
    schedule={"cron": "7-59/15 * * * *", "timezone": "UTC"},
    goal="Notify me when docs pages add, remove, or materially change API behavior",
    targets=[
        {
            "type": "crawl",
            "url": "https://example.com/docs",
            "crawlOptions": {
                "limit": 100,
                "maxDiscoveryDepth": 3,
            },
        }
    ],
    webhook={
        "url": "https://example.com/webhooks/firecrawl",
        "events": ["monitor.page", "monitor.check.completed"],
    },
)

print(monitor.id)

Objetivo de crawl

Un objetivo de crawl requiere type y una sola url. Usa crawlOptions para definir el comportamiento del crawl y scrapeOptions para indicar cómo se extrae cada página descubierta:
Crawl target
{
  "type": "crawl",
  "url": "https://example.com/docs",
  "crawlOptions": {
    "limit": 100,
    "includePaths": ["/docs"]
  },
  "scrapeOptions": {
    "formats": ["markdown"]
  }
}
Campos comunes de crawlOptions:
  • limit: Número máximo de páginas que una comprobación rastreará.
  • maxDiscoveryDepth: Cuántos niveles de enlaces, a partir de la url inicial, se recorrerán para descubrir páginas.
  • maxDepth: Profundidad máxima de rastreo.
  • includePaths: Supervisa solo las URL que coincidan con estos patrones de ruta (por ejemplo, /docs).
  • excludePaths: Omite las URL que coincidan con estos patrones de ruta.
Al igual que con los monitores de página, los scrape activados por monitores usan 0 como maxAge predeterminado, por lo que en cada comprobación se vuelven a extraer las páginas descubiertas, a menos que configures un maxAge distinto en scrapeOptions.

Lo que informa cada comprobación

Una comprobación de rastreo coteja cada página descubierta con la comprobación anterior y registra un estado por página:
  • same: La página se descubrió de nuevo y no cambió.
  • changed: La página se descubrió de nuevo y cambió.
  • new: La página se descubrió por primera vez.
  • removed: Una página de la comprobación anterior ya no se volvió a descubrir.
  • error: No se pudo comprobar la página.
Para generar alertas sobre campos estructurados específicos en las páginas rastreadas, añade un formato changeTracking a scrapeOptions. Consulta Seguimiento de cambios.

Configuración compartida