Архив метки: примеры iMacros

Работа с куками, удаление кук отдельных сайтов на iMacros

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

var imJS = {
    get Ci() {
        return Components.interfaces;
    },
    get Cu() {
        return Components.utils;
    },
    setCookie: function setCookie(cookies) {
        this.Cu.import(«resource://gre/modules/Services.jsm»);
        for (var i = 0; i < cookies.length; i++) {
            Services.cookies.add(cookies[i].host, cookies[i].path,
                cookies[i].name, cookies[i].value, cookies[i].isSecure,
                cookies[i].isHttpOnly, cookies[i].isSession, cookies[i].expiry);
        };
    },
    getCookie: function(domain) {
        this.Cu.import(«resource://gre/modules/Services.jsm»)
        var services = Services.cookies.getCookiesFromHost(domain);
        var listCookies = [];
        while (services.hasMoreElements()) {
            var cookie = services.getNext().QueryInterface(this.Ci.nsICookie2);
            listCookies.push(cookie);
        };
        return listCookies;
    },
}
// Использвоние
imJS.getCookie('vk.com');    // Получаем куки и сохраняем в json файл или как удобно на диск
// В следущем заходе берем куки с диска, переводите в массив JSON.parse()
imJS.setCookie(cookies /* Передаем массив кукис */ )

Структура этого кода мне не понятна, это не совсем яваскрипт, но можно переделать под обычные функции. По сути идет работа с менеджером куки через компоненты мозиллы и в цикле перебираются все куки по очереди. Используя getCookiesFromHost(domain); получают список всех кук конкретного домена — сайта. То есть можно даже удалять куки отдельного сайта, если это необходимо. С кодом нужно немного поковыряться, поправить, дописать и сделать для себя то что нужно.
Так же полезное можно получить из mozilla.org, правда все на английском, но кое что можно извлечь для себя.

Components.utils.import("resource://gre/modules/Services.jsm");
var cookieService = Services.cookies;

К примеру, может помочь метод удаления кук
void remove(in AUTF8String aHost, in ACString aName, in AUTF8String aPath, in boolean aBlocked, in  jsval  aOriginAttributes);  
void removeAll();
 А в самом верху страницы еще есть пара строчек:
This interface is intended to be used as a service. It is implemented by the @mozilla.org/cookiemanager;1 component, but should generally be accessed via Services.cookies
Только нужно правильно его применить, видимо. Из выше указанного кода можно переделать функции, которые будут сохранять куки на диск, а при следующем заходе подгружать их. Код в таком виде как он есть, естественно работать не будет.
Полезная ссылочка nsICookieManager2
nsICookieManager
Конец.

Автор: New PC

Из ява скрипта значение передать в переменную iMacros

Полезные коды так же есть в папке с примерами после установки аймакроса. Можно постепенно запускаться что то из них и учиться на этом — смотреть что они выполняют и разбираться в коде. Этот пример только для того, чтобы показать команду   iimSet(«POSTID», MyPosts[i]);, которая передает значения переменной  MyPosts[i] из массива в переменную imacrosa POSTID.

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;
    }
}

Так же полезное из этого кода можно извлечь команду  iimGetLastError();, которую можно использовать для вывода ошибок работы скрипта, хотя чаще всего она не используется и необходимости большой в ней нет.
Ну а как передавать переменную аймакроса в яваскрипт, думаю с этим проблем не должно быть, к тому же ранее выкладывал несколько примеров. К примеру можно использовать 
ADD !EXTRACT {{!COL2}}
var str = iimGetLastExtract(1);
и таким образом мы переменную аймакроса {{!COL2}} перекинули в переменную яваскрипта str. Раньше я часто применял это, когда использовал подключение файла и брал оттуда данные. Сейчас же данные из файла можно брать более проще.

Автор: New PC

Коды iMacros, напишу платные скрипты iMacros, ютуб iMacros

Все таки довольно много людей посещают мой блог — как никак, уже более 100 хостов в сутки. И в основном заходят смотреть различного рода скрипты к iMacros и команды для них. Поэтому решил написать эту статейку с предложением зайти на мой канал ютуб — там есть некоторые уроке по работе с аймакросом и примеры.
Ссылка на канал по аймакросу и компьютерам: iMacros YouTube channel.

На простые вопросы по командам и макросу отвечу всем. Если есть предложения написать для вас платные скрипты, то пишите в комментарии — все комментарии я вижу. Примеры работы скриптов вы можете посмотреть на моем канале, который указан выше по желтой ссылке. Буду признателен за подписку и лайк к видео и к этому посту G+.

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

Так же все вопросы и по платному написанию скриптов для вас обращайте напрямую на мою почту mingazetdinov85@gmail.com

Автор: New PC

Парсер ссылок с Одноклассников на iMacros

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

По сути в чем проблема — открываем страницу с группами и проматываем до низу — открываем столько групп сколько нужно, предварительно написав в поиске нужную тематику.
Далее копируем html-код страницы и разбиваем его содержимое по слову /group, например, которое присутствует в некоторых группах. А поскольку это слово не во всех группах, то можно взять соседний код с адресом группы и сделать разбивку на массив по соседнему повторяющемуся участку кода.

iimPlayCode('TAG POS=1 TYPE=BODY ATTR=* EXTRACT=HTM');
var ex = iimGetLastExtract(); //iimDisplay(ex);
var ss = ex.split('AltGroup_Visit_GroupsSearch» data-l=»t,visit» href=»');
var p,str;
str='';
for (i=0;iss[i]=ss[i].split('» class=»o»>')[0];
if (ss[i].length<50) str+='https://ok.ru'+ss[i]+'n';}
iimDisplay(str);

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

В общем код для iMacros выкладываю здесь, как и говорил в видео на канале ютуб. Кому интересна данная тематика — Подписывайте на мой канал ютуб из видео выше.

Автор: New PC

Как собрать все ссылки видео со своего канала ютуб?

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

//for (i=1;i<=10;i++) {window.parent.scrollTo(0,i*500); iimPlayCode('WAIT SECONDS=1');}
iimPlayCode('TAG POS=1 TYPE=BODY ATTR=* EXTRACT=HTM');
//iimPlayCode('TAG POS=1 TYPE=UL ATTR=ID:channels-browse-content-grid EXTRACT=HTM');
var ex = iimGetLastExtract();
var ss = ex.split('/watch');
var p,str;
str='';
for (i=0;ip=ss[i].indexOf('»>');
ss[i]=ss[i].substr(0,p);
if (ss[i].length<30 && ss[i].length>5) str+=ss[i]+'n';}
ss=[];
ss=str.split('n');

for (i=0;i0) {p=ss[i].indexOf('&amp');ss[i]=ss[i].substr(0,p);}
str='';
for (i=0;iiimDisplay(str);
alert(ss.length-1);

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

Автор: New PC

Команды для iMacros — оно Вам нужно?

Чуть ранее, когда еще сам изучал аймакрос и все благодаря одному сайту, на котором хорошо заработал на макросе, выкладывал список команд, которые собрал непосредственно в интернете и перепроверил их работоспособность. Если б не было того сайта, на котором нужна была автоматизация для сбора центов, то я так и не научился бы аймакросу. Даже в первый раз, когда установил аймакрос, по началу скептически отнесся к нему и было желание удалить его. Но так как было большая необходимость автоматизировать действия в броузере, чтобы ночью спать спокойно, а комп зарабатывал, пришло изучать то что есть — а был под рукой только что установленный аймакрос. Нашел в интернете  команды некоторые, научился процессу записи и редактирования макросов и уже в этот же день написал и собрал из строчек по кирпичикам макрос который собирал центы с того сайта.
Откуда я вообще узнал про этот аймакрос? В общем где попался в буксе ссылка на фрибиткоин и он раздавал макрос по сбору сатошей за реферальство. Ну про фрибиткоин я уже знал в это время и регнулся по его ссылке только ради того, чтобы получить макрос и посмотреть код работы с капчей — то есть отправка в сервис и получение ответа. И вот так получил примерный код распознавания капчи. Мне казалось это тогда сложным процессом. А так как на моем сайте ввели через несколько дней капчи, мне этот код и пример как раз то и пригодился.
В общем вот так по чуть чуть сайт усложнял работу и менял капчи, мне приходилось постоянно редактироваться свой макрос и в один момент мне показалось недостаточно аймакроса, так как не хватало управления — условий, циклов. Я знал что в аймакросе должен работать яваскрипт, но как я не пытался туда написать ява код — он не работал. И только позже узнал что для того, чтобы заработал код яваскрипт, нужно давать расширению файлу js. Так откуда мне было знать это? Но когда я узнал об этом, вот тогда и понял всю функциональность и полезность этого аймакроса. Это очень полезная вещь в автоматизации работы в броузере и даже не только — ведь оттуда можно и приложения запускать и пакетные файлы, то есть влиять на работу виндовс. После этого постепенно и понемногу собирал инфу уже о командах и функциях ява скрипта.
Одним из сложных моментов это еще было подключения файла для считывания данных или помещениях и сбора данных файл. В основном нужно было считывание логинов и паролей и емайлов пользователей для сайтов. Так как пользователей было порядка 1000, то аймакрос здорово мне помог, потому что вручную я бы 100 не обработал. Позже я нашел код подключения файла в яваскрипте — это еще более круче и проше сделало код.
Теперь же для написания кодов скриптов и макросов больше половины кода используется ява скрипт и коды аймакроса использую только нажатие на кнопки, заполнение форм, екстаркты инфы со страницы, задержку в секундах, а остальная часть ява скрипт, так как это проще и легче. Сравните подключение файла в аймакросе и в ява скрипте и сами увидите разницу.
Поэтому здесь не будет команд аймакроса, а если они вам все таки нужны, то я уже писал про них и выкладывал — вот по этой ссылке.

Автор: New PC