Agents qui naviguent sur le web
Certains agents fonctionnent en conduisant réellement un navigateur : charger une page, lire ce qui est rendu, suivre des liens, prendre une capture d’écran ou un PDF. C’est ainsi qu’ils gèrent les sites qui construisent leur contenu en JavaScript.
Vous rencontrerez cela par le biais de l’agent de navigateur, de la fonctionnalité de navigateur ou du mode de navigation d’un travail d’enrichissement.
Ce qu’il peut atteindre
Section titled “Ce qu’il peut atteindre”Sites web publics, sur HTTP et HTTPS. Rien d’autre.
Le navigateur fonctionne quelque part sans accès à quoi que ce soit de privé — ni nos services internes, ni quoi que ce soit sur votre propre réseau. Les demandes pour des adresses privées ou réservées sont refusées à la frontière, et le refus est basé sur l’adresse à laquelle on se connecte réellement, et non sur une vérification antérieure. Un nom d’hôte qui résout à une adresse publique lorsqu’il est inspecté et à une adresse privée lorsqu’il est utilisé est toujours refusé.
Cela vaut la peine d’être su pour deux raisons :
- Les URL internes ne fonctionneront pas. Pointer un agent de navigation vers quelque chose sur votre propre intranet, une adresse IP privée ou
localhostéchouera. Il n’y a aucun paramètre pour changer cela. - C’est une frontière, pas un filtre. Cela ne dépend pas du comportement de l’agent, donc une invite qui incite un agent à essayer ne passera toujours pas.
Lorsque la page est refusée
Section titled “Lorsque la page est refusée”L’agent est informé clairement et lui est dit de ne pas réessayer :
Blocage par la frontière de sortie du navigateur … Ne pas réessayer — c’est une politique, pas un échec transitoire.
Cette formulation est délibérée. Sans elle, l’échec ressemble à un dépassement de délai, et l’agent gaspille ses étapes restantes à réessayer quelque chose qui ne réussira jamais. Un refus est rapide — environ un dixième de seconde — donc une destination bloquée ne vous coûte presque rien.
Sur HTTP simple, vous pouvez plutôt voir la page rapportée comme retournant le statut 403. Même cause.
Lire d’autres échecs
Section titled “Lire d’autres échecs”Tous les échecs ne terminent pas l’exécution. Lorsque la page est le problème — un élément que l’agent cherchait n’est pas là, la page est lente à charger, le site répond avec une page d’erreur telle que “non trouvé”, ou l’adresse n’existe pas — l’agent est informé de ce qui a mal tourné et de ce qu’il faut essayer ensuite, et ajuste : il attend plus longtemps, essaie une autre partie de la page, ou choisit une autre URL. Il abandonne après quelques tentatives modifiées et le signale dans son résultat. Une destination refusée ou un site qui bloque les navigateurs automatisés termine immédiatement l’exécution, car réessayer ne peut pas aider.
| Ce que vous voyez | Ce que c’est généralement |
|---|---|
| Bloqué par la frontière de sortie du navigateur | La destination est privée, réservée ou non autorisée |
| Statut 403 sur une URL que vous vous attendiez à fonctionner | Même chose que ci-dessus, sur HTTP simple |
| Un délai d’attente de navigation | Le site est vraiment lent, ou attend quelque chose qui n’arrivera jamais |
| Une page vide ou partielle | Le site n’a rien rendu d’utile, ou nécessite une connexion |
| L’agent s’arrête après plusieurs tentatives | Il a un budget d’étapes ; un site qui nécessite de nombreuses interactions peut l’épuiser |
Ce que cela coûte
Section titled “Ce que cela coûte”Le travail du navigateur est mesuré en secondes de navigateur — une unité distincte des jetons de modèle, car le temps qu’une page prend n’a rien à voir avec la quantité lue par le modèle. Voir les références des unités de facturation.
Une page qui est refusée coûte toujours le moment qu’il a fallu pour refuser, ce qui est négligeable. Une page qui ne répond pas jusqu’à ce qu’elle dépasse le délai de réflexion coûte le temps d’attente.