У меня проблема с поиском элемента (кнопка, которую нужно нажать) с моим кодом. Я использую Selenium IDE, чтобы найти xpath или css селектор элемента. Странно, что Selenium IDE действительно находит его, но мой код не находит.
Элемент, который я хочу выбрать, представляет собой кнопку, при нажатии появляется раскрывающийся список, и мне нужно нажать на другую кнопку.
- Кнопка (button class = "js-select uk-button uk-button - выберите">)
- Кнопка (li data-field = "sapOrderNumber"> Auftragsnummer
Вот HTML-код класса, который я хочу выбрать:
<div class="uk-button-dropdown uk-margin-right" data-uk-dropdown="{mode:'click'}" aria-haspopup="true" aria-expanded="false">
<button class="js-select uk-button uk-button--select">
<span>Filter auswählen</span>
<i class="icon-arrow-left"></i>
</button>
<div class="uk-dropdown uk-dropdown-close uk-dropdown-bottom uk-dropdown--select" aria-hidden="true">
<ul class="js-filter-select uk-nav uk-nav--select">
<li data-field="articleNumber">Artikelnummer</li>
<li data-field="dateRange">Zeitraum</li>
<li data-field="sapOrderNumber">Auftragsnummer</li>
<li data-field="personalReference">persönliche Referenz</li>
<li data-field="shipTo">Lieferadresse</li>
<li data-field="orderType">Auftragsart</li>
</ul>
</div>
</div>
Снимок экрана Selenium IDE (Selenium IDE действительно находит и нажимает на кнопку) 1
Я попытался найти элемент со следующим кодом:
driver.find_element_by_xpath("//ul[@id='tabs-orderbook']/li/div/div/div/div/div/button").click()
driver.find_element_by_xpath("//button").click()
driver.find_element_by_css_selector(.uk-margin-right > .js-select").click()
это сообщение об ошибке, которое я получаю:
NoSuchElementException: нет такого элемента: Невозможно найти элемент: {"method": "xpath", "selector": "// ul [@ id = 'tabs-orderbook'] / li / div / div / div / div / div / button"}
У меня естьискал ответ довольно долго и расстраивался. Буду очень признателен за любую помощь или советы.
Я использую Chrome (версия 77.0.3865.120), Chromewebdriver (версия 77.0.3865.40), селен (версия 3.141.0)
пс. Это мой первый вопрос о переполнении стека, так что если у вас есть какие-либо советы относительно того, как я задаю вопросы, я был бы очень благодарен.
Большое спасибо и хорошего дня. : D