Dinoer

Leer una sola página y extraer la información que contiene

Sin formulario, sin autenticación, nada modificado. Lo más ligero que puede hacer el núcleo del navegador integrado: salida real, sin modelo de visión, proveniente de una ejecución real.

Por debajo de la escala de campaña, a veces lo que usted necesita es una página, leída una vez. Sin autenticación, sin mutación, un puñado de solicitudes — y el caso en el que Dinoer cuesta menos, porque no hay ningún modelo de visión al que llamar en ningún modo, no solo en este.

Resultado real, no una simulación

/opt/dinoer/venv/bin/python3 /opt/dinoer/shot.py \
  --url https://example.com --a11y --guide-version 1.6
{"succes": true, "http_status": 200,
 "a11y_tree": "- heading \"Example Domain\" [level=1]\n- paragraph: This domain is for use in documentation examples…",
 "boussole": {"titre_page": "Example Domain", "dernier_code_http": 200}}

--a11y devuelve el árbol de accesibilidad como texto, a una fracción del costo en tokens que implicaría una imagen; y no hay una bandera --som para activar, porque no queda ninguna superposición numerada en esta herramienta.

Texto limpio, cuando un solo árbol no es suficiente

{"type": "extraire_texte"}
{"extraction_texte": {"titre": "Example Domain",
 "texte": "Example Domain\nExample Domain\nThis domain is for use in documentation examples without needing permission. Avoid use in operations.\nLearn more",
 "url": "https://example.com/", "date_capture": "2026-08-14T13:23:35+00:00"}}

Mismo camino de llamada que --a11y, salida real de la misma sesión. El árbol le da la estructura — roles, enlaces, encabezados; extraire_texte le da el texto documental sin etiquetas de ruido, cuando lo que necesita es el contenido y no la forma del DOM.

Obtener datos estructurados con evaluer.

{"type": "evaluer",
 "script": "document.querySelector('.price')?.textContent.trim()"}

evaluer devuelve datos estructurados que el llamador puede comparar programáticamente: comparando un elemento entre varias fuentes, verificando una lista, mapeando un sitio de documentación construido como una aplicación de página única. Espere a que la página se estabilice (attendre_reseau_calme) antes de leer cualquier cosa renderizada por el cliente; una solicitud que compite con el propio JavaScript de la página no devuelve nada.

Cuándo esta no es la forma correcta de abordar una tarea

Una página cuyo URL ya conoce es el caso de esta página. Explorar un tema que aún no ha definido, y consultar fuentes que desconoce de antemano, es el caso de campagne.py — una campaña completa, no una sola lectura →.

Y espere encontrar obstáculos importantes en plataformas comerciales establecidas, independientemente de la forma que elija. Lo que la web se niega a aceptar →

En resumen

  • No hay ningún modelo de visión en ningún modo; --a11y y extraire_texte son todo lo que devuelve una lectura de una sola página.
  • evaluer para datos estructurados que el llamador puede comparar programáticamente.
  • Espera a que la página se cargue completamente antes de leer cualquier elemento renderizado por el cliente.
  • Una página conocida → léela directamente. Una pregunta sin respuesta sobre fuentes desconocidas → una campaña en su lugar.