Imacros : savoir si un annuaire est pertinent

Posted by on mars 14, 2011 in Focus, Mode d'emploi | 9 comments

Je souhaitais partager avec vous une petite macro sympathique qui permet de mesurer si un annuaire est pertinent sur une thématique donnée.

Vous allez voir, c’est assez simple. Avant de commencer, vous aurez besoin de l’extension Imacros sur Firefox. Si vous ne savez pas ce que c’est, jetez un oeil à mon article sur Imacros. Bien entendu, je vous donne une trame. Une fois que vous avez compris les étapes, rien ne vous empêche de faire votre test de votre coté.

Etape 1 : Trouver une liste d’annuaires

Avant de se lancer dans cette macro, il vous faut une liste d’annuaires. Je reviendrai dans un prochain article sur comment trouver de bons annuaires, je peux d’ores et déjà vous donner deux pistes :

Pour notre cas, nous allons utiliser la deuxième piste. Comme moi, vous ne connaissez sûrement pas ces annuaires, ils sont donc parfaits pour se poser la question de leur pertinence sur votre thématique.

Etape 2 : Mise en forme

La préparation est simple. Il vous suffit de prendre la liste des annuaires, de la mettre en forme dans un excel et d’enregistrer en CSV dans votre dossier Datasource. Vous devriez obtenir un fichier avec une seule colonne.

Etape 3 : Le concept :

Avant de préparer la macro, il est nécessaire de se creuser la tête. Ici, nous n’étudierons pas si l’annuaire est de qualité (je pars du principe qu’ils le sont) mais nous souhaitons savoir si l’annuaire a déjà un acquis dans la thématique sur laquelle nous souhaitons travailler, permettant ainsi une cohérence sémantique acquise.

Nous allons donc faire une commande très simple à partir de Google : Rechercher dans le site si mon mot clé thématique est déjà présent.

Vous avez trouvé ? En clair cela donne : site:adresse-annuaire + »mot clé »

On peut le faire à la main bien sur, mais dans le cas présent, nous avons 50 annuaires, nous allons donc automatiser ces recherches en créant une page par recherche.

Etape 4 : Préparation de la Macro :

Je ne suis pas un codeur fou. Je préfère démarrer la macro avec le mode enregistrement et corriger ensuite ce qui est à améliorer. Je vais donc commencer par faire une recherche sur Google avec un exemple bidon et voici la macro que je dois obtenir une fois stoppé sur la page de recherche (renommez la macro une fois enregistré) :

VERSION BUILD=7110203 RECORDER=FX
TAB T=1
URL GOTO=http://www.google.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT=site:www.google.fr+ »google »
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=NAME:btnG&&VALUE:Google<SP>Search

Petite précision si vous passez par Google.com :

  • Désactiver l’instant search AVANT d’enregistrer la Macro
  • Utilisez votre souris. Ca peut paraitre bête mais le clavier n’est pas l’ami d’Imacros, il lui faut une action.

Etape 5 : Passage de la Macro en mode automatisation :

Nous avons une macro nous permettant de faire une recherche unique. C’est bien mais des recherches multiples, c’est mieux. Pour cela, nous avons tous les ingrédients, nous allons donc relier le fichier CSV à notre macro et lui dire de nous afficher les résultats dans un onglet différent. Afin de ne pas cramer l’IP, nous allons ajouter une temporisation sur la recherche, certains blackhat vont sûrement rire aux éclats en me donnant leurs liens affiliés de proxy mais je préfère rester soft. Si vous savez faire mieux, vous n’avez sûrement pas besoin d’Imacros :p

Premier point : relier la macro au fichier CSV :

Désolé mais pour ce point, je ne peux pas faire plus simple. Je vous conseille d’avoir le wiki d’Imacros non loin de vous ou de chopper ça sur d’autres macros, voici comment appeler un CSV, à placer en début de macros :

SET !DATASOURCE annuenglish.csv
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}}

En Français, ça donne : donne moi la source (fichier csv qui s’appelle ici annuenglish.csv), ce fichier à une colonne seulement, et je souhaite créer une boucle sur la ligne (par défaut la ère).

Ensuite, comment gérer le fait que chaque recherche se fera dans un nouvel onglet :

TAB T={{!LOOP}}

On demande que la tabulation utilisé soit incrémenté à chaque boucle (commence par défaut à 1)

Enfin, comment insérer le contenu de notre colonne 1 dans notre recherche, et ouvrir un nouvel onglet :

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT= »site: »{{!COL1}}« +cooking »
TAB OPEN

La j’ai repris la ligne de recherche précédemment acquise et j’ai changé le contenu à partir de site: , j’ai pris le thème « cooking » pour ce test, à vous de choisir le votre.

Vous pouvez aussi ajouter cette notion afin de temporiser et ne pas cramer votre IP :

WAIT SECONDS=5

Voici ce que cela devrait donner au final :

VERSION BUILD=7110203 RECORDER=FX
SET !DATASOURCE annuenglish.csv
SET !DATASOURCE_COLUMNS 1
TAB T={{!LOOP}}
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=http://www.google.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT=site:{{!COL1}}« +cooking »
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=NAME:btnG&&VALUE:GoogleSearch
TAB OPEN
WAIT SECONDS=5

Simple non ? 😀

Conclusion

J’ai pris un thème très généraliste (cooking) donc j’ai des résultats partout, mais je vous assure que pour des recherches de niche, ça aide énormément et on gagne beaucoup de temps à trouver la bonne catégorie.

Ah oui, j’oubliais un fonctionnement basique d’Imacros : Jouer vous permet de lire la macro une fois, jouer (Répéter) vous permet de lancer la boucle. Ici, si vous avez 50 lignes, il faudra mettre un max de 51 fois.

Evidemment, tout cela manque de règle de base : est-ce que l’annuaire est de confiance ? Est-il payant (là c’est le cas) ? Le lien retour est-il obligatoire ? Etc. Mais ça, ce sera pour une autre fois.

J’espère que vous avez compris le principe de l’automatisation, cette méthode est un pretexte et une bonne initiation à ceux qui ne connaissent pas Imacros. Si cela vous plait, vous pouvez l’améliorer en récupérant la première URL de résultat sur Google pour l’enregistrer par la suite dans un fichier CSV. Vous pouvez aussi faire la même chose sur Yahoo.

Si vous avez des questions, vous connaissez le chemin vers les commentaires.

9 Comments

  1. Merci pour l’explication! Je ne me suis pas encore trop mis à imacro bien qu’on puisse certainement faire des choses intéressantes avec: la preuve avec ton article.
    Je le conserve pour faire des essais, cela va m’être utile.

  2. Merci pour cette explication très complète !

    Je recherchais justement des moyens rapides de trouver des annuaires qualifiés.
    Il reste maintenant la partie pour chercher des annuaires de qualités. Merci pour la liste Atypicom et j’attends avec impatience votre prochain article sur comment trouver un annuaire de qualité 🙂

  3. Comme John, imacro est un outil que je n’ai pas encore eu l’occasion de tester, mais à force de lire des articles à son sujet, je vais bien y arriver. Les possibilités ont l’air d’être vraiment importantes !

  4. Merci pour cette explication. Ce la fait un moment que je dois me sortir les doigts pour regarder imacro.
    Je vais profiter d’un week end pluvieux et de ton article pour me lancer. Les questions risquent de pleuvoir elles aussi, mais je sais que tu n’es pas avares de conseil.
    😉
    Wilfried

  5. il faut vraiment que je me penche serieusement sur imarcro et aussi et surtout que je me pause 5 mim pour comprendre son fonctionnement

  6. Cela fait un moment que je cherche, peut-être la réponse se trouve rapidement pour l’expert, mais pour le non-initié, on rame un peu.

    Quel est le code qu’il faut mettre à la fin d’une macro pour en appeler une autre automatique. Merci pour la réponse.

  7. @Eric : as tu testé ça ? http://wiki.imacros.net/iimPlay()
    Je n’ai jamais eu a le faire par défaut je copie colle le code entier dans une macro. N’hesite pas a détailler un peu plus ton besoin 😉 a+

  8. @Vincent
    En faite on est limité à 500 lignes de code dans une macro.
    Et j’aimerais à la fin passer automatiquement sur une autre.

  9. @Eric : ok, dans ce cas je pense qu’il faut avoir des notions de javascript pour lancer ça (cf mon précédent commentaire)