
L'extension se présente sous la forme d'une barre latérale divisé entre les données personnelles (en bas) et une partie au dessus qui affiche soit la liste de nos scripts et ceux de la communauté soit le script en cours d'édition soit le script en cours d'exécution. En plus de permettre de créer à la main ses scripts, CoScripter permet aussi de les créer à la volée en enregistrant nos clics et de les exporter ensuite sur le site Web officiel pour les partager avec les autres internautes !

Une vidéo montrant comment fonctionne CoScripter est disponible sur le site officiel. Dans la vidéo l'auteur automatise la recherche de maison dans Palo Alto.
En plus de l'aspect utile, CoScripter mérite que l'on y jette un œil grâce à son langage de programmation très intuitif : l'anglais. Contrairement à Greasemonkey (qui peut sûrement permettre d'atteindre le même résultat même si ce n'est pas forcément le même domaine) pas besoin de s'y connaître en Javascript pour créer ses scripts d'automatisation.
Sans plus attendre, voici un script que j'ai écrit pour chercher des billets de train en direction de Paris :
* go to "http://www.voyages-sncf.com/"
* Enter your "hometown" into the "Au départ de" textbox
* Enter "PARIS" into the "A destination de" textbox
* click the "Consulter les horaires" button
On remarquera de suite la simplicité du code ! Il suffit véritablement de savoir se débrouiller en anglais pour le comprendre. Faut-il vraiment que je vous explique ce qu'il se passe quand on exécute ce script ?
- Première ligne : le navigateur charge la page http://www.voyages-sncf.com/ ;
- Deuxième ligne : le mot-clé your est reconnu. Dans ce cas de figure, soit il est aussi présent dans vos informations personnelles (partie basse de la barre latérale) et CoScripter remplit le champ de texte
Au départ de
avec votre valeur enregistrée soit le script s'arrête en attendant que vous remplissiez vous même le champ de texte. - Troisième ligne : le champ de texte
A destination de
est rempli avec la valeur PARIS ; - Quatrième ligne : le formulaire est sous mis comme si on avait cliqué sur le bouton Consulter les horaires.
Comme vous avez pu le remarquer CoScripter est capable d'utiliser les données mises dans le cadre Personal Database en bas de la barre latérale. Ces données personnelles se remplisse de cette façon : nom de la valeur utilisable dans les scripts = valeur. Par exemple :
nom complet = Thomas Bassetto
site internet personnel = http://navigosaure.net
code postal = 76000
Il suffit ensuite de mettre le nom de la valeur entouré de guillemets après le mot your dans ses scripts pour que CoScripter pour que CoScripter utilise vos informations personelles.
Voyons comment modifier le script précédent pour indiquer au script de faire comme si on avait une Carte 12-15 SNCF (qui donne des réductions sur les voyages). N'oublions pas de rajouter dans nos données personnelles les lignes hometown = Rouen et numero carte smiles = 0025329999 (pour mon cas).
* go to "http://www.voyages-sncf.com/leisure/fr/launch/home/"
* click the "train" link
* enter your "hometown" into the "Départ" textbox
* enter "PARIS" into the "Arrivée" textbox
* turn on the "Voyage personnel"'s "Pour nous permettre de mieux répondre à vos attentes, indiquez-nous le motif de votre voyage :" radio button
* select "Jeune (12 à 25 ans)" from the "1e Passager"'s "Passager" listbox
* select "Carte 12-25" from the "1e Passager"'s "Carte commerciale" listbox
* select "Carte 12-25" from the "1e Passager"'s "Carte commerciale" listbox
* select "S'Miles Gagnez à voyager" from the "1e Passager"'s "Carte de fidelité" listbox
* enter your "numero carte smiles" into the "1e Passager"'s "N° de la carte" textbox
* click the "Rechercher maintenant" button
Ce script à d'abord été créé via CoScripter en fonction de mes clics, c'est donc lui qui s'est trouvé tout seul les noms des champs de texte tels que "1e Passager"'s "Carte commerciale
"... Mis à part ça, impressionnant non ? En fait non car si vous testez ce script vous vous apercevrez qu'il plante à l'avant-dernière ligne enter your "numero carte smiles" into the "1e Passager"'s "N° de la carte" textbox
. En effet ce champ de texte apparaît uniquement si un clic "humain" sélectionne la valeur S'Miles Gagnez à voyager
de la liste déroulante précédente. Maudit soit le site de la SNCF ! Espérons que les prochaines versions de CoScripter puissent mieux émuler nos clics. Rien ne vous empêche cependant de tester ce script pour voir le déroulement des premières étapes !
J'ai essayé de faire un autre script pour me connecter automatiquement sur le site de loterie en ligne lotree.com, puis jouer mes numéros favoris mais je n'ai pas encore réussi à le terminer car au moment où apparaît la grille, Firefox rame énormément. Je ne sais pas si la faute provient du site ou de l'extension mais je vous livre quand même le début du script car il fait appel à un nouvel élément :
* go to "lotree.com"
* enter your "pseudo lotree" into the first textbox
* enter your "mot de passe lotree" into the second textbox
* turn on the "Mémoriser mes identifiants" checkbox
* click the "go" button
* click the "Sélectionner toutes les newsletters" button
Le site étant mal codé le seul moyen de pouvoir bien remplir le formulaire de connexion est d'utiliser les mot-clés first et second. En effet CoScripter peut aussi compter le nombre de champ de texte (mais je ne sais pas si il se base sur l'ordre visuel ou l'ordre du code source, à mon avis le dernier).
Pour finir, quelques remarques :
- il y a encore quelques bugs (tout en bas) ;
- pour télécharger et installer CoScripter il faut un compte IBM (gratuit) ;
- n'oubliez pas de cocher le bouton Private lors de la création d'un script sinon il sera publié sur le site officiel ;
- pour mettre en pause le script il suffit de donner une instruction avec le mot-clé you. Pour plus d'informations, je vous encourage à consulter le manuel de programmation de CoScripter ;
- on pourrait imaginer que dans le futur CoScripter enregistre les actions de l'utilisateur puis les envoie en même temps que les rapports de bugs pour que les développeurs de Firefox puissent refaire exactement les manipulations. Cela simplifierait beaucoup les rapports de bugs !
Pour finir je vous propose un dernier script commenté, basé sur la démo officielle :
Après avoir ouvert ce script dans la barre latérale de CoScripter, la première action ci-dessous sera surlignée en vert. Appuyez sur le bouton "Step" pour passer à l'action suivante.
* go to "www.google.com"
La page d'accueil de google est maintenant affichée dans l'onglet actif de Firefox. La prochaine action indique à CoScripter de cliquer sur le lien 'Images". Lors du clic le lien sera aussi surligné en vert. Cliquez sur "Step" pour continuer.
* click the "Images" link
La prochaine action consiste à ajouter du texte dans le champ de recherche. Le texte n'est pas entré tant que l'on indique pas à CoScripter d'exécuter l'action suivante. Lors de l'ajout du texte, il sera surlignée en vert. Appuyez sur le bouton "Run" pour exécuter à la suite toutes les actions qu'ils restent à faire.
* enter "firefox" into the "Search Images" textbox
* click the "Search Images" button
* you click on an image to view (read the text below)
Vous remarquerez que CoScripter s'est arrêté à la dernière étape qui apparaît maintenant de couleur rouge. C'est le mot you qui indique à CoScripter que c'est à l'utilisateur d'effectuer ladite action et non à lui. Après l'avoir faite il ne vous reste plus qu'à cliquer sur le bouton "Run" (à condition qu'il reste quelquechose à exécuter).