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

В мире Mozilla происходит много интересных событий. Но вам не нужно постоянно посещать новостные сайты, чтобы быть в курсе всех изменений. Зайдите на ленту новостей Mozilla Россия.
  • Форумы
  •  » iMacros
  •  » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

№131-08-2007 15:56:26

knizhkin
Участник
 
Группа: Members
Зарегистрирован: 31-08-2007
Сообщений: 4
UA: Firefox 2.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)



iMacros for FireFox - общие вопросы, обсуждение возможностей (Часть 1)

Продолжение темы (часть 2)



Правила оформления сообщений в данном топике:

1a50e37cd460db106ba5ca4992038a53.jpg


  • Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [spoiler][noindex]http://адрес_сайта/название_страницы[/noindex][/spoiler]

  • Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler][code]ваш код[/code][/spoiler]
    или выложите на сайт «Pastebin».
  • При размещении объемных материалов, используйте тег "Spoiler" - [spoiler]ваш текст[/spoiler]
    или выложите на сайт «Pastebin».
  • Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [spoiler][img]http://ссылка_на_изображение[/img][/spoiler]
    .


«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон

«Не каждый вопрос заслуживает ответа.»
Сайрус

Отсутствует

 

№167728-06-2014 20:10:27

spy686
Участник
 
Группа: Members
Зарегистрирован: 29-03-2012
Сообщений: 227
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

kostik456 пишет

Подскажите пожалуйста, как сделать проверку условия.Выделить кодКод:Если на экране написано "1", то начать скрипт заного, в противном случае нажать на кнопку и вернуться в начало цикла

Выделить код

Код:

for (var k=1;k<=123;k++){                                                                                           // цикл 123 раза        for (var k=1;1<=123;k++){        - такбезконечно

do {
var    tyt = "CODE:SET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES"+s_n;
    tyt += "TAG POS=1 TYPE=A ATTR=TXT:Группы"+s_n;                                              // сам скрипт

    tyt += "TAG POS=1 TYPE=body ATTR=txt:*1* extract=txt"+s_n;                              // поиск "1" на всей странице
    var pl_tyt = iimPlay(tyt);

    ip=iimGetLastExtract();                                                                                           // у меня такая универсальная приблуда регулярка
    var word = "1";
    var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');                                     
    var ip =ip.replace(myRegExp,"TutEst");                                                                       

} while (ip == "TutEst" );                                                                                                 // если "1" есть, то код дальше пойдет выполняться, если нет то заново

var    tyt = "CODE:TAG POS=1 TYPE=input ATTR=type:button"+s_n;                                       // нажатие на кнопку
    var pl_tyt = iimPlay(tyt);

}

Отредактировано spy686 (28-06-2014 20:11:05)


Удалено

Отсутствует

 

№167829-06-2014 14:18:10

kolshix
Участник
 
Группа: Members
Зарегистрирован: 29-10-2013
Сообщений: 387
UA: Yandex 14
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

spy686 пишет

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

kostik456 пишет

Подскажите пожалуйста, как сделать проверку условия.Выделить кодКод:Если на экране написано "1", то начать скрипт заного, в противном случае нажать на кнопку и вернуться в начало цикла

Выделить код

Код:

for (var k=1;k<=123;k++){                                                                                           // цикл 123 раза        for (var k=1;1<=123;k++){        - такбезконечно

do {
var    tyt = "CODE:SET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES"+s_n;
    tyt += "TAG POS=1 TYPE=A ATTR=TXT:Группы"+s_n;                                              // сам скрипт

    tyt += "TAG POS=1 TYPE=body ATTR=txt:*1* extract=txt"+s_n;                              // поиск "1" на всей странице
    var pl_tyt = iimPlay(tyt);

    ip=iimGetLastExtract();                                                                                           // у меня такая универсальная приблуда регулярка
    var word = "1";
    var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');                                     
    var ip =ip.replace(myRegExp,"TutEst");                                                                       

} while (ip == "TutEst" );                                                                                                 // если "1" есть, то код дальше пойдет выполняться, если нет то заново

var    tyt = "CODE:TAG POS=1 TYPE=input ATTR=type:button"+s_n;                                       // нажатие на кнопку
    var pl_tyt = iimPlay(tyt);

}

Я , если ссылка, где расположено условие ,в данном случае "1", не кликабельна , то делаю так (намного уменьшает код, да и анализировать легче)

Выделить код

Код:

for (;;){
    if (iimPlayCode("SET !TIMEOUT_STEP 1\n TAG POS=1 TYPE=body ATTR=txt:*1*")>0){ 
      alert ('нашёл');
    }
}

если кликабельна то приходется работать через iimGetLastExtract()

Отредактировано kolshix (29-06-2014 14:19:07)

Отсутствует

 

№167929-06-2014 19:16:25

mrantoni
Участник
 
Группа: Members
Зарегистрирован: 29-06-2014
Сообщений: 4
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Доброго времени суток.
Помогите с советом, есть рабочий JS с циклом по переходу от аккаунта к аккаунту, который выполняет свою задачу...для этого я использую очень много аккаунтов.
как сделать чтоб js  брал данные (логин и пароль) из txt или csv?
Вот нашел такой код:


CMDLINE !DATASOURCE akk.csv
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://baza.ru
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:test_form ATTR=NAME:name CONTENT={{!COL1}}


всё работает но цикл приходится вручную включать в плагине макроса... а у меня JS не может при рваться для этого

Отсутствует

 

№168029-06-2014 20:15:52

bitlex
Участник
 
Группа: Members
Зарегистрирован: 29-06-2014
Сообщений: 5
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.

while(true) {

var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
alert

}

Отредактировано bitlex (29-06-2014 20:23:47)

Отсутствует

 

№168129-06-2014 23:32:23

kolshix
Участник
 
Группа: Members
Зарегистрирован: 29-10-2013
Сообщений: 387
UA: Yandex 14
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

bitlex пишет

Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.

}

добавь счетчик проигрывании

в начале цикла введи новую переменную к примеру
var lose=0

if(extract == "l") { // я так понимаю тут команда проигрываний
iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании
lose++                // прибавляет 1 
}
if(extract == "w") { iimPlay(macro3);
}

if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете
  for (b=1;b<=4;b++){
        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза
  }

}


У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Отсутствует

 

№168230-06-2014 04:34:33

bitlex
Участник
 
Группа: Members
Зарегистрирован: 29-06-2014
Сообщений: 5
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Спасибо! Попробую.

Отсутствует

 

№168330-06-2014 05:18:36

bitlex
Участник
 
Группа: Members
Зарегистрирован: 29-06-2014
Сообщений: 5
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

kolshix пишет

bitlex пишет: Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.}добавь счетчик проигрывании в начале цикла введи новую переменную к примеру var lose=0if(extract == "l") { // я так понимаю тут команда проигрываний  iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании lose++                // прибавляет 1  }if(extract == "w") { iimPlay(macro3);}if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете  for (b=1;b<=4;b++){        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза   }}У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Поставил как понял, но бот стал увеличивать сразу в несколько раз.и не уменьшать.

while(true) {

var lose=0
var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro2);  //
}
alert

}

Может я не правильно понял.

Отсутствует

 

№168430-06-2014 12:31:18

kolshix
Участник
 
Группа: Members
Зарегистрирован: 29-10-2013
Сообщений: 387
UA: Yandex 14
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

bitlex пишет

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

kolshix пишет

bitlex пишет: Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.}добавь счетчик проигрывании в начале цикла введи новую переменную к примеру var lose=0if(extract == "l") { // я так понимаю тут команда проигрываний  iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании lose++                // прибавляет 1  }if(extract == "w") { iimPlay(macro3);}if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете  for (b=1;b<=4;b++){        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза   }}У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Поставил как понял, но бот стал увеличивать сразу в несколько раз.и не уменьшать.

while(true) {

var lose=0
var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro2);  //
}
alert

}

Может я не правильно понял


.

конечно не правильно поняли!

var lose=0  ----- выставляется вне цикла

в условии (нужно добавить счетчик )

if(extract == "l") {
iimPlay(macro2);
lose++   // счётчик
}

в условии (я прозивал ) нужно установить сброс счетчика
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro3);  //  макрос же ваш -- слидите за командами , если пошло умножение , то поменяйте команду (было macro2 -стало macro3)
       lose=0 // сброс счетчика , который я прозивал
}


и почему бы не сделать так ?

Выделить код

Код:

var lose=0

for (ckl=1;ckl<=100;ckl++){ // количество нужных повторений 100
     iimPlayCode("TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT")
     var s = iimGetLastExtract();
     var extract = s.charAt(18);

     if (extract == "l") {  // работаю если проиграл 
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x")
        lose++   // счётчик 
     }

     if (extract == "w") { // работаю если выиграл
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min")
    }

    if (lose==7){//
       for (b=1;b<=7;b++){
            iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min") // я так понимаю это команда уменьшения , если не угадал , то нужно поменять команду 
            lose=0   // сброс счётчика
      }
   }
}

Отредактировано kolshix (30-06-2014 12:49:18)

Отсутствует

 

№168530-06-2014 13:20:47

bitlex
Участник
 
Группа: Members
Зарегистрирован: 29-06-2014
Сообщений: 5
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

kolshix пишет
bitlex пишет

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

kolshix пишет

bitlex пишет: Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.}добавь счетчик проигрывании в начале цикла введи новую переменную к примеру var lose=0if(extract == "l") { // я так понимаю тут команда проигрываний  iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании lose++                // прибавляет 1  }if(extract == "w") { iimPlay(macro3);}if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете  for (b=1;b<=4;b++){        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза   }}У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Поставил как понял, но бот стал увеличивать сразу в несколько раз.и не уменьшать.

while(true) {

var lose=0
var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro2);  //
}
alert

}

Может я не правильно понял


.

конечно не правильно поняли!

var lose=0  ----- выставляется вне цикла

в условии (нужно добавить счетчик )

if(extract == "l") {
iimPlay(macro2);
lose++   // счётчик
}

в условии (я прозивал ) нужно установить сброс счетчика
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro3);  //  макрос же ваш -- слидите за командами , если пошло умножение , то поменяйте команду (было macro2 -стало macro3)
       lose=0 // сброс счетчика , который я прозивал
}


и почему бы не сделать так ?

Выделить код

Код:

var lose=0

for (ckl=1;ckl<=100;ckl++){ // количество нужных повторений 100
     iimPlayCode("TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT")
     var s = iimGetLastExtract();
     var extract = s.charAt(18);

     if (extract == "l") {  // работаю если проиграл 
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x")
        lose++   // счётчик 
     }

     if (extract == "w") { // работаю если выиграл
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min")
    }

    if (lose==7){//
       for (b=1;b<=7;b++){
            iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min") // я так понимаю это команда уменьшения , если не угадал , то нужно поменять команду 
            lose=0   // сброс счётчика
      }
   }
}

Спасибо за помощь.Заработаю отблагодарю обязательно.Кажется работает)

Отсутствует

 

№168630-06-2014 14:08:13

Revers
Участник
 
Группа: Members
Зарегистрирован: 30-07-2013
Сообщений: 47
UA: Chrome 35.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Выделить код

Код:

CMDLINE !DATASOURCE 7000strok-post-po-45strok.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
EVENTS TYPE=A SELECTOR="pravka" CHARS={{!COL1}}
EVENT TYPE=GOOD SELECTOR="sub" BUTTON=0
'Какая команда отвечает за взятие нужного количества строк 1-45, 46-91... в каждом цикле ?

Отсутствует

 

№168730-06-2014 16:29:08

Gergi
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 495
UA: Chrome 36.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Можно ли каким то образом при каждом цикле удалять первую строчку из txt файла?

CMDLINE !DATASOURCE akk.txt
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

Отсутствует

 

№168830-06-2014 20:40:42

artpivoglaz
Участник
 
Группа: Members
Зарегистрирован: 30-06-2014
Сообщений: 2
UA: Firefox 30.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Здравствуйте всем.
Помогите решить следующую проблему. Каким образом нажать на "ОК" Alerta, когда он появляется не сразу от нажатия на кнопку, а после загрузки с сервера необходимой информации.
Для примера можно перейти по ссылке http://javascript.ru/ajax/intro#chto-takoe-ajax-primer-realizacii, там Alert появляется всегда через разное время, оно может быть и очень долгим.
Я написал следующий код (для этого сайта):

Выделить код

Код:

function YbiraemModalnoeOkno()
{var operacii1 = "CODE:";
    for (var i = 1; i < 20; i++) {operacii1 += "ONDIALOG POS="+i+" BUTTON=OK CONTENT="+s_n;}
    var retcode1 = iimPlay(operacii1);  
}

    var operacii1 = "CODE:SET !ERRORIGNORE YES"+s_n;
    operacii1 += "TAG POS=2 TYPE=INPUT:BUTTON ATTR=*";
    var retcode1 = iimPlay(operacii1);  //нажимаем на кнопку
    for (;;)
    {var DlyaOpredeleniyaStepeniZagryzhennosti = window.content.document.querySelectorAll('div[id="vote_status"]'); // находим статус
      if (DlyaOpredeleniyaStepeniZagryzhennosti[0].innerHTML == 'Ожидаю ответа сервера...')
      {YbiraemModalnoeOkno();}
      else
      {break;}
    }

Проблема в том, что если модальное окно появляется в момент обработки кода javascript, то выполнение программы останавливается. Долго ждать окна, тоже не хотелось бы.

Замена Alerta ничего не даёт (для сайта http://www.javascripter.net/faq/confirm.htm#top):

Выделить код

Код:

var SoobshcenieAlertaConfirma = iimExtractAlertConfirm("TAG POS=1 TYPE=INPUT:BUTTON FORM=NAME:myform ATTR=*");
alert("Last alert message was: "+SoobshcenieAlertaConfirma);

function iimExtractAlertConfirm(triggerCode) {
   var msg, msgAlert, msgConfirm;
   var evtListenerAlert=function(evtAlert){msgAlert=evtAlert.target.getAttribute('alt1Alert')};
   var evtListenerConfirm=function(evtConfirm){msgConfirm=evtConfirm.target.getAttribute('alt1Confirm')};
   window.content.document.addEventListener("alertEvent", function(eAlert){evtListenerAlert(eAlert)}, false, true);
   window.content.document.addEventListener("confirmEvent", function(eConfirm){evtListenerConfirm(eConfirm)}, false, true);
   iimPlay("CODE:SET !ERRORIGNORE YES\nURL GOTO=javascript:var<SP>msgAlert,msgConfirm,alert_old=window.alert,confirm_old=window.confirm;"//var<SP>"
   +"(function(){window.alert=function(strAlert){msgAlert=strAlert;"
   +"}})();\n"
   +"URL GOTO=javascript:(function(){confirm=function(strConfirm){msgConfirm=strConfirm;"
   +"}})();\n"
   +triggerCode+"\n"
   +"URL GOTO=javascript:(function(){alert=alert_old;confirm=confirm_old;var<SP>element=window.content.document.createElement('dElm');"
   +"element.setAttribute('alt1Alert',msgAlert);element.setAttribute('alt1Confirm',msgConfirm);window.content.document.documentElement.appendChild(element);" 
   +"var<SP>evtAlert=window.content.document.createEvent('Events');evtAlert.initEvent('alertEvent',true,false);element.dispatchEvent(evtAlert);"
   +"var<SP>evtConfirm=window.content.document.createEvent('Events');evtConfirm.initEvent('confirmEvent',true,false);"
   +"element.dispatchEvent(evtConfirm)"
   +"})();"
   );
   window.content.document.removeEventListener("alertEvent", function(eAlert){evtListenerAlert(eAlert)}, false, true);
   window.content.document.removeEventListener("confirmEvent", function(eConfirm){evtListenerConfirm(eConfirm)}, false, true);
    if (!(msgAlert == 'undefined')) {msg = msgAlert;}
    if (!(msgConfirm == 'undefined')) {msg = msgConfirm;}
   return msg; // может выдать кроме Confirm, еще и Alert, следующий за ним (Alert будет только от отрицательного нажатия Confirm, т.е. после нажатия кнопки "Отмена")
}

Отсутствует

 

№168902-07-2014 19:23:53

imnoobie
Участник
 
Группа: Members
Зарегистрирован: 29-01-2014
Сообщений: 6
UA: Chrome 36.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Как поставить iMacros на SeaMonkey?

Отсутствует

 

№169003-07-2014 11:40:51

artpivoglaz
Участник
 
Группа: Members
Зарегистрирован: 30-06-2014
Сообщений: 2
UA: Firefox 30.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Неужели никто не может ответить на мой вопрос? Или я  не корректно задал вопрос? У меня версия Firefox 30.0.

Отсутствует

 

№169103-07-2014 22:11:16

Алим
Участник
 
Группа: Members
Зарегистрирован: 20-12-2013
Сообщений: 332
UA: Firefox 28.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Мне нужно добавлять друзей из поиска из соц. сети "Мой Мир" от майл.
Добавлять нужно только тех людей, которые на сайте и у которых больше 300 друзей.

Те люди которые на сайте у них высвечивается из поиска на зелёном фоне "На сайте"
Так же под каждым человеком высвечивается количество друзей.

Если JS не находит к примеру одно слово на странице, то выполняется второй макрос, если находит, то первый макрос. А вот как сделать чтобы было 2 условия: 1. на сайте и 2. если у человека 300 или больше друзей, чтобы он только их добавлял, то есть чтобы выполнялся первый макрос, а если нет одно из 2 условий, шёл дальше ?


Истина в последней инстанции

Отсутствует

 

№169204-07-2014 00:38:47

kolshix
Участник
 
Группа: Members
Зарегистрирован: 29-10-2013
Сообщений: 387
UA: Yandex 14
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Алим пишет

скрытый текст
Мне нужно добавлять друзей из поиска из соц. сети "Мой Мир" от майл.
Добавлять нужно только тех людей, которые на сайте и у которых больше 300 друзей.

Те люди которые на сайте у них высвечивается из поиска на зелёном фоне "На сайте"
Так же под каждым человеком высвечивается количество друзей.

Если JS не находит к примеру одно слово на странице, то выполняется второй макрос, если находит, то первый макрос. А вот как сделать чтобы было 2 условия: 1. на сайте и 2. если у человека 300 или больше друзей, чтобы он только их добавлял, то есть чтобы выполнялся первый макрос, а если нет одно из 2 условий, шёл дальше ?

один
if (i==Online){
   if (b==300_друзей){
      Добавить в друзья
  }
}

Ну или
я думаю догадаешься где что вставить и подправить!?
if (b==300_друзей){

      dobavit=20
   }
   if (i==Online){
     dobavit+=+20
  }

  if (dobavit>39){
    что-то делаем
}

Отредактировано kolshix (04-07-2014 00:41:40)

Отсутствует

 

№169304-07-2014 14:11:51

Алим
Участник
 
Группа: Members
Зарегистрирован: 20-12-2013
Сообщений: 332
UA: Firefox 28.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

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

Это легко сделать если этот макрос который разгадывает капчу поставить в начале всех остальных макросов.
Но если он в середине или в конце. Сделать так, чтобы следующий макрос не воспроизводился, а воспроизводился тот макрос, который разгадывает капчу, до тех пор пока не разгадает капчу?

---

Там же стоит
if (i>0 ){ //нашло слово

это значит пока не откадает капчу он дальше всё ровно не пойдёт, в независимости где этот макрос расположен в коде скрипта.

---
нет не сработало, дальше всё ровно продолжает даже если капча на странице
1 раз не угадал капчу, второй раз цикл этого макроса в скрипте не делает.

i=iimPlayCode("TAG POS=1... капча...")
if (i>0 ){ //нашло слово

дальше идёт. А как сделать если капча не угадана на странице вконатике
чтобы заново цикл делал, до тех пор, пока капчу не угадает ?

---
Мне кажется нужно использовать не оператор if, а while

Отредактировано Алим (04-07-2014 21:55:11)


Истина в последней инстанции

Отсутствует

 

№169404-07-2014 23:52:40

kolshix
Участник
 
Группа: Members
Зарегистрирован: 29-10-2013
Сообщений: 387
UA: Yandex 14
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Читал я об одном свойстве и вот наконец с ним встретился , но как быть не знаю

вот  код

Выделить код

Код:

iimPlayCode("SET !EXTRACT 500\n ADD !EXTRACT 80")
var i = iimGetLastExtract(1)
var b = iimGetLastExtract(2)

if (i<b){
alert ('i больше')   // срабатывают эти кавычки 
}
if (i>b){
alert ('b больше')
}

alert (i<b) // выдаст  true хотя цифры 500<80
alert (i>b) // выдаст  false хотя цифры 500>80

всем понятно , что i =500 и должно выполнится условие if (i>b){..., но на самом деле скрипт видит  что B больше так как у него в начале стоит 8  и макрос считает что условие
80>500   ---- true
а условие
80<500    ---- false

Хотя если сделать просто , то всё работает как часики

Выделить код

Код:

var i = 500
var b = 80

if (i<b){
alert ('i больше')
}
if (i>b){
alert ('b больше')   // срабатывают эти кавычки 
}

я так понял после копирования информации из iim файла , копированная информация воспринимается ни как число, а как набор цифр и по этому 80 больше чем 500 , Теперь вопрос, как сделать так  чтоб 500 было больше 80?



Опять 25 ! Сам задал , сам ответил !  Найти ответ не мог, так как не знал терминологии ! я опять часов так 6 искал ошибку макросе или в калькуляции, оказалось макрос просто недоработан !   (всего лишь +, но какой важный!)

ответ
Это называется "Преобразование к числу"
Когда извлеклась информация из imm файла, это были только данные, неопределённые, т.е. это числа, буквы или
буквы и числа.   Чтоб информации присвоить числовое значение делаем так :

// Строгое преобразование можно осуществить унарным плюсом '+' //

var i = + iimGetLastExtract(1)

Отредактировано kolshix (05-07-2014 00:20:32)

Отсутствует

 

№169505-07-2014 03:14:28

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3319
UA: Chrome 35.0
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

kolshix, молодец, растешь!
про унарный +, я, к примеру, не знал, и сделал бы, на js, вот так:

var i = Number(iimGetLastExtract(1));
if.....

Отредактировано InfSub (05-07-2014 03:24:00)


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox


на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№169605-07-2014 12:43:42

kolshix
Участник
 
Группа: Members
Зарегистрирован: 29-10-2013
Сообщений: 387
UA: Yandex 14
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

InfSub пишет

kolshix, молодец, растешь!
про унарный +, я, к примеру, не знал, и сделал бы, на js, вот так:

var i = Number(iimGetLastExtract(1));
if.....

сколько я промучился, пока выпалил, что в буфере js не числовая информация, а просто информация, там ещё кроме унарного плюса, есть ещё 2 условия, читать не стал, спешил проверить работоспособность!

Отсутствует

 

№169708-07-2014 22:11:35

Tungen
Участник
 
Группа: Members
Зарегистрирован: 10-06-2014
Сообщений: 47
UA: Firefox 30.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Доброго времени суток.
Подскажите, пожалуйста, можно в js вставить таймер?
У меня есть js, он запускает 3 iim поочередно. Сейчас надо добавить к нему 4-й iim, но так, чтобы четвертый выполнялся раз в 10 минут независимо от стальных трех.
Я так понимаю можно использовать цикл for и он будет проверять если по переменной дошло или превысило 10 минут, то запускать скрипт, а если нет то идти дальше к другим iim.
Вот только как это реализовать?

Отредактировано Tungen (08-07-2014 22:11:57)

Отсутствует

 

№169809-07-2014 00:20:09

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3319
UA: Safari 4.0
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Tungen пишет

Доброго времени суток.
Подскажите, пожалуйста, можно в js вставить таймер?
У меня есть js, он запускает 3 iim поочередно. Сейчас надо добавить к нему 4-й iim, но так, чтобы четвертый выполнялся раз в 10 минут независимо от стальных трех.
Я так понимаю можно использовать цикл for и он будет проверять если по переменной дошло или превысило 10 минут, то запускать скрипт, а если нет то идти дальше к другим iim.
Вот только как это реализовать?

Используйте функцию date()


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox


на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№169909-07-2014 20:44:59

Tungen
Участник
 
Группа: Members
Зарегистрирован: 10-06-2014
Сообщений: 47
UA: Firefox 30.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

InfSub пишет

Используйте функцию date()

Не знаю как его использовать :blush:

Нашел вот такой код. Он позволяет запустить скрипт в определенное время. В примере это 9:58:30.
Но как сделать чтобы он от времени отсчитывал 10 минут?

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

Выделить код

Код:

var start = new Date();
var yy=start.getFullYear();
var mm=start.getMonth()+1;
var dd=start.getDate();
var i;

var ms=(new Date()).getTime()-Date.parse(yy+'/'+mm+'/'+dd);

if (ms<=50310000) {i = iimPlay("click");}
// 9:58:30=50310000


---------------------------------------------------------------------------

Этим кодом можно добиться полученная в переменную текущей минуты на часах

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

Выделить код

Код:

var start = new Date();
var i;
var ms=(new Date()).getMinutes();
iimDisplay(ms);


Теперь у меня вопрос, как в цикл for вставить несколько значений для переменой i?

Выделить код

Код:

for (i = 1; i = ms; i++) {iimPlay("click");}

Чтобы получился у цикла for перебор минут: 1, 11, 21, 31, 41, 51 и если одна из них = ms, то выполнялся скрипт iimPlay("click");?

Отредактировано Tungen (09-07-2014 21:16:33)

Отсутствует

 

№170009-07-2014 21:26:47

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3319
UA: Chrome 35.0
Веб-сайт

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Tungen пишет
InfSub пишет

Используйте функцию date()

Не знаю как его использовать :blush:

Нашел вот такой код. Он позволяет запустить скрипт в определенное время. В примере это 9:58:30.
Но как сделать чтобы он от времени отсчитывал 10 минут?
...

все вопросы по js, обсуждаются на форумах посвященных js

Добавлено 09-07-2014 21:29:43

Tungen пишет

Чтобы получился у цикла for перебор минут: 1, 11, 21, 31, 41, 51 и если одна из них = ms, то выполнялся скрипт iimPlay("click");?

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

Отредактировано InfSub (09-07-2014 21:29:43)


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox


на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№170109-07-2014 22:01:49

Tungen
Участник
 
Группа: Members
Зарегистрирован: 10-06-2014
Сообщений: 47
UA: Firefox 30.0

Re: iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

InfSub пишет

вычесть текущее время из таймштампа

Не подскажите  как это сделать?

Отсутствует

 
  • Форумы
  •  » iMacros
  •  » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1)

Board footer

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