Web crawler / pilote web Selenium : comment automatiser des tâches répétitives d'accès à un site web

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
105
Mois de parution
novembre 2019
Domaines


Résumé

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...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Mise au point à distance avec GDB

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
111
Mois de parution
novembre 2020
Domaines
Résumé

Le débogueur GDB est un outil indispensable pour la mise au point de programmes, a fortiori dans le cas du développement croisé (mise au point à distance ou « remote debug »). Dans cet article, nous allons voir comment mettre en place différentes solutions suivant plusieurs cas de figure (programme en espace utilisateur, noyau Linux statique ou pilote en espace noyau). Afin de permettre au plus grand nombre de lecteurs de tester les exemples décrits, nous utiliserons l’émulateur QEMU (et Buildroot) pour les démonstrations.

Jouons avec l'obfuscation de code

Magazine
Marque
GNU/Linux Magazine
Numéro
242
Mois de parution
novembre 2020
Domaines
Résumé

Rendre son code illisible lorsque l'on prêche pour l'open source, c'est le mal incarné. Toutefois, il est possible de concevoir que dans certains cas, on souhaite obscurcir des parties d'un code et, surtout d'un point de vue purement technique, cela peut se révéler intéressant.

Le point sur le débogage en Python

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
111
Mois de parution
novembre 2020
Domaines
Résumé

Il n'existe pas une unique façon de déboguer du code en Python. Dans cet article, nous allons faire un rapide tour des différentes techniques qui s'offrent à vous pour traquer les bugs.

Les bases de LaTeX sous GNU/Linux et Windows

Magazine
Marque
GNU/Linux Magazine
Numéro
242
Mois de parution
novembre 2020
Domaines
Résumé

Et si nous retournions aux sources ? Des articles sont régulièrement consacrés à LaTeX dans ce magazine, mais comment les utiliser si l'on part de zéro ? Dans cet article, je vous propose de voir ou revoir comment installer LaTeX, configurer un éditeur et gérer les extensions/paquets pour une utilisation sous GNU/Linux ou Windows. Une sorte de guide de survie pour prof de maths, en cas d'obligation d'enseignement à distance...

Débugage facile avec Sentry

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
111
Mois de parution
novembre 2020
Domaines
Résumé

Nous le savons tous, aucun code n’est exempt de bugs. Nous avons beau écrire tous les tests unitaires du monde, tous les tests fonctionnels, avoir une couverture du code par nos tests de 200 %, il y a toujours des bugs qui passent à travers les mailles du filet. Sentry est là pour vous aider à les trouver et à les corriger grâce à vos utilisateurs, et ce, sans qu’ils ne s’en rendent compte.