Правила оформления сообщений в данном топике:
Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [spoiler][noindex]http://адрес_сайта/название_страницы[/noindex][/spoiler]
Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler][code]ваш код[/code][/spoiler]
или выложите на сайт «Pastebin».
При размещении объемных материалов, используйте тег "Spoiler" - [spoiler]ваш текст[/spoiler]
или выложите на сайт «Pastebin».
Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [spoiler][img]http://ссылка_на_изображение[/img][/spoiler]
.
«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон
«Не каждый вопрос заслуживает ответа.»
Сайрус
Отсутствует
dvitkovs
может почитаете про функцию date() ?
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
чтоб скрипт понимал что ему до получасового временного отрезка не надо на этот кран ходить, надо его как-то научить. То есть привязать ко времени компьтера.
Подкиньте идею как такое реализовать?
function limit(){ if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=P ATTR=TXT:*faucet<SP>exceeded*')>0){ iimDisplay('Ждем до окончания получаса для сбора'); iimPlayCode('ADD !EXTRACT {{!NOW:nn}}'); var time=iimGetExtract(); if(time == 00){ iimPlayCode('WAIT SECONDS=61'); }else if(time > 30){ var w2 = (60 - time) * 61; iimPlayCode('WAIT SECONDS='+w2); }else if(time < 30){ var w1 = (30 - time) * 61; iimPlayCode('WAIT SECONDS='+w1); }} return; }
// текущая дата var date = new Date(); // Год (из 4 цифр) alert( date.getFullYear() ); // Месяц начинается от 0 до 11. alert( date.getMonth() ); // Число месяца, от 1 до 31. alert( date.getDate() ); //час в текущей временной зоне alert( date.getHours() ); //минут в текущей временной зоне alert( date.getMinutes() ); // секунд в текущей временной зоне alert( date.getSeconds() ); // милисекунд в текущей временной зоне alert( date.getMilliseconds() );
Отредактировано dim222 (03-10-2016 12:46:07)
Отсутствует
В макросе я указываю в двух переменных - путь и - имя файла
чтобы потом их вставить в этот код
Например как вот это сделать?
SET файл D:\новая папка\новый сайт\архив.txt эвент разделяющий путь и имя файла TAG POS=1 TYPE=SPAN ATTR=TXT:Входящие EXTRACT=TXT SAVEAS TYPE=EXTRACT FOLDER={{путь}} FILE={{имя}}
Отредактировано Алим (03-10-2016 13:20:25)
Истина в последней инстанции
Отсутствует
Здравствуйте, уважаемые форумчане! Столкнулся с проблемой, которую не могу решить.
С помощью функции EXTRACT делаю парсинг числа на странице сайта, но это число сохраняется в переменной в виде строки (текста).
Как преобразовать этот текст в число?
extractPrice="CODE:SET !TIMEOUT_STEP 2\n"; extractPrice+="SET !EXTRACT NULL"+" \n"; extractPrice+="TAG POS=1 TYPE=SPAN ATTR=ID:price_* EXTRACT=TXT"; iimPlay(extractPrice); p = iimGetExtract();
Отредактировано Anders0n (03-10-2016 17:23:10)
Отсутствует
Нашел решение, оно оказалось очень простым
Отредактировано Anders0n (03-10-2016 17:23:22)
Отсутствует
Anders0n
написать свой плагин, вместо iMacros
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Anders0n
написать свой плагин, вместо iMacros
Я видел в работе такой скрипт, но вот как его самому реализовать пока не пойму.
Добавлено 03-10-2016 18:19:02
Вот часть кода, который выполняет это действие, но прикрутить к своему скрипту не получается.
if(iimPlay(macro) < 1){errtext=iimGetLastError(); if(errtext == 'Macro stopped manually'){ alert('Произведена ручная остановка.'); while_on=false; break; }else{ macro=ms_fast; macro+="WAIT SECONDS= 3"+" \n"; iimPlay(macro) ; break; } }
Отредактировано Anders0n (03-10-2016 18:19:02)
Отсутствует
Следующий вопрос
Как сделать чтоб выдавалось сообщение (alert) при нажатии на кнопку "Остановить" в iMacros?
Alert вывести не получится, но можно iimDisplay
window.QueryInterface(Components.interfaces.nsIInterfaceRequestor) .getInterface(Components.interfaces.nsIWebNavigation) .QueryInterface(Components.interfaces.nsIDocShellTreeItem) .rootTreeItem .QueryInterface(Components.interfaces.nsIInterfaceRequestor) .getInterface(Components.interfaces.nsIDOMWindow) .iMacros.panel.sidebar.document.getElementById('im-stopplay-button').onclick = function() { iimDisplay('test'); };
iMacros скрипты на заказ!
Отсутствует
Anders0n
дайте ссылку на видео, раз видели
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Anders0n
приведенный вами код ни как не относится кнопке остановить, чтобы что то сделать после нажатии кнопки нужно отследить онклик этой кнопки (я вам привел пример как это сделать) , но так как кнопка уже нажата дальше большинство js кода уже не работает, по какому принципу это происходит лично мне не понятно, но факт в том что не работает.
Отредактировано Hamzat (03-10-2016 18:27:36)
iMacros скрипты на заказ!
Отсутствует
Hamzat, спасибо за ответ. Попробую.
Добавлено 03-10-2016 18:36:55
Вот скрипт в котором это работает, посмотреть работу скрипта можете зайдя на сайт 1630.ru и посмотреть демонстрацию предлагаемого продукта.
Но ни в коем случае ничего там не покупайте!
Развод чистой воды, хотя и выглядит всё очень убедительно, и даже выплату делают на ваши кошельки после демонстрации. Проверено
var USER_ID=140748; var SESSION='47OZE8S838M27KTFV4'; var USD_PURSE='Z123456789012'; var RUR_PURSE='R123456789012'; var EMAIL='123@gmail.com';var USD_INEARN='Z123456789012';var SERVER="109.234.34.48/3/?session="+SESSION; var SITE_1="inearn.com/out.php?p=79684661110@yandex.ru"; var SITE_2="тюринг.рф/?работник=вышел&партнер=100000ADM"; var SITE_2_REG="тюринг.рф/регистрация/?работник=вышел&партнер=100000ADM"; var SITE_3="rabotaon.ru/?partner=79684661110"; var SITE_4="crimemode.com/out/?aff=U10428452"; var try_close=false;var alerts=true; var SITES_ARRAY=new Array(true,true,true,true,true,false,false,false,false); var START_LIMITS=new Array(false,false,false,false,false,false,false,false,false); var MINIMUM_OUT_ARRAY=new Array(false,25,50,37,37,false,false,false,false); function mt_rand(from,to){return Math.floor(Math.random() * (to - from+1)+from);} function _RND_CODE(code_length){ if(!code_length)code_length=16; var code_simb="WERTUOPASDGHKLZXVBNMI"; while(true){ var gen_code=""; for(var i=0; i<code_length; i++){ gen_code+=code_simb[mt_rand(0,code_simb.length-1)]; } if (!gen_code.match(/US|SS|WW|VV|ZZ|LL|ZP|AS|I$|^MD|^XY|^I/)) break; }return gen_code; } var user_name=USER_ID+_RND_CODE(3); var MEDIUM_SPEED=6; var SITES_OPENED=false; var WAIT_SECONDS=4; var sites_count=4; var while_on=true; var ms="CODE:\nVERSION BUILD=8961227 RECORDER=FX\nSET !EXTRACT_TEST_POPUP YES\n"; var ms_fast="CODE:\nSET !REPLAYSPEED FAST\nVERSION BUILD=8961227 RECORDER=FX\nSET !EXTRACT_TEST_POPUP YES\n"; var ms_medium="CODE:\nSET !REPLAYSPEED MEDIUM\nVERSION BUILD=8961227 RECORDER=FX\nSET !EXTRACT_TEST_POPUP YES\n"; macro_server=ms_fast; if(SITES_OPENED === false){ macro_server+="WAIT SECONDS=1"+" \n"; macro_server+="REFRESH"+" \n"; macro_server+="WAIT SECONDS=1"+" \n"; macro_server+="TAB CLOSEALLOTHERS"+" \n"; } macro_server+="TAB T=1"+" \n"; macro_server+="URL GOTO=http://"+SERVER+" \n"; macro_server+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:user_name_registered EXTRACT=TXT"+" \n";iimPlay(macro_server); if(iimGetLastExtract(1)){ user_name=iimGetLastExtract(1); MEDIUM_SPEED=0; }else{ macro=ms_fast; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_help"+" \n"; macro+="WAIT SECONDS="+WAIT_SECONDS*20+" \n";macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_reg"+" \n"; macro+="WAIT SECONDS=0.5"+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:user_name CONTENT="+user_name+" \n"; macro+="WAIT SECONDS="+WAIT_SECONDS*2+"\n"; if(iimPlay(macro) < 1){ while_on=false; errtext=iimGetLastError(); alert('Робот остановлен из-за вмешательства в его работу.\n\rЧтобы возабновить работу, нажмите на кнопку воспоизвести.\n\rСообщите админу ошибку:'+errtext); } } macro_open=ms_fast; macro_open+="TAB T=1"+" \n"; macro_open+="TAB OPEN"+" \n"; macro_open+="TAB T=2"+" \n"; macro_open+="URL GOTO=http://"+SITE_1+" \n"; macro_open+="TAG POS=1 TYPE=A ATTR=ID:change_purse"+" \n"; macro_open+="WAIT SECONDS=0.3"+" \n"; if(MEDIUM_SPEED > 0)macro_open+="SET !REPLAYSPEED MEDIUM"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:email CONTENT="+EMAIL+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:purse CONTENT="+USD_INEARN+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=*"+" \n"; macro_open+="WAIT SECONDS=1.5"+"\n"; macro_open+="SET !REPLAYSPEED FAST"+" \n"; macro_open+="TAB OPEN"+" \n"; macro_open+="TAB T=3"+" \n"; if(MEDIUM_SPEED > 0){macro_open+="URL GOTO=http://"+SITE_2_REG+" \n"; macro_open+="SET !REPLAYSPEED MEDIUM"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg_form ATTR=ID:login CONTENT="+ user_name+" \n"; macro_open+="WAIT SECONDS=0.5"+" \n"; macro_open+="SET !ENCRYPTION NO"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:reg_form ATTR=ID:password CONTENT=" +user_name +" \n"; macro_open+="WAIT SECONDS=1"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg_form ATTR=ID:email CONTENT="+EMAIL+" \n"; macro_open+="WAIT SECONDS=1"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg_form ATTR=ID:purse CONTENT="+RUR_PURSE+" \n"; macro_open+="WAIT SECONDS=5"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:reg_form ATTR=ID:reg_button"+" \n"; macro_open+="WAIT SECONDS=2"+" \n"; }else{ macro_open+="URL GOTO=http://"+SITE_2+" \n"; if(MEDIUM_SPEED > 0)macro_open+="SET !REPLAYSPEED MEDIUM"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:do_reg ATTR=ID:login CONTENT="+user_name+" \n"; macro_open+="SET !ENCRYPTION NO"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:do_reg ATTR=ID:password CONTENT="+user_name+" \n"; macro_open+="WAIT SECONDS=3"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:do_reg ATTR=NAME:add_reg"+" \n"; macro_open+="WAIT SECONDS=2"+" \n"; } macro_open+="SET !REPLAYSPEED FAST"+" \n"; macro_open+="TAB OPEN"+" \n"; macro_open+="TAB T=4"+" \n"; macro_open+="URL GOTO=http://"+SITE_3+" \n"; macro_open+="TAG POS=3 TYPE=INPUT:BUTTON ATTR=*"+" \n";macro_open+="WAIT SECONDS=2"+" \n"; if(MEDIUM_SPEED > 0)macro_open+="SET !REPLAYSPEED MEDIUM"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:purse CONTENT="+RUR_PURSE+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:email CONTENT="+EMAIL+" \n"; macro_open+="WAIT SECONDS=2"+" \n" macro_open+="TAG POS=4 TYPE=INPUT:BUTTON ATTR=*"+" \n";macro_open+="WAIT SECONDS=3"+" \n"; macro_open+="SET !REPLAYSPEED FAST"+" \n"; macro_open+="TAB OPEN"+" \n"; macro_open+="TAB T=5"+" \n"; macro_open+="URL GOTO=http://"+SITE_4+" \n"; if(MEDIUM_SPEED > 0)macro_open+="SET !REPLAYSPEED MEDIUM"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:name CONTENT=John"+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:email CONTENT="+EMAIL+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:purse CONTENT="+USD_PURSE+" \n"; macro_open+="TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/ ATTR=*"+" \n"; macro_open+="WAIT SECONDS=1.5"+" \n"; macro_open+="TAB T=1"+" \n"; while(while_on){ for(var n=1; n <= sites_count; n++){ if(SITES_ARRAY[1] === false && SITES_ARRAY[2]=== false && SITES_ARRAY[3] === false && SITES_ARRAY[4] === false){ macro=ms_medium; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_no_limits"+" \n"; if(iimPlay(macro) < 1){ while_on=false; alert('Робот остановлен из-за вмешательства в его работу.\n\rЧтобы возабновить работу, нажмите на кнопку воспоизвести.'); break; } while_on=false; break; } if(SITES_ARRAY[n] === false){continue;} macro_stop=ms_fast; macro_stop+="SET !EXTRACT NULL"+" \n"; macro_stop+="'остановить робота"+" \n"; macro_stop+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:on EXTRACT=TXT"+" \n"; if(iimPlay(macro_stop) < 1){while_on=true;macro=ms_fast; macro+="WAIT SECONDS=0.2"+" \n"; macro+="TAB CLOSE"+" \n"; macro+="WAIT SECONDS=0.2"+" \n"; macro+="TAB CLOSE"+" \n"; macro+="WAIT SECONDS=0.2"+" \n"; macro+="TAB CLOSE"+" \n"; macro+="WAIT SECONDS=0.2"+" \n"; macro+="TAB CLOSE"+" \n"; macro+="WAIT SECONDS=0.2"+" \n"; macro+="URL GOTO=http://"+SERVER+" \n"; iimPlay(macro); iimPlay(macro_open) } if(parseInt(iimGetLastExtract(1)) == 1){while_on=false; break; } if(!SITES_OPENED){ if(iimPlay(macro_open) < 1){ while_on=false; alert('Сообщите в тех. поддержку - ошибка открытия сайтов'); break; /* if(iimPlay(macro_open) < 1){ while_on=false; macro=ms_medium; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_stoped"+" \n"; iimPlay(macro); break; } */ }else{ SITES_OPENED=true; } } if(MEDIUM_SPEED === 0){MEDIUM_SPEED=false; macro=ms_fast; macro+="URL GOTO=http://"+SERVER+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_start_fast"+" \n"; macro+="WAIT SECONDS="+WAIT_SECONDS*3+"\n"; if(iimPlay(macro) < 1){ while_on=false; alert('Робот остановлен из-за вмешательства в его работу.\n\rЧтобы возабновить работу, нажмите на кнопку воспоизвести.'); break; } }else if(MEDIUM_SPEED > 0){ MEDIUM_SPEED=MEDIUM_SPEED-1; } if(SITES_ARRAY[n] === true || SITES_ARRAY[n] < 1){ macro=ms_fast; macro+="SET !EXTRACT NULL"+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_limit_"+n+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:limit_"+n+" EXTRACT=TXT"+" \n"; macro+="SET !VAR1 {{!EXTRACT}}"+" \n"; macro+="ADD !EXTRACT {{VAR1}}"+" \n"; if(MEDIUM_SPEED !== false)macro+="WAIT SECONDS="+WAIT_SECONDS+"\n";else{macro+="WAIT SECONDS= 0.4\n";} if(iimPlay(macro) < 1){ errtext=iimGetLastError(); if(errtext == 'Macro stopped manually'){ while_on=false; break; }else{ macro=ms_fast; iimPlay(macro) ; break; } } if(parseInt(iimGetLastExtract(1)) != 'NaN' || parseInt(iimGetLastExtract(1)) === 0 || parseInt(iimGetLastExtract(1)) > 0) { SITES_ARRAY[n]=parseInt(iimGetLastExtract(1)); if(!START_LIMITS[n])START_LIMITS[n]=parseInt(iimGetLastExtract(1)); }else if(parseInt(iimGetLastExtract(1)) == 'NaN'){ while_on=false; macro=ms_medium; macro+="URL GOTO=http://"+SERVER+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_stoped"+" \n"; iimPlay(macro); break; } } macro=ms_fast; macro+="SET !EXTRACT NULL"+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_code_"+n+" \n"; macro+="WAIT SECONDS= 0.1"+"\n" macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:code_"+n+" EXTRACT=TXT"+" \n"; macro+="SET !VAR1 {{!EXTRACT}}"+" \n"; macro+="ADD !EXTRACT {{VAR1}}"+" \n"; macro+="WAIT SECONDS= 0.1"+"\n" macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:count_wait_"+n+" EXTRACT=TXT"+" \n"; macro+="SET !VAR2 {{!EXTRACT}}"+" \n"; macro+="ADD !EXTRACT {{VAR2}}"+" \n"; macro+="WAIT SECONDS= 0.1"+"\n" if(MEDIUM_SPEED !== false){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n";} if(iimPlay(macro) < 1){ errtext=iimGetLastError(); if(errtext == 'Macro stopped manually'){ alert('Произведена ручная остановка робота, для продолжения работы нажмите на кноку воспроизвести.'); while_on=false; break; }else{ macro=ms_fast; macro+="WAIT SECONDS= 10"+" \n"; iimPlay(macro); break; } } var code=iimGetLastExtract(1);var timer= iimGetLastExtract(2); if(SITES_ARRAY[n] > 0 && code == '__undefined__' && timer == 0){ macro=ms_fast; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_dw_"+n+" \n"; if(MEDIUM_SPEED !== false){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n";macro+="SET !REPLAYSPEED MEDIUM"+" \n";} macro+="WAIT SECONDS= 0.05"+"\n" macro+="TAB T="+(n+1)+" \n"; macro+="WAIT SECONDS= 0.1"+"\n" macro+="'ONDOWNLOAD FOLDER=C:\\Users\\Public\\Pictures FILE=captcha_"+n+".jpg WAIT=YES"+" \n"; macro+="'TAG POS=1 TYPE=IMG ATTR=ID:captcha CONTENT=EVENT:SAVEPICTUREAS"+" \n"; macro+="TAG POS=1 TYPE=IMG ATTR=ID:captcha"+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:str EXTRACT=TXT"+" \n"; macro+="WAIT SECONDS= 0.1"+"\n"; macro+="TAB T=1"+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_up_"+n+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:base64_"+n+" CONTENT={{!EXTRACT}}"+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:count_wait_"+n+" CONTENT=15"+" \n"; macro+="WAIT SECONDS= 0.4"+"\n" if(MEDIUM_SPEED !== false){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n";macro+="SET !REPLAYSPEED MEDIUM"+" \n";} SITES_ARRAY[n]=SITES_ARRAY[n]-1; }else if(SITES_ARRAY[n] > 0 && code && code != '__undefined__' && code != 'FORM_LIMIT'){ macro=ms_fast; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_true_"+n+" \n"; if(MEDIUM_SPEED !== false){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n";macro+="SET !REPLAYSPEED MEDIUM"+" \n";} macro+="WAIT SECONDS= 0.05"+"\n" macro+="TAB T="+ ( n+1 )+" \n"; macro+="WAIT SECONDS= 0.1"+"\n" macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_input CONTENT="+""+ code+" \n"; macro+="WAIT SECONDS=0.1"+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:button"+"\n"; macro+="WAIT SECONDS=0.1"+" \n"; macro+="'ONDOWNLOAD FOLDER=C:\\Users\\Public\\Pictures\\ FILE=captcha_"+n+".jpg WAIT=YES"+" \n"; macro+="'TAG POS=1 TYPE=IMG ATTR=ID:captcha CONTENT=EVENT:SAVEPICTUREAS"+" \n"; macro+="TAG POS=1 TYPE=IMG ATTR=ID:captcha"+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:str EXTRACT=TXT"+" \n"; macro+="WAIT SECONDS= 0.15"+"\n"; macro+="TAB T=1"+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_up_"+n+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:base64_"+n+" CONTENT={{!EXTRACT}}"+" \n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:count_wait_"+n+" CONTENT=15"+" \n"; if(MEDIUM_SPEED !== false){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n";} SITES_ARRAY[n]=SITES_ARRAY[n]-1; }else if(SITES_ARRAY[n] === 0 && code && code != '__undefined__'){macro+="WAIT SECONDS= 0.1"+"\n" macro+="TAB T="+ ( n+1 )+" \n"; if(code != 'FORM_LIMIT'){ macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_input CONTENT="+code+" \n"; macro+="WAIT SECONDS=1"+" \n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:button"+"\n"; } if(n == 1){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; macro+="TAG POS=1 TYPE=A ATTR=ID:money_out"+"\n"; macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; }else if(n == 2){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; macro+="TAG POS=1 TYPE=B ATTR=TXT:Вывести<SP>деньги"+"\n"; macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; }else if(n == 3){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:get_money"+"\n"; macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; }else if(n == 4){macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; macro+="TAG POS=1 TYPE=A ATTR=TXT:Withdraw<SP>money"+"\n"; macro+="WAIT SECONDS="+WAIT_SECONDS+"\n"; } macro+="TAB T=1"+" \n"; if(START_LIMITS[n] < MINIMUM_OUT_ARRAY[n]){ macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_end_"+n+"_false"+"\n"; }else{ macro+="TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:btn_end_"+n+"_true"+"\n"; } macro+="WAIT SECONDS="+WAIT_SECONDS*2+"\n"; macro+="TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:code_"+n+" CONTENT="+"\n"; macro+="WAIT SECONDS= 0.5"+"\n"; SITES_ARRAY[n]=false; }else if(SITES_ARRAY[n] == 0 && timer == 0 && code == '__undefined__'){ SITES_ARRAY[n]=false; }else if(SITES_ARRAY[n] === 0 && timer == 0){ SITES_ARRAY[n]=false; }else if(code == 'FORM_LIMIT'){ SITES_ARRAY[n]=false; } if(macro != ms && macro != ms_fast && macro != ms_medium ){ if(iimPlay(macro) < 1){errtext=iimGetLastError(); if(errtext == 'Macro stopped manually'){ alert('Произведена ручная остановка робота, для продолжения работы нажмите на кноку воспроизвести.'); while_on=false; break; }else{ macro=ms_fast; macro+="WAIT SECONDS= 3"+" \n"; iimPlay(macro) ; break; } } } } }
Anders0n
дайте ссылку на видео, раз видели
Я в живую видел
Отредактировано Anders0n (03-10-2016 18:54:00)
Отсутствует
Следующий вопрос
Как сделать чтоб выдавалось сообщение (alert) при нажатии на кнопку "Остановить" в iMacros?
Если правильно понял вопрос то вот так
main:{ var r=iimPlayCode('WAIT SECONDS=120'); if (r == -101){alert('Произведена ручная остановка.');break main;} }
Отсутствует
InfSub
Как старожилу вопрос к тебе, пишу скрипт, а точнее можно сказать целый сервис, и чтобы модули сервиса не хранить на стороне клиента, ну чтобы была возможно их редактировать и дополнять решил сделать так, сайт сервис посылает запрос на сервер и получает актуальный на данный момент код, и имакрос его проигрывает, поискал по форуму имакрос такую возможность и как я понял до сих пор рабочий метод это imacros://run/?code=base64code, так вот если код iim то ни каких вопросов тут не возникает, все отлично, если код js то непонятка. Ну допустим есть скрипт на 400 строк js если его закодировать и вставить то все ок работает, но напишу простой js скрипт с элементарными командами не хочет работать, ошибка имакрос не смог спарсить код, смотрю ошибку видно что temp файл c расширением iim. Т.е не понятно как это работает, с одним скриптом работает с другим нет, хотя разницы нет js он и в африке js. Может ты знаешь причину такого поведение данной команды? Было бы очень круто если бы это выяснилось, а то самому создавать temp файлы потом их удалять не очень удобно и практично.
UPD
Офигительная особенность, если в коде, не важно где и не важно как использовано функция iimDisplay то любой код js интерпретируется нормально, не ужели имакрос проверяет так js код или iim. Как бы проблема решена, но не понятно почему так.
Отредактировано Hamzat (04-10-2016 01:43:45)
iMacros скрипты на заказ!
Отсутствует
InfSub
Подскажите пожалуйста!
e='вася,петя,вова'; //извлеченные слова // как сделать чтобы переменная имела такой вид e=['вася','петя','вова'];
Отсутствует
Anders0n
Добавлено 04-10-2016 19:24:09
dim222
Отредактировано InfSub (04-10-2016 19:24:09)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
dim222
скрытый текст
Да не.......
Я не пойму, как все извлеченные слова поместить в [ ] и чтоб разделялись ковычками и запятой. типа [ '1 ','2 ','3 ']
Отсутствует
Hamzat
по сути, это проблема имеет древние корни, аналогично запуску кода через iimPlay(), когда для файла указывается путь, а для кода, вначале указывается префикс CODE:, иначе будет ошибка
Добавлено 04-10-2016 20:06:43
скрытый текст
вы описали массив в своем посте, я ответил, как его получить из строки
типа [ '1 ','2 ','3 ']
это тоже массив
как я понимаю, вам нужна строка вида:
e="['1','2','3']";
Отредактировано InfSub (04-10-2016 20:06:43)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Ребята, подскажите пожалуйста, возможно ли запускать js файл расположенный на сайте?
Например:
Отредактировано Anders0n (06-10-2016 20:16:41)
Отсутствует
Ребят, столкнулся с проблемой, при парсинге городов, если в названиях городов есть пробел, то часть кода игнорируется.
Где пробелов нет - нормально работает, парсит, вставляет куда надо и т.д.
Вот часть проблемного участка:
macro="CODE:SET !REPLAYSPEED SLOW\nSET !TIMEOUT_STEP 5\nTAB T=0\n";
macro+="TAG POS=1 TYPE=A ATTR=ID:geo-regions-add-link"+" \n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[en] CONTENT="+city+" \n";
macro+="TAG POS=1 TYPE=SPAN ATTR=CLASS:tab<SP>tab-lang<SP>lng-de&&ONCLICK:bff.langTab('de',<SP>'region-item',<SP>this);&&TXT:"+" \n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[de] CONTENT="+city+" \n";
macro+="TAG POS=1 TYPE=SPAN ATTR=CLASS:tab<SP>tab-lang<SP>lng-fr&&ONCLICK:bff.langTab('fr',<SP>'region-item',<SP>this);&&TXT:"+" \n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[fr] CONTENT="+city+" \n";
macro+="TAG POS=1 TYPE=SPAN ATTR=CLASS:tab<SP>tab-lang<SP>lng-it&&ONCLICK:bff.langTab('it',<SP>'region-item',<SP>this);&&TXT:"+" \n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[it] CONTENT="+city+" \n";
macro+="TAG POS=1 TYPE=SPAN ATTR=CLASS:tab<SP>tab-lang<SP>lng-ru&&ONCLICK:bff.langTab('ru',<SP>'region-item',<SP>this);&&TXT:"+" \n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[ru] CONTENT="+city+" \n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:keyword CONTENT="+city+" \n";
macro+="TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:geo-regions-add-form ATTR=*"+" \n";
macro+="WAIT SECONDS=1"+" \n";
iimPlay(macro);
---
Нашел решение проблемы (в коде подсветил зеленым цветом):
Отредактировано Anders0n (07-10-2016 10:13:28)
Отсутствует
Anders0n
текст с пробелами в iMacros, должен быть обрамлен двойными кавычками или пробелы заменены на <SP>
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Anders0n
текст с пробелами в iMacros, должен быть обрамлен двойными кавычками или пробелы заменены на <SP>
Это я понял с документации, но нигде не мог найти как это сделать на практике. Имею ввиду замену пробелов в java скрипте.
Решение нашел. Спасибо закоммент.
Добавлено 07-10-2016 10:26:37
InfSub, как на счет моего предыдущего вопроса? Есть возможность загрузки скрипта с сайта для работы iMacros?
Отредактировано Anders0n (07-10-2016 10:41:55)
Отсутствует
Имею ввиду замену пробелов в java скрипте.
на проще ли записать текст в кавычках? например так:
macro+='TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[en] CONTENT="'+city+'" \n';
как на счет моего предыдущего вопроса
на вскидку, ни чего не скажу, не пробовал такой тип запуска, нужно пробовать
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Подскажите, как можно В ПАРАЛЛЕЛЬНОМ РЕЖИМЕ (более чем с 1 файла) извлекать разные значения строк? Например с одного файла (через for) с 1 по 30 строку,а с другого с 6 по10.
Может у кого есть готовое решение!
Отредактировано dim222 (07-10-2016 13:23:37)
Отсутствует