Gracias por sus respuestas.
Cita:
Iniciado por SathyaSanles Yo he creado una completa clase php que uso para eso justamente, y me baso en rangos de ip obtenidas manualmente y mediante robots de diferentes fuentes, además reviso el user agent para detectar si es un robot mediante la firma...
.
para validar por user agent cre que debo tener una lista de los robot para luego comparar, no me veo actualizando periodicamente una lista con informacion de los robot... consegui un ejemplo en la web donde se valida por user agent
Código PHP:
Ver originalpublic function esRobot($agente = '') {
$archivoRobots = "http://www.robotstxt.org/db/all.txt";
$delimitador1 = "robot-name:";
$delimitador2 = ":";
if (trim($agente)=="") $agente=trim($_SERVER['HTTP_USER_AGENT']);
//Obtener el contenido del archivo como un array en donde cada item es una linea del archivo.
$str_archivo = @file($archivoRobots); $total_lineas = count($str_archivo);
$i = 0;
$r = 0;
while ($i<$total_lineas) {
$linea = chop($str_archivo[$i]); if( (strpos($linea, $delimitador1) !== false) ) { $items= explode($delimitador2,$linea); $lista_robots[$r] = trim($items[1]); $r++;
}
$i++;
}
//Determina si la cadena que llega es un robot
foreach($lista_robots as $robot) {
return true;
}
return false;
}
como la lista se esta alimentando de "http://www.robotstxt.org/db/all.tx" tarda considerablemente en cargar...
si tienen alguna otra idea mas optima se los agradecería de ante mano.