reemplazar - ¿Cómo puedo interactuar con este cuadro de diálogo modal usando Webdriver & Python?
reemplazar ñ en python (2)
El siguiente código usa Java, puede intentar usar el siguiente código convirtiéndolo en sintaxis de Python. Lo siento como soy Webdriver - Java Tester, no puedo darte el código de Python. Espero que esto solucione tus necesidades.
Alert alertDialog = driver.switchTo().alert();
//Get the alert text
String alertText = alertDialog.getText();
//Click the OK button on the alert.
alertDialog.accept();
Aclamaciones,
Mahesh
Todo lo que quiero es cerrar un diálogo modal, idealmente haciendo lo siguiente:
browser.find_element_by_link_text("OK").click()
Da NoSuchElementException: Message: u''The element could not be found''
para el texto del enlace OK.
Lo mismo para xpath cuando hago esto:
browser.find_element_by_xpath("//*[@id=/"modal/"]/div/div[2]/div/a").click()
Sospecho que esto es porque necesito enfocarme en el diálogo. Para hacerlo, lo intenté:
for handle in browser.window_handles:
browser.switch_to_window(handle)
if browser.find_element_by_class_name(''popUp123'')
browser.find_element_by_link_text("OK").click()
Da NoSuchElementException: Message: u''The element could not be found''
para la clase.
También probé browser.switch_to_frame(ID OR NAME)
, pero tampoco pude encontrarlo como un marco.
Por favor dime que me estoy perdiendo algo descaradamente obvio.
Fuente de marco relevante (resumida):
<body id="modal">
<div class="popUp123">
<div class="button">
<div class="centerbutton">
<a href="#" class="close" onclick=parent.close">
<span>OK</span>
Esta es la sintaxis de python
from selenium.webdriver.remote.webdriver import WebDriver
browser = WebDriver()
# do other stuff here
browser.switch_to_alert().accept()
# continue with other stuff here
La API de alerta se encuentra en selenium.webdriver.common.alert