Foros del Web » Programando para Internet » PHP »

robots y spiders

Estas en el tema de robots y spiders en el foro de PHP en Foros del Web. Buenas tardes a todos, estoy realizando un contador de visitas tomando en cuenta las direcciones ip, hasta aqui todo va bien pero ahora estoy tratando ...
  #1 (permalink)  
Antiguo 07/05/2014, 10:40
Avatar de oscard41  
Fecha de Ingreso: mayo-2012
Ubicación: Caracas
Mensajes: 288
Antigüedad: 11 años, 11 meses
Puntos: 8
robots y spiders

Buenas tardes a todos, estoy realizando un contador de visitas tomando en cuenta las direcciones ip, hasta aqui todo va bien pero ahora estoy tratando de detectar los robots y spiders para obviarlos...

hay alguna manera de detectar los robots y spiders de los motores de búsqueda?
si me pudieran ayudar y tambien aportar alguna idea en la que pueda hacer este script mas robusto se los agradecería.

tengo pensado hacer las gráficas con jpgraph para hacer la interfaz un poco mas amigable.


de ante mano muchas gracias...
  #2 (permalink)  
Antiguo 08/05/2014, 20:38
Avatar de oscard41  
Fecha de Ingreso: mayo-2012
Ubicación: Caracas
Mensajes: 288
Antigüedad: 11 años, 11 meses
Puntos: 8
Respuesta: robots y spiders

No es posible esto?
  #3 (permalink)  
Antiguo 08/05/2014, 21:13
 
Fecha de Ingreso: junio-2013
Ubicación: En cualquier parte de mi casa
Mensajes: 139
Antigüedad: 10 años, 10 meses
Puntos: 14
Respuesta: robots y spiders

Pues pienso que la visita la podrias contar a partir de X segundos que tenga la persona en la pagina, ya que asumo o creo que es asi los robots no van a permanecer un gran tiempo en tu pagina ya que procesan muy rapido
Ejemplo: Puedes hacer que se cuente la visita si el tiempo que ha pasado es mayor a 5 segundos.
(Esa es la forma que veo yo de solucionar tu problema)
  #4 (permalink)  
Antiguo 08/05/2014, 21:38
 
Fecha de Ingreso: marzo-2013
Ubicación: Neuquén Capital
Mensajes: 111
Antigüedad: 11 años, 1 mes
Puntos: 8
Respuesta: robots y spiders

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..


Suerte!
  #5 (permalink)  
Antiguo 09/05/2014, 07:43
Avatar de oscard41  
Fecha de Ingreso: mayo-2012
Ubicación: Caracas
Mensajes: 288
Antigüedad: 11 años, 11 meses
Puntos: 8
Respuesta: robots y spiders

Gracias por sus respuestas.

Cita:
Iniciado por SathyaSanles Ver Mensaje
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 original
  1. public function esRobot($agente = '') {
  2.         $archivoRobots = "http://www.robotstxt.org/db/all.txt";
  3.         $delimitador1 = "robot-name:";
  4.         $delimitador2 = ":";
  5.    
  6.         if (trim($agente)=="") $agente=trim($_SERVER['HTTP_USER_AGENT']);
  7.          
  8.         //Obtener el contenido del archivo como un array en donde cada item es una linea del archivo.
  9.         $str_archivo = @file($archivoRobots);
  10.         $total_lineas = count($str_archivo);
  11.    
  12.         $i = 0;
  13.         $r = 0;
  14.         $lista_robots = array();
  15.          
  16.         while ($i<$total_lineas)    {
  17.           $linea = chop($str_archivo[$i]);
  18.                 if(   (strpos($linea, $delimitador1) !== false) ) {
  19.                     $items= explode($delimitador2,$linea);
  20.                     $lista_robots[$r] = trim($items[1]);
  21.                     $r++;
  22.                 }
  23.           $i++;
  24.         }
  25.      
  26.             //Determina si la cadena que llega es un robot
  27.             foreach($lista_robots as $robot)    {
  28.                 if(strpos($agente, trim($robot) )  !== false)
  29.                 return true;
  30.             }
  31.             return false;
  32.  
  33.     }

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.

Última edición por oscard41; 09/05/2014 a las 08:23
  #6 (permalink)  
Antiguo 09/05/2014, 08:37
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: robots y spiders

Cita:
Iniciado por oscard41 Ver Mensaje
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.
Tenerla en local en la bbdd... y actualizarla por cron una vez a la semana :D
__________________
>> Eleazan's Source
>> @Eleazan
  #7 (permalink)  
Antiguo 09/05/2014, 09:16
 
Fecha de Ingreso: marzo-2013
Ubicación: Neuquén Capital
Mensajes: 111
Antigüedad: 11 años, 1 mes
Puntos: 8
Respuesta: robots y spiders

Pues puede ver si puedes crearle una cookie, generalmente los robots no aceptan cookies. Pero para guardar la cookie con PHP, tenes que si o si recargar, por eso te conviene crear la cookie y consultarla en la misma página con javascript!

Se entiende?

Suerte!
  #8 (permalink)  
Antiguo 09/05/2014, 12:43
Avatar de oscard41  
Fecha de Ingreso: mayo-2012
Ubicación: Caracas
Mensajes: 288
Antigüedad: 11 años, 11 meses
Puntos: 8
Respuesta: robots y spiders

Nuevamente Gracias a todos por sus respuestas

Cita:
Iniciado por SathyaSanles Ver Mensaje
Pues puede ver si puedes crearle una cookie, generalmente los robots no aceptan cookies. Pero para guardar la cookie con PHP, tenes que si o si recargar, por eso te conviene crear la cookie y consultarla en la misma página con javascript!

Se entiende?

Suerte!
si se entiende, voy probar con la idea que me acabas de dar, Gracias...
si esto funciona mi pensado es adaptarlo a un contador de visitas tomando en cuenta las Ip y los robot

Última edición por oscard41; 09/05/2014 a las 22:13

Etiquetas: robots
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:04.