Cómo desplazarse hacia abajo hasta la parte inferior de la página en selenium usando JavaScriptExecutor

Selenium es una popular herramienta de automatización basada en web de código abierto. La principal ventaja de usar selenium es que es compatible con todos los navegadores como Google Chrome, Microsoft Edge, Mozilla Firefox y Safari, funciona en todos los principales sistemas operativos y sus scripts están escritos en varios idiomas, es decir, Java, Python, JavaScript, C#, etc. este artículo, trabajaremos con Java y selenium para automatizar el desplazamiento de la página web.

El desplazamiento es una función importante para cualquier página web. Para desplazarse hacia abajo en las páginas web, usamos JavaScriptExecutor. javascriptexecutor es una interfaz que permite ejecutar métodos JavaScript desde scripts de Selenium.

Instalación: Para trabajar con JavaScriptExecutor, necesitábamos Java instalado en nuestro sistema y Selenium, un controlador web para el navegador, también un IDE para el editor de código.

  1. Eclipse IDE: antes de descargar también asegúrese de que su dispositivo tenga Java JDK. Si no tiene, instale Java se refiere a esto: ¿Cómo descargar e instalar Java para una máquina de 64 bits? E instale Eclipse IDE consultando este artículo Eclipse IDE para desarrolladores de Java
  2. Selenium: Descargue la última versión estable de Selenium aquí
  3. Controlador web: descargue el controlador web de Microsoft Edge según su versión aquí

Sintaxis:

  • Ejecutor JavaScript 
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0,document.body.scrollHeight)", "");
  • Desplácese hacia abajo hasta la parte inferior de la página:
window.scrollBy(0,document.body.scrollHeight)

Selenium ejecuta los comandos en Javascript con el método execute_script(). Para desplazarnos hasta el final de la página, tenemos que pasar (0, document.body.scrollHeight) como parámetros al método scrollBy().

Consideremos un caso de prueba en el que intentaremos automatizar los siguientes escenarios en el navegador Edge.

  • Inicie el navegador Edge
  • Maximiza el navegador.
  • URL abierta: https://www.geeksforgeeks.org/
  • Desplácese hasta la parte inferior de la página usando JavaScriptExecutor

Paso 1: establezca una propiedad del sistema «webdriver.edge.driver» en la ruta de su archivo EdgeDriver.exe e instancia una clase EdgeDriver.

Javascript

public class geeksforgeeks {
    public static void main(String args[]) {
        System.setProperty("webdriver.edge.driver",
"C:\\Users\\ADMIN\\Documents\\Selenium\\msedgedriver.exe");
     // Instantiate a EdgeDriver class.    
     WebDriver driver = new EdgeDriver();
        //Maximize the browser 
    }
}

Paso 2: Maximice la ventana: driver.manage().window().maximize() y abra el sitio geeksforgeeks.

Javascript

driver.manage().window().maximize();
// Launch Website 
driver.get("https://www.geeksforgeeks.org/");

Paso 3: Inicie el método javascriptexecutor y scroll para desplazarse hasta la parte inferior de la página.

Javascript

JavascriptExecutor js = (JavascriptExecutor) driver;
//Scroll down till the bottom of the page
js.executeScript("window.scrollBy(0,document.body.scrollHeight)");

Ejemplo: programa para desplazarse hacia abajo hasta la parte inferior de la página web usando Selenium:

Java

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
public class geeksforgeeks {
    public static void main(String args[]) {
        System.setProperty("webdriver.edge.driver",
"C:\\Users\\ADMIN\\Documents\\Selenium\\msedgedriver.exe");
     // Instantiate a EdgeDriver class.    
     WebDriver driver = new EdgeDriver();
        //Maximize the browser
        driver.manage().window().maximize();
        // Launch Website 
        driver.get("https://www.geeksforgeeks.org/"); 
    JavascriptExecutor js = (JavascriptExecutor) driver;
        //Scroll down till the bottom of the page
        js.executeScript("window.scrollBy(0,document.body.scrollHeight)");
 
    }
}

Producción:

 

El código anterior inicia el navegador Edge y navega a la página de geeksforgeeks, una vez que se carga la página web, Selenium obtiene automáticamente la altura máxima de la página web del modelo de objetos del documento y luego el método scrollBy() se desplaza hacia abajo hasta el final.

Publicación traducida automáticamente

Artículo escrito por allwink45 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *