Skip to main content
Un scraping exitoso indica lo que devolvió la página. No demuestra que el estado representado por la página siga vigente. Son dos preguntas distintas.
  • Actualidad → ¿Este contenido es reciente o es una copia reutilizada de la caché de Firecrawl? Se controla mediante maxAge.
  • Vigencia → ¿Lo subyacente sigue existiendo y está activo? Tu aplicación lo determina a partir de la evidencia disponible.
Esta guía explica la diferencia, analiza la disyuntiva de maxAge y ofrece una lista de verificación y un ejemplo práctico para acciones sensibles a la actualidad.

Comparación rápida


El equilibrio entre actualidad y rendimiento (maxAge)

Firecrawl almacena en caché páginas extraídas previamente y devuelve una copia reciente cuando hay una disponible, lo que reduce la latencia. maxAge es la antigüedad máxima, en milisegundos, de una copia en caché que Firecrawl puede devolver en lugar de recuperar la página de nuevo.
  • Omita maxAge: Firecrawl puede devolver contenido almacenado recientemente en caché. El período predeterminado es de 2 días; Firecrawl puede usar un período diferente para algunos sitios.
  • Establezca maxAge: 0: Firecrawl omite la caché para esa solicitud y recupera la página. Esto sacrifica latencia y fiabilidad a cambio de una recuperación más reciente.
Mantenga la caché activada de forma predeterminada. Asuma el costo de latencia de maxAge: 0 solo para las lecturas en las que contenido desactualizado podría provocar una decisión incorrecta o costosa; no cambia el costo de la página en créditos. metadata.cacheState se devuelve cuando Firecrawl considera su caché para la solicitud, por lo que resulta útil para comprobarlo mientras ajusta maxAge. No forma parte de una respuesta con maxAge: 0, porque esa solicitud omite la caché por completo. Para conocer el funcionamiento de la caché, los valores habituales de maxAge, las reglas de coincidencia para aciertos de caché y las opciones de solicitud que omiten la caché automáticamente, consulte Scraping más rápido.

Dónde se aplica maxAge

Si necesitas obtener una versión actualizada de una página que encontraste mediante /search, vuelve a hacer scraping de esa URL con /scrape y maxAge: 0.

La actualidad no implica vigencia

Incluso con maxAge: 0, el resultado solo indica lo que devolvió la página en esa consulta. Una página puede devolver HTTP 200 con contenido y, aun así, reflejar un estado desactualizado, no disponible o que ha cambiado. Por tanto, ni el código de estado ni la presencia de contenido determinan la vigencia. La vigencia es una conclusión a la que llega tu aplicación a partir de evidencia específica de la fuente.

Lista de verificación para acciones sensibles a la actualidad

Antes de realizar una acción que dependa del estado actual, considere la salida del scraping como evidencia, no como prueba:
  1. Use maxAge: 0 para la recuperación final para que la respuesta no se sirva desde la caché.
  2. No considere que un HTTP 200 o contenido no vacío prueban la vigencia del recurso.
  3. Inspeccione el contenido renderizado y la evidencia de redirecciones. metadata.sourceURL es la URL solicitada; metadata.url es la URL que el motor indica para la respuesta. Si difieren, puede indicar una redirección a otro recurso. Que coincidan no prueba que no se haya producido ninguna redirección.
  4. Prefiera API o identificadores específicos de la fuente cuando estén disponibles, ya que suelen exponer un estado explícito que una página renderizada oculta.
  5. Considere la evidencia no concluyente como unknown y deténgase antes de realizar el paso costoso o irreversible, en lugar de asumir que el recurso está activo.

Ejemplo práctico: Recopilar evidencia de la página actual

Omite la caché y recopila el contenido renderizado y los metadatos de la respuesta para aplicar las reglas de validación de tu aplicación. El scraping aporta evidencia; no determina el estado específico del dominio.
La separación clave está después de la recopilación: Firecrawl aporta evidencia de la página; tu aplicación la interpreta mediante reglas específicas de la fuente. Si esas reglas no son concluyentes, mantén el estado como unknown.

Recomendaciones por escenario


Conclusiones clave

  1. La actualidad y la vigencia son conceptos distintos. maxAge controla la actualidad; la vigencia se determina a partir de la evidencia.
  2. Una respuesta HTTP 200 con contenido no demuestra que el estado representado esté actualizado.
  3. Para acciones sensibles a la actualidad, usa maxAge: 0 y sigue la lista de verificación. Inspecciona el contenido renderizado, compara metadata.url con metadata.sourceURL para detectar posibles redirecciones y prioriza las API específicas de la fuente.
  4. Considera la evidencia no concluyente como unknown. Un scraping por sí solo nunca debe cambiar el estado de un objeto a active; detente antes de realizar pasos costosos o irreversibles.
  5. Firecrawl no tiene un campo de vigencia. Tu aplicación realiza esa determinación según los términos de su propio dominio.

Más información