Как найти элемент кнопки с помощью Selenium Webdriver? - PullRequest
0 голосов
/ 10 апреля 2019

У меня проблемы с поиском кнопки и нажатием на нее. Это всплывающее окно в Internet Explorer. Я использую по имени класса, но не работаю.

browser.find_element_by_css_selector("ui-button ui-corner-all ui-widget").click()

HTML:

button class= Принимать">

1 Ответ

0 голосов
/ 11 апреля 2019

Чтобы найти и щелкнуть элемент с текстом как Принять , вам нужно настроить WebDriverWait , чтобы элемент был активным , и вы можете использовать любой из следующих Стратегии локатора :

  • Использование CSS_SELECTOR:

    WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.ui-dialog-buttonset>button.ui-button.ui-corner-all.ui-widget"))).click()
    
  • Использование XPATH:

    WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='ui-dialog-buttonset']//button[@class='ui-button ui-corner-all ui-widget' and text()='Accept']"))).click()
    
  • Примечание : необходимо добавить следующий импорт:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...