Selenium хорошо обнаруживает всплывающее диалоговое окно, но не может с ним справиться - PullRequest
0 голосов
/ 27 сентября 2018

Мои конфигурации следующие:

  • Селен: 3.14.1
  • IEDriverServer: 3.9 - x64
  • IDE: IE 11
  • Python 3.4.4

Я просто пытаюсь принять всплывающее предупреждение, которое открывается.Я реализовал следующий код:

try:

    WebDriverWait(driver, 10).until(EC.alert_is_present())
    alert = driver.switch_to.alert
    alert.accept()
    print("Accept")

except TimeoutException:

    print("no alert")

Программа обнаруживает всплывающее диалоговое окно, сообщение «Принять» распечатывается, но не мешает ему.Я не исключение (сообщение «Нет оповещения») или ошибка программы, всплывающее оповещение остается только открытым.Команда .dismiss() тоже не работает.

Я пробовал несколько разных драйверов для IE 11, но безуспешно.

Если кто-нибудь может мне помочь, это будет очень признательно: -).

1 Ответ

0 голосов
/ 27 сентября 2018

Кажется, у вас ошибка отступа.

Итак, ваш код должен быть:

try:

    WebDriverWait(driver, 10).until(EC.alert_is_present())
    alert = driver.switch_to.alert
    alert.accept()
    print("Accept.")

except TimeoutException:

    print("No alert.")

Надеюсь, он вам поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...