Как получить список совпадений в конструкторе действий?

  • Автор темы Автор темы Rized
  • Дата начала Дата начала

Rized

Новичок
Регистрация
22.09.2014
Сообщения
12
Реакции
1
Баллы
3
Нужно имитировать клик по случайному из множества идентичных (картинка в ссылке) элементов на однотипных страницах. Количество элементов на каждой странице разное, причем разница приличная, от 4 до 30. Страниц много, кол-во элементов на каждой может меняться со временем, нужен универсальный шаблон.

Делаю это через конструктор действий, но как взять кол-во совпадений по заданным атрибутам не понимаю. Рандом в пределах 1-30 не подходит, можно "кликнуть" на несуществующем элементе, повторить рандом, снова кликнуть мимо и так сколько угодно. Рандом от 1 до 4 вкл. слишком мал для "больших" страниц, это как-то...

Как такое можно реализовать? Есть какие-нибудь альтернативы?

Чтобы было нагляднее:
17c31bd13b3d16f46eb1211cadfde076.png


Нужно получить кол-во этих совпадений.
 
с помощью экшена Обработка текста -> Regex (Все) берите все совпадения в список и считайте строки..
регулярку берите ту что у вас в конструкторе действий..
 
  • Оценить
Реакции: zennoX и Rized
c# кубик
var imgs = instance.ActiveTab.FindElementsByAttribute("img", "src", "ваша регулярка", "regexp").Elements.Shuffle();
imgs.Take(new Random().Next(0, imgs.Count())).ToList().ForEach(img=>img.Click());
 
  • Оценить
Реакции: deopl, zennoX и Rized
с помощью экшена Обработка текста -> Regex (Все) берите все совпадения в список и считайте строки..
регулярку берите ту что у вас в конструкторе действий..
Работает реактивно! Спасибо.:df:

c# кубик
var imgs = instance.ActiveTab.FindElementsByAttribute("img", "src", "ваша регулярка", "regexp").Elements.Shuffle();
imgs.Take(new Random().Next(0, imgs.Count())).ToList().ForEach(img=>img.Click());
Вы монстр :) Попробую и так сделать.
 
c# кубик
var imgs = instance.ActiveTab.FindElementsByAttribute("img", "src", "ваша регулярка", "regexp").Elements.Shuffle();
imgs.Take(new Random().Next(0, imgs.Count())).ToList().ForEach(img=>img.Click());
а куда кол-во элементов в результате попадает?
 
никуда )
кстати можно просто указать в екшене в ячейку номер совпадения Random - будет тоже самое
 
  • Оценить
Реакции: zennoX
никуда )
кстати можно просто указать в екшене в ячейку номер совпадения Random - будет тоже самое
неверно вопрос задал)
список совпадений куда попадет?
где в скрипте имя списка указано?
 
зачем вам количество элементов на этом примере? тут же другая задача
 
Последнее редактирование:
никуда, нигде ) это магия!
 
  • Оценить
Реакции: rostonix
читай задание в самом первом посте.
вот это и выполняет.
 
  • Оценить
Реакции: zennoX
читай задание в самом первом посте.
вот это и выполняет.
я понял задание, я не понял куда результат кладется? в какой список/переменную? где это в скрипте указывается?
в переменную к экшену просто ok же пишется.
 
нет никакого результата. результат это клик по элементу.
 
  • Оценить
Реакции: zennoX

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