Introducción a Selenium 4.4, encontrar los selectores ID y CLASS

Procesos de pruebas

<Hola>, en el post anterior vimos como instalar Selenium en Windows 10, ahora vamos a utilizarlo brevemente en un proyecto, vamos a utilizar una función muy conocida que ha variado un poco entre versiones, la función es “find_element”.

No encuentro desde que versión ya no se utiliza las funciones “find_element_by_id” y “find_element_by_class_name” pero para esta introducción nos enfocaremos en reemplazar estas 2 funciones en Selenium 4.4.

¿Cuál es el reemplazo de la función find_element_by_id y find_element_by_class?

Se utiliza la función “find_element”, pero es necesario importar la librería “By”

from selenium.webdriver.common.by import By

Para luego utilizar la función “find_element” de la siguiente manera

webdriver.find_element(By.ID, “id_titulo”)

y

webdriver.find_element(By.CLASS_NAME,”clase_titulo”)

Como se puede apreciar, en unos de los parámetros hay que pasar “By.ID” o “By.CLASS_NAME”, según el selector que estemos buscando en el HTML de la página y como segundo parámetro el nombre del selector

En el siguiente código veremos un ejemplo con las dos búsquedas

Código para pruebas de pagina web
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("http://localhost/")
if driver.find_element(By.ID, "copyright-area"):
    print("Existe el id")
if driver.find_element(By.CLASS_NAME, "copyright_left"):
    print("Existe la clase")
driver.quit()
quit()

Vamos a desglosar un poco el código, en las primeras 2 líneas de código, veremos que importamos la librerías de Selenium con las que vamos a trabajar.

from selenium import webdriver
from selenium.webdriver.common.by import By

En la línea 4 indicamos el “driver” que utilizaremos para realizar las pruebas, podemos poner Firefox, IE, entre otros.

driver = webdriver.Chrome()

En la línea 5 indicamos que URL va a abrir el navegador para realizar las pruebas.

driver.get("http://localhost/")

En la línea 7 y 8 empezamos a validar si el selector id existe en el contenido HTML de la página

if driver.find_element(By.ID, "copyright-area"):
    print("Existe el id")

En la línea 10 y 11 empezamos a validar si la clase existe en el contenido HTML de la página

if driver.find_element(By.CLASS_NAME, "copyright_left"):
    print("Existe la clase")

En la línea 13 cerramos el navegador y en la 14 damos por finalizada la ejecución del código.

driver.quit()
quit()

Por ultimo ejecutamos el código con el siguiente comando y con estos concluimos con las pruebas.

En siguientes ediciones veremos algunas validaciones en el código, en ocasiones nos hemos encontrado con errores al no encontrar un id o la clase, también el poder realizar pruebas a los diferentes formularios.

</Saludos>

Deja un comentario