Как кликать по HTML а не CSS



  • Здраствуйте, реально ли совершать клик по объекту зная его class и его порядковый номер (если не один)



  • попробуй как здесь http://wiki.bablosoft.com/doku.php?id=ru:tutorial2
    только вместо парсить,
    узнай css, удали лишнее, и кликай



  • @No именно так все и устроенно! Порядок такой - нажимаем на нужный объект левой кнопкой мыши - выбираем - двигать мышь и кликнуть на элемент - и выбираешь match (существует три вида клика - по css - по тексту match - b по координатам
    0_1475749790624_2016-10-06_212813.png



  • @Turutur Ну match я видел. Только вот не будет работать если кнопок три и мне нужно кликнуть на вторую, а скрипт кликнет только на первую.
    Получается нужен более продвинутый конструктор?
    Например на с# этот клик я могу сделать этим кодом
    HtmlElement he = instance.ActiveTab.GetDocumentByAddress("0").FindElementByTag("form", 1).FindChildByAttribute("span", "class", "b-combo__arrow", "text", 0);
    if (he.IsVoid) return -1;
    Можно ли этот код внедрить в BAS ?



  • Ну мой главный вопрос: Реально ли подобный код перенести в BAS ?
    HtmlElement he = instance.ActiveTab.GetDocumentByAddress("0").FindElementByTag("form", 1).FindChildByAttribute("span", "innertext", "Переводы", "regexp", 0);
    if (he.IsVoid) return -1;
    Если нельзя. Можно ли как сделать чтобы объект для клика искался по "innertext" или "innerhtml" ?



  • @No человек - да ты продвинутый юзер - не пугай меня кодом - не мой уровень - где то видел выполнить код - Жди поддержку @support - или может еще кто шарит. Извиняй - не смог помочь. Если тема не палевая - запости пожалйста скрин и пример - может пригодится - я не встречал проблем с кликом по элементам....



  • Ну я знаю лишь азы С#, и код этот я беру с другого софта на подобии BAS.
    Вот я и привык там кликать только по элементам (там по CSS кликать вроде бы и нельзя)и мне кажется что так удобней работать.
    Например софт который кликает по значению "innertext" ,по идеи, должен быть рабочим дольше чем клики по css



  • @No это дело - привычки - я сам слез с "зенки" - BAS больше нравиться - хотя еще в стадии разработки и да некоторые элементы реализованы " не так" - после использования "другого софта" - просто нужно смириться и понять здешний алгоримт)



  • @No

    Здраствуйте, реально ли совершать клик по объекту зная его class и его порядковый номер (если не один)

    Здравствуйте, да реально, для этого после селектора нужно поставить номер в треугольных скобках. Допускается использование переменных.

    Например, 3 ссылка a<2>
    или сслыка в цикле a<[[CYCLE_INDEX]]>



  • @No

    HtmlElement he = instance.ActiveTab.GetDocumentByAddress("0").FindElementByTag("form", 1).FindChildByAttribute("span", "class", "b-combo__arrow", "text", 0);

    В БАС это будет так

    page().all("form").at(0).css("span.b-combo__arrow").text()!
    [[RESULT_TEXT]] = _result()
    

    Нужно вставлять в действие выполнить код



  • @No

    По innerHTML можно кликать так, как показал @Turutur http://community.bablosoft.com/post/2265



  • В будущем также планируется конструктор запросов, вроде конструктора для логических выражений, которые есть сейчас.



  • "По innerHTML можно кликать так, как показал @Turutur http://community.bablosoft.com/post/2265"

    @support можете, пожалуйста, привести?



  • @No Ну берете весь код элемента или кусок кода, вставляете в поле, выбираете match вместо css, как показано на картинке. И происходит поиск по innerHTML



  • @support said in Как кликать по HTML а не CSS:

    вроде конструктора для логических выражений, которые есть сейчас

    @support - пожалуйста сделайте возможность в конструкторе регулярок - сразу переходить на страницу теста.

    зачем: допустим - делал регулярку общую к каким то данным с разных страниц - то есть универсальную - например регулярка которая вытаскивает прокси и порты, ссылки и так далее - она сохранена в файл - и чтобы не тратить время на создание регулярки через констрктор при тесте - сразу проверить работает ли сохраненная регулярка или полученная с другого источника



  • @Turutur Таких сервисов полно. Например, https://regex101.com/



  • @support например у меня есть такой код
    <span class="b-combo__item-inner" dbid="46" dbprid="3" style="cursor:pointer">Автомобили</span>

    Можно ли кликнуть используя только эту часть, ибо всё остальное не постоянное. (Не получается так)
    style="cursor:pointer">Автомобили</span>



  • @No Можно сайт, я бы попробовал.



  • @support Я думаю только вы сможете разобраться в этой ситуации)
    Есть страница https://www.fl.ru/projects/ Тут нужно выбрать с выпадающего списка 2 категории, не важно какие, ну пускай это будет "Тексты: Статьи"
    Можно конечно по простому сделать
    alt text
    Но тогда нельзя будет просто перестроить скрипт например на" Разработка игр: 3D Моделирование" А вот если бы клики происходили по innerHTML, то тогда было бы лишь достаточно изменить данные в переменной и скрипт бы кликал по нужным категориям.
    Как подсказал @Canine , можно сделать клик указав просто текст без кода.
    alt text
    Но тогда вторую подкатегорию выбрать не получиться.
    Что можете посоветовать?



  • @No А если просто через ввод написать то что нужно оно вроде выбирает 0_1475782499389_постинг.png
    0_1475782625517_тест ввод.xml


Log in to reply
 

  • 2
  • 14
  • 4
  • 6
  • 4
  • 4
  • 54
  • 2