向警报写一些文字

问题描述 投票:0回答:1

您能帮忙处理此案吗?

我想在提示警报中写一些文字。我使用了switch_to.alert和send_keys命令,但是它不起作用。

   baseUrl = "https://www.seleniumeasy.com/test/javascript-alert-box-demo.html"
   driver = webdriver.Chrome()
   driver.maximize_window()
   driver.get(baseUrl)

   driver.find_element_by_xpath("//button[contains(text(),'Click for Prompt Box')]").click()
   alert1 = driver.switch_to.alert.send_keys("some text")
   alert1.accept()

我收到此错误:

alert1.accept()

AttributeError:'NoneType'对象没有属性'accept'

javascript python selenium alert
1个回答
0
投票

您可以尝试先获取警报,然后调用send_keys并接受方法。

alert1 = driver.browser.switch_to.alert
alert1.send_keys("some text")
alert1.accept()

如果仍然出现NoneType错误,可以添加一个明确的等待警报出现的方法。

 WebDriverWait(browser, 10).until(EC.alert_is_present(),
                               'Timed out waiting for PA creation ' +
                               'confirmation popup to appear.')
© www.soinside.com 2019 - 2024. All rights reserved.