L'arbre d'accessibilité
La page sous forme de texte, construite par le navigateur lui-même pour les lecteurs d'écran. Pour bien des tâches, c'est la seule vue que Dinoer ait besoin de renvoyer.
À côté de la page qu’il affiche, chaque navigateur construit un arbre de rôles et de noms destiné aux technologies d’assistance. Un lecteur d’écran s’en sert pour annoncer « bouton, Se connecter » au lieu de décrire des pixels.
Dinoer n’invente pas cet arbre : il existe déjà, sur chaque page. C’est la principale façon dont Dinoer lit une page.
À quoi il ressemble
/opt/dinoer/venv/bin/python3 /opt/dinoer/shot.py \
--url https://example.com --a11y --guide-version 1.6
- heading "Example Domain" [level=1]
- paragraph: This domain is for use in documentation examples without needing permission. Avoid use in operations.
- paragraph:
- link "Learn more":
- /url: https://iana.org/domains/example
--a11y renvoie cet arbre. Chromium charge et met en page la page, mais
aucune image n’est produite, et il n’existe pas de mode plus rapide à
activer : c’est simplement ainsi que Dinoer lit une page.
Ce qu’il porte et que le HTML brut enfouit
Les rôles. heading [level=1], link et, sur un formulaire, textbox,
combobox, button. Non pas « un rectangle aux coins arrondis », mais ce
qu’est l’élément.
Les destinations. link "Learn more" suivi de /url: : où mène le lien,
avant tout clic.
La structure. Ce qui se trouve dans quoi, sans les centaines de <div> de
mise en page que l’œil ignore et qu’un budget de jetons ne peut pas ignorer.
Il suffit souvent à lui seul
L’arbre suffit pour toute une catégorie de tâches : trouver un texte ou un
titre, suivre des liens (chaque href y figure), vérifier qu’un élément est
présent, comprendre comment une page est organisée. extraire_texte prend le
relais quand la structure ne compte plus et que seul le texte importe.
Les deux vues côte à côte →
Un canvas ou une image cliquable sans libellé accessible ne donnent rien à montrer à l’arbre, et Dinoer n’a rien sur quoi se rabattre. Ce que la perception n’atteint pas →
Pourquoi cela compte au-delà de Dinoer
Le même balisage (de vrais boutons, de vrais titres, des champs étiquetés)
construit un arbre dont se servent aussi bien un lecteur d’écran qu’un agent,
et donne la même structure aux moteurs de recherche. Une page dont les boutons
sont des <div> stylés reste opaque à tous à la fois. C’est celui qui écrit
la page qui décide si cette structure existe.
En bref
- Le navigateur construit cet arbre sur chaque page, pour les technologies d’assistance.
- Il porte les rôles, les destinations et la structure, sous forme de texte.
--a11yle renvoie ; aucune image n’est jamais produite.- Sans représentation accessible, il n’y a pas de solution de repli : utilisez
extraire_textepour la prose, et acceptez la limite là où aucun des deux n’aide.