Добавил еще ведущие нули к миллисекундам, если кому-то еще когда-то этот код понадобится
log = function (text, color, define){ var id, time, thread, logHtml, textLog; define = (typeof define == 'string') ? define.split(/[\s,.|:;]+/g) : define; if(typeof define === 'object' && define !== null){ if(Array.isArray(define)){ id = define.indexOf('id') > -1; time = define.indexOf('time') > -1; thread = define.indexOf('thread') > -1; } else{ id = define.id == true; time = define.time == true; thread = define.thread == true; } } else id = time = thread = true; id = id ? '<a href="action://action' + ScriptWorker.GetCurrentAction() + '" style="color:gray;">[' + ScriptWorker.GetCurrentAction() + ']</a>' : ''; time = time ? ' ' + getTime() : ''; thread = thread ? ' Поток №' + thread_number() : ''; logHtml = (id || time || thread) ? id + '<span style="color: white">' + time + thread + ' : </span>' : ''; logHtml += '<span style="color:' + (color ? color : 'white') + '">' + text + '</span>'; textLog = '[' + ScriptWorker.GetCurrentAction() + ']' + time + thread + ' : ' + text function getTime(){ var checkTime = function(i){ return (i < 10) ? "0" + i : i; }; var checkMilliSeconds = function(ms){ if (ms < 10) { return "00" + ms; } else if (ms < 100) { return "0" + ms; } else { return ms; } }; var d = new Date(); var hh = checkTime(d.getHours()); var mm = checkTime(d.getMinutes()); var ss = checkTime(d.getSeconds()); var ms = checkMilliSeconds(d.getMilliseconds()); return '[' + hh + ':' + mm + ':' + ss + '.' + ms + ']'; }; Logger.WriteHtml(logHtml, textLog); }Получить список ID в Facebook
-
Здравствуйте.
Может кто подскажет, я пробовал найти ответ на форуме, но конкретного ничего к сожалению не нашёл.
Пытаюсь спарсить ID пользователей из группы.
Как пример взял скрипт Hashtag Sucker от Ravil.
Вот пример того, что я намудрил:

К сожалению, на этапе "получить код элемента" всё виснет... может кто-то подсказать, что я делаю не так?
В коде страницы, нахожу такой код:/ajax/hovercard/user.php?id=100003880024538&extragetparams=%7B%22fref%22%3A%22gm%22%2C%22directed_target_id%22%3A1743463042548794%2C%22dti%22%3A1743463042548794%2C%22hc_location%22%3A%22group%22%7DВсё что мне нужно, это получить и записать в файл вот это:
id=100003880024538&extraget
Буду благодарен за подсказки. -
А оно и будет зависать, все правильно. Было бы странно, если бы оно не зависало.
Там где получить код элемента должно быть [[FOR_EACH_CSS]]>AT>[[CYCLE_INDEX]], а сейчас там какая то околесица.Это для начала. Дальше - надо проверить селектор в начале цикла.
И просто для общего развития - если парсить надо много, то лучше сохранять код страницы или его часть и проходить регуляркой. Производительность значительно выше чем у этих циклов.
-
Спасибо всем, кто попытался помочь! А есть видео инструкция по регуляркам? Я нашёл вот это: https://www.youtube.com/watch?v=U88xUpj2BiI попытался сделат ьна подобии, но без успешно...
Нашёл также видео https://www.youtube.com/watch?v=UkNvH-QNyxc и на сайте https://bablosoft.github.io/RegexpConstructor/#!/regexptest сделал всё по инструкции. Всё получилось... Мне выдало следующее сообщение:Ваше регулрное выражение:
member_id=(\d+)&ref=MEMBER_LIST"теперь не знаю как это внедрить в БАС. Поэтому ищу видео инструкцию...
PS: @andrwork спасибо за подсказку. Это был старый скрин. Я поправил и поставил как у тебя, но выдачи ноль...
Идея на счёт сохранения кода и прохождения регуляркой - интересна. Я просто ещё не знаю, как это нужно реализовать... -
Пытаюсь спарсить ID пользователей из группы
Если все ID пользователей уже есть в коде страницы, то их всех можно получить одним экшеном Xpath получить каждый xml (модуль Xpath). Могу помочь с составлением xpath запроса, для этого скинь код страницы файлом.
Для ознакомления могу посоветовать неплохой Мануал по XPath и заодно Шпаргалка по регулярным выражениям
-
Спасибо @Fox большое! Я тут методом научного тыка и благодаря подсказкам пользователей чёт намутил и получилось... только теперь другая загвоздка... они (ID) все в одной строчке разделённые запятой и есть повторы. Попытался добавить их в список, но чёт я там пока не разобрался что и как... может есть более простой способ?
Кстати, я делал не так как ты предложил. Я просто взял весь код страницы, функцией "Получить Код Элемента". Потом использовав функцию "Извлечь все данные" добавил туда регулярку и вуаля... ID спарсились... вот только в одну строку и с дубликатами :) Но получилось... :) Я к чему, что твой способ наверное более верный... но это то, что я пока умею... -
Потом использовав функцию "Извлечь все данные" добавил туда регулярку и вуаля... ID спарсились...
Экшен "Извлечь все данные" отдаёт ответ в виде списка (массив), можешь применить к нему экшен Удалить Дубликаты (модуль список). Сохранить можешь в файл, или использовать дальше циклами.
-
@aveko А ты сохрани эту переменную экшеном Записать Список В Файл, будет так как ты хотел.
Данные не идут в строку через запятую, это в логе так отображается просто. Список как поезд, в нём есть вагоны, в каждом вагоне сидят пассажиры, узнать в каком вагоне какие пассажиры сидят, можно по номеру вагона. -
О, спасибо за подсказку. Правда, я писал через экшен "Добавить Элемент". Таким образом список сразу же в файле. Я попытался использовать "записать Список в Файл", но ничего не добавилось... может всё добавляется после отработки скрипта целиком? Если да, то можно чтобы как-то сразу же писался в файл? Просто позже в скрипте данные должны быть задействованы, а если их пока нет, то будет ошибочка... :)

