¿Cómo cambiar entre ventanas usando Selenium en Python?

Selenium es un dispositivo eficaz para controlar un navegador de Internet a través del programa. Tiene un propósito para todos los navegadores, funciona en todos los sistemas operativos básicos y sus scripts están escritos en numerosos lenguajes, es decir, Python, Java, C#, etc. Podemos ejecutar con Python.

Es increíblemente viable que abramos una gran variedad de ventanas. Cada ventana también puede requerir que realicemos algunos movimientos para completar un flujo de parada a parada. Para ello, necesitamos ser capaces de transferir entre ellos. Queremos intercambiar sobre el control también y luego hacer la operación deseada, ya que, con la ayuda de usar el valor predeterminado, el interés permanece en la ventana de la figura.

Requisito:

Debe instalar Chromedriver y configurar la ruta. Haga clic aquí para descargar para obtener más información sigue este enlace . WebDriver admite moverse entre estas ventanas utilizando el método «switch_to_window()».

controlador.cambiar_a_ventana(“”)

Enfoque paso a paso:

Si abrimos varias ventanas, queremos imprimir el título de cada página de ventana, pero imprimimos solo una ventana principal del título, no un título de página de todas las ventanas. Este problema se resolverá a través de driver.switch_to_window(“) . Usando este método somos capaces de imprimir cada página del título.

  • Tomando cualquier URL .
  • Queremos la ventana secundaria de esta página web, luego haga clic en cualquier botón usando el método find_element_by_xpath() para encontrar XPath.
  • Cree una variable de identificadores que almacene el valor de todos los identificadores de la ventana abierta del navegador

handles=controlador.window_handles

  • Luego, usando loop, imprima todos los títulos de las páginas web.

Implementación:

Python3

# import selenium module
from selenium import webdriver
  
# import select class
from selenium.webdriver.support.ui import Select
  
# using chrome driver
driver = webdriver.Chrome()
  
# web page url and open first window page
driver.get("http://demo.automationtesting.in/Windows.html")
  
# find xpath of button for child window page
# this page no. 2
driver.find_element_by_xpath('//*[@id="Tabbed"]/a/button').click()
  
# return all handles value of open browser window
handles = driver.window_handles
for i in handles:
    driver.switch_to.window(i)
  
    # print every open window page title
    print(driver.title)

Producción:

Publicación traducida automáticamente

Artículo escrito por iamjpsonkar 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 *