Admin Admin
Mensajes : 36 Fecha de inscripción : 17/09/2011
| Tema: Detector de Bots, Spider y Crawlers con php Miér Oct 12, 2011 11:14 am | |
| Algunas veces necesitamos saber cuales son visitas reales y cuales pertenecen a spiders, bots o crawlers. Esta información es interesante para saber el tráfico real de nuestro sitio web. Este código permitirá captar los crawlers y spiders predeterminados y sesgar la visita y sumarlo a un campo. Se puede ampliar la aplicación y enviar un mail cada vez que recibamos una visita de un bot. En este caso suma la visita en el campo bots.´ - Código:
-
<!-- articulo escogido de codigolandia.com --> <?php $robot[] = "googlebot"; $robot[] = "google"; $robot[] = "mediapartners"; $robot[] = "msnbot"; $robot[] = "msn"; $robot[] = "overture"; $robot[] = "lycos"; $robot[] = "seek"; $robot[] = "inktomi"; $robot[] = "yahoo"; $robot[] = "slurp"; $robot[] = "altavista"; $robot[] = "alexa"; $robot[] = "crawler"; $isRobot=false; foreach($robot as $bot){ $str = strtolower($_SERVER['HTTP_USER_AGENT']); if (strpos($str, $bot) !== false ){ $isRobot=true; break; } }
//visitas if($isRobot){ //// Esta parte es Opcional $heads = "MIME-Version: 1.0 rn"; $heads .= "Content-type: text/html; charset=utf-8 rn"; $body ="<b>Robot Name:</b> ".$str."<br>"; $body .="<b>Robot Address:</b> ".$_SERVER['REMOTE_ADDR']; mail(mimail, "Detected Bot", $body, $heads); //// Fin de la Parte Opcional
}else{ $vql= "UPDATE bots SET visitas=visitas+1 WHERE art_id='".$artid."'"; mysql_query($vql); }
?> | |
|