Seleccionar opciones del menú desplegable con Selenium en Python

Manav Narula 21 junio 2023
  1. Seleccionar opciones del menú desplegable con Selenium en Python
  2. Use la función select_by_index() para seleccionar opciones del menú desplegable usando Selenium en Python
  3. Use la función select_by_value() para seleccionar opciones del menú desplegable usando Selenium en Python
  4. Use la función select_by_visible_text() para seleccionar opciones del menú desplegable usando Selenium en Python
  5. Conclusión
Seleccionar opciones del menú desplegable con Selenium en Python

El paquete de selenio se usa en Python para automatizar tareas con scripts de Python en un navegador web. Esto puede ser simple como hacer clic en un botón en una página web o tan complejo como llenar un formulario en la página web dada.

Este tutorial analizará la selección del menú desplegable en una página web usando selenio en Python.

Seleccionar opciones del menú desplegable con Selenium en Python

Primero, se nos pedirá que iniciemos un objeto de la clase webdriver para crear una ventana del navegador. Redireccionaremos al sitio web requerido usando la función get() con este objeto.

Luego, necesitamos encontrar el elemento HTML para el menú desplegable. Podemos usar diferentes métodos para encontrar este elemento en función de varios atributos.

Podemos usar la función find_element_by_id() para encontrar el elemento usando el atributo id, la función find_element_by_class_name() para encontrarlo usando el atributo class, y más.

Después de encontrar el elemento, necesitamos usar la clase Select que se encuentra en selenium.webdriver.support.ui. Necesitamos crear un objeto de esta clase usando el constructor Select() con el elemento recuperado de la lista desplegable.

Este objeto selecciona opciones del menú desplegable usando diferentes funciones.

Estos métodos se analizan a continuación. Tenga en cuenta que estos métodos arrojarán la NoSuchElementException si no hay una opción coincidente.

Use la función select_by_index() para seleccionar opciones del menú desplegable usando Selenium en Python

La función select_by_index() selecciona la opción dada del menú en función del atributo index. Tenga en cuenta que no cuenta las opciones, sino que utiliza el atributo índice.

Por ejemplo,

from selenium.webdriver.support.ui import Select
from selenium import webdriver

driver = webdriver.Chrome(r"C:/path/chromedriver.exe")
driver.get("https://www.delftstack.com/")
e = driver.find_element_by_id("Menu_Button")
d = Select(x)
drop.select_by_index(1)

En el ejemplo anterior, creamos un objeto de clase webdriver y redirigimos la ventana al sitio web con la función get(). Recuperamos el elemento para el menú desplegable usando la función find_element_by_id().

El objeto de clase Seleccionar se crea con el elemento recuperado. La función select_by_index() se utiliza con este objeto para seleccionar la opción requerida.

Use la función select_by_value() para seleccionar opciones del menú desplegable usando Selenium en Python

Este método también puede seleccionar las opciones que coincidan con el valor del atributo valor. Se eligen las opciones que coinciden con este argumento.

Vea el código a continuación.

from selenium.webdriver.support.ui import Select
from selenium import webdriver

driver = webdriver.Chrome(r"C:/path/chromedriver.exe")
driver.get("https://www.delftstack.com/")
e = driver.find_element_by_id("Menu_Button")
d = Select(x)
drop.select_by_value("value")

El ejemplo anterior seleccionará opciones que coincidan con el atributo valor dado.

Use la función select_by_visible_text() para seleccionar opciones del menú desplegable usando Selenium en Python

La función select_by_visible_text() se puede utilizar para seleccionar opciones del menú desplegable. Selecciona la opción en función de su texto.

Por ejemplo,

from selenium.webdriver.support.ui import Select
from selenium import webdriver

driver = webdriver.Chrome(r"C:/path/chromedriver.exe")
driver.get("https://www.delftstack.com/")
e = driver.find_element_by_id("Menu_Button")
d = Select(x)
drop.select_by_visible_text("text")

En el ejemplo anterior, seleccionamos la opción que coincide con el texto dado de la opción.

Conclusión

Este tutorial analizó la selección de opciones de un menú desplegable usando selenio en Python. Discutimos el uso de la clase Select y sus diferentes funcionalidades.

Diferentes métodos pueden elegir la opción en función de varios atributos. También podemos devolver la lista de opciones seleccionadas utilizando el método all_selected_options() con el objeto de esta clase.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Selenium