Сап двач, расскажу сразу о проблеме: скрипт совершенно не хочет вызывать другие макросы. При воспроизведении отрабатывает в цикле только detection_macro, на остальные даже смотреть не хочет. Что не так?)

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

Выделить код

Код:

var detection_macro;
detection_macro = "CODE:";
detection_macro += "SET !EXTRACT_TEST_POPUP NO" + "\n";
detection_macro += "SET !ERRORIGNORE YES" + "\n";
detection_macro += "SET !ERRORCONTINUE YES" + "\n";
detection_macro += "SET !TIMEOUT_STEP 10" + "\n";
detection_macro += "SET !TIMEOUT_PAGE 60" + "\n";
detection_macro += "FILTER TYPE=IMAGES STATUS=OFF" + "\n";
detection_macro += "SET !EXTRACT NULL" + "\n";
detection_macro += "TAB CLOSEALLOTHERS" + "\n";
detection_macro += "TAB T=1" + "\n";
detection_macro += "URL GOTO=https://freebitco.in" + "\n";
detection_macro += "WAIT SECONDS=5" + "\n";

var macro1;
macro1 += "URL GOTO=javascript:(function(){iimPlay('C:/Users/root/Documents/iMacros/Macros/reCaptcha.iim');});"
macro1 += "WAIT SECONDS=6" + "\n";
macro1 += "REFRESH" + "\n";
macro1 += "WAIT SECONDS=3610" + "\n";

var macro2;
macro2 += "URL GOTO=javascript:(function(){iimPlay('C:/Users/root/Documents/iMacros/Macros/captchasNet.iim');});"
macro2 += "WAIT SECONDS=6" + "\n";
macro2 += "REFRESH" + "\n";
macro2 += "WAIT SECONDS=3610" + "\n";

var macro3;
macro3 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:free_play_form_button" + "\n";
macro3 += "WAIT SECONDS=6" + "\n";
macro3 += "REFRESH" + "\n";
macro3 += "WAIT SECONDS=3610" + "\n";


var n = 24;
for (i = 0; i < n; i++)
{
    var ret_code = iimPlay(detection_macro); // Call detection_macro
    var element = window.content.document.getElementById('g-recaptcha-response');
    if (element)
    {
        ret_code = iimPlay(macro1); // Call macro1
    }
    else
    {
        var a = window.content.document.getElementsByTagName('img');
        var flag = false;
        for (var x = 0; x < a.length; x++)
        {
            if (a[x].src.includes('https://captchas.freebitco.in/cgi-bin/captcha_generator?client=freebitcoin&random='))
            {
                flag = true;
                break;
            }
        }
        if (flag == true)
        {
            ret_code = iimPlay(macro2); // Call macro2
        }
        else
        {
            ret_code = iimPlay(macro3); // Call macro3
        }
    }
}


код публикуется в тегах code под спойлером

InfSub

На самом деле топик можно закрыть, ответ нашел сам себя: я убрал макросы (macro1, macro2, macro3) и напрямую стучался к файлам, в которых была нужная реализация. Всем спасибо, кто думал)
удалено, избыточное цитирование

InfSub

Alexander78 пишет:

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

Выделить код

Код:

var detection_macro;
detection_macro = "CODE:";
detection_macro += "SET !EXTRACT_TEST_POPUP NO" + "\n";
detection_macro += "SET !ERRORIGNORE YES" + "\n";
detection_macro += "SET !ERRORCONTINUE YES" + "\n";
detection_macro += "SET !TIMEOUT_STEP 10" + "\n";
detection_macro += "SET !TIMEOUT_PAGE 60" + "\n";
detection_macro += "FILTER TYPE=IMAGES STATUS=OFF" + "\n";
detection_macro += "SET !EXTRACT NULL" + "\n";
detection_macro += "TAB CLOSEALLOTHERS" + "\n";
detection_macro += "TAB T=1" + "\n";


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

01-11-2017 23:11:00

Alexander78 пишет:

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

Выделить код

Код:

SET !ERRORCONTINUE YES


впрочем тут отсутствует еще одна самая важная команда:

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

Выделить код

Код:

SET !I_COPY_WITHOUT_THINKING_OR_READING_FAQ YES


без нее точно ни чего работать не будет