Кликнуть по последнему элементу

marazmatik

Client
Регистрация
24.01.2013
Сообщения
89
Благодарностей
8
Баллы
8
Нубский вопрос, но не получилось найти решение самому.

Есть DOM модель. <div class="rand1"><div class="rand2"><div class="rand3"><div class="rand4">20</div></div></div></div>

Задача кликнуть на самый внутренний DIV в innertext = 20;
При поиске элемента находит все верхние дивы тоже, искал как innertext так и outtext все равно ищет все дивы.
classname всегда рандомный на странице, нереально по нему выбирать.
 

TwistDanceR

Активный пользователь
Регистрация
30.05.2019
Сообщения
479
Благодарностей
200
Баллы
43
1) Ищешь правильный Xpath к элементу (можно через Xpath Helper Wizard)
2) Применяешь шаблон на C#
C#:
Tab tab = instance.ActiveTab;
HtmlElement he = tab.FindElementByXPath(@" вставляешь свой x path ",0);
tab.FullEmulationMouseMoveToHtmlElement(he);
tab.FullEmulationMouseClick("left","click");
Может быть маленькое различие, но если поищешь можно через ширину и высоту элемента подкорректировать попадание. Удачи.
 

marazmatik

Client
Регистрация
24.01.2013
Сообщения
89
Благодарностей
8
Баллы
8
Дело в том что там вложенность бешенная, около 50-ти, DOM очень динамичный, постоянно меняется, это ФБ.
 

TwistDanceR

Активный пользователь
Регистрация
30.05.2019
Сообщения
479
Благодарностей
200
Баллы
43
Дело в том что там вложенность бешенная, около 50-ти, DOM очень динамичный, постоянно меняется, это ФБ.
Если класс дива (rand4) не меняется, то этот вариант сработает. Иначе нужно найти другой путь. Но тогда с тебя стак вариантов страниц. Желательно со ссылками и разъяснением.

Я имею в виду что тебе не обязательго нужен полный xpath.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 614
Благодарностей
4 602
Баллы
113

one

Client
Регистрация
22.09.2015
Сообщения
6 796
Благодарностей
1 264
Баллы
113

TwistDanceR

Активный пользователь
Регистрация
30.05.2019
Сообщения
479
Благодарностей
200
Баллы
43
  • Спасибо
Реакции: doc и Mikhail B.

marazmatik

Client
Регистрация
24.01.2013
Сообщения
89
Благодарностей
8
Баллы
8
А вот с началом строки хорошая идея
 

TwistDanceR

Активный пользователь
Регистрация
30.05.2019
Сообщения
479
Благодарностей
200
Баллы
43

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 333
Благодарностей
5 431
Баллы
113

marazmatik

Client
Регистрация
24.01.2013
Сообщения
89
Благодарностей
8
Баллы
8

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 333
Благодарностей
5 431
Баллы
113

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)