Robotic Process Automation (RPA) et Python : piloter des applications web

La RPA (pour Robotic Process Automation) contribue à la robotisation des fonctions finances et comptables. La RPA est une technique qui automatise des processus habituellement exécutés manuellement, en partie dépourvus valeur ajoutée, à l’image de la collecte de données. Des outils spécialisés en RPA, tels UiPath, excellent en la matière.

RPA PYTHON

Toutefois, ces outils ne sont pas les seuls à être en mesure d’automatiser des tâches.

Le langage Python, langage particulièrement adapté au traitement de données, est en capacité, par exemple, de piloter des sites internet ou des applications web pour automatiser des traitements, extraire des données…

Pour ce faire, il faut ajouter la bibliothèque Selenium qui comprend des fonctions de pilotage d’un navigateur internet.

A titre d’exemple, le script Python reproduit ci-avant envoie les identifiants de connexion à un DMS (application web de gestion d’un point de vente automobile).

Il est au préalable nécessaire d’installer la bibliothèque Selenium à l’aide de la commande “pip install selenium” dans l’interpréteur de commande (cmd.exe).

Les variables url, username et password stocke respectivement l’URL du DMS, le nom de l’utilisateur et son mot de passe.

Le script commence par lancer l’exécution du navigateur Chrome :

# Lancement du navigateur
driver = webdriver.Chrome()

Puis, il charge le DMS (il s’agit ici d’une application web accessible à l’aide d’une URL comme n’importe quel site internet) :

# Chargement de l'URL DCSnet
driver.get(url)

Pour entrer les identifiants, il est nécessaire d’analyser la page web pour isoler le nom des champs de saisie. Pour ce faire, il suffit de se rendre sur la page web et d’analyser son code HTML.. en frappant la touche F12 :

DCSnet identifiants code HTML

Le code HTML de la page apparaît dans une fenêtre. Se déplacer dans le code permet d’identifier les différents objets qui composent la page web dont les zones de saisie et les boutons :

DCSnet identifiants

Une fois le nom des composants relevés (par exemple ici : le nom de la zone de saisie (input) du nom d’utilisateur = form.login), il faut les intégrer au script Python.

Ainsi pour le nom de l’utilisateur, cela donne :

# Localisation du champ et insertion du nom d'utilisateur
username_input = driver.find_element(By.NAME, "login")
username_input.send_keys(username)

Une fois les identifiants entrés dans la page web par le script, il suffit de simuler le clic sur le bouton CONNEXION :

# Soumission des identifiants
driver.find_element(By.CSS_SELECTOR, "button[type='submit']").click()

Une fois le script exécuté, l’écran d’accueil du DMS apparaît :

DCSnet Accueil

L’obtention de cet écran est la preuve que l’identification a réussi. Ne reste plus qu’à programmer l’exécution des fonctionnalités souhaitées dans le script Python…

La RPA est une source de gains de temps importants qu’il faut intégrer dans sa panoplie d’outils d’analyse et de traitement de données.

___

Pour approfondir le sujet : découvrir le langage Python et l’automatisation de tâches / Formation Analyse de données et automatisation des tâches

Share Button
The following two tabs change content below.
Après seize années passées en cabinet d’expertise-comptable et de commissariat aux comptes (où j’ai exercé comme expert-comptable et chef de mission audit), j’ai pris le poste de directeur comptable d’un groupe de distribution automobile en novembre 2014. Au cours de ma carrière, j’ai acquis une expérience significative en audit et en exploitation des systèmes d’information (analyse de données, automatisation des tâches, programmation informatique) au service de la production des comptes annuels et consolidés. C’est cette expérience personnelle et ma passion pour l’informatique que je partage sur ce blog. Mon CV / Réalisations personnelles et projets informatiques / Ma collection / Me contacter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.