@Araya

Как найти элемент?

Всем привет, не получается дотянуться до элемента, есть примерно такая структура:
...
<form action="#" method="GET">
    <div class="first_block">
        <div class="form-group first-class">
            <label>Name</label>
            <input type="text" class="form-control first">
        </div>
    </div>
...
</form>

С помощью других атрибутов найти элемент получается, а вот с помощью CSS класса - нет :(
Пытался нечто подобное:
find_element_by_xpath("//div[@class='first_block']//input[@class='first']")

Где я допустил ошибку?
PS есть такой еще вариант, он конечно рабочий, но трешак еще тот...
find_element_by_xpath("//div[contains(@class, 'first_block')]//input[contains(@class, 'form-control') and contains(@class, 'first')]")
  • Вопрос задан
  • 121 просмотр
Решения вопроса 1
KodyWiremane
@KodyWiremane
Пони, Debian, LEMP, LAN, любитель
А так?

find_element_by_xpath("//div[@class='first_block']//input[@class='form-control first']")


Судя по этому, в случае если нужно именно по одному из не известных заранее классов, трешак надёжнее, т. к. вариант с contains не обращает внимания, совпадает ли имя класса целиком (просто ищется вхождение подстроки). Предложенный там вариант селектора

…[contains(concat(' ', normalize-space(@class), ' '), ' CLASSNAME ')]…
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы