iMacro et Oscaar : inscriptions d’annuaires semi-automatisées

Oscaar est un script qui a été développé par Kevin Richard. Il présente l’énorme avantage de pouvoir fonctionner comme un Bookmark JavaScript et d’être compatible avec du spin. Il contient un fichier de configuration, des fichiers .txt associés au projet qui contiendront les informations nécessaires à l’inscription dans les annuaires (description, titre, auteur, email, etc.). A la base, il est destiné à poser des commentaires sur des blogs. Vous avez une syntaxe simple qui permet de définir le nom d’un champ, son type (input, textarea, etc.) et le fichier .txt correspondant. C’est donc du semi-automatisé.

J’ai détourné son utilisation afin de pouvoir inscrire le site de mes clients dans une cinquantaine d’annuaires de qualité sélectionnés spécialement pour varier mes sources de liens et apporter du jus. Autant dire que c’est très chronophage. 50 annuaires * x clients c’est lourd. D’autant plus que la majorité des annuaires que j’utilise demandent un nom, prénom, une ville, parfois même une adresse pour géolocaliser l’inscription. Vous pouvez aller plus loin et modifier Oscaar de façon à ce qu’il récupère toutes ces informations de votre base de clients par exemple.  Les possibilités sont nombreuses.

 

imacro

 

iMacro quant à lui peut faire beaucoup de choses. Il permet d’automatiser des tâches justement chronophages. Je l’utilise comme module Firefox mais il existe sur Chrome et en version standalone il me semble. Vous l’avez compris, nous utiliserons iMacro combiné à Oscaar pour automatiser encore plus le processus d’inscription dans les annuaires. Comme le manuel devient de plus en plus de mise avec les annuaires de ce type, je ne valide jamais une inscription avec iMacro. Je me laisse le temps de repasser dessus pour voir si tout est bon.

 

processus inscription

 

iMacro est compatible avec le JavaScript. Il peut lancer des fonctions JavaScript sur les pages qu’il parcoure. C’est un bon point car Oscaar fonctionne avec un Bookmark JavaScript. Il injecte jQuery ainsi que le code nécessaire à la détection des champs :

javascript:var s = document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var t = document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/po.php?ts='+new Date().getTime()+'&projet=NOM_PROJET&url='+location.href;void(0);

Voici la iMacro que j’utilise (iMacro d’exemple pour 5 annuaires au hasard) :

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
TAB CLOSEALLOTHERS
URL GOTO=http://annuaire.indexweb.info/ajouter
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:smt_progress ATTR=NAME:go_step_2&&VALUE:J'accepte<SP>ces<SP>conditions,<SP>et<SP>je<SP>souhaite<SP>a*
URL GOTO=javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var%20t%20=%20document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/?ts='+new%20Date().getTime()+'&projet=NOM_PROJET&url='+location.href;void(0);
URL GOTO=javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var%20t%20=%20document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/testcat.js';void(0);
TAB OPEN
TAB T=2
URL GOTO=http://www.gralon.net/inscription.htm
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:inscription ATTR=ID:sexe
TAG POS=1 TYPE=SELECT FORM=NAME:inscription ATTR=NAME:anniannee CONTENT=%1980
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:inscription ATTR=NAME:mcgv CONTENT=YES
URL GOTO=javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var%20t%20=%20document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/?ts='+new%20Date().getTime()+'&projet=NOM_PROJET&url='+location.href;void(0);
TAB OPEN
TAB T=3
URL GOTO=http://taggyo.com/add
TAG POS=1 TYPE=SPAN ATTR=ONCLICK:showhide('pre_submit');<SP>showhide('form_submit');<SP>return<SP>false;&&ID:go_submit&&TXT:OK<SP>!<SP>Je<SP>suis<SP>prêt<SP>à<SP>accéder<SP>au<SP>formu*
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:add ATTR=NAME:accept CONTENT=YES
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:add ATTR=NAME:no_geo CONTENT=YES
URL GOTO=javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var%20t%20=%20document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/?ts='+new%20Date().getTime()+'&projet=NOM_PROJET&url='+location.href;void(0);
TAB OPEN
TAB T=4
URL GOTO=http://www.oubah.com/dir/form/new/heading/dir
URL GOTO=javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var%20t%20=%20document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/?ts='+new%20Date().getTime()+'&projet=NOM_PROJET&url='+location.href;void(0);
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:http://www.oubah.com/dir/form/new ATTR=NAME:new_account CONTENT=YES
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:http://www.oubah.com/dir/form/new ATTR=ID:cgu CONTENT=YES
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:http://www.oubah.com/dir/form/new ATTR=ID:owner CONTENT=NO
TAB OPEN
TAB T=5
URL GOTO=http://www.liensutiles.org/suggestion.php
URL GOTO=javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://code.jquery.com/jquery-latest.min.js';var%20t%20=%20document.createElement('script');t.type='text/javascript';document.body.appendChild(t);t.src='http://URL_DE_VOTRE_OSCAAR/?ts='+new%20Date().getTime()+'&projet=NOM_PROJET&url='+location.href;void(0);

roue dantée

 

L’opération est simple, iMacro ouvre le premier annuaire, lance Oscaar et exécute certaines actions si nécessaire. Puis il ouvre un second onglet, et ainsi de suite. Oscaar n’étant pas destiné à ça, il ne peut pas sélectionner une catégorie d’un menu déroulant. La solution est de faire un script qui renvoi la catégorie de votre client intégrée au script jQuery suivant :

$("select[name*='listecat'] option").each(function(){if($(this).text().toLowerCase().indexOf("immobilier")>=0){$(this).attr("selected", "selected");}});

Cela a pour effet de sélectionner la première catégorie qui contient l’occurrence de immobilier dans mon cas. Il reste juste à affiner ça lors de la vérification visuelle de l’inscription. Vous noterez que je l’utilise pour IndexWeb.

Le fichier de configuration utilisé pour ces annuaires est le suivant :

prenom|input|smt_fnm;prenom
nom|input|smt_lnm;nom;name;f_1
mail|input|mail;email;smt_eml;f_6
password|input|smt_pwd;smt_pwd_cnf;passw1;passw2
titre|input|smt_ttl
ville|input|sville
pseudo|input|pseudo
urls|input|site;url;Url;homepage;link;#url;f_4
description|textarea|smt_dsc;dsc_longue;desc;summary;f_5
titre|input|titre;dsc_courte;title;f_3
keyword|input|motclef1;anchor;thema_a;proposalForKeywords

Chaque champ correspond à un fichier txt d’Oscaar :

fichiers oscaar

Détaillons un peu la procédure pour le premier annuaire :

macro oscaar

La ligne 3 de la macro permet de fermer tous les autres onglets du navigateur puis la ligne 4 affiche la page d’inscription dans l’annuaire d’IndexWeb. Le code dans le bloc rouge est simplement un clic sur un input pour accepter les conditions d’utilisations de l’annuaire. Le bloc bleu lance Oscaar pour remplir tous les champs. Notez que le code appelé est le code du bookmark mais j’ai remplacé les espaces par %20, son équivalent encodé. Enfin, le bloc vert lance le script de sélection de la catégorie.

La solution fonctionne évidemment uniquement pour les personnes qui ont Oscaar. Il est payant et disponible sur le lien donné en début d’article.

Les bases de Responsive Web Design
Personnalisation de l'administration de WordPress pour vos clients

8 Comments on “iMacro et Oscaar : inscriptions d’annuaires semi-automatisées”

  1. Bonjour Jérôme,

    je me pose une question : si tu dois faire un script imacros pour 50 annuaires, pour peu que le nombre de champs, leurs noms et le moyen de connexion sont différents, tu te tapes 50 paragraphes imacros et/ou oscaar ?

    Si tu n’as pas 10 ou 20 sites à référencer, rien que faire ça sur imacros, c’est super chronophage ?

    Et dans le cas d’un captcha présent dans le formulaire, ça se passe comment ?

    loran

    1. Il y a un paragraphe pour chaque annuaire oui. Les annuaires que j’utilise sont tous très spécifique. Il est difficile d’automatiser complètement l’inscription de ma liste pour des logiciels tels que zenno poster ou sick submitter. Le retour sur investissement n’est pas assez fort.

      Une fois que tu as ta macro qui tourne sur les 50 annuaires, c’est bon. Les seuls paramètres qui changent sont les fichiers de configuration du site (titre, desc, url, etc.).

      Si il y a un captcha, je le met à la main car je vérifie mes inscriptions. Mais iMacro peut casser les captcha : http://www.beatcaptchas.com/imacroscode.html
      Ce n’était pas dans mes priorités donc je n’ai pas cherché plus loin.

  2. Tout d’abord Jerome, je te souhaite une excellente année 2013 avec la concrétisation de tous tes projets tant pro que perso! Et bien sur les 3S : Santé, Sexe et SEO ^^

    Merci pour cet article très complet sur ces outils indispensables à l’automatisation de certaines taches pour le SEO, notamment l’inscription aux annuaires!

    J’avoue ne pas m’être encore penché sur ces sujets mais ils font partie de mes priorités d’ici le printemps. Je vais donc revenir sur ton article TRES vite ;)

  3. Bonjour,
    Tout cela est vraiment très ingénieux, j’ai bien envie de tester car pour moi aussi les inscriptions dans les annuaires sont très chronophages donc si je peux gagner un peu (voir beaucoup) de temps avec ça, c’est très volontiers. Par contre je vais devoir demander de l’aide parce que je ne suis pas très calé dans tout ce qui est programmation.

  4. Astucieux ! merci pour la présentation de cette association turbo, iMacro combiné à Oscaar pour automatiser le processus d’inscription dans les annuaires, par ailleurs je ne connais pas l’astuce pour les captchas

  5. Yes merci pour le partage. Je vais le tester dans la foulée pour mes inscriptions annuaires, j’en ai justement un lot à effectuer la semaine prochaine ! Gagner du temps, surtout pour ce genre de tache est vraiment la meilleure des choses qu’il soit ! ;) Quoi de plus ingrat que les annuaires, hein ??

  6. Hello, je suis tombé sur ton blog par hasard, j’ai plusieurs annuaire ou je me retrouve avec des champs a cliquer de ce type la :

    TAG POS=1 TYPE=SPAN ATTR=ID::cg.label
    TAG POS=1 TYPE=SPAN ATTR=ID::dm.label
    TAG POS=1 TYPE=SPAN ATTR=ID::fp.label
    TAG POS=1 TYPE=SPAN ATTR=ID::ik.label
    TAG POS=1 TYPE=SPAN ATTR=ID::m8.label
    TAG POS=1 TYPE=SPAN ATTR=ID::qt.label

    Avec des ATTRIBUT ID qui me semblent aléatoire.
    Sachant que le nombre de bouton a cliquer est aussi aléatoire je me demandais si tu connaissais une astuce pour bypasser ca sans le clickmode.

    Merci d’avance et super Article au passage ;)

    1. Salut,

      J’adapte mes inscriptions pour tous les annuaires mais je n’ai pas cherché de parades pour les annuaires qui ont des id dynamiques. C’est un système anti spam après tout ;)
      Tu peux regarder si il y a une classe fixe mais j’en doute.

Laisser un commentaire

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