Reconnaître un robot

Le
Julien PLEE
Bonjour,

Pour établir une session par cookie, mon script envoie un cookie contenant
l'identité de la session et un rafraichissement de la page si aucun cookie
n'existe, puis si aucun cookie n'est toujours pas reconnu, un message
d'avertissement + la page ou le message seul si la page en question
necessite absolument les cookies.
Mon problème est ainsi de reconnaître la navigation des robots qui, je le
suppose, ne gèrent pas les cookies.
Pour ceux ci, je pense qu'il est préférable qu'aucun message n'apparaissent,
voire même qu'aucun rafraichissement ne soit fait, car je ne sais pas si un
rafraichissement provoque des perturbations au niveau de l'interprétation
par les robots d'indexation.

Ainsi, quel peut-être le meilleur moyen de reconnaître un robot ? (un mot
clé dans le HTTP_USER_AGENT ?)

Au départ, pour contourner le problème que peuvent poser les cookies, je
pensais inclure le numéros de session dans le PATH_INFO, cependant celà
aurait créé un problème encore plus grand pour considérer les robots et les
internautes provenant de moteurs de recherche.

Merci par avance,


Julien
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Patrick
Le #437720
Mon problème est ainsi de
reconnaître la navigation des robots qui, je le suppose, ne gèrent pas
les cookies.


Rien ne les empêche en tout cas de les gérer.

Ainsi, quel peut-être le meilleur moyen de reconnaître un robot ? (un
mot clé dans le HTTP_USER_AGENT ?)


C'est une possibilité, mais il faut maintenir une liste exhaustive de
toutes les chaines apparaissant dans User-Agent qui sont des robots.
Et vous êtes sûr donc d'en laisser passer.

Vous pouvez aussi regarder qui télécharge /robots.txt y a que les robots
qui font ca, mais pas tous.

Vous pouvez aussi faire du comportementaliste, en gros voir combien de
temps sépare deux requêtes (de la même IP, du même User-Agent, etc...),
faire des statistiques (moyennes, etc...) et si c'est trop faible,
estimer que c'est un robot.

Bref, y a aucune façon sûre et définitive à 100%

Patrick.

Publicité
Poster une réponse
Anonyme