¿Hay alguna manera de determinar la cantidad de tiempo que un cliente pasa en una página web?

StackOverflow https://stackoverflow.com/questions/161994

  •  03-07-2019
  •  | 
  •  

Pregunta

Suponiendo que tengo un servidor web de código abierto o proxy que puedo mejorar, digamos apache o calamar.

¿Hay alguna manera de determinar el tiempo que cada cliente pasa en una página web?

HTTP, por supuesto, no tiene estado, por lo que no es trivial, pero ¿tal vez alguien tiene una idea sobre cómo abordar este problema?

¿Fue útil?

Solución

No sin tener algún javascript constantemente golpeando su servidor en el lado del cliente y luego verificando cuándo se detiene (pero, por supuesto, eso supone que el usuario tiene javascript habilitado). También hay varias formas (feas) de detectar que las ventanas se cierren con JavaScript, pero, por supuesto, no siempre se activarán. p.ej. bloqueo del navegador.

Me pregunto por qué quieres esto de todos modos. ¿Qué sucede si una persona mira la página web durante 3 segundos, se distrae con otra pestaña / ventana pero deja su página abierta durante 2 horas? La respuesta que obtiene es de 2 horas, la respuesta que (probablemente) desea es de 3 segundos.

Otros consejos

Con Apache o Squid, apenas puede detectar el tiempo que un usuario pasa en su página.

Pero con un poco de azúcar adicional en su página web puede:

Es gratis y tiene un lote de funciones.

Pero también invitarás a Google a ver las estadísticas de tu sitio ... (pero tal vez eso los ayude a decidir si quieres comprarte :-))

Puede contar el tiempo entre el momento en que se solicitó la página y el momento en que se solicita la siguiente página, sin embargo, esto solo sería correcto si el usuario permaneció en esa página todo el tiempo hasta que solicitó la página siguiente. Incluso entonces puede que todavía esté en la página original (por ejemplo, abrió la nueva en una pestaña), y solo funcionará si navega a otra página.

La única forma de saberlo con certeza sería usar Javascript para hacer ping al servidor desde la página abierta cada diez segundos más o menos, solo para decir " ¡todavía estoy siendo leído! "

En realidad, he visto paquetes de análisis de JavaScript donde no solo rastrearon cuánto tiempo estuvo en la página, haciendo ping al servidor de vez en cuando, sino que también realizaron un seguimiento de lo que estaba exactamente en la pantalla. midiendo el tamaño de la ventana de su navegador, junto con las posiciones de desplazamiento del documento, pudieron determinar exactamente cuánto tiempo estuvo cada elemento en la pantalla. Al rastrear la ubicación del mouse, es probable que también adivine lo que está viendo. No puedo encontrar el enlace en este momento, pero aquí está la historia corta. Si está realmente interesado en lo que la gente está mirando y por cuánto tiempo, puede hacerlo. No hay mucho límite en cuanto a lo que puedes rastrear.

Además, solo un pensamiento: si no desea hacer ping al servidor demasiado, puede mantener las cosas almacenadas en la memoria y solo enviarlas al servidor cuando tenga una cantidad suficiente de datos, o justo antes de la página cerrado.

Este tipo de métrica era bastante popular hace varios años, antes de que las PC se volvieran más potentes y los navegadores con pestañas se volvieran populares, y era más difícil de medir con la misma precisión. La forma estándar de hacerlo en el pasado era asumir que las personas generalmente solo están cargando una página a la vez, y solo usan los datos de registro del servidor para determinar el tiempo entre visitas a la página. Sus proveedores de análisis estándar como Omniture y Urchin (ahora Google Analytics) calculan esto.

Normalmente, configura una cookie de seguimiento para poder identificar a una persona / navegador específicos a lo largo del tiempo, pero a corto plazo puede usar una combinación de dirección IP / usuario-agente.

Por lo tanto, básicamente solo procesa los datos de registro y cuenta el delta entre las vistas de la página y el tiempo que la persona estuvo en la página. Establece algunas reglas (o su proveedor de análisis lo hace detrás de la cortina), como descartar / truncar los tiempos más allá de un límite (por ejemplo, 10 minutos) en los que supone que la persona no estaba realmente leyendo pero dejó la página abierta en una ventana / pestaña.

¿Estos datos son perfectos? Obviamente no. Pero solo necesitas suficiente & Quot; suficientemente bueno & Quot; datos para hacer análisis estadísticos y sacar algunas conclusiones.

Sigue siendo útil para el análisis longitudinal (hábitos de los lectores a lo largo del tiempo) y la comparación cualitativa entre diferentes páginas de su sitio. (es decir, entre dos artículos de 700 palabras, si uno tiene un tiempo medio de lectura el doble que el otro, entonces más personas están leyendo el primer artículo). Por supuesto, su sitio debe estar lo suficientemente ocupado como para tener suficientes puntos de datos para análisis estadísticamente sólido después de tirar todos los " bad " puntos de datos atípicos.

Sí, podría usar Javascript para enviar mensajes en tiempo real para mejorar los datos. Simplemente puede sondear a intervalos determinados después de document.onload o establecer eventos de mouseover en secciones de sus páginas.

Otra técnica es usar Javascript para agregar un evento onclick a cada <a href> que llegue a su servidor. No solo sabes cuándo alguien hace clic en un enlace para sacarlo de tu sitio, realmente sofisticado & Quot; hotspot & Quot; El análisis analiza el hecho de que si alguien hizo clic en un enlace 6 párrafos hacia abajo de una página, entonces debe haber leído hasta ahora.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top