向警报写一些文字

您能帮忙处理此案吗?

我想在提示警报中写一些文字。我使用了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”

sayabcd1 回答:向警报写一些文字

您可以尝试先获取警报,然后调用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.')

由于截至本文撰写时existing issues使用硒,alert.send_keys无法正常工作。以下是使用PyAutoGUI

的解决方法
import time
import pyautogui

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
time.sleep(1)
pyautogui.typewrite('Hello world!')     
time.sleep(1)
alert1.accept()
本文链接:https://www.f2er.com/3147090.html

大家都在问