Détection des bots


sff
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 336
Inscription: 2 Fév 2005

Détection des bots

Message le Sam Mar 15, 2008 19:28

Bonjours j'aimerai détecté les bots sur mon forum, pour cela j'ai fais un petit code. Je sais pas si ca vous parrait correct :

Code: Tout sélectionner
$bot ="<br>&nbsp;&nbsp;&nbsp;Bots sur le forum : ";

for($i=0; $i<mysql_num_rows($countinvites); $i++) {
   
   switch (getenv("HTTP_USER_AGENT" )) {
   case 'Googlebot': echo $bot.'| <b><span class="rose2">GoogleBot</span></b> | '; break;
   case 'Yahoo!': echo $bot.'| <b><span class="rose2">Yahoo!</span></b> | '; break;
   case 'AskJeeves': echo $bot.'| <b><span class="rose2">AskJeeves</span></b> | '; break;
   case 'MSNBot': echo $bot.'| <b><span class="rose2">MSNBot</span></b> | '; break;
   }
}


Pensez vous que ca peut fonctionner?

Dan_A
WRInaute discret
WRInaute discret
 
Messages: 183
Inscription: 21 Déc 2005

Message le Sam Mar 15, 2008 21:55

Non, car l'User Agent n'est pas Googlebot, Yahoo...
Il faut éventuellement rechercher la présence de Googlebot dans la variable d'environnement.
http://www.google.fr/search?hl=fr&q=Use ... des+robots
http://www.google.fr/search?hl=fr&q=d%C ... robots+php

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2678
Inscription: 13 Fév 2004

Re: Détection des bots

Message le Sam Mar 15, 2008 22:55

sff a écrit:Bonjours j'aimerai détecté les bots sur mon forum, pour cela j'ai fais un petit code. Je sais pas si ca vous parrait correct :

Code: Tout sélectionner
$bot ="<br>&nbsp;&nbsp;&nbsp;Bots sur le forum : ";

for($i=0; $i<mysql_num_rows($countinvites); $i++) {
   
   switch (getenv("HTTP_USER_AGENT" )) {
   case 'Googlebot': echo $bot.'| <b><span class="rose2">GoogleBot</span></b> | '; break;
   case 'Yahoo!': echo $bot.'| <b><span class="rose2">Yahoo!</span></b> | '; break;
   case 'AskJeeves': echo $bot.'| <b><span class="rose2">AskJeeves</span></b> | '; break;
   case 'MSNBot': echo $bot.'| <b><span class="rose2">MSNBot</span></b> | '; break;
   }
}


Pensez vous que ca peut fonctionner?


Non... Déjà, le User-Agent n'est pas aussi court que ça, il faut que tu utilises des regexps pour voir si le user agent *contient* quelque chose qui te permet de reconnaître le robot, pas strictement égal (même en utilisant les user-agents complets tu t'exposes au problème des nouvelles versions etc.).

Ensuite la question est de savoir si tu veux identifier des robots particuliers, ou tous les robots en général. Dans le second cas, la meilleure méthode est de faire en sorte que ton robots.txt soit géré par un script dynamique qui va noter "qui" le consulte (UA et/ou IP), ensuite tu peux comparer à la liste que tu construits comme ça (via un BDD).

Dans le premier cas, ben bon courage pour recenser tout le monde!

Jacques.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

  • Détection de pages similaires
    Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.
  • Test de lien (type de redirection)
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).


Qui est en ligne

Utilisateurs parcourant ce forum: sequvafa et 0 invités