切换到警报时,Selenium Webdriver 挂起/冻结

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

一直在 python 中使用 selenium,当我加载 URL 时我收到警报。当我第一次切换到警报时,它处理得很好。当访问同一网站上的另一个 URL 时,Webdriver 在切换到同一警报警报时会挂起/冻结。

这就是我目前正在尝试的:

          try:
               sleep(1)
               while EC.alert_is_present():
                    sleep(3)
                    WebDriverWait(driver, 5).until(EC.alert_is_present())
                    alert = driver.switch_to.alert
                    alert.accept()
                    break

          except:
               pass

调试时,Webdriver 似乎第二次挂起/冻结:WebDriverWait(driver, 5).until(EC.alert_is_present())

我尝试像这样运行它,但仍然遇到同样的问题:

          try:
               sleep(1)
               while EC.alert_is_present():
                    sleep(3)
                    alert = driver.switch_to.alert
                    alert.accept()
                    break

          except:
               pass

这次它挂起/冻结:alert = driver.switch_to.alert

尝试过使用和不使用 sleep() 并尝试使用 WebDriverWait(),所有这些的组合仍然没有运气。

selenium-webdriver selenium-chromedriver webdriver
1个回答
0
投票

你找到解决办法了吗?切换到框架时我遇到了同样的问题。在更新 Chrome 之前我从未遇到过这个问题。所以我想降级我的浏览器和网络驱动程序可能会解决这个问题。但我不太确定。

© www.soinside.com 2019 - 2024. All rights reserved.