En el artículo, vamos a aprender cómo usar el paquete Rselenium para automatizar aplicaciones web.
Rselenium es una herramienta gratuita de código abierto para automatizar la web. Rselenium es similar al popular Selenium que funciona con python, es una herramienta de automatización web completa. Está escrito en Java y se puede utilizar para automatizar cualquier aplicación web. En la programación R, tenemos un paquete Rselenium que se puede usar para realizar varios tipos de pruebas unitarias en la página web. Rselenium es una gran herramienta para automatizar navegadores web y eliminar datos de una manera mucho más eficiente que cualquier otro paquete.
También aprenderemos cómo usar el paquete Rselenium para buscar un elemento por nombre de clase. Más específicamente, el método findElement(using = “class name”, value = “the class name”) se usa para buscar un elemento por nombre de clase.
Sintaxis:
robj$findElement(using = "class", "class name")
Ejemplo:
HTML
<html> <head> <title>RSelenium Demonstration</title> </head> <body> <div class="class1"> <h class="class2">Welcome To GFG</h> </div> </body> </html>
Ahora, si queremos buscar el elemento por nombre de clase. En primer lugar, tenemos que importar los paquetes necesarios. Luego inicialice el controlador. Luego tenemos que usar el método findElement (usando = “nombre de la clase”, valor = “el nombre de la clase”) para buscar el elemento.
class_content <- rdriver$findElement(usando = “nombre de clase”, valor = “clase2”)
¿Cómo usar el paquete Rselenium para buscar un elemento por nombre de clase?
Implementemos el método de búsqueda anterior de manera práctica. Para ello, utilizaremos el sitio web oficial de geeksforgeeks. Y estamos tratando de traducir toda la página web utilizando el ícono de Google Translate que se presenta en la parte superior derecha de la página web. Para lograr este propósito primero seleccionaremos el ícono usando el nombre de la clase y haremos clic en el elemento. Después de hacer clic en la traducción, se mostrarán varios idiomas. Seleccionaremos el idioma Punjabi y traduciremos la página web al idioma Punjabi y, después de traducir correctamente, cerraremos el servidor y el navegador Rselenium utilizando el método de cierre.
Cree un programa R llamado class_search.R para demostrar el método de búsqueda anterior.
R
# R program to demonstrate RSelenium # search element using the class name # load the required packages library(Rselenium) library(tidyverse) library(netstat) # start the Selenium server rdriver <- rsDriver(browser = "chrome", # browser name port = 8080L, # port number chromever = "98.0.4758.102", # chrome browser version ) # creating a client object and opening the browser robj <- rdriver$client # navigate to the url robj$navigate("https://www.geeksforgeeks.org/") # search for the translate webpage element # using the class name translate_element <- robj$findElement(using = 'class name' , value = 'gfg-icon_translate') # clicking on the translate icon translate_element$clickElement() # displaying all the supported language lang <- robj$findElement(using = 'class name', value = 'goog-te-combo') lang$clickElement() # selecting the punjabi language from the dropdown list option <- robj$findElement(using = 'xpath', value = '//*[@id=":0.targetLanguage"]/select/option[76]') # clicking on the selected option option$clickElement() # closing the browser robj$close()
Producción:
Publicación traducida automáticamente
Artículo escrito por amnindersingh1414 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA