Une tâche répétitive, qui peut s'avérer fastidieuse, se rencontre par exemple lorsqu'on doit exploiter le contenu d'un fichier fréquemment mis à jour et téléchargeable via un site web, nécessitant une navigation au travers de menus successifs ou bien lorsque l'on désire tester le comportement d'un site web. Un pilote web permet de contrôler un navigateur internet afin d'automatiser ces tâches ; les outils Selenium [1] fournissent une réponse à ce problème, au moyen d'une librairie disponible pour de nombreux langages (dont Java, Python, etc.) ou d'un IDE, permettant d'enregistrer une séquence d'actions exécutée dans le navigateur et de la rejouer, à la demande.
L'objectif de cet article est de montrer comment concevoir un pilote web capable de télécharger un fichier à partir d'un site web. Ayant développé une application permettant d'éditer un bulletin d'information contenant le programme des sorties organisées par un club de randonnée, les utilisateurs de cette application se plaignaient de devoir télécharger à plusieurs reprises, depuis le site internet du club, un fichier contenant les données saisies par les organisateurs des sorties. Le logiciel de saisie permet d'exporter ces données, mais la moindre correction du texte de la sortie par un organisateur nécessite de télécharger à nouveau les données pour modifier le bulletin, entraînant une nouvelle connexion au site avec identification et navigation dans divers menus, afin de générer une nouvelle version du bulletin.
Pour pallier cet inconvénient, l'application a été enrichie d'une classe PiloteWebProgramme chargée d'automatiser le téléchargement, comme...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première