Réutiliser les sessions
Une session est le résultat de la navigation sur un site web, et se compose de la page, de l'URL de la page, des cookies et des authentifications obtenus au cours de la session. Toutefois, l'obtention d'une session où les informations souhaitées sont facilement accessible peut nécessiter un certain nombre d'étapes de navigation telles que la connexion.
Si un robot est utilisé assez fréquemment et que le temps de réponse doit être très court, il peut être nécessaire de consacrer plus de temps que prévu à une session appropriée dans le robot. Toutefois, si la session est obtenue une fois, puis partagée entre les robots et les exécutions de robots, la gain de temps est considérable.
Deux étapes sont utilisées pour la réutilisation des sessions :
- L'activité « Enregistrer une session » : Enregistre une session dans une variable.
- L'activité « Restaurer une session » : Restaure une session à partir d'une variable.
Exemple
Supposons un robot qui se connecte à un site web pour collecter et renvoyer des données. Cependant, les données que nous cherchons à recueillir sont réparties sur de nombreuses pages liées, par exemple, avec un lien vers la page suivante. Nous voulons que le premier appel du robot se connecte au site et renvoie les données de la première page, et chaque appel suivant doit ensuite renvoyer un nouveau segment de données (la page suivante). Nous voulons partager la session d'un utilisateur connecté entre les appels de robot, mais nous voulons aussi nous souvenir de la quantité de données que nous avons renvoyées. Le robot pourrait ressembler à l'exemple suivant.

Lorsque le robot est appelé, il tente d'abord de restaurer une session à partir d'une variable d'entrée. S'il en existe une, cette session est utilisée et l'étape suivante consiste à cliquer sur un lien de page suivante pour obtenir une nouvelle page de données. Si aucune session n'est envoyée au robot, l'étape échoue et la deuxième alternative est exécutée, qui effectue la connexion et navigue également vers la page correspondante du site où les données peuvent être trouvées.
Si l'exécution du robot passe par l'une des deux branches alternatives, il atteint l'étape d'enregistrement de la session. Cela permet d'enregistrer la session pour l'utiliser la prochaine fois que le robot est appelé. Mais pour que cela soit possible, nous devons retourner la session à l'appelant du robot. Cela est traité par l'étape Renvoyer la session qui est une étape normale Valeur renvoyée qui renvoie la valeur d'une variable contenant la session (la variable est d'un type ayant un attribut de type Session dans lequel l'étape Enregistrer une session a stocké la session). Enfin, si le robot atteint la fin des données (aucun lien vers la page suivante n'existe sur la page), l'étape « Cliquer sur suivant' » définie produit une erreur. Le robot l'ignore, car nous avons défini Gestion des erreurs sur « Ignorer les étapes suivantes », mais si nous avons une coche dans l'exception API, l'appelant obtiendra une exception. Par exemple, si le robot est appelé depuis Java, il utilise la coche pour savoir que la fin des données a été atteinte.
Une fois la session enregistrée, les étapes restantes du robot permettent d'extraire les données de la page, par exemple, en passant en boucle sur un tableau et en renvoyant une valeur pour chaque ligne.
Notez que dans Design Studio, l'exécution du robot n'est pas contrôlée par le flux naturel d'une exécution de robot. Elle est contrôlée par l'interaction de l'utilisateur.
-
Pour stocker la session, sélectionnez l'étape qui suit l'étape Enregistrer une session.
-
Sélectionnez l'activité Restaurer une session.