Только для читателей Lifeexample возможно открыть интернет-магазин на Moguta.CMS со скидкой в 15%

<<< PHP Автоматическое исправление неправильной раскладки строки || Событие mousePress на JavaScript и jQuery >>>

iMacros: команды, скрипты, примеры

21.01.2013
iMacros: команды, скрипты, примеры

Здравствуйте, уважаемые читатели блога LifeExample, хочу познакомить вас с одним удивительным инструментом веб мастера, хакера, и простого пользователя, встречайте: плагин iMacros для браузера Mozila Firefox.

iMacros позволяет записать любую последовательность действий человека на сайте в макрос.

Макроспрограммный код хранящий порядок необходимых к автоматическому выполнению.

Запустив макрос, действия выполняться автоматически, включая все переходы по вкладкам, заполнение полей, нажатием на кнопок, переходами по ссылкам и др.

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

Я не пишу вредоносные программы, а лишь упрощаю жизнь себе и людям, с которыми работаю, в задачи моих роботов входит автоматическое размещение объявлений на всевозможных информативных досках рунета.

Начав заниматься написанием скриптов для автоматического размещения информации на чужом сайте, я выбрал путь с использованием возможностей библиотеки CURL на php, но вскоре столкнулся с рядом проблем, обход которых не представлялся возможным, пользуясь лишь серверным языком. Малейшее использование JavaScripta в системе авторизации сайта ставило бота в тупик.

Гуляя по просторам интернета, с целью найти решение для обхода защиты использующей Javascript, я нашел инструмент, с помощью которого можно сделать бота эмулирующего любое действие человека, и этим инструментом явился плагин iMacros для браузера Mozila Firefox.

iMacros, как сделать первый макрос

Самым первым действием нужно установить плагин, для этого скачиваем последнюю версию iMacros, устанавливаем, и наблюдаем появившуюся панель в левой части окна.

плагин iMacros

В появившемся разделе находятся кнопочки и вкладочки данного инструмента, я думаю, вы без труда догадаетесь, как им пользоваться самостоятельно, но всеже немного расскажу об этом.

Для записи наших действий перейдем во вкладку запись и нажмем на одноименную кнопку. После чего откроем сайт yandex.ru и введем любой поисковый запрос, например: "Бесплатная CMS для интернет магазина Moguta", нажмем кнопку найти. Завершим запись действий, нажав на кнопку стоп в панеле iMacros.

Полученные в ходе наших действия команды iMacros сохраняет в файл #Current.iim. Чтобы воспроизвести их дважды кликнем на макрос #Current.iim, после чего iMacros должен произвести ряд записанных команд:

1
2
3
4
5
VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://www.yandex.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT= "Бесплатная CMS для интернет магазина Moguta"
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:form ATTR=VALUE:Найти
пример макроса iMacros

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

Команды iMacros на русском языке

Целью данной статьи стоит описать команды iMacros на русском языке, т.к. в интернете информации очень мало. Из действительно полезных источников, рассказывающих об iMacros на русском, я встретил только форум Mozila.

Прочитав данный форум, я собрал список часто задаваемых вопросов и часто используемых команд iMacros.

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

Как запустить iMacros автоматически на Windows

Ответ: Создать файл с расширением *.bat открыть в блокноте и сохранить в него строку:

1
start firefox "C:\Program Files\Mozilla Firefox\firefox.exe" http://run.imacros.net/?m=#Current.iim.

После чего макрос будет выполняться при запуске созданного файла. Для полной автоматизации, можно прописать его в планировщик задач windows.

Как запустить iMacros автоматически на Unix

Ответ: без комментариев, линуксоводы поймут:

1
2
3
4
5
#!/usr/bin/python
import imacros
iret = imacros.iimInit("-fx", True)
iret = imacros.iimPlay("CODE:URL GOTO=http://www.iopus.com")
iret = imacros.iimExit()

Как запустить iMacros из PHP

Ответ: используя класс COM:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
     $iim1 = new COM("imacros");
     $s = $iim1->iimInit("-runner");
     
     $s = $iim1->iimSet("-var_keyword", $_GET["keyword"]);
     $s = $iim1->iimPlay($_GET["macro"]);
     
     echo "iimplay=";
     echo $s;
     echo "extract=";  
     echo $iim1->iimGetLastExtract;
     
     $s = $iim1->iimExit();
?>

Разобравшись с автозапуском, приходит понимание, что для макроса со сложной задачей, необходимо научиться использовать циклы. В iMacros циклы предусмотрены, но пользоваться ими слишком неудобно.

iMacros команда для задания цикла

1
SET !LOOP n

Слева снизу iMacros’а есть надпись "Повторить макрос", под ней поле "Макс:", там нужно ввести количество итераций цикла.

Поскольку с такой реализацией циклов далеко не уедешь, нужно искать альтернативу, и альтернатива в iMacros действительно есть. Плагин iMacros для браузера Mozila Firefox, имеет потрясающую возможность использовать управляющий JavaScript файл, именно эта способность окончательно разбило мое сердце и влюбила меня в iMacros.

Как сделать управляющий js-файл

Управляющий JavaScript файл — это ни что иное как обычный скрит на JS, Пример управляющего файла из демонстрационных скриптов iMacrosa:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
MyPosts = new Array();
MyPosts.push("307");
MyPosts.push("2615");
MyPosts.push("1147");
MyPosts.push("3201");
MyPosts.push("3360");

iimDisplay("Array/iimSet Demo");

for (i = 0; i < MyPosts.length; i++) {
    iimSet("POSTID", MyPosts[i]);
    retcode = iimPlay("CODE:URL GOTO=http://forum.iopus.com/viewtopic.php?f=11&t={{postid}}\n");
    if (retcode < 0) {              // an error has occured
        errtext = iimGetLastError();
        alert(errtext);
        break;
    }
}

iimDisplay("Script completed.");

Можно заметить несколько непривычных web-программисту функций, в данном скрипте, являющимися командами для iMacros:

  • iimSet(«POSTID», MyPosts[i]); — передает в макрос переменную "POSTID", со значением MyPosts[i];
  • iimPlay(«CODE:URL GOTO=http://forum.iopus.com/viewtopic.php?f=11&t={{postid}}\n»); — приводит команду макроса в выполнение, кроме того данной командой можно запустить готовый макрос iimPlay(«JS/login»,60);
  • iimGetLastError(); — Возвращает текст ошибки;
  • iimDisplay(«Script completed.»); — Выводит сообщение в консоль iMacros;

Научившись использовать команды iMacros внутри JavaScript, можно приступать к реализации любого бота, но практически сразу встанет вопрос: "как передать данные из текстового файла в макрос?".

iMacros команда для чтения CSV файла

В iMacros встроен свой парсер CSV файлов, что явно прощает жизнь программистам. Чтобы прочитать содержимое CSV нужно выполнить следующий список команд:

1
2
3
4
5
6
7
8
CMDLINE !DATASOURCE SET !DATASOURCE C:\users.csv
SET !DATASOURCE_COLUMNS 4
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк спомощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
URL GOTO=http://www.testdomain.com/form.php

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

1
SET !DATASOURCE_DELIMITER ;

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

Приведенный выше кусок макроса выполнится столько раз, сколько указано в поле "МАКС".

циклы в iMacros

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

Как организовать полноценный алгоритм на iMacros, с чтением из CSV я покажу на практическом примере, но чуть позже, а пока хочу представить вашему вниманию функцию по возврату значения переменной обратно в JavaScript.

Как получить данные обратно в JS

Функция iimGetLastExtract() позволяет получить переменные из макроса в javascript, но работает она при условии, что в самом макросе существует команда

1
ADD !EXTRACT

отдающая какое либо значение:

1
2
3
ADD !EXTRACT {{VAR1}}
ADD !EXTRACT {{VAR2}}
ADD !EXTRACT {{VAR3}}

В данном случае из макроса возвращается три переменные, каждая из которых будет доступна следующими вызовами в JS:

1
2
3
var var1 = iimGetLastExtract(1);
var var2 = iimGetLastExtract(2);
var var3 = iimGetLastExtract(3);

Иногда требуется задать значение переменной используя javascript прямо в макросе, для этого предусмотренна команда EVAL:

1
2
SET !VAR1 EVAL("Math.floor(Math.random()*5 + 1);")
WAIT SECONDS={{!VAR1}}

Этим кодом в переменную {{!VAR1}} попадает случайное число сгенерированное на JS командой EVAL. Кстати обратите внимание, тут мы использовали еще одну новую iMacros команду: WAIT, задающую время ожидания перед выполнением следующего действия.

Не исключителен случай, когда страница на одном из сервисов, для которого написан макрос, изменит свою структуру , и тогда при выполнении iMacros выкинет ошибку.

Чтобы iMacros игнорировал ошибки, нужно прописать команду:

1
SET !ERRORIGNORE YES

Еще несколькими полезными командами в iMacros может явиться понижение скорости выполнения макроса:

1
SET !REPLAYSPEED SLOW

И отключение картинок

1
FILTER TYPE=IMAGES STATUS=ON

Ну вот и пришло время окунуться в практику, и написать несколько несложных управляющих JavaScript файлов:

Сохранить капчу сайта на локальный диск

Перед использованием надо создать папку c:\imacros и обновить плагин imacros до последней версии. Без обновления могут вылетать ошибки.

1
2
3
URL GOTO=http://yoursite.ru
ONDOWNLOAD FOLDER=c:\imacros FILE=capcha.png WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:http://yoursite.ru/captcha/* CONTENT=EVENT:SAVEPICTUREAS

Примечание: данным методом можно сохранять статичные картинки, для генерируемых автоматически, как в случае с капчей, нужно использовать событие SAVE_ELEMENT_SCREENSHOT введенное с версии 7.2.0.8. iMacros
Должно получиться так:

1
2
3
URL GOTO=http://yoursite.ru
ONDOWNLOAD FOLDER=c:\imacros FILE=capcha.png WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:http://yoursite.ru/captcha/* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

iMacros выполнение JS внутри макроса

1
2
SET !VAR1 EVAL("var content='текст'; content;")
PROMPT {{!VAR1}}

iMacros практические примеры

  1. Создадим макрос, получающий первый заголовок из выдачи yandex.ru по запросу "Moguta CMS.":
  2. 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    var macros;
    var retcode;
    var s_n = "\n";
    var getExtract;
    var search = "moguta+CMS" //вместо пробелов используйте знак '+'

    macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
    macros += "URL GOTO=http://yandex.ru/yandsearch?text="+search+s_n;
    macros += "TAG POS=2 TYPE=A ATTR=class:b-serp-item__title-link EXTRACT=TXT"+s_n;
    retcode = iimPlay(macros);
    getExtract = iimGetLastExtract(1);
    alert(getExtract);
  3. Теперь сделаем цикл и выведем список 10 заголовков:
  4. 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    var macros;
    var retcode;
    var s_n = "\n";
    var getExtract;
    var search = "moguta+CMS" //вместо пробелов используйте знак '+'

    for (i=1; i<=10; i++) {
        macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
        macros += "URL GOTO=http://yandex.ru/yandsearch?text="+search+s_n;
        macros += "TAG POS="+i+" TYPE=A ATTR=class:b-serp-item__title-link EXTRACT=TXT"+s_n;
        retcode = iimPlay(macros);
        getExtract += iimGetLastExtract(1)+s_n;
    }
    alert(getExtract);
  5. Усложним задачу, создадим CSV файл, в котором укажем три поисковых запроса, разделив из точкой с запятой. Вот так будет выглядеть CSV:
  6. 1
    2
    imacros команды;imacros скрипты;imacros на русском;
    moguta CMS;lifeexample.ru;могута;

    И напишем макрос который выведет список топовых заголовков, занимающих первую позицию, по этим запросам.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    var macros;
    var retcode;
    var s_n = "\n";
    var getExtract="";
    var columns = 3; //количество колонок csv
    var rows = 2; //количество строк csv

    for (j = 1; j <= rows; j++) {
        for (i = 1; i <= columns; i++) {
            macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
            macros += "SET !DATASOURCE_DELIMITER ;"+s_n;
            macros += "CMDLINE !DATASOURCE test.csv"+s_n;
            macros += "SET !DATASOURCE_COLUMNS "+columns+s_n;
            macros += "SET !LOOP "+j+s_n;
            macros += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
            macros += "URL GOTO=http://yandex.ru/yandsearch?text={{!COL"+i+"}}"+s_n;
            macros += "TAG POS=1 TYPE=A ATTR=class:b-serp-item__title-link EXTRACT=TXT"+s_n;
            retcode = iimPlay(macros);
            getExtract += iimGetLastExtract(1)+s_n;
        }
    }
    alert(getExtract);

    Обратите внимание, что файл test.csv, должен лежать в директории C:\Users\user\Documents\iMacros\Datasources , или необходимо указать абсолютный путь до файла C:\\test.csv

  7. Пример с передачей переменных, одного макроса в другой. Сначала берем макросом данные из CSV, затем передаем их в JS, и после обработки отдаем на растерзание всем макросам из списка.
    Содержание исполняемого JS файла.
  8. 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    var macros;
    var retcode;
    var s_n = "\n";
    var getExtract="";

    macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
    macros += "SET !DATASOURCE_DELIMITER ;"+s_n;
    macros += "CMDLINE !DATASOURCE test.csv"+s_n;
    macros += "SET !DATASOURCE_COLUMNS "+columns+s_n;
    macros += "SET !LOOP "+1+s_n;
    macros += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;

    macros += "ADD !EXTRACT {{!COL1}}"+s_n;
    macros += "ADD !EXTRACT {{!COL2}}"+s_n;

    retcode = iimPlay(macros);
    var COL1 = iimGetLastExtract(1);
    var COL2 = iimGetLastExtract(2);
    alert(COL1);
    alert(COL2);
    iimSet("VAR1", COL1);
    iimSet("VAR2", COL2);

    i = iimPlay("JS/test",60);
    Содержание макроса JS/test.imm :
    VERSION BUILD=7601105 RECORDER=FX
    TAB T=1
    URL GOTO=http://yandex.ru/yandsearch?text={{!VAR1}}{{!VAR2}}&lr=2

На этом я закончу данную большую статью в которой мы узнали о том какие команды iMacros востребованы чаще остальных и написали несколько примеров макросов с использованием управляющих JS файлов.

Надеюсь данная статья про iMacros на русском, будет полезным материалом для создания ваших макросов, желаю успехов, если дополнения или вопросы, пишите в комментах.

Чтобы не пропустить публикацию следующей статьи подписывайтесь на рассылку по E-mail или RSS ленту блога.

Нравится

Комментарии

  • Сергей

    Спасибо Вам за статью, очень много для себя нового узнал, а то в интернете много инфи, но нет конкретики, а у Вас все расписано, если будете еще писать статьи по imacro добавляйте ссылку в комментарии-подпишусь на них

  • valentin

    можно ли в имакрос задать каманду (в случае ошибки перейти к выполнению строки х )или что-нибуть подобное

    • Можно, с помощью исполняемых JS файлов.

  • valentin104

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

    • С помощью исполняемых JavaScript файлов.

  • valentin

    LifeExample спасибо за оказанное внимание.Будем слезна штурмовать JS.(Как Донкихот на мельницы)

  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    SET !EXTRACT_TEST_POPUP NO
    SET !DATASOURCE  url2.txt
    SET !DATASOURCE_COLUMNS 159
    SET !LOOP 1
    SET !DATASOURCE_LINE {{!LOOP}}
    SET !ERRORIGNORE YES
    SET !ERRORCONTINUE YES

    TAG POS=1 TYPE=A ATTR=TXT:ДОБАВИТЬ<SP>ВИДЕОРОЛИК
    WAIT SECONDS=10
    TAG POS=1 TYPE=NOBR ATTR=TXT:ДОБАВИТЬ
    WAIT SECONDS=5
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://cis.com/upload.php ATTR=ID:video_link CONTENT={{!COL1}}
    WAIT SECONDS=1
    TAG POS=1 TYPE=BUTTON ATTR=TXT:Сохранить
    WAIT SECONDS=10
    TAG POS=1 TYPE=DIV ATTR=TXT:Закрыть
    WAIT SECONDS=10

    Тоже интересная функция извлечения текста из файла .тхт

  • Alexander

    Здравствуйте, подскажите, пожалуйста, как решить следующую задачу

    iMacros заходит на сайт и ищет определённую комбинацию слов, и если:
    1) находит её, то выполнение сценария продолжается
    2) не находит её, то нажимается именно кнопка обновить на самом сайте (а не F5 в браузере) до тех пор, пока искомая комбинация слов не будет найдена

    1
    2
    TAG POS=1 TYPE=A ATTR=TXT:Бесплатное<SP>мороженое
    TAG POS=1 TYPE=BUTTON ATTR=TXT:Обновить<SP>расписание<SP>»

    P.S.: js пользоваться не умею

  • Может ли iMacros увидеть всплывающее окно в браузере FireFox, и если оно появляется вытащить из него текст?

    • Думаю может. Наверное можно для этого использовать операторы WAIT и TAB.

  • twofiveoone

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

  • Andrey

    А может ли iMacros перевести FireFox в режим приватного просмотра, выполнить заданные действия и вернуться к обычному режиму просмотра? Сколько ни пытался — не получается.
    Цель таких действий — не давать доскам объявлений оставлять свои куки на компе пользователя и читать ранее оставленные. Но в то же время все куки удалять не хочется — входы в почту и другие стандартные действия надо сохранить. Может каким другим путем можно решить сию проблемку?
    Программист я не очень, но приходится заниматься для решения некоторых практических задач.

    • Не сталкивался с подобной задачей.

    • PARADOXE

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

    • Леонид

      Запустить в отдельной копии мозиллы (портабл) и там настроить, чтобы историю стирало.
      А основной мозиллой пользоваться в своё удовольствие.

  • Ivan

    У меня есть страницы A и Б, и мне нужно скопировать несколько строк из А и вставить в определенные поля Б. Потом открыть абсолютно идентичные по структуре страницы В и Г, и провести точно такую же копипасту. И так далее. Другими словами, возможно ли создать макрос который выполнял бы копипасту, если структура у страниц идентична, а адрес и текст копипасты меняется?

    • При использовании JS и imacros, возможно многое, и ваша задача не исключение.

  • Таня

    Здравствуйте, Марк!
    Спасибо за вашу помощь! Подскажите пожалуйста, как из csv файла вытащить и поставить ссылку, по которой будет заходить imacros? Такая конструкция не работает: GOTO={{!COL2}}
    (в самом начале файла конечно прописываются все настройки csv)

    • Читайте внимательно статью, там есть ответ на ваш вопрос.

  • Andrey

    Здравствуйте.

    Бьюсь достаточно долго над задачей.

    Есть кнопка на определенном сайте. Макрос ее жмет. Затем эта кнопка через java на сервере по своим алгоритмам бросает нас на определенную страницу, рандомно.

    Может открыться такая:

    URL GOTO=http://САЙТ.RU/ABCD-RNDЧИСЛО1_RNDЧИСЛО2

    Или такая:

    URL GOTO=http://САЙТ.RU/EFGHI-RNDЧИСЛО4_RNDЧИСЛО4

    Если мы видим первый вариант ссылки, то нам, значит, надо найти на странице объект «JKLM_NOPQ-RNDЧИСЛО1_RNDЧИСЛО2» и кликнуть по нему:

    TAG POS=1 TYPE=SPAN ATTR=ID:JKLM_NOPQ-RNDЧИСЛО1_RNDЧИСЛО2

    Если вдруг открылся второй вариант ссылки — то тут другие действия (с этим уже решил).

    ***
    «САЙТ.RU», «ABCD», «EFGHI», «JKLM_NOPQ» — имеет постоянный набор и число символов, формат, т. е. константы.

    При записи макроса значение «-RNDЧИСЛО1_RNDЧИСЛО2» имеет цифровую форму, а передо мной стоит задача переменную абсолютизировать. Если в ссылке после главной директории есть «ABCD», то брать оставшуюся часть «-RNDЧИСЛО1_RNDЧИСЛО2» и дописывать к «JKLM_NOPQ». Вот так.

    Пожалуйста, подскажите нужное направление.

  • Привет Mark, вот встал вопрос, как реализовать такую задачу ?
    дано

    1
    var n=prompt("number of loops.",500);

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

  • может кто подсказать.
    как реализовать в iMacros проигрывание аудио, если это возможно ?

  • Антон

    Блииин ну не могу понять и все тут……….

    Помогите пожалуйста, есть csv файл в котором 500 ссылок, каждая ссылка с новой строки.
    Есть записанные действия в iim файле

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    VERSION BUILD=8300326 RECORDER=FX
    SET !ERRORIGNORE YES
    SET !TIMEOUT 30
    TAB T=1
    CMDLINE !DATASOURCE url.csv
    SET !DATASOURCE_COLUMNS 1
    SET !LOOP 1
    SET !DATASOURCE_LINE {{!LOOP}}
    URL GOTO={{!VAR1}}
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:url CONTENT={{!COL1}}
    WAIT SECONDS=22
    TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
    TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=(тут текст который должен написать)
    WAIT SECONDS=9
    TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
    TAB T=1
    WAIT SECONDS=2

    Что не так, мне надо что бы, из файла url.csv бралась ссылка, делался по ней переход и делались команды дальше после WAIT SECONDS=22

    • myyntimaali

      Антон, у тебя по моему ошибка в 9ой, а 10й строки быть не должно. кажется както так :URL GOTO={{!COL1}}

    • Alex

      Антон.

      Вы решили свою задачу? Напишите ответ пожалуйста.

  • Сергей

    У кого есть скрипт для спама по группам вконтакте пришлите пожалуйста. Никак не могу добиться чтобы он переключался между группами попорядку.

    • Влад

      VERSION BUILD=8601111 RECORDER=FX
      SET !ERRORIGNORE YES
      TAB T=1
      WAIT SECONDS=10
      URL GOTO=http://vk.com/club39673900
      WAIT SECONDS=5
      TAG POS=4 TYPE=DIV ATTR=TXT:Написатьсообщение…
      TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=ИнтересуетзаработоквитернетепишемвЛС
      TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
      WAIT SECONDS=10
      URL GOTO=http://vk.com/club15336495
      WAIT SECONDS=5
      TAG POS=4 TYPE=DIV ATTR=TXT:Написатьсообщение…
      TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=ИнтересуетзаработоквитернетепишемвЛС
      TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
      WAIT SECONDS=5
      URL GOTO=http://vk.com/club42416529
      WAIT SECONDS=5
      TAG POS=4 TYPE=DIV ATTR=TXT:Написатьсообщение…
      TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=ИнтересуетзаработоквитернетепишемвЛС
      TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
      WAIT SECONDS=5
      URL GOTO=http://vk.com/addasfriendadd
      WAIT SECONDS=5
      TAG POS=4 TYPE=DIV ATTR=TXT:Написатьсообщение…
      TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=ИнтересуетзаработоквитернетепишемвЛС
      TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

      Только свои ссылки и текст как у меня написан по примеру

  • Артем Морозов

    А как сделать чтобы imacros приостанавливал свою работу и позволял мне вручную ввести каптчу?

    • С момента написания статьи не занимался больше c iMacros, могу ошибаться но кажется была там команда PAUSE.

  • Alex

    Добрый день подскажите пожалуйста (если возможно пример кода) как можно реализовать следующее: есть один сайт при клике на его кнопке он перебрасывает на другой сайт (открывает в другом окне) и ждет порядка 30 секунд на выполнение пользователем определенных действий. Но проблема в том что второй сайт за отведенное время не прогружается. При ручном пользовании достаточно остановить загрузку через 15 сек произвести необходимые действия чтобы получить желаемый результат. Как это можно реализовать т.е. (если в крации) задать остановку загрузки сайта через определенный промежуток времени.

    • Борислав

      «C:\Program Files (x86)\Mozilla Firefox\firefox.exe» imacros://run/?m=Demo.iim

  • Любовь

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

  • Александр

    Подскажите, пожалуйста, как сделать макрос, который добавлял фото в группе Вконтакте на стене через всплывающее окно «прикрепить» -> «фотографию» ?

    я делал так:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    URL GOTO=http://vk.com/грппа
    TAG POS=1 TYPE=DIV ATTR=ID:official
    TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=текст<SP>сообщения
    TAG POS=1 TYPE=DIV ATTR=ID:custom_menu_wrap
    ''TAG POS=1 TYPE=NOBR ATTR=TXT:Прикрепить
    wait seconds=2
    TAG POS=1 TYPE=a ATTR=class:add_media_type_1_photo*
    ''TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
    wait seconds=2
    TAG POS=1 TYPE=DIV ATTR=TXT:Загрузить<SP>фотографию
    pause
    ''TAG POS=1 TYPE=SPAN ATTR=ID:photos_choose_upload_area_label
    ''WAIT SECONDS=2
    TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=D:\11.JPG
    pause

    , но постоянно выдает ошибку:
    RuntimeError: Error loading page , line 14 (Error code: -933)
    и даже после этого вручную не подгружается фото

    такое ощущение, что необходимо навести курсор на область кнопки «прикрепить», после чего на «фотографию»…

    как сделать, подскажите, пожалуйста!

    • mobsjobs.info

      да закрой ошибки сет ероригнор = йес в самом начале

    • Алим

      Вконтакте запретили вставлять фото через макрос, можете не пробовать не получится. Можно фото только на свою стену или в комментарии под видео.

  • алексей

    доброго времени суток!
    нужна помощь, как через imacros разгадать каптчу с сайта игры и отправить ее например на _http://antigate.com/ для разгадки! потом вернуть в исходник уже разгаданую?

    • Когда-то занимался таким делом, интересная задача, но ее в двух словах не рассказать.

  • Олеся

    Здравствуйте.Скажите какой код вставить в макрос,чтоб он писал имя того чей аккаунт(того кому относится сообщение)

  • Левон

    Здравствуйте! Спасибо за гайд!
    Подскажите пожалуйста, как сделать так, чтобы если на странице нету той или иной кнопки, макрос не видел в этом ошибку и начал искать следующую кнопку.
    Например если я хочу подписываться на группы ВКонтакте, но в поиске мне попадаются как группы, так и сообщества и кнопки у них разные. (Подписаться и Вступить в группу)

    • Привет. Вы решили эту задачу?

    • Денис

      Это просто. Ставите в начале макроса пропускать ошибки и добавляете две строки на обе разные кнопки. Тоесть если первая строка не сработает, то сработает вторая и наоборот. ))

  • Anton

    Парни такая проблема раньше все работало посредством компилированных exe скриптов которые запускают конкретный файл макроса автоитом.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    $command = @ProgramFilesDir & "\Mozilla Firefox\firefox.exe -new-tab "
    $url = "http://run.imacros.net/?m=_W_OL_add_GROUPS.iim"
    Run($command & $url, "", @SW_MAXIMIZE)
    Run($command & $url, "", @SW_MAXIMIZE)

    ;~ Задержка 5 минут чтобы аймакрос успел скрипт отработать

    Sleep ( 300000 )

    ;~ Закрываем все окна броузера

    While 1
        Sleep(100)
        If ProcessExists("firefox.exe") Then
            ProcessClose("firefox.exe")
        Else
            ExitLoop
        EndIf  
    WEnd

    потом я забил а теперь опять нужно выбло востановить.
    но файрфокс не работает через _http://run.imacros.net/?m=_W_OL_add_GROUPS.iim

    пишет Время ожидания соединения истекло

    _http://clip2net.com/s/6cQ1VU

    пробовал на 3-х компьютерах.
    последний была стояла свежая винда, поставил новый файрфокс и тоже самое — глухо !

    подскажите в чем может быть проблема.

  • Юлия

    VERSION BUILD=8601111 RECORDER=FX
    TAB T=1
    URL GOTO=http://www.domen.ru/2000/07/24/8888
    TAG POS=1 TYPE=A ATTR=TXT:Написатьрецензию
    TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT=замечательно
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/cgi-bin/form.pl ATTR=ID:butt
    ……..
    здравствуйте. подскажите пожалуйста что нужно добавить в скрипт, чтобы число 8888 в ссылке уменьшалось на 1 с каждым новым запуском скрипта.
    и чтобы вместо текста «замечательно» по очереди брался текст из файла и вставлялся.

  • мега

    а с imacros’ом можно на сайт ok.ru запускать автоматические добавление друзей если да то напишите об этом статью спасибо))

  • кирилл

    добрый вечер я новичок))объясните что нужно сделать чтоб запись не сбивалось через несколько сек.мне надо чтоб он заходил на стр. к людим и потом на другие стр.людей заходил а почему та не получается((

  • серега

    как сделать текст с новой строки

    • Юлия

      Что бы текст начинался с новой строки перед ним нужно поставить \n

  • seogrot

    Открыл для себя iMacros буквально пару недель назад. Плагин действительно очень мощный. Начинал разбираться по Вашим примерам, очень помогли! Сейчас у себя на блоге записал и разместил тоже несколько рабочих примеров макросов. Возможно кому-то пригодится

  • Юлия

    Доброй ночи!У меня куда то исчезла иконка макроса.До этого было всё в порядке,я им постоянно пользовалась,при открытии мозилы программа автоматически открывалась слева,а сейчас не открывается и исчез значок в панеле.Где мне его теперь искать и как запустить?

    • Попробуйте переустановить плагин.

  • Александр

    Всем привет, помогите разобраться в простой задачей, имеем простой бот для игры.
    for (var a = 9999; a >= 1; —a) { errCode=iimPlay(«CODE:URL GOTO=http://188.138.107.158/game»);
    for (var v = 7; v >= 1; —v) { errCode=iimPlay(«CODE:URL GOTO=http://188.138.107.158/game/battle/mercenary/new?type=silver»);
    errCode=iimPlay(«CODE:TAG POS=1 TYPE=A ATTR=TXT:Сражаться»);
    errCode=iimPlay(«CODE:WAIT SECONDS=3»);}
    errCode=iimPlay(«CODE:WAIT SECONDS=900»);}
    Который тупо сливает бои, нужна небольшая доработка логики. А конкретнее нужно сделать так, что бы когда появляется капча бот ставился или ставился на паузу. Я совсем не шарю в этом деле, поэтому прошу показать какими командами что прописывать. страница капчи _http://188.138.107.158/game/captcha/ и еще слова. Если есть возможность как то поставить условие при попадение на эту страницу ставить скрипт на паузу покажите как, если это не реально, то может быть есть вариант с поиском сочетаний слов на странице, если на странице имеются слова «испытание ведьмы» то скрипт так же ставится на паузу.

  • Артур

    Помогите со скриптом что за ошибка в нем, он оставляет сообщение и фото, только до 50 грурпп и все, а я хочу хотя бы до 200 групп.

    ————————————
    SET !ERRORIGNORE YES
    SET !TIMEOUT_STEP 3
    ‘ текст сообщения
    SET !VAR1 «ДОБАВЬ В ДРУЗЬЯ!!! »
    ‘ путь до изображения
    SET !VAR2 «C:\ДобавьВдрузья.jpg»
    URL GOTO=https://www.facebook.com/bookmarks/groups
    WAIT SECONDS=2
    TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:»item clearfix sortableItem*»&&HREF:/groups/*
    WAIT SECONDS=2
    TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message
    WAIT SECONDS=4
    TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT={{!VAR1}}
    TAG POS=1 TYPE=INPUT:FILE FORM=ID:u_* ATTR=ID:js_* CONTENT=»»
    WAIT SECONDS=2
    TAG POS=1 TYPE=INPUT:FILE FORM=ID:u_* ATTR=ID:js_* CONTENT={{!VAR2}}
    WAIT SECONDS=15
    TAG POS=1 TYPE=SPAN ATTR=TXT:Опубликовать
    WAIT SECONDS=4
    BACK

  • Strayk

    Есть .js файл с настройками игры, но как его запустить ума не приложу. Напишите пожалуйста более подробно как можно запустить этот .js скрипт.

  • Strayk

    Нужна помощь.
    Вобщем есть скрипт .js, вот начало кода:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function keyQ()
    {
        var macro = "CODE:TAG POS=1 TYPE=DIV ATTR=ID:MinBetButton";
        retcode = iimPlay(macro);
        return retcode;
    }

    function keyZ()
    {
        var macro = "CODE:TAG POS=1 TYPE=DIV ATTR=ID:MultiplyBetButton";
        retcode = iimPlay(macro);
        return retcode;
    }

    Немогу его запустить, ничего не происходит. Помогите запустить этот скрипт.

  • александра

    здраствуйте помогите пожалуйста я установила макрос в одноклассниках и он через некоторое время перестал приглашать людей.я в инете чайник полный кудато нажала и он у меня пропал и вышла такая запись can not open»C:/Users/тимоха/Dokuments/imakros/makros»direktory to read makros.Would you like to open preference dialog to correct path settings?и кнопка да.на нее нажимаешь и выходит папка данных папка макросов и папка закачек и внизу слово Apply как мне быть и как вернуть назат плагин ради бога помогите

  • Виталий

    Подскажите пожалуйста в фейсбуке надпись вставляет и фото вставляет а на отправку не нажимает и дальше по группам не переходит
    SET !ERRORIGNORE YES
    ‘скрипт нужно запускать со страницы facebook.com/groups на средней скорости
    ‘устанавливаем что будем рассылать по группам
    SET !VAR1 «Ваш верный Facebook-помощник»
    ‘устанавливаем рандомное время после каждого шага
    SET !VAR2 EVAL(«var random=Math.floor(Math.random()*10 + 1); random;»)
    SET !VAR3 EVAL(«var random=Math.floor(Math.random()*10 + 1); random;»)
    SET !VAR4 EVAL(«var random=Math.floor(Math.random()*10 + 1); random;»)
    SET !VAR5 EVAL(«var random=Math.floor(Math.random()*10 + 1); random;»)
    URL GOTO=https://www.facebook.com/bookmarks/groups
    ‘SET !REPLAYSPEED MEDIUM
    TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/groups/*
    WAIT SECONDS={{!VAR2}}
    TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message
    WAIT SECONDS={{!VAR3}}
    TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT={{!VAR1}}
    WAIT SECONDS={{!VAR4}}
    TAG POS=1 TYPE=INPUT ATTR=NAME:composer_unpublished_photo
    WAIT SECONDS={{!VAR6}}
    TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:u* ATTR=class:ifloat
    WAIT SECONDS={{!VAR7}}
    TAG POS=1 TYPE=INPUT:FILE FORM=ID:u* ATTR=ID:j* CONTENT=C:\Users\maxim\Documents\iMacros\Datasources\DVR.png
    WAIT SECONDS=10
    TAG POS=1 TYPE=SPAN ATTR=TXT:Опубликовать
    WAIT SECONDS={{!VAR5}}
    BACK
    где ошибка не пойму

  • Виталий

    iimPlay ERROR: RuntimeError: element SPAN specified by TXT:Опубликовать was not found, line 14
    кто знает как исправить

  • andrey

    пожалуста помогите! переделать этот скрипт, 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=0.5» + «\n»;

    var r = window.find(«you win»);
    var check = window.document.getElementById(«double_your_btc_bet_hi_button»).disabled;

    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=INPUT:TEXT ATTR=ID:double_your_btc_stake CONTENT=0.00000001» + «\n»;

    if((!r)&&(!check)){ iimPlay(macro2); }
    if((r)&&(!check)) { iimPlay(macro3); }
    if (!check) { iimPlay(macro1); }

    }
    ,для этого сайта , _http://freebitco.in/?op=home,в програмировании я полный ноль , сделать надо вот что, жмем бет хай — ели проигрыш,удваиваем ставку и переход на бет ло ,если проигрыш то снова удваиваем ставку и перход на бет хай,если выигрыш то оставаться и продолжить с минимальной ставкой, пожалуйста помогоите сделать его правильно,я смотрел ваши уроки по програмированию,но к сожалению так ни чего и не понял!

  • Олег

    СПАСИБО! Просто бесподобная статья, которая раскрывает настоящие возможности iMacros! Просто и доступно

  • Владимир

    Добрый день! Помогите найти специалиста по imacros, нужно написать два простых скрипта. готов оплатить работу.8-926-709-26-59 Владимир

  • Татьяна

    в макрос на мазиле совсем не работает команда REFRESH?проскакивает мимо ничего не обновляя

  • root

    Присоединяюсь к благодарностям, без ваших статей я бы пропал!!!

  • Саня

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

  • Павел

    Здравствуйте! 1.Если можно проверьте правильно ли работает скрипт — его задача вводить капчу на сайте freebitco.in через сайт анти капча (если это платно, готов оплатить).2.Можете составить скрипт для iMacros на мазиле и сколько это стоит?(могу также в благодарность поделиться без проигрышной схемой заработка на freebitco.in, собственно для чего и нужен скрипт)
    3.Можно ли быстро научиться самому составлять скрипты и что для это надо изучить
    Итак, сам скрипт, заранее благодарю:

    VERSION BUILD=8601111 RECORDER=FX

    SET !EXTRACT_TEST_POPUP NO
    SET !ERRORIGNORE YES
    SET !ERRORCONTINUE YES

    TAB T=1
    URL GOTO=http://antigate.com/panel.php
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/panel.php ATTR=NAME:en_login CONTENT=Magiaved
    SET !ENCRYPTION NO
    WAIT SECONDS=1
    TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://antigate.com/panel.php ATTR=NAME:password CONTENT=I2vTHErR
    WAIT SECONDS=1
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/panel.php ATTR=*
    WAIT SECONDS=1

    URL GOTO=http://goo.gl/ZLyLZm
    wait seconds=1
    ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=image.jpg
    wait seconds=1

    TAG POS=1 TYPE=IMG ATTR=SRC:»http://www.google.com/recaptcha/api/image?c=*» CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
    TAB OPEN
    TAB T=2
    URL GOTO=http://antigate.com/panel.php
    WAIT SECONDS=1
    URL GOTO=http://antigate.com/panel.php?action=ocr
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:загрузкатестовойкапчи&&CLASS:wButton
    TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:panel.php ATTR=TYPE:file&&NAME:testfile&&SIZE:40 CONTENT=C:\CAPCH\image.jpg
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:загрузить&&CLASS:wButton
    WAIT SECONDS=25
    URL GOTO=http://antigate.com/panel.php?action=ocr
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:panel.php ATTR=TYPE:text&&SIZE:5&&VALUE:10&&NAME:maxpage CONTENT=1
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:показать&&CLASS:wButton
    TAG POS=1 TYPE=B ATTR=TXT:* EXTRACT=TXT
    TAB CLOSE
    TAB T=1
    TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:recaptcha_response_field CONTENT={{!EXTRACT}}
    WAIT SECONDS=2
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:free_play_form ATTR=ID:free_play_form_button

    WAIT SECONDS=2
    URL GOTO=http://antigate.com/panel.php
    WAIT SECONDS=1
    URL GOTO=http://antigate.com/panel.php?action=logout_confirm
    WAIT SECONDS=1
    URL GOTO=http://antigate.com/panel.php?action=exit
    WAIT SECONDS=1
    URL GOTO=http://freebitco.in
    WAIT SECONDS=3610

    • Дмитрий

      Чето у тебя наворочено сильно, там проще все на самом деле. Также не сложно и для аналогичных сайтов сделать

    • Убери логин и пасс от антигейта из скрипта:)

  • Владмир

    Ivan тут уже писал:
    «У меня есть страницы A и Б, и мне нужно скопировать несколько строк из А и вставить в определенные поля Б. Потом открыть абсолютно идентичные по структуре страницы В и Г, и провести точно такую же копипасту. И так далее. Другими словами, возможно ли создать макрос который выполнял бы копипасту, если структура у страниц идентична, а адрес и текст копипасты меняется?»

    Вот у меня похожая ситуация! Подскажите как выделять (аналогичное действие: выделение текста мышью) текст в одной из частей странице (По координатам) и как его скопировать в буфер обмена (т.е. аналог нажатию Ctrl+V)

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

  • Сергей

    Будь добр подскажи возможно ли с помощью IMacros упралять другими плагинами. Или он может работать только с содержимым страниц, а с панелями FireFox не работает.
    Есть плагин для смены IP, нужно чтобы IMacros после выполнения определённых действий нажал на панели кнопку другого плагина и он уже сменит прокси-сервер.

  • Dmitrii

    Вопрос такой. Как сделать звуковое оповещение на какоето событие. То есть допустим если I=1 то звуковой сигнал (желательно без остановки скрипта) длительностью 5-10 секунд.

  • Ирина

    Здравствуйте. Скопировала Ваш скрипт для контакта — вставила ссылки на группы и он теперь ходит только по этим 3 группам, а как сделать, чтобы он выбирал группы из списка и по разным группам ходил? Помогите пожалуйста — буду очень благодарна.

  • Ирина

    Здравствуйте. Вот вы выложили скрипт для контакта, но он заходит только в те 3 группы которые там указаны, а как сделать, чтобы он заходил во все открытые группы?

  • Николай

    Подскажите как сделать чтобы I macros копировал строку и сохранял ее в блокнот. Строк много надо что бы он копировал одну за одной через пробел, заранее спасибо!

  • InfSub

    Нет, панелью управлять не умеет, но кто мешает управлять прокси? Для этого есть встроенные функции в имакросе, но также, можно менять и настройки FF с помощью js

  • Елена

    Здравствуйте!
    Подскажите, есть ли команда в iMacros, нужно сделать повтор действий
    примерно то что хочу сделать:

    1. VERSION BUILD=……… RECORDER=FX
    2. TAB T=1
    3. URL GOTO=http://www…..
    4. TAG POS=1 TYPE=INPUT:RADIO FORM=ID:klad ATTR=ID:klad1
    5. WAIT SECONDS=1.2
    6. TAG POS=1 TYPE=DIV ATTR=ID:oblako_421
    7. WAIT SECONDS=1.2
    8. TAG POS=1 TYPE=DIV ATTR=ID:oblako_682
    9. WAIT SECONDS=1.2
    10. повтор пункта (6-9) 4 раза
    11. TAG POS=1 TYPE=DIV ATTR=ID:oblako_1342
    12. WAIT SECONDS=1.2
    13. TAG POS=1 TYPE=DIV ATTR=ID:oblako_547
    14. WAIT SECONDS=1.2
    15. повтор пункта (11-14) 4 раза
    16….и т.д……….

  • Макс

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

  • Шынболат

    Добрый день!

    Помогите, пож-та, как написать скрипт для извлечения email адресов из соц. сетей (например, в фейсбуке)? Спасибо!

  • Игорь

    Здравствуйте!
    Подскажите, есть ли команда в iMacros, нужно сделать повтор действий
    примерно то что хочу сделать:

    1. VERSION BUILD=……… RECORDER=FX
    2. TAB T=1
    3. URL GOTO=http://www…..
    4. TAG POS=1 TYPE=INPUT:RADIO FORM=ID:klad ATTR=ID:klad1
    5. WAIT SECONDS=1.2
    6. TAG POS=1 TYPE=DIV ATTR=ID:oblako_421
    7. WAIT SECONDS=1.2
    8. TAG POS=1 TYPE=DIV ATTR=ID:oblako_682
    9. WAIT SECONDS=1.2
    10. повтор пункта (6-9) 4 раза
    11. TAG POS=1 TYPE=DIV ATTR=ID:oblako_1342
    12. WAIT SECONDS=1.2
    13. TAG POS=1 TYPE=DIV ATTR=ID:oblako_547
    14. WAIT SECONDS=1.2
    15. повтор пункта (11-14) 4 раза
    16….и т.д……….

  • Юрий

    Всем привет ! Хорошая статья ! Но пока так и не научился писать скрипты ! Зато во многом продвинулся! Спасибо !
    Есть у кого готовые скрипты по соц.сетям !? Интересуют очень.! Самые простые !

  • mass

    Есть возможность ожидание «WAIT» сделать Рандомно в диапазоне от 10 до 30 сек?

    • Андрей

      А что это такое «Рандомно»? Вы, уже конечно, извините за столь наивные вопросы, но в этом деле новичок. Хотя очень интересно. Но может кто-нибудь ссылочку подбросит про описание операторов.

  • Ксения

    Добрый день,помогите пожалуйста,как сделать код аймакроса для сервиса в яндексе толока(это опросник).Спасибо

  • rustam

    можек кто подкинет макрос для одноклассников- В гости из онлайника и ваш комментарий к фото

  • pavel

    вечер добрый, помогите плизз …. в скрипте imacros в формате *js сделать из ссылки картинку или что бы команда была чтоб из картинки сделать кликабельную картинку что бы в ней была встроена ссылка на веб страницу ! если кто может помогите, очень нужна команда такая для соц сети ФБ

  • Ильдар

    Здравствуйте. Можно ли организовать запись данных в файл и, когда нужно, считывать его. К примеру, мне нужно записывать ip-адрес в 1ю строчку текстового файла. Затем, после переподключения интернета, снова записать новый текущий ip-адрес во 2ю строчку файла. Ну а со чтением из файла это понятно. Есть ли команды записи в файл? Или как можно это организовать с помощью ява скрипта обходными путями?

  • Александр

    Добрый вечер. Имеется записанный мною скрипт на 300 с хвостиком строчек, скрипт запускается, всё работает исправно, но со временем зависает на разных строчках. В чём может быть проблема? Заранее благодарю 🙂

  • Константин

    Добрый день…А возможно ли записать ряд действий в игре(браузера)?… многое там нажимаю,но программа не реагирует даже на щелчки.

  • Zheka

    Подскажите пожалуйста решение задачи!
    На сайте есть пять картинок с именами 1.jpg, 2.jpg, 3.jpg, 4.jpg, 2.jpg. Две из них идентичны. Это одна картинка в разных масштабах. Нужно клацнуть на одну из идентичных картинок.

    Я так себе представляю, что нужно извлечь кода div, в котором размещены картинки, проанализировать его. Найти идентичные названия картинок и передать его в макрос, чтобы тот кликнул по этой картинке.

    Как это реализовать?

  • Zheka

    Господа и дамы!
    Подскажите как скопировать адрес изображения в iMacros в переменную?

  • InfSub

    Zheka

    1
    TAG POS=1 TYPE=IMG ATTR=HREF:image_name.jpg EXTRACT=HREF
  • Валёк

    Подскажите.
    Через строку WAIT SECONDS=
    устанавливаю повтор действия на определённое время, раньше работало как часики, всё чётко было. Сейчас почему то опаздывать стало.
    Если какая-то команда более точная для времени или как сделать чтобы команда выполнялась в срок. (Время опозданий всегда разное)

  • Rafail

    Установил расширение imacros на mozilla, теперь при старте браузера загружается страница imacros.net, с предложением обновить demo скрипты в папке. Помогите как убрать эту назойливую стартовую страницу

  • Zheka

    Ребята, вопрос на засыпку!
    Я не прогрммист, так что не судите строго. Подскажите почему у меня следующий код уходит в бесконечный цикл?

    1
    2
    3
    4
    var i;
    for ( i = 0; i < 3; i++) {
    i = iimPlay("CODE:PROMPT " + (i));
    }

    Выдает сначала 0, потом 2 бесконечно. Хочу чтобы последовательно выдавал 0, 1, 2.

    • InfSub

      так убери присвоение значения переменной i перед iimPlay() или замени ее другой переменной, если это значение — нужно

  • zurg

    Доброго времени суток!
    на сайте есть «3» всплывающих окна с разными значениями мне надо выбрать большую и нажать соответствующию кнопку а остальные игнорировать?
    пример
    0.01 TAG POS=1 TYPE=INPUT:BUTTON ATTR=*
    REFRESH
    0.02 TAG POS=2 TYPE=INPUT:BUTTON ATTR=*
    REFRESH
    0.03 TAG POS=2 TYPE=INPUT:BUTTON ATTR=*
    REFRESH
    значение переменное (0.01, 0.02,0.03)
    какую команду использовать если это возможно?

  • zurg

    подскажите как заставить макрос писать в комент группы в ВК (весь макрос есть ) там атрибут id он постоянно меняется * не прокатывает группы берет из файла текст тоже есть рандом по задержки

  • artem

    подскажите пожалуйста — как имитировать нажатие «enter»? или как запостить коммент в фейсбук?

    • Максим
      1
      EVENT TYPE=KEYPRESS SELECTOR=* KEY=13
  • Екатерина

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

  • katrina

    Здравствуйте! Может есть у кого скрипты для фейсбука и контакта для рассылки реклам по группам??? И как ссылку на товар вставлять в скрипты?

  • Alex

    Добрый день.
    Очень нужна помощь.
    Есть на странице кнопка «Go», но сама кнопка не активна пока не введешь значение поиска в поле.
    Если ввести значение вручную, то кнопка активируется и тогда на нее можно нажать, а если ввести значение с помощью iMacros то кнопка так и остается неактивной.
    Вопрос:
    1) Как можно перед вводом значения установить с помощью iMacros курсор в поле для ввода значения?
    2) Как все же ввести значение в поле так чтоб браузер отреагировал как от ручного ввода

  • Вет

    Всем привет. нужна помощь)) напримере — SET! ERRORCONTINUE YES
    — позволяет макро ехать дальше если он чего-то не нашел на сайте. Мне нужно только наоборот условие — пока не найдет нужный элемент (ссылку, клик и тд) то дальше не ехать. Какой командой и каким условием нужно прописывать. Ребятки кто может поможет ((( ???буду благодарен…. Всем хорошего вечера.

    • InfSub
      1
      SET! ERRORCONTINUE YES

      — где вы видели подобный бред? нет такой команды, есть:

      1
      SET! ERRORIGNORE YES

      // ждем, пока не появится нужный элемент
      while(iimPlayCode(‘TAG POS= ….’)<0){}; // искомый элемент на странице
      // когда найден — идем дальше
      iimPlayCode('TAG POS= ….'); // ваш код

  • Вет

    Привет всем )))
    1) Как зациклить скрипт — start.iim в imacros или через js ?

    2) Хочу установить например таймер на 9 минут на выполнения start.iim ? Помогите с кодом.

    Все эти действия в imacros или js нужно делать? Спасибо.

    3) Как через js запустить 1.bat ?

    Всем благодареннн буду кто поможетттт!!!!

    • InfSub

      1,2.
      iim
      кнопка «цикл» в панели имакроса для iim-скриптов
      в конце скрипта:

      1
      WAIT SECONDS=540

      js

      1
      2
      3
      4
      while(1){
          iimPlayCode('код скрипта');
          iimPlayCode('WAIT SECONDS=540');
      };

      3. зачем? гугл

  • виталя

    подскажите как сделать чтоб imacros различил картинки по цветам и выбирал синюю,а не черную?

  • виталя

    подскажите пожалуйсто,как сделать чтоб imacros выбирал синию картинку,а не серую?

  • LAPD

    ЗДРАВСТВУЙТЕ!Как открыть 6 ссылок(6 одинаковых слов и наводя на слово мышью в углу высвечивается разные ссылки «левых» сайтов,но макрос считывает не ссылки а эти 6 слов) на сайте ОДНОВРЕМЕННО и потом он закрыл открывшиеся вкладки сразу-же?

    • InfSub

      может быть, вы хотя бы сайт укажете или код нужного элемента приложите? Или по вашему, тут все экстрасенсы?

    • Евгений

      1. Запишите макрос, клацнув по каждой из 6 ссылок.
      2. Откройте записанный макрос, добавьте к коду каждой из 6 ссылок » EXTRACT=HTM» без кавычек. Таким образом вы извлекаете HTML код каждого из 6 элементов. Там должны быть искомые ссылки.

      Imacros-код + html код можете сюда скинуть, могу помочь с реализацией дальше.

  • Виталий

    а как сделать макрос на написание поста в списке групп? Ведь список этот разный и каждый раз вручную проходить список из сотен групп в ВК чтобы майкросу записать действия как то глупо. Что нужно сделать чтобы решить такую задачу? Спасибо

    • Andrey

      Встввить
      PAUSE

      Пользуется без опций
      Это будет ждать отклика от посетителя сайта
      На любую кнопку на клавиатуре
      Движение мышей не проверял

      Вставить
      WAIT = 59
      секунды сколько хотите
      В моём примере = 59 сек

  • InfSub

    Вет
    гуглить не пробовал? ты где вообще видел такую команду, как SET !ERRORCONTINUE YES? фейк это, есть только одна команда, позволяющая игнорить ошибки

    1
    SET !ERRORIGNORE YES


    выполнить условие, как ты выразился — «дальше не ехать», можно только с помощью управляющего js-скрипта — ищи форумы по имакросу, там все есть, здесь писать подобные схемы, извини не буду (как минимум не удобно)

    по поводу зацикливания скрипта:
    зациклить скрипт можно кнопкой цикл, в самом имакросе, выставив с помощью
    WAIT SECONDS=секунд нужное время ожидания, после каждого цикла
    9 минут — это:

    1
    WAIT SECONDS=540

    либо в js, сделать цикл, и так же выставить время ожидания, описанным способом

    Alex
    в настройках имакроса — есть различные режимы, запиши ввод текста, в режиме «Experimental Event Recording Mode»
    После ввоода текста в таком режиме — кнопка станет активной

    виталя
    может еще и кофе варить имакрос попросишь?
    различать цвета — он не умеет, ищите иные способы определения нужного элемента на странице.
    гуглите: «форум imacros»

  • Igor

    Здравствуйте! можно ли с помощью iMacros проверить изменение цвета точки в течение определенного времени? Например: если цвет точки не изменяется в течение 3 сек, запустить следующую команду, если меняется цвет больше чем 15 сек, перезагрузить страницу.

  • fatul

    Подскажите,пожалуйста,как настроить пол? Чтобы программа только девушек искала))

  • Александр

    Как можно подставить вместо ссылки выражение, чтобы при запуске на странице не было бы привязано к определенному сайту? Мне надо для заполнения однотипных форм.

    1
    URL GOTO=http://site.ru/
  • Karina

    Добрый вечер подскажите фймакрост выдает ошибку,как исправить

    can not parse macro line: (Error code: -910)

  • Карина

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

    can not parse macro line: (Error code: -910)

  • Дмитрий

    Здравствуйте, помогите пожалуйста собрать ссылки на видео с Ютуба
    Хочется зайти на канал в «Видео» и вытащить от туда все ссылки на видео…
    Хочу потом постить видео в контакт.
    Заранее большое спасибо!

  • Андрей

    Добрый день — помогите в решении задачи. К примеру надо записаться на прием в контору — Но вся беда в том что надо ловить свободную дату и поймав ее нажать в календаре и выбрать час приема, по большей чати на сайте заняты почти все даты и запись открывается раз в день и часы приема различны. Какую команду макроса можно написать, чтобы он безошибочно выбирал дату и время, подсвеченное зеленым ( занятые даты имеют цвет бордо). И чтобы макрос выбрал дату, после чего пойдет автозаполнение форм ( с этим автозаполнением разобрался) , а в конце чтобы макрос смог подобрать и внести каптчу. ? Заранее спасибо

  • ЮРИЙ

    ПОМОГИТЕ ПОЖАЛУЙСТА.
    Нужен СКРИПТ
    Игра больше меньше
    сначала игра на МЕНЬШЕ если выигрыш играем далее на этой кнопке и ставке если проигрыш тогда ставка *2 и т.д. до выигрыша, после выигрыша идет переход на другую кнопку БОЛЬШЕ и игра как сказано выше ..

  • Александра

    а как зациклить первоначальны макрос, чтобы он повторялся 1 раз в час?

  • Анастасия

    Хотелось чтоб помогли как сделать команды в одноклассниках и вконтакте…не получаеться вообще ничего(

  • Татьяна

    Здравствуйте! Подскажите, пожалуйста, imacros выдаёт ошибку неправильный формат команды SET, строка 6 (Код ошибки: -910). Что делать? Спасибо…

  • Вероника

    Здравствуйте! Макрос приглашения в группу в одноклассниках почему то сбился: выбирает группу, но не приглашает в нее. Вот часть скрипта:

    WAIT SECONDS={{!VAR3}}
    TAG POS=1 TYPE=A ATTR=CLASS:photoWrapper
    WAIT SECONDS={{!VAR4}}
    TAG POS=1 TYPE=EM ATTR=TXT:другиедействия
    SET !TIMEOUT_STEP 1
    TAG POS=1 TYPE=SPAN ATTR=TXT:пригласитьвгруппу
    WAIT SECONDS={{!VAR5}}
    »»»»Укажите номер группы по счёту TAG POS=1 или TAG POS=2 и т.д.
    TAG POS=1 TYPE=DIV ATTR=TXT:выбрать
    WAIT SECONDS=1
    TAG POS=1 TYPE=input ATTR=ID:hook_FormButton_button_invite
    WAIT SECONDS=4
    BACK

    Буду признательна за помощь..

  • Виктор

    ПОМОГИТЕ ПОЖАЛУЙСТА
    нужно сделать чтобы макрос кликал на кнопки расположенные на сайте ..
    Первая кнопка — Auto Play (оранжевого цвета)
    Далее — UNDER
    Далее — Start

  • Ден

    Здравствуйте, я подумал, возможно у нас есть общие интересы.
    если можете ответьте. Какой командой приостановить макрос и какой потом запустить, при нажатии кнопки на сайте, и на клавиатуре. Спасибо.

  • Азат

    Здравствуйте! Есть пару проблемок,т.е. есть игра в которой нужно посадить растение и потом собрать, но при посадке, каждому растению присваивается id номер, и при сборе тоже, так вот как это обойти? это первая проблема, а вторая такая, записываешь скрипт, редактируешь его(убираешь ссылку для обновления — URL GOTO=https://www.world-of-farmer.ru/game/game2), запускаешь его и игровое поле просто перемещается вверх, и далее ничего не происходит, т.к. игровое поле сдвинулось, как это исправить?

  • вавав

    И где же этот класс COM для php и imacros????

  • Дмитрий

    Здравствуйте!Подскажите как настроить IMacros!При установке в левом верхнем углу написано красным текстом «Can not open directory to read macros.Would you like to open preference dialog to correct path settings?»Подскажите пожалуйста настройки?!Заранее СПАСИБО!!!

  • Юрий

    После того как изменился дизайн ВК перестал работать скрипт:
    VERSION BUILD=8240212 RECORDER=FX
    SET !ERRORIGNORE YES
    TAB T=1
    WAIT SECONDS=40
    URL GOTO=http://vk.com/spottsila
    WAIT SECONDS=5
    TAG POS=4 TYPE=DIV ATTR=TXT:Добавьвдрузья.ДОБАВЛЮВСЕХ!
    TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Добавьвдрузья,добавлювсех!
    TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

    Подскажите в чем дело? не пишет сообщения на стене. До этого всё работало отлично.

  • Bogdan

    подскажите комбинации *копировать**вставить*
    ну Ctrl+C/V

  • Андрей

    Здравствуйте у меня есть вопрос! Есть один сайт на нём есть кнопка. Мне нужно чтобы iMacros нажимал на неё сам. Я пробовал уже записать скрипт но он не работал помогите пожалуйста! С подробностями о сайте можете писать мне на почту там я скину скрин сайта.

  • ivan

    можно ли всё делать в фоновом режиме?

  • Владимир

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

  • Владимир

    и ещё может посоветуете литературу о всех тонкостях macros сриптов??

  • Рус

    ПОМОГИТЕ , кто ШАРИТ

    EVENTS TYPE=KEYPRESS SELECTOR=»#post_field» CHARS=» https://cs540109.vk.me/c836238/v836238729/27873/1b_t69dGUY4.jpg »
    EVENTS TYPE=KEYPRESS SELECTOR=\”#post_field\” KEYS=\”[8]\””
    EVENTS TYPE=KEYPRESS SELECTOR=»#post_field» CHARS=» Д О Б А В Л Я Й С Я »

    Нужно чтобы написал ссылку и СТЁР ее
    а дальше написал ТЕКСТ

    Вопрос: как сделать, чтобы он написал и сам стер написанное ?

  • Олег

    Здравствуйте! Подскажите, можно в первом JS-файле вызывать функции, которые находятся в другом JS-файле?

  • Татьяна

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

  • Михаил

    Здравствуйте!

    Подскажите пожалуйста,можно ли и как можно закрыть firefox из его же imacrosа?

  • Chesterfield25

    Подскажите почему не копирует текст?
    На сайте когда выполняется команда EXTRACT то во всплывающем окне текст показывает но не копирует!
    SET !EXTRACT_TEST_POPUP NO
    SET !ERRORIGNORE YES
    SET !ERRORCONTINUE YES
    TAB T=1
    URL GOTO=https://site.ru/
    TAG POS=2 TYPE=A ATTR=CLASS:q—li—text EXTRACT=TXT
    TAB T=2
    URL GOTO=http://yavcataloge.ru/blog/0-0-0-0-1
    EVENT TYPE=CLICK SELECTOR=»HTML>BODY>DIV:nth-of-type(2)>DIV>DIV>SECTION>FORM>TABLE>TBODY>TR:nth-of-type(2)>TD:nth-of-type(2)>INPUT» BUTTON=0
    EVENT TYPE=KEYPRESS SELECTOR=»HTML>BODY>DIV:nth-of-type(2)>DIV>DIV>SECTION>FORM>TABLE>TBODY>TR:nth-of-type(2)>TD:nth-of-type(2)>INPUT» CHAR=»v» MODIFIERS=»ctrl,v»
    TAG POS=25 TYPE=INPUT:BUTTON FORM=NAME:addform ATTR=*

  • Сергей

    Здравствуйте.

    Я полнейший нуб в скриптологии.

    Нужна помощь.
    Необходимо создать скрипт для макроса, чтобы он выполнял условия и совершал определённые действия согласно условиям.
    Я понимаю что это делается через JavaScript, но вот не разбираюсь в этом совсем.
    Надо чтобы скрипт считывал информацию с сайта, проверял её по условиям и выполнял действия.
    К примеру: Если Значение = 100, то в поле ввода ввести 600, или: Если значение > 150, но < 250, то в поле ввода написать 700.

  • Дмитрий

    Добрый день. Подскажите пожалуйста. Есть скрипт — отправка автосообщения пользователю после одобрения его заявки в друзья в ВК. Но скрипт не подставляет имя контакта.Что надо сделать, прописать в скрипт, чтобы подставлялось имя пользователя!? Заранее спасибо.

  • Оставить комментарий

    Подписаться на комментарии к этой статье по RSS

    Яндекс.Метрика