我正在尝试接受在删除网页上的元素时弹出的javascript警告。当我使用accept_alert()
或dismiss_alert()
时,我会收到NoAlertPresentException: Message: u'no alert open\n
消息。我的代码如下所示:
click_element(get_element_by_xpath('//*[@id="tracker"]/table[4]/tbody/tr/td[1]/a[1]'),wait=True)
accept_alert('Do you wish to delete?')
我使用SST只有两个星期,所以我可能错过了一个简单的解决方案。
调用javascript警报的代码如下所示:
<a href="javascript: void(0);" onclick="return DeleteFood(1293652875);" class="track_remove" title="Remove">⊗</a>
发布于 2014-12-05 22:55:18
您应该使用wait=False
调用click_element
请参阅this
因此,下面这样的代码应该是有效的
click_element(get_element_by_xpath('//*[@id="tracker"]/table[4]/tbody/tr/td[1]/a[1]'),wait=False)
accept_alert('Do you wish to delete?')
发布于 2014-12-05 22:50:54
请在单击打开警报的元素后在下面尝试
try:
WebDriverWait(browser, 3).until(EC.alert_is_present())
alert = browser.switch_to_alert.accept()
print "alert accepted"
except TimeoutException:
print "no alert"
发布于 2019-06-26 05:05:19
try:
** your code **
except Exception as e:
try:
self.driver.switch_to.alert.accept()
print(e)
except NoAlertPresentException as e:
print(e)
https://stackoverflow.com/questions/27318331
复制相似问题