Как выбрать случайную картинку при постинге ВКонтакте?
-
Как вариант перебор елементов циклом фор с значением от о до рандом последнее значение кладем в переменную и ставим как картинку поста. Мож старожилы посоветуют что мудрее и проще.
А какой тут рендом? Тут ид-шники все разные и не последовательные..
-
@avtopars
зачем циколы?@minfin
собрать все "ид-тшники" в массиве, случайный элемент массива.
если использовать во вместо массива хеш или создавать для каждого элемента "ид-тшника" объект - можно контролировать использование картинок, например чтобы совершенно случайно не шла одна и та же картинка подряд или чтобы одному и тому же месту не отравлялась одна и та же картинка и более сложные правила поведения.
-
пробуй через xpath, вот мануал по xpath https://docs.google.com/document/d/1PdfKMDfoqFIlF4tN1jKrOf1iZ1rqESy2xVMIj3uuV3g/pub
-
Нашел простое решение. Кому нужно - забирайте:
>MATCH><div class="media_check_btn">>AT>[[RANDOM_NUMBER]]
Рендом нумер ограничиваем кол-вом своих картинок.
-
Не люблю я поиск через >MATCH>... Xpath по надёжнее как то.
@minfin Учтите, что >AT> префикс начинается с 0.
-
@Fox да, я в курсе
-
@Fox said in Как выбрать случайную картинку при постинге ВКонтакте?:
Не люблю я поиск через >MATCH>... Xpath по надёжнее как то.
@minfin Учтите, что >AT> префикс начинается с 0.
Видимо человек не дружит с CSS. В этом примере я вижу что один пробел в любом элементе разломает всю логику или положит скрипт ошибкой, даже МАТЧЕМ нужно пользоваться иначе, вырезая всё что может измениться или не несёт смысла.
Но я бы здесь использовал CSS, привязка к классам очевидна, использовал бы еще иерархию для прочности, но мой скрипт не рухнет на элементарном пробеле или перестановке местами классов в стилях элементов
(извините, понравилось "что-то туплю..", не в обиду, очень верно подмечено)
-
@jurassik Попахивает холиваром
:D
Но я бы здесь использовал CSS, привязка к классам очевидна, использовал бы еще иерархию для прочности, но мой скрипт не рухнет на элементарном пробеле или перестановке местами классов в стилях элементов
В Xpath тоже можно быстро сделать привязку к классу, да и с иерархией для прочности. Не понимаю, как правильно составленный Xpath может рухнуть "на элементарном пробеле или перестановке местами классов в стилях элементов".
В пользу Xpath добавлю, что в нём есть логические операторы, функции замены, перебора-подстановки и другие методы. Чего нет в CSS..
-
@Fox
отлично справится CSS, а замечание было к приведённому примеру на МАТЧах
(ну и к слову, подсказки я использую редко, дабы появление какого-то элемента на странице не стало неожиданностью)
-
@jurassik На счёт примера на >MATCH> согласен. По сути просто регулярное выражение применяемое к коду страницы.
отлично справится CSS
Я с CSS мало работал, но как может селектор (без js кода) найти элемент с генерируемыми классами и id, по нескольким ключевым словам без учёта регистра?
Xpath://strong[starts-with(translate(text(), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), 'pre-ico start' ) ]
CSS более распространён, но Xpath более функционален.
Выше выложил сугубо личное ИМХО, каждый работает с тем, с чем с чем считает нужным. Более в холиваре не участвую
:D