Simulación de navegación web de usuario real

Estoy buscando un software (no debería ser un complemento para un navegador, sino una aplicación "independiente" para Windows o Linux) para esto:

Necesito simular la navegación web de usuarios "reales". Debe abrir un sitio web específico, hacer clic en enlaces aleatorios en el sitio web, permanecer por un tiempo, etc.

¿Alguna idea para esto?

Una herramienta como casperJS ( nicolas.perriault.net/code/2012/… ) podría hacerlo, pero requeriría algunas secuencias de comandos de su parte. Puede haber algunos scripts prefabricados que hagan lo que estás describiendo.
El selenio también me viene a la mente.

Respuestas (3)

ingrese la descripción de la imagen aquí

Creo que estás buscando a Sikuli .

Esta herramienta se ejecutará en el primer nivel para simular un usuario real, ya sea en una página web o en una aplicación de escritorio. No tengo una primera experiencia de usuario con esta herramienta, pero en mi empresa anterior la consideraron seriamente como la principal herramienta de prueba para uno de los proyectos y vieron a mis universidades trabajando en ella.

Parece que proporciona casi todos los funcionalistas que mencionaste.

Según tengo entendido, puede proporcionar los pasos en detalle o especificar la acción requerida para que ocurra en un desencadenante determinado, como navegar desde una página web, hacer clic en una imagen determinada cuando aparece en la pantalla, completar un formulario cuando se carga , como el estado de un usuario de FB cuando publican, etc. Puede programarlo para hacer una prueba de una historia de usuario desde el principio hasta el final, por ejemplo, la funcionalidad de inicio de sesión del usuario, completar un formulario, enviar un formulario, cargar una imagen, etc. ¡Incluso escuché que algunas personas lo usan para jugar juegos de FB para ellos cuando están fuera!

Citado de su sitio:

Sikuli es un proyecto de investigación de código abierto que se inició originalmente en el Grupo de diseño de interfaz de usuario del MIT. Sikuli automatiza todo lo que ves en la pantalla. Utiliza el reconocimiento de imágenes para identificar y controlar los componentes de la GUI. Es útil cuando no hay fácil acceso al código fuente o interno de una GUI.

Parece que buscará un dominio/rango de píxeles en la pantalla para encontrar una determinada imagen (que usted proporcionó), una vez encontrada, activará un conjunto de acciones que usted definió.

Vea el siguiente ejemplo:

Abra cCleaner en un escritorio:

ingrese la descripción de la imagen aquí

Iniciar sesión en un formulario del sitio web:

ingrese la descripción de la imagen aquí

gracias PERO parece que sikuli necesita imágenes predefinidas. Mi necesidad es: debe abrir cualquier sitio web y hacer clic en cualquier enlace (sin necesidad de una definición previa de la imagen). De hecho, estoy tratando de encontrar la posición del enlace en la pantalla, luego muevo el mouse allí y luego hago clic.
Ya veo, ¿es necesario hacer clic con el mouse? ¿O estaría bien si hay una secuencia de comandos que puede activar el enlace para usted?
Sí, la mejor manera es si hace clic con el mouse (y potencialmente si pudiera simular el movimiento del mouse antes de hacer clic, también es bueno) :)
Bueno, según tengo entendido, no hay forma de que el sistema operativo detecte qué palabra es un texto normal o un enlace web a menos que vaya y acceda a la fuente del sitio web. Y por lo que puedo decir, el navegador es el que obtuvo este tipo de acceso. Después de obtener la fuente de la página, debe estimar la posición del enlace a partir de la estructura DOM del sitio. Según mi experiencia, esto se puede hacer desde JavaScript y el código se puede inyectar en el sitio, por lo que analizará su código y encontrará las etiquetas de los enlaces, luego llevará el mouse a su posición por sus coordenadas de píxeles.
Lo que está solicitando no es solo una simulación para un usuario real, un usuario real no puede encontrar la diferencia entre un enlace a un sitio web y un texto azul subrayado. Lo que piden detección de enlaces y clics aleatorios en enlaces. No estoy seguro de haber visto este tipo de aplicación antes. Buena suerte.
Joraid muchas gracias por tus consejos. Seguiré buscando esta aplicación.
Parece que Sikuli ahora está muerto, pero encontré SikuliX sikulix.com que parece ser un reemplazo para él (en el momento de la publicación, se actualizó por última vez hace aproximadamente un mes: agosto de 2021)

También hay selenio , que está diseñado específicamente para pruebas web.

¿Qué hay de tratar con javascript? La última vez que lo probé, tuvo problemas para manejarlo debido a un error.

¿Ha considerado autoit (gratis, por supuesto)? AutoIt v3 es un lenguaje de secuencias de comandos similar a BASIC gratuito diseñado para automatizar la GUI de Windows https://www.autoitscript.com/site/autoit/

desafortunadamente requiere secuencias de comandos de su parte

muestra de la página del foro

Necesita ejemplo de navegación automática de página web

http://www.autoitscript.com/forum/topic/55285-need-example-of-web-page-auto-navigation/

Entrada de formulario de sitio web

http://www.autoitscript.com/forum/topic/138036-website-form-input/

edición adicional

suena como una grabadora de mouse o teclado

no he probado este software solo lo encontre con google

las grabadoras de mouse tienen limitaciones, aunque las grabadoras de mouse se basan en la ubicación, los elementos en los que se puede hacer clic tendrán diferentes ubicaciones en diferentes sitios web

puede intentar buscar en Google la grabadora de mouse si mis recomendaciones no se ajustan a sus criterios

Automatización perfecta (freeware)

Puede usar Perfect Automation como lanzador, programador, grabador de mouse y teclado y un potente editor de secuencias de comandos. http://www.perfectautomation.com/

o

Tiny Task también grabadora de mouse (también gratis) http://www.vtaskstudio.com/support.php#tools

Hola amigos, gracias por las respuestas. Ambas soluciones se ven bien y tal vez las intente. De todos modos, prefiero una solución fácil (así que digamos que abra el sitio XY y haga 7 clics aleatorios en los enlaces de ese sitio; esto es suficiente para mí). Así que si alguien tiene alguna idea, es muy apreciada. ¡Gracias!
cualquier "enlace aleatorio" podría conducir a la apertura de un nuevo sitio web. ¿Quiere decir enlace aleatorio pero aún dentro del sitio web original?
por enlace aleatorio me refiero a cualquier enlace en ese sitio web. Puede ser un enlace dentro del sitio web original o un enlace que apunta a otro sitio web. La bonificación sería mover el mouse a ese enlace y luego hacer clic con el mouse como lo hizo el usuario normal.
está bien. Agregué ediciones en mi respuesta.
gracias @tls! Yo realmente aprecio tu esfuerzo. Intentaré encontrar algún software para esto ya que no lo encontré hasta ahora. ¡Gracias de nuevo!