Как кликнуть по случайной ссылке



  • На странице есть набор ссылок. Необходимо кликнуть по случайной (любой) ссылке на странице. Идея в том, что это происходит в цикле и клики должны быть рандомные.



  • @kap90 Ну как вариант генерировать случайное число и номер совпадения сделать это случайное число.



  • This post is deleted!


  • @Canine благодарю за участие. Алгоритм понятен, с этим вопросов нет. Я сам программист. Вопрос в технической реализации. Как методами BAS получить эту случайную ссылку, имея случайное число? В циклах всё работает странно.
    Я например думал сделать так:

    1. Получить набор всех элементов (ссылок). Массив или список, что есть в BAS?
    2. Получить случайное число от 0 до количества элементов минус 1
    3. Кликнуть по случайному элементу, обратившись к нему с использованием случайного числа.

    Вопрос - как обратиться к этому случайному элементу?
    На примере: На странице 100 ссылок, в разных местах, классы у них у всех разные, расположены относительно тега body тоже по разному (или какой родительский тег берётся в BAS за начальный?) . Пройтись по набору >CSS> a циклом тоже можно, но далее проблема, так как переменная THIS_CSS (не помню точно синтаксис, извиняйте если что) отдаёт что-то типа >CSS> a - то есть общий CSS для всего набора, и клик происходит по первому удовлетворяющему элементу, а не по тому, который сейчас рабочий в цикле. Если, бы было что-то типа this как в javascript или $this в php, то было бы очень удобно. Но мне найти аналог не удалось.



  • @kap90 БАС поддерживает же не только css, там есть и match вот все по селекторам http://wiki.bablosoft.com/doku.php?id=ru:how_to_search_for_element думаю можно же спарсить ссылки и по match кликать, то есть брать случайную строку из списка и ее вставлять селектор.



  • @Canine в принципе работает, но не всегда:)
    Сейчас я тестирую скрипт на главной странице яндекса. https://yandex.ru

    Скрипт работает так:
    Запускаю цикл по >CSS> a
    Далее случайным образом выбираю ссылку, получаю атрибут href, заношу в переменную [[HREF]] , цикл останавливается
    Далее вызываю клик по такому правилу: >MATCH>href="[[HREF]]
    Далее возможны 2 варианта. Либо он находит нужный элемент и кликает, либо не находит. Причём заметил закономерность, если href короткий, то всё норм. А если длинный, типа такого: https://news.yandex.ru/yandsearch?cl4url=www.gazeta.ru/business/2017/03/03/10554911.shtml&lang=ru&from=main_portal&lr=39&msid=1488546578.99635.22907.8341&mlid=1488545868.glob_225.abc94f3f , то кирдык - не работает.
    Может быть в есть какое-то ограничение длины строки?


  • administrators

    @kap90
    Получаете количество ссылок действием "Получить Количество Элементов" с параметром >CSS> a
    Получаете случайный номер действием "Случайное Число"
    Кликаете по ссылке действием "Двигать Мышь И Кликнуть На Элемент" с параметром >CSS> a >AT> [[RANDOM_NUMBER]]

    Если хотите использовать цикл, то взаимодействовать с элементом цикла можно специальным действием

    0_1488677476275_ClickOnElementCycle.png


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.