Python + Selenium: ¿Es posible bloquear el navegador de clics y entradas manuales?

He escrito un código de python selenium que automatiza las acciones en un sitio web. Una vez que el usuario autentica el inicio de sesión, selenium toma el control del navegador y hace su trabajo. Todo funciona perfectamente bien, sin embargo, me doy cuenta de que el código puede fallar si el usuario hace clic accidentalmente en cualquier enlace mientras se está ejecutando el selenium.

¿Hay alguna manera de evitar entradas manuales del usuario? algo como:

br = webdriver.chrome() br.lock_manual_userinput() 

No existe tal cosa. Puede dedicar máquinas con acceso limitado para ejecutar la automatización o simplemente tener cuidado si trabaja mientras ejecuta los scripts.

El selenium se utiliza exclusivamente para la automatización de tareas manuales repetitivas. En este punto vale la pena mencionar que Selenium se burla de las interacciones del usuario .

Por lo tanto, una vez que el usuario autentica el inicio de sesión, selenium asume el control del navegador y es bastante especulativo, ya que intentar reconectar Selenium a la sesión de navegación anterior no es viable.

Ahora la afirmación, “el código puede fallar si el usuario hace clic accidentalmente en algo” es bastante esperado ya que Selenium necesita un enfoque del navegador. Como resultado de cualquier interacción manual con el usuario, Selenium perderá el enfoque y generará un error.

Finalmente, no hay otra manera de evitar las entradas manuales, como se mencionó anteriormente, que Selenium simula las interacciones del usuario . La mejor manera posible de ejecutar las pruebas automatizadas basadas en Selenium que impiden las entradas manuales del usuario sería:

  • Configure un banco de pruebas con toda la configuración de hardware y software requerida.
  • Cree el banco de pruebas en un entorno aislado, preferiblemente en un laboratorio de pruebas libre de intervención manual .
  • Automatice solo los casos de uso requeridos que no requieran intervención manual.