如何使用Selenium + Chrome WebDriver + Python忽略警报?

时间:2019-03-27 12:13:50

标签: python selenium google-chrome selenium-webdriver webdriver

我需要忽略Chrome Webdriver发出的警报: Alert Screenshot

我正在尝试使用:browser.switch_to.alert.accept,但是它不起作用。

我已经将选项设置为:

chrome_options = Options()
chrome_options.add_argument("--disable-notifications")

但是我相信警报不是通知对象。

谢谢您的帮助!

3 个答案:

答案 0 :(得分:1)

您尝试过吗

chrome_options = Options()
chrome_options.add_argument("--disable-popup-blocking")

答案 1 :(得分:0)

尽管您的原始帖子提到您无法使警报代码正常工作,但接受的答案对我却不起作用。看着documentation,我成功使用了:

 alert = browser.switch_to.alert
 alert.accept()

答案 2 :(得分:0)

这样可以帮助我处理警报框并保存URL的屏幕截图。

Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
System.out.println("ERROR: (ALERT BOX DETECTED) - ALERT MSG : " + alertText);
alert.accept();
File outputFile = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
String imageDetails = "C:\\Images";
File screenShot = new File(imageDetails).getAbsoluteFile();
FileUtils.copyFile(outputFile, screenShot);
System.out.println("Screenshot saved: {}" + imageDetails);
driver.close();