Как получить путь кнопки для события нажатия в селене - PullRequest
0 голосов
/ 31 мая 2018

Возникли проблемы при создании события нажатия кнопки с использованием Python 3:

<div align="left">
      <input type="button" value="START WATCHING PAYED ADS" onclick="javascript:doarea(2)" style="width:400px;height:70px;fontsize:18px;font-weight:bold;color:blue">
</div>

Я пробовал это -

driver.findElement(By.xpath('//*[@id="main"]/h2[2]/div/input')).click();

Ответы [ 2 ]

0 голосов
/ 31 мая 2018

Пожалуйста, обратитесь к https://www.guru99.com/xpath-selenium.html для базовых знаний xpath.

Лучше не использовать индекс при идентификации элемента, вы можете, например, сделать это с помощью запроса ниже

*//input[@value="START WATCHING PAYED ADS"]
0 голосов
/ 31 мая 2018

В соответствии с HTML , которым вы поделились, для нажатия на кнопку со значением в качестве НАЧАТЬ ЗАПИСЬ ОБЪЯВЛЕНО AD вы можете использоватьследующая строка кода:

driver.find_element_by_xpath("//input[@value='START WATCHING PAYED ADS' and @type='button']").click()

Обновление

Когда вы видите NoSuchElementException , вам нужно вызвать WebDriverWait для элемент, который можно нажимать следующим образом:

WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@value='START WATCHING PAYED ADS' and @type='button']"))).click()
...