29 March 2024


formation avancée au référencement

Posts Tagged ‘script’

Content spinning : The French Spinner

Mardi, juin 8th, 2010

Bon cela fait un petit moment que je n’avais pas posté d’article sur mon blog, non pas par manque d’envie, mais plus par manque de temps….
En effet, ces derniers temps, je suis très occupé par différents projets, et notamment un sur lequel je travaille en binôme avec Tiger. Vous en avez certainement déjà entendu parler sur le blog de Rudy, qui a annoncé quelques projets qui allaient voir le jour sous peu, et qui au passage lance un nouveau blog à caractère didactique : SEO Guide.
Bref, voici pour la petite histoire….

Content spinning, à la mode en ce moment

Vous en entendez parler partout, c’est un mot qui revient sur de nombreux blogs, et pour cause, cette technique permet de faire gagner énormément de temps pour un référencement de bonne qualité.
Le white hat pourrait très bien s’en servir, il n’y a rien de profondément dark dans cette technique, à part le côté automatisation.
Il est très important de noter qu’en français, le content spinning 100% automatique est impossible (ou presque).

Comment faire du content spinning ?

L’idée est assez simple en elle-même, mais difficile à mettre en place.
Il faut, pour un texte donné, ajouter des synonymes, des expressions, sur un ou plusieurs niveaux, afin d’obtenir un texte unique une fois celui-ci passé dans une moulinette à contenu.
Prenons un exemple…

Texte de départ

1
Un texte simple à convertir en texte spinné

Texte spinné

1
Un {texte|écrit} {{très|ultra} simple|facile|simpliste} à {convertir|transformer} en {texte|contenu} spinnable

Vous remarquerez que les synonymes sont entourés d’accolades et séparés par des pipes (le signe |). On peut fonctionner sur plusieurs niveaux, comme dans cette portion {{très|ultra} simple|facile|simpliste}, où l’on remarquera la présence d’un sous-groupe dans le groupe parent.
Une fois le contenu spinnable passé dans le script générateur de texte, vous obtiendrez autant de textes uniques que les synonymes le permettent.
Il est clair que sur un échantillon comme celui que je vous ai donné, les résultats seront pauvres, mais sur un extrait de 300 ou 500 mots, les résultats sont très appréciables.

The French Spinner

Le content spinning en français est assez délicat, car on connaît tous les difficultés de notre langue.. Je me suis donc penché un peu sur le problème pour arriver à une solution assez fiable, qui permet de faire le gros du travail en amont et donne une assistance au spinning en aval pour obtenir un résultat plutôt satisfaisant.
Il s’agit d’un script de content spinning que j’ai développé, qui apprend les expressions et permet d’accélérer le travail.
Le script n’en est qu’à ses débuts, mais il est assez prometteur… Je vous laisse voir la démo ci-dessous ;)

Conclusion sur le content spinning en français

J’espère que cela vous a plu !
L’outil n’est pas encore complètement finalisé ni opérationnel, mais je peux déjà vous annoncer qu’il fera partie des services proposés dans le cadre de notre projet.
Imaginez simplement la facilité avec laquelle vous pourrez créer des descriptions uniques pour les annuaires pour vos opérations de netlinking… Des communiqués de presse qui ne seront pas refusés pour cause de duplicate content et la joie de tous ces webmasters qui auront du bon contenu pour leurs sites… Tout le monde y gagne !

Cet outil apprend au fur et à mesure que des textes lui sont soumis afin de le rendre de plus en plus pertinent.
Je suis très preneur de vos suggestions si vous en avez, alors n’hésitez pas ;)

Failles XSS : encoder les urls

Lundi, février 2nd, 2009

Nombreux sont ceux qui ont lu les articles sur les failles XSS, si précieuses pour récupérer des liens de sites .gov et autres .edu, et qui perdent parfois un temps fou à les transcoder pour les faire indexer rapidement.

Pour rappel, les failles XSS (Cross Site Scripting) permettent d’injecter du code dans une page donnée mal sécurisée, via un paramètre de l’url.
Dans le cas présent, nous ne cherchons qu’à déposer un lien qui sera invisible pour l’administrateur du site qui ne regarde pas ses logs. Cependant, les applications peuvent être tout à fait meurtrières pour les sites visés. Attention donc à veiller à sécuriser vos sites ;)

On connaît plusieurs techniques pour faire indexer ces liens : les caching proxies, les liens cachés dans les sites qui ne nous appartiennent pas, les pages “satellites” (qu’elles servent encore à quelque chose :D ) etc…

Mais la problématique demeure… Comment aller plus vite pour encoder les urls et les balancer sur le web ?
Aujourd’hui c’est un petit outil très simple que je vous propose, et qui fera gagner du temps à ceux qui ne l’ont pas déjà développé.

Il s’agit d’un script PHP simplissime qui vous présente un formulaire à trois champs dans lesquels il vous suffit d’entrer l’url de la page à scripter avec le paramètre qui nous intéresse laissé vide et en dernier (cf. exemple), l’url de la page que vous souhaitez linker et l’ancre du lien.
Le résultat sera le code source du lien à ajouter (ou plutôt à injecter) dans les pages que l’on vise.

Le script d’encodage est en téléchargement libre ici : XSS encoding script
et en démo sur cette page : Démo XSS encoding script

A vous maintenant de linker les pages que vous avez indexées pour les populariser :D

Générer du contenu avec les chaînes de Markov

Mardi, novembre 25th, 2008

Toujours en quête de contenu unique et ciblé, le webmaster est.
De nombreux moyens pour en trouver, développer il doit.
Maître Yoda, codez-moi un script de chaines de Markov !

Yoda, code moi une solution de génération de contenu

Alors comment ça se passe ?
Je ne vais pas entrer dans les explications mathématiques qui me dépassent, mais plutôt tenter d'expliquer comment cela fonctionne et quels en sont les intérêts.

En gros, et pour les nuls comme moi, les textes qu'on passe à la moulinette [inline] [/inline] sont rendus uniques car on modifie l'ordre des mots en tentant de conserver certaines suites. En fait, c'est un peu comme mettre le contenu dans un panier à salade, essorer avec plus ou moins de violence (ça c'est ce que certains appellent la granulométrie), et tout ressortir d'un coup en sachant déjà quel serait l'ordre des mots. Les chaînes de Markov, c'est la prédiction du futur sans connaître le passé :)
Voilà pour l'explication, vous l'aurez compris, je suis incapable de vous expliquer correctement comment cela fonctionne.... mais j'aime bien le résultat !

Alors, si on passait à l'action....
Pas mal de gens recherchent ce genre de scripts sur Internet, et il en existe des plus ou moins bons, et des plus ou moins paramétrables.
A mes débuts, j'ai utilisé le code ci-dessous pour réécrire mes contenus, avec succès...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
/*
------------------
Ecrit par Levi Thornton @ Boogybonbon.com, Tous droits réservés, alors n'espérez même pas supprimer cette ligne ou faire croire que c'est vous qui l'avez écrit !
Note de BlackMelvyn: c'est une traduction, je respecte son copyright, et c'est pas moi qui l'ai codé ;)
 
Si vous aimez ce script faites un BL vers http://www.boogybonbon.com/ (Note: mais le domaine est mort...)
------------------
*/
class clsMarkov {
  var $wordList= array();
  var $termTree = array();
 
  function makeList($string) {
    $string = strtolower($string);
    $string =  preg_replace("/[^A-z0-9\s]/i", "", $string);
     preg_match_all("/[A-z0-9]+\S/", $string, $op);
     $this->wordList = $op[0];
     return $this->wordList;
  }
 
  function buildTree() {
    // $searchList = $this->wordList;
    $arraySize = count($this->wordList);
    while ($ns!=$arraySize) {
      $termRoot = current($this->wordList);
      $termKeys = array_keys($this->wordList,$termRoot);
      foreach ($termKeys as $key=>$num) {
        $this->termTree[$termRoot][] = $this->wordList[($num+1)];
      }
      $this->termTree[$termRoot] = array_unique($this->termTree[$termRoot]);
      next($this->wordList);
      $ns++;
    }
 
  }
 
  function phraseWriter($seed, $words) {
    $results = $seed = strtolower($seed);
    if($this->termTree[$seed]) {
    while($nn<=$words) {
      $rndseed = rand(0,count($this->termTree[$seed]));
      if($this->termTree[$seed][$rndseed]) {
        $results .= ' '.$this->termTree[$seed][$rndseed];
        $seed = $this->termTree[$seed][$rndseed];
        $nn++;
      }
    }
    return $results;
    } else return 'No seed match';
  }
}
?>

Voic comment ce script s'utilise

1
2
3
4
5
6
7
8
<?php
$string = "Plus vous avez de mots et meilleur sera le résultat de votre opération sur le texte d'origine
Si vous n'y arrivez pas, il faut persister";
$tmp = new clsMarkov();
$tmp->makeList($string);
$tmp->buildTree();
print $tmp->phraseWriter('vous', 10); // phraseWriter(mot de base, nombre de mots dans le résultat)
?>

Bon voilà, vous avez maintenant le pouvoir de générer un nouveau contenu unique, facilement...
Alors il ne vous reste plus qu'à coder votre meilleur script de scraping et de commencer à vous faire des ronds avec la longue traine ;)
Pour être utile à l'internaute, il est indispensable de faire un bon cloaking afin que le contenu généré ne soit destiné qu'aux moteurs, et le contenu clair et lisible aux internautes recherchant de bonnes informations.

Chapitre suivant dans la série génération de contenu : le scraping, comment ça marche ;)

Libérer AdSense dans les annuaires Freeglobes

Mardi, novembre 18th, 2008

Comme premier article, j'ai choisi de vous parler de Freeglobes.

Ce script d'annuaire est vraiment bien fait : il est SEO-friendly (URL rewriting, agrégation des flux RSS etc...), il utilise un système de template (en l'occurence Smarty), ce qui permet une personnalisation facile à prendre en main, et les fonctionnalités supplémentaires sont gérées par un système de plugins très bien fait, basé sur celui du fameux script de blogging Dotclear.

C'est sur ce dernier point que je vais m'attarder pour vous présenter le résultat de quelques lignes de codes assemblées et quelques dizaines de minutes de travail...

Freeglobes est très bien fait pour prendre en main rapidement un annuaire, peu de modifications, pas ou peu d'interventions dans le code source... bref, le rêve de nombreux webmasters qui veulent faire des annuaires en peu de temps et gagner un max de BLs.

Le seul problème c'est que notre cher copain Google n'aime pas trop les annuaires qui servent à faire seulement du lien... Logique me répondrez-vous ! Alors dans ce cas, autant faire du trafic et le convertir en euros :)

C'est là que j'interviens :) Le plugin AdSense est relativement basique et ne permet pas de faire beaucoup de modification : les réglages sont limités au format 468x60 et au mode text_image (alternance de texte ou d'images dans la bannière).

Or, il existe certains endroits bien plus "chauds" pour les clics, et qu'il faut optimiser du mieux que l'on peut... C'est pour ça que j'ai recodé le plugin en ajoutant tout un set de fonctionnalités supplémentaires.

Après avoir installé le plugin, vous pourrez donc choisir le format, le type d'annonces diffusées, la couleur du texte, du titre de l'annonce, de l'url de l'annonceur etc... Bref, un tweak complet...

Vous pouvez voir le plugin en démo sur mon annuaire de sites de mode. Regardez le source et vous verrez qu'il est différent pour chaque ensemble (skycrapper à gauche et banners au centre).

L'utilisation est très simple, il suffit d'insérer le tag du plugin légèrement modifié, de la manière suivante :

<{plugin name='adsense' call='showAds' parameters='*type*,*format*,*radius*,*link*,*adtext*,*bg*,*border*,*url*'}>
en remplaçant les mots entre * par les valeurs adéquates par exemple :
<{plugin name='adsense' call='showAds' parameters='text,468x60,0.6,fefefe,fefefe,000000,000000,cccccc'}>
Pour le reste, il suffit de télécharger le plugin et de vous laisser guider ;)

» freeglobes_adsense_plugin.zip