Php - Détecter les bots (google, alexa, ask, etc.)
ARCHIVE
La plupart des moteurs de recherche utilise un "bot" qui parcourt vos pages. Pour diverses raisons, vous pouvez être amené à devoir détecter ces robots. Cette fonction php "is_bot" vous permettra de les détecter.
Usage :
<?php $boolean = is_bot(); ?>La fonction retourne true s'il s'agit d'un bot, ou false s'il s'agit d'un internaute "normal". La fonction :
<?php function is_bot(){ $botlist = array( "Teoma", "alexa", "froogle", "inktomi", "looksmart", "URL_Spider_SQL", "Firefly", "NationalDirectory", "Ask Jeeves", "TECNOSEEK", "InfoSeek", "WebFindBot", "girafabot", "crawler", "www.galaxy.com", "Googlebot", "Scooter", "Slurp", "appie", "FAST", "WebBug", "Spade", "ZyBorg", "rabaz"); foreach($botlist as $bot) { if(ereg($bot, $_SERVER['HTTP_USER_AGENT']))return true; } } ?>A tout hasard, je précise tout de même que google n'apprécie pas beaucoup les contenus différents pour son bot et l'internaute. A utiliser, donc, avec parcimonie ou par soucis statistique. En détails fonctionnels, la fonction définit un tableau contenant une liste d'expressions contenus dans la plupart des bots d'indexation, puis parcourt le tableau en comparant chaque entrée à l'user_agent de l'utilisateur (qui est, d'ailleurs, facilement modifiable via de nombreux plugin firefox, ou chrome)