Automatisation web : connecter des portails sans API

Power Automate Desktop connecte des portails sans API via le navigateur : actions, enregistreur et limites de l'automatisation web.

De nombreux portails que les services utilisent quotidiennement, portails fournisseurs, portails administratifs, systèmes de réservation de certains éditeurs de logiciels, ne proposent tout simplement pas d'interface ouverte. Sans API, il ne reste généralement que le clic manuel, la saisie et la re-saisie entre deux systèmes, souvent plusieurs fois par jour et toujours selon le même schéma. Power Automate Desktop comble exactement cette lacune grâce à l'automatisation web : un collaborateur numérique utilise le navigateur comme vous le feriez vous-même, lit des données, remplit des formulaires et clique sur des boutons, sans que le système cible ait besoin de fournir une API pour cela.

Cet article montre comment fonctionne techniquement l'automatisation web dans Power Automate Desktop (PAD), quelles actions sont disponibles pour les formulaires, les clics et l'extraction de données, comment l'enregistreur y contribue, et où se situent les limites de cette approche. Vous gardez ainsi le contrôle sur le navigateur utilisé par le flux et sur la robustesse de l'automatisation face aux changements du portail.

Pourquoi l'automatisation web comble le vide en l'absence d'API

Selon la documentation officielle, l'automatisation du navigateur est un cas particulier de l'automatisation de l'interface utilisateur, spécialement conçu pour interagir avec les éléments web, comme indiqué dans l'article Automatiser des pages web. Au lieu de travailler avec une interface REST ou SOAP, PAD lit directement la structure HTML de la page et émule les clics, les saisies et les listes de sélection via le Document Object Model. Pour vous, cela signifie que tout portail utilisable dans un navigateur peut en principe être automatisé, indépendamment du fait que le fournisseur ait un jour prévu une API pour cela. Quatre navigateurs standard sont pris en charge, Microsoft Edge, Internet Explorer, Google Chrome et Mozilla Firefox, en plus du navigateur d'automatisation intégré, immédiatement opérationnel sans installation supplémentaire.

Démarrer le navigateur : extension ou WebDriver

Avant qu'une automatisation web puisse s'exécuter, vous avez besoin d'une instance de navigateur. Pour cela, les actions Lancer un nouveau Microsoft Edge, Lancer un nouveau Chrome et Lancer un nouveau Firefox sont disponibles, chacune avec l'option d'ouvrir une nouvelle instance ou de se rattacher à une instance déjà en cours d'exécution. Pour Edge, Chrome et Firefox, vous devez d'abord installer l'extension correspondante et l'activer dans le navigateur, sinon l'automatisation échoue avec un message d'erreur. Vous trouverez les liens et étapes nécessaires dans Installer les extensions de navigateur Power Automate.

Depuis quelque temps, WebDriver est également disponible comme méthode d'interaction alternative à l'extension de navigateur, sélectionnable via le champ Méthode d'interaction du navigateur dans l'action de lancement. Pour cela, placez les fichiers exécutables WebDriver sous `%LocalAppData%\Microsoft\Power Automate Desktop\WebDrivers`, en fonction de la version de navigateur installée. Important à savoir : WebDriver ne peut se rattacher qu'aux instances de navigateur que le flux a lui-même démarrées, pas aux fenêtres ouvertes manuellement, et ne fonctionne pas si une stratégie d'organisation impose une connexion forcée au navigateur. Pour Internet Explorer, WebDriver n'est en outre pas du tout disponible. Dans la plupart des projets, l'extension de navigateur classique reste donc le choix par défaut le plus robuste.

Remplir des formulaires et cliquer sur des boutons

Pour l'interaction proprement dite avec la page, PAD propose tout un groupe d'actions. Les plus importantes en pratique :

  • Remplir un champ de texte sur la page web saisit des valeurs dans des champs de saisie.
  • Définir la valeur d'une liste déroulante sur la page web sélectionne une entrée dans une liste de sélection.
  • Cliquer sur un bouton sur la page web et Cliquer sur un lien sur la page web déclenchent des clics, avec des options pour attendre ou non le chargement de la nouvelle page après le clic et pour gérer une éventuelle boîte de dialogue contextuelle.

Par défaut, ces actions ne déplacent pas visiblement le pointeur de la souris à l'écran, mais déclenchent l'interaction via un événement JavaScript. Cela présente un avantage pratique : le flux s'exécute alors de manière fiable même lorsque le navigateur est réduit ou que l'onglet cible n'est pas actif au premier plan, vous pouvez donc continuer à travailler sur votre ordinateur entre-temps. Si un portail ne réagit pas comme prévu à ces événements émulés, une interaction physique peut en outre être activée pour certaines actions comme Cliquer sur un lien sur la page web ou Remplir un champ de texte sur la page web. PAD déplace alors réellement le pointeur de la souris, mais le navigateur doit pour cela être au premier plan et l'onglet cible doit être actif.

Extraire des données de pages web

Outre le remplissage de formulaires, la lecture de données est le deuxième cas d'usage majeur. Pour des valeurs individuelles ou des propriétés d'éléments, vous utilisez l'action Obtenir les détails d'un élément sur la page web, et pour des volumes de données structurées plus importants, l'action Extraire des données de la page web. Cette action prend en charge cinq modes d'extraction, valeur unique, valeurs sélectionnées manuellement, liste, tableau et tableau HTML entier, et peut être entièrement pilotée via l'Assistant Web en direct : vous marquez les éléments souhaités par un clic, PAD détecte automatiquement s'il s'agit d'une liste ou d'un tableau dès qu'au moins deux éléments comparables ont été sélectionnés. Pour les cas particuliers, les sélecteurs CSS peuvent également être écrits ou ajustés manuellement, avec une expression régulière facultative pour affiner la sélection. Si les données sont réparties sur plusieurs pages ayant la même structure, vous définissez en outre un élément de pagination afin que l'extraction passe automatiquement à la page suivante jusqu'à ce que toutes les pages, ou un nombre défini de pages, aient été traitées.

Enregistrer des flux web sans code avec l'enregistreur

Si vous ne souhaitez pas assembler chaque action une par une, vous pouvez à la place démarrer l'enregistreur via le bouton de la barre d'outils du concepteur de flux. Après avoir cliqué sur Enregistrer, PAD suit l'activité de la souris et du clavier et génère automatiquement à partir de cela des actions d'automatisation aussi bien de l'interface utilisateur que du navigateur, comme décrit dans Enregistrer des flux de bureau. Vous pouvez démarrer un navigateur de trois façons : via le menu à trois points de la fenêtre de l'enregistreur et l'option Lancer un nouveau navigateur web, en enregistrant dans un navigateur déjà ouvert, ou en l'ouvrant manuellement via un raccourci sur le bureau. Pour les listes déroulantes, les sélecteurs de date et de couleur, l'enregistreur affiche ses propres boîtes de dialogue d'aide dans lesquelles vous saisissez directement les valeurs souhaitées, au lieu de les sélectionner en direct dans le portail. Important en pratique : l'enregistreur fournit une structure de base, pas un produit fini. Il n'enregistre en principe ni les conditions ni les boucles ; vous devez ensuite vérifier les étapes générées dans le concepteur de flux, les nettoyer et y ajouter la gestion des erreurs.

Limites et pièges typiques

L'automatisation web est puissante, mais pas illimitée. Voici quelques points que vous rencontrerez en pratique :

  • Les boîtes de dialogue propres au système d'exploitation, comme Enregistrer sous, Ouvrir ou le téléversement de fichiers, ne font pas partie de la page HTML et ne peuvent pas être pilotées avec les actions d'automatisation web ; pour cela, vous avez en plus besoin d'actions d'automatisation de l'interface utilisateur pour la boîte de dialogue Windows elle-même.
  • Si un flux s'exécute en parallèle avec plusieurs instances de navigateur via WebDriver, cela peut entraîner un comportement peu fiable, car les interactions physiques du navigateur nécessitent une fenêtre au premier plan.
  • Si l'exploitant du portail modifie la structure de la page, la définition d'élément d'interface utilisateur correspondante doit être adaptée dans le flux ; l'automatisation web nécessite donc plus de maintenance qu'une véritable connexion API et doit être vérifiée régulièrement.
  • Le navigateur d'automatisation intégré fonctionne sans configuration supplémentaire, mais ne prend en charge ni les onglets ni l'ouverture de liens dans de nouvelles fenêtres.

L'endroit précis où l'automatisation web est intéressante pour votre portail, et où une alternative plus stable comme une API cachée ou un export de données est plus pertinente, s'évalue au mieux au cas par cas, par exemple dans le cadre d'un conseil Power Automate.

Questions fréquentes

Ai-je besoin d'une extension de navigateur distincte pour chaque portail ?

Non, vous installez l'extension une seule fois par navigateur et par ordinateur, pas par portail. Ensuite, PAD peut automatiser n'importe quelle page web dans ce navigateur, tant que l'extension reste activée et qu'aucune stratégie d'entreprise ne la bloque.

Que se passe-t-il si la mise en page du portail change ?

La définition d'élément d'interface utilisateur concernée dans le flux ne trouve alors plus l'élément attendu, et l'action échoue avec une erreur telle que « Élément avec le sélecteur CSS spécifié introuvable ». Dans ce cas, il suffit de recapturer l'élément dans l'Assistant Web en direct et de remplacer l'ancienne définition.

WebDriver est-il meilleur que l'extension de navigateur classique ?

Pas fondamentalement. WebDriver offre des possibilités supplémentaires, mais présente des limitations documentées lors d'exécutions parallèles, lors du rattachement à des fenêtres ouvertes manuellement, et en cas de connexion d'organisation forcée. Pour la plupart des scénarios standard, l'extension de navigateur reste le choix le plus simple et le plus stable.

L'automatisation web permet-elle aussi de télécharger des fichiers depuis un portail ?

Oui, via l'action Cliquer sur un lien de téléchargement sur la page web, ou en cliquant sur un lien de téléchargement et en laissant PAD traiter l'emplacement de stockage via des actions de système de fichiers en aval. Si une boîte de dialogue Enregistrer sous propre à Windows apparaît alors, vous avez en plus besoin d'actions d'automatisation de l'interface utilisateur pour celle-ci, car cette boîte de dialogue ne fait pas partie de la page web.

L'automatisation web vaut-elle la peine si une API devient disponible plus tard ?

Oui, c'est même la voie habituelle. L'automatisation web comble la période sans interface, souvent pendant des années. Dès qu'une API est disponible, la section de flux concernée peut être remplacée sans que le reste de la logique du processus en soit affecté.

À propos de NordFlux

NordFlux UG (haftungsbeschränkt)

NordFlux construit des employés numériques pour les organisations : des automatisations et des agents KI qui prennent en charge le travail répétitif. Vous gardez le contrôle.

En savoir plus sur nous
Analyse initiale gratuite

Des questions concrètes sur l’automatisation ou l’IA ?

Lors d’une analyse initiale gratuite, nous discutons directement de votre cas. Sans engagement.