Полезная информация

Общайтесь со знакомыми и друзьями в нашем сообществе в Facebook.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-11-2022 17:04:05

Алим пишет

Denzar
Скрипт три раза проверяет текст на совпадение и если три раза воспало, то прирывает цикл.
Как он у вас работает?

Он продолжает гнать 100 раз без остановки. После 3-х раз ничего не прерывается.

25-11-2022 17:06:15
Явно этот счётчик кривой. Ведь даже InfSub обратил на это внимание, вот его цитата:

InfSub пишет

Алимусловия для переменной "y" пишутся в параметрах цикла for(y = 0; y <= 3; y++){}иначе используется while(true){}

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 03-11-2022 14:23:37

Алим пишет

Denzar

скрытый текст

Выделить код

Код:

for(i=1;i<=100;i++){

iimPlayCode('URL GOTO=https://forum.mozilla-russia.org/');

var y = 0
for(;;){
if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=TXT:Полезная<SP>информация')>0){
y++
if(3 == y){break}
}
iimPlayCode('WAIT SECONDS=1')
}

}

Исправил. Человеческий фактор.

Так а всё равно ж ничего не изменилось. Как не работало, так и не работает.
Вы его хоть проверяли на работоспособность или так написали и выложили? )))

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 20-09-2022 16:01:04

Алим пишет

Denzar

скрытый текст

Выделить код

Код:

for(i=1;i<=100;i++){

iimPlayCode('URL GOTO=https://forum.mozilla-russia.org/');

var y = 0
for(;;){
if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=TXT:Полезная<SP>информация')>0){
if(3 == y){
y++
break
}
}
iimPlayCode('WAIT SECONDS=1')
}

}

А как этот скрипт работает? Он же не останавливается после 3 раз считывания искомой фразы. Что-то я вообще не понял что это за скрипт получился. Он точно правильный?:/

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 31-08-2022 12:50:27

Здравствуйте! Подскажите как написать простой счётчик в цикле для определенной фразы? То есть, работает скрипт в цикле и при нахождении на странице определенной фразы останавливается. Но не сразу надо, а только после определенного количества повторов появления этой фразы. Вот простой пример скрипта, надо там только счётчик как-то добавить

скрытый текст

Выделить код

Код:

for(i=1; i<=100; i++){ 
   iimPlayCode('URL GOTO=https://forum.mozilla-russia.org/'); 
 f=iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:Полезная<SP>информация'); if(f>0) 
 // тут должен быть счётчик для данной фразы //
  break; 
 }


То есть надо так сделать, чтоб только после 3-х раз появления на странице фразы "Полезная информация" срабатывала команда break

31-08-2022 12:59:08
Или может это неправильное направление? Подскажите, может есть вариант проще и лучше, чтоб остановить цикл скрипта при условии если за время работы будет найдена определенная фраза заданное количество раз?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-07-2022 14:59:12

Denzar пишет

Если использовать такой код,

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:СМС<SP>от:<SP>YahooДата<SP>СМС:* EXTRACT=TXT'); q=iimGetLastExtract().match(/\d+/g); 
iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=NAME:qrf ATTR=NAME:body CONTENT='+q);


то выдаст числа с запятыми
скрытый текст

код здесь из себя представляет последнее 5-тизначное число, оно-то и надо. Но как его извлечь отдельно?

Нашёл решение как извлечь отдельно. Это делается с помощью квантификаторов. Примерно так:

Выделить код

Код:

alert( "25,2022,10,17,02,78644".match(/\d{5}/) );

Но теперь осталась загвоздка как числа в кавычках заменить на переменную q

[spoiler=почти готовый код][code]     
iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:СМС<SP>от:<SP>YahooKДата<SP>СМС:* EXTRACT=TXT'); q=iimGetLastExtract().match(/\d+/g);
iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=NAME:qrf ATTR=NAME:body CONTENT='+q);
alert( "25,2022,10,17

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-07-2022 13:57:12

Если использовать такой код,

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:СМС<SP>от:<SP>YahooДата<SP>СМС:* EXTRACT=TXT'); q=iimGetLastExtract().match(/\d+/g); 
iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=NAME:qrf ATTR=NAME:body CONTENT='+q);


то выдаст числа с запятыми
скрытый текст
njsFSHG.png

код здесь из себя представляет последнее 5-тизначное число, оно-то и надо. Но как его извлечь отдельно?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 25-07-2022 05:33:54

Здравствуйте! Помогите пожалуйста подкорректировать команду извлекающую код из текста.

Вот такой текст
ZYWDIxb.png

Нужен только код подтверждения. Но при использовании  команды q=iimGetExtract().match(/\d+/g).join(''); оно все числа из текста извлекает, получается так:

скрытый текст
PiDwcUR.png

А надо извлечь только последние 6 чисел, которые и есть код.
Как можно это решить, подскажите пожалуйста?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 18-06-2022 18:22:13

PRESIDENT пишет

Приветствую тех немногих, кто ещё тут бывает.

Приветствую! Я как раз один из тех кто тут ещё бывает. Столкнулся с казалось бы простой, но в то же время непонятной задачей: на сайте при вводе пароля приходится использовать для записи скрипта режим EVENT (потому что при обычном способе записи/ввода пароля оно не срабатывает). Ну да это ладно, EVENT так EVENT. Но прикол в том, что даже при использовании команды EVENT пароль по нормальному срабатывает только когда браузер развёрнут. А если браузер свернуть, то тогда при работе скрипта при вводе пароля и нажатии ввод оно пишет "некорректный пароль". Приходится постоянно держать браузер открытым (развёрнутым), тогда всё норм работает. Но это оооочень неудобно. Вот как это побороть? непонятно

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 26-01-2022 22:34:27

На сайте Нагибаки нашёл вроде то, что надо

скрытый текст
r3NrWSF.png

Но так и не понял, а как там в файл текст сохранять тот, который надо, а не то, что записано в кавычках ("текст для сохранения"). Подскажите, как этим скриптом нужный текст для сохранения добавлять? Например на странице сайте есть текст который надо сохранить. Как его этим скриптом сохранять?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 26-01-2022 14:15:14

Подскажите пожалуйста как сохранять в файл так, чтоб каждый раз новое содержимое переписывало старое? Например этот код сохраняет всё с новой строки

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DD ATTR=TXT:* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=numer.txt');


а можно ли как-то сохранять, чтоб старое удалялось при сохранении нового?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 23-01-2022 18:26:30

InfSub

Ух ты! Классно! Работает! Спасибо большое!
Я и сам уже так и этак пробовал, нашёл на сайте регулярные выражения, вот тут:

скрытый текст
VUXjHwG.png
но что-то так и не получалось самому разобраться. То есть я там пробовал применять большую D, а надо было маленькую d.
В общем оказывается вон как надо было. Спасибо!

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 23-01-2022 15:04:11

Здравствуйте! Подскажите как вырезать всё лишнее которое сохраняется с помощью этого кода:

скрытый текст

Выделить код

Код:

var iP=iimPlayCode, f1='FRAME NAME=ifmail;

    iP(f1+'TAG POS=1 TYPE=STRONG ATTR=TXT:Please<SP>enter<SP>the<SP>following<SP>code<SP>* EXTRACT=TXT'); a=iimGetLastExtract(); 
alert(+a);


Сохраняет вот что:
скрытый текст
BMb6XHj.png

а надо чтоб всё удалило и оставило только число (495212). Какую команду для вырезания лишнего надо применять вместе с iimGetLastExtract(), подскажите пожалуйста.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 07-10-2021 07:17:16

PRESIDENT пишет

Если его один раз запускаешь окно выбора открывается

А ты попробуй с новой чистой страницы, точнее в новой чистой вкладке браузера загрузить страницу. И список выбора стран не откроется.


код загружающий страницу сайта в новой вкладке браузера

Выделить код

Код:

TAB CLOSEALLOTHERS
TAB OPEN
TAB T=2
TAB T=1
TAB CLOSE
WAIT SECONDS=2
CLEAR
URL GOTO=https://www.aliexpress.com/item/4001297334567.html
TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=DATA-ROLE:country
WAIT SECONDS=1
TAG POS=1 TYPE=li ATTR=data-name:"Belarus" 
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TYPE:button


Попробуй запустить у себя именно этот код, что я сейчас тут написал. Он закрывает все вкладки, открывает новую и в ней исполняется с чистого нового листа и чистыми куками. И в новой вкладке браузера загружает страницу и только после этого уже нажимает на открытие списка стран.
Попробуй пожалуйста, выпадет ли список стран, посмотрим.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 06-10-2021 21:15:35

PRESIDENT пишет

Я не знаю чем тебе этот код не угодил
у меня всё прекрасно отрабатывает

тут ссылка на видео, специально записанное с экрана, как работает этот код.
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Вот сам код
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


PS видео лучше скачать и глядеть на компе в оригинале. На яндекс-диске оно воспроизводится не очень качественно.


PPS попробуй пожалуйста воспроизвести у себя этот код. Там всего лишь добавлена команда CLEAR и ссылка на сайт Али по которой надо переходить.
 
PPPS команда CLEAR в начале кода обязательна!

Выделить код

Код:

CLEAR
URL GOTO=https://www.aliexpress.com/item/4001297334567.html
TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=DATA-ROLE:country
WAIT SECONDS=1
TAG POS=1 TYPE=li ATTR=data-name:"Belarus" 
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TYPE:button

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 06-10-2021 10:37:16

А может стоит применить функцию имитации мыши? Есть такая, нашёл в интернете.

Функция имитации мыши

Выделить код

Код:

/***-= Функция имитации мыши =-***/
function triggerMouseEvent (node, eventType) {
    var clickEvent = window.document.createEvent ('MouseEvents');
    clickEvent.initEvent (eventType, true, true);
    node.dispatchEvent (clickEvent);
}


Может с её помощью было бы полноценное нажатие на выпадающий список стран/языков/валют и этот список раскрылся бы? Или вряд ли?
А для чего вообще применяется такая функция имитации мыши, если казалось бы, можно просто нажимать на нужный элемент/селектор? И можно ли вообще эту функцию задействовать в нашем случае для нажатия на список, чтоб он открывался?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 05-10-2021 18:50:12

Squatter Спасибо огромное! Всё получилось! Работает как надо!

PS Не. Всё равно не так как надо. Приходится всё равно открывать выпадающий список стран и нажимать там кнопку SAVE. И когда страница после этого перезагрузится, то купон становится таким номиналом какой есть на самом деле. Поэтому тут мне всё же желательнее было бы такой код в ява-скрипте, который бы нажимал так, чтоб выпадающее окно со списком стран всё таки выпадало. Но как это сделать... непонятно :(

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 05-10-2021 12:10:40

Вот этот код в принципе рабочий

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)


но он не открывает выпадающий список стран если сам по себе в аймакросе работает. А вот если до того как страница обновилась, нажать или просто провести мышью по странице сайта, то тогда список выпадающих стран раскрывается от этой команды.
А как сделать так, чтоб список стран выпадал только от работы аймакроса... непонятно

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 04-10-2021 23:17:55

PRESIDENT пишет

Попробуй так

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:javascript:void(0)
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=DATA-ROLE:country
WAIT SECONDS=1
TAG POS=1 TYPE=li ATTR=data-name:"Belarus" 

'TAG POS=1 TYPE=li ATTR=data-code:"by"

Попробовал, не получается все равно, не раскрывается выпадающий список. Однако есть такой нюанс (он и раньше был), когда работает скрипт, когда страница почти загрузилась и в этот момент нажать в ручную мышью куда нибудь на страницу (только не на ссылку, чтоб по ней не перейти), то после этого, когда страница загрузится и далее скрипт нажимает на список выпадающих стран, то этот список выпадает и страны открываются, можно их выбирать. Но если вручную мышью не клацать, то список стран так и не открывается чисто скриптом.
То есть тут я так понимаю это связано с работой ява-скриптов которые в самом исходном коде страницы сайта алиэкспресс. Конкретно с вот этим HREF:javascript:void(0). Вот у тебя он в самой первой строке п

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 04-10-2021 16:35:19

Есть предположение, что тут надо применять функцию имитации мыши с помощью js скрипта. Функцию такую я нашёл, но как конкретно её применять, подскажите пожалуйста

Функция имитации мыши

Выделить код

Код:

/***-= Функция имитации мыши =-***/
function triggerMouseEvent (node, eventType) {
    var clickEvent = window.document.createEvent ('MouseEvents');
    clickEvent.initEvent (eventType, true, true);
    node.dispatchEvent (clickEvent);
}

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 04-10-2021 11:07:13

Вот что написано в коде страницы на элемент который надо нажимать

скрытый текст
neGDhgS.png

Там среди прочего есть javascript:void(0), думаю это связано и надо это как-то учитывать. Иначе список стран не выпадает. Хоть применял разные команды нажатия; и через EVENT и другие:
4 способа нажатия

Выделить код

Код:

TAG POS=1 TYPE=div ATTR=class:ng-item-wrap<SP>ng-item<SP>ng-switcher
TAG POS=1 TYPE=div ATTR=data-role:region-pannel
TAG POS=1 TYPE=A ATTR=ID:switcher-info
EVENT TYPE=CLICK SELECTOR="#switcher-info" BUTTON=0


И они все рабочие, но при этом список всё равно не раскрывается.

Подскажите пожалуйста команду, как записать, чтоб выпадающий список раскрывался?
чтоб было вот так (как вручную мышью нажимаю):

надо чтоб список вот так раскрывался
27Q5JMW.png

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (часть 2) » 03-10-2021 18:32:03

Здравствуйте! Ребята, подскажите пожалуйста как записать аймакрос так, чтоб было нажатие на выбор страны на сайте Алиэкспресс.

скриншот
zimWrfK.png

Получается так, что когда нажимаю на окно выбора страны, то открывается список и там можно выбрать страну. Но так получается, только если вручную делаю. А когда записал аймакрос, и включаю воспроизведение, то список даже не открывается, хотя команда нажатия вроде как срабатывает. На скрине видно синим цветом прямоугольник от команды нажатия аймакросом. Пробовал разные варианты записи, но ничего не даёт нужного эффекта. Не открывается список выбора стран и всё тут. Не знаю что уже делать. Подскажите пожалуйста, кто в теме?

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]