[НЕ АКТУАЛЬНО]Как обойти ловушку на сайте?

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 444
Благодарностей
1 287
Баллы
113
Доброго времени. Кто-то встречал на сайтах - с таким видом защит, когда есть поле input - для выбора в тестах ответа, а клик происходит выше нужного выбора в невидимый элемент - который играет роль защиты(ловушки) - если бот туда кликнет, тест уже не пройти...Т.е. есть у сайта подложка, при клике на который тест провален...

Я думал находить плюсовые координаты элемента - если виден - значит это то что нам нужно. Но оказывается, этот скрытый элемент(ловушка) тоже в плюсовых координатах... Мало того, в просмотре DOM(DevTools) - нужный нам элемент лишь 1 в нужном месте...Но как-то защита сайта заставляет думать бот, что туда куда нам нужно кликнуть - находится в другом месте - в месте ловушки... Зато второй клик после ловушки - срабатывает корректно куда нужно...

Сталкивался кто с подобным? Есть ли выход?



Короче как-то отработало с последним элементом [last()] (хотя я не понимаю как может быть много xpath элементов - если в dom виден лишь 1 конкретный элемент...), наверное меня ввели в заблуждение с кривым xpath. Сейчас с 0 написал сам все и все отработало. Все огромное спасибо за попытку помочь.
 
Последнее редактирование:

White trash

Client
Регистрация
09.06.2014
Сообщения
782
Благодарностей
346
Баллы
63

backoff

Client
Регистрация
20.04.2015
Сообщения
5 926
Благодарностей
6 389
Баллы
113
по идее они должны быть видны по xpath
пропиши путь xpath и добавь в конце [last]
если я правильно понял, то ловушка находится в коше выше, а значит идет под первым номером
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 444
Благодарностей
1 287
Баллы
113

backoff

Client
Регистрация
20.04.2015
Сообщения
5 926
Благодарностей
6 389
Баллы
113
ну тогда к нему и пропишись, тем более если он один
лучше бы пример дал с пояснениями, что куда
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 444
Благодарностей
1 287
Баллы
113
del.
 
Последнее редактирование:

backoff

Client
Регистрация
20.04.2015
Сообщения
5 926
Благодарностей
6 389
Баллы
113
ну все работает
 

Вложения

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 444
Благодарностей
1 287
Баллы
113
ну все работает
Ну если так проверять на 2 клика, то можно было и не проверять...) Как бы ловушка не на первом элементе всегда. Она спрятана в js наверное и меняется от обновления страницы. Я написал последовательность как проверить, а не 2 клика...)

P.S. Находить элемент [last()] - не всегда спасает, так как слои меняются что-ли...
 

backoff

Client
Регистрация
20.04.2015
Сообщения
5 926
Благодарностей
6 389
Баллы
113
ты ничего не писал про проверку, ты написал что клики не получается сделать, я тебе показал как сделать
2. Привязать метамаск любой через зенку - кликнув 2 view, а потом Done
сделали клики, все прошли

сделай скрин тогда что ли как выглядит ошибка или лучше видео
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 444
Благодарностей
1 287
Баллы
113
Короче как-то отработало с последним элементом, наверное меня ввели в заблуждение с кривым xpath. Сейчас с 0 написал сам все и все отработало. Все огромное спасибо за попытку помочь.
 

djaga

Client
Регистрация
26.04.2020
Сообщения
505
Благодарностей
1 052
Баллы
93
Ну если так проверять на 2 клика, то можно было и не проверять...) Как бы ловушка не на первом элементе всегда. Она спрятана в js наверное и меняется от обновления страницы. Я написал последовательность как проверить, а не 2 клика...)

P.S. Находить элемент [last()] - не всегда спасает, так как слои меняются что-ли...
Короче как-то отработало с последним элементом, наверное меня ввели в заблуждение с кривым xpath. Сейчас с 0 написал сам все и все отработало. Все огромное спасибо за попытку помочь.
Так все ловушки можно обходить с помощью проверки размера элемента. Если он на поверхности, то имеет размер, если нет, то не имеет.
upd: перечитал, "не актуальный вопрос" и все стало немного понятнее))
 
  • Спасибо
Реакции: Sho, Valek_333 и Alex.A

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 373
Благодарностей
3 297
Баллы
113
как может быть много xpath элементов - если в dom виден лишь 1 конкретный элемент
Запросто. XPath может найти сначала в родительских, а потом в их дочерних (то же самое место) и так много раз, по всей вложенности.
Подобное надо иметь ввиду и исключать.
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 444
Благодарностей
1 287
Баллы
113
Запросто. XPath может найти сначала в родительских, а потом в их дочерних (то же самое место) и так много раз, по всей вложенности.
Подобное надо иметь ввиду и исключать.
А как же их находить если devtools не видит?
 
Последнее редактирование:

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 373
Благодарностей
3 297
Баллы
113

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