Правила оформления сообщений в данном топике:
Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [spoiler][noindex]http://адрес_сайта/название_страницы[/noindex][/spoiler]
Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler][code]ваш код[/code][/spoiler]
или выложите на сайт «Pastebin».
При размещении объемных материалов, используйте тег "Spoiler" - [spoiler]ваш текст[/spoiler]
или выложите на сайт «Pastebin».
Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [spoiler][img]http://ссылка_на_изображение[/img][/spoiler]
.
«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон
«Не каждый вопрос заслуживает ответа.»
Сайрус
Отсутствует
InfSub
я пробовал как вы сказали но он вообще не робит
только если все строчки переделать в iimPlayCode()
for (a = 1; a <10; a++){ iimSet("a",a); var r = Math.random() * 8 + 1; var k = Math.random() * 52 + 1; var macro; macro = "CODE:"; macro += "SET !ERRORIGNORE YES" + "\n"; macro += "SET !REPLAYSPEED SLOW" + "\n"; macro += "TAG POS={{a}} TYPE=SPAN ATTR=class:usr<SP>emphased EXTRACT=TXT" + "\n"; macro += "SET !VAR3 {{!EXTRACT}}" + "\n"; macro += "SET !EXTRACT NULL" + "\n"; macro += "WAIT SECONDS=1" + "\n"; macro += 'TAG POS={{a}} TYPE=SPAN ATTR=class:"ic ic-msg __empty ic16"' + '\n'; iimPlayCode(macro) ; if(iimPlay('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"ПР"')>0) { iimPlayCode('BACK') ; //если слово найдено } else{ //если не найдено iimPlayCode(macro2) ; } ; var macro2; macro = "CODE:"; macro += "SET !ERRORIGNORE YES" + "\n"; macro += "SET !REPLAYSPEED SLOW" + "\n"; macro += "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT=Здравствуйте,<SP>{{!VAR3}}!" + "\n"; macro += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; macro += "SET !DATASOURCE C:\\Users\\ALLLLLLLLLLLLLLLLLLL\\Desktop\\phg\\odn.txt" + "\n"; macro += "SET !DATASOURCE_LINE "+ r +"" + "\n"; macro += "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT={{!COL1}}" + "\n"; macro += "WAIT SECONDS=1" + "\n"; macro += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; macro += "BACK" + "\n"; macro += "WAIT SECONDS="+ r +"" + "\n"; }
Отредактировано volchsek (19-09-2016 20:45:07)
Отсутствует
volchsek
перечитайте мое сообщение несколько раз, пока не поймете его полностью, разница между iimPlayCode() и iimPlay() - это самое меньшее из того, что вам нужно было исправить
разберитесь теперь с macro2 и его отсутствующим содержимым
воспользуйтесь, например функцией alert(macro2);
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Макрос извлекает текст такого формата 1,4,5,8 из страницы и сохраняет в текстовый документ в одну строку.
Сохраняет в кавычках "1,4,5,8" как одно целое.
Затем макрос должен их из документа брать поотдельности первую цифру, потом вторую и т.д.
Но это он не может сделать из-за кавычек. Если убрать кавычки всё нормально работает.Как сделать, чтобы при сохранении кавычки уберались?
Или как это можно сделать?
split() - решит все проблемы без изобретания велосипеда
Отсутствует
Всем привет. Полный ноль в кодинге. Лох. Но всё же нужно бывает превыше могу-посему спасайте комрады.
Задача такая: есть список в .txt файле, по строкам ссылки-нужно что бы он брал по одной и заходил. Вот что накидал.
CMDLINE !DATASOURCE C:\iMacros\Macros\Обучение\zapros.txt ADD !EXTRACT {{!COL1}} URL GOTO={{!COL1}}
Отредактировано Mur0veY (20-09-2016 23:04:42)
Отсутствует
volchsek
где пример того, что вы пробовали, я пока что вижу одни и те же ошибки на протяжении нескольких ваших постов
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
InfSub Но тут не работает getextract то есть имя извлеченное в var macro не передается в var macro 2
for (a = 1; a <10; a++){ iimSet("a",a); var extractedtext=iimGetLastExtract() var r = Math.random() * 8 + 1; var k = Math.random() * 52 + 1; var macro; macro = "CODE:"; macro += "SET !ERRORIGNORE YES" + "\n"; macro += "SET !REPLAYSPEED SLOW" + "\n"; macro += "TAG POS={{a}} TYPE=SPAN ATTR=class:usr<SP>emphased EXTRACT=TXT" + "\n"; macro += "SET !VAR3 {{!EXTRACT}}" + "\n"; //macro += "SET !EXTRACT NULL" + "\n"; macro += "WAIT SECONDS=1" + "\n"; macro += 'TAG POS={{a}} TYPE=SPAN ATTR=class:"ic ic-msg __empty ic16"' + '\n'; iimPlay(macro); if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"ПР"')>0){ //<--- Если найдена надпись, то выполняем то что в след. скобках, //если найдено iimPlayCode('BACK'); } else{ //если не найдено var macro2; macro2 = "CODE:"; macro2 += "SET !ERRORIGNORE YES" + "\n"; macro2 += "SET !REPLAYSPEED SLOW" + "\n"; macro2 += "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT=Здравствуйте,<SP>{{!VAR3}}!" + "\n"; macro2 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; macro2 += "SET !DATASOURCE C:\\Users\\ALLLLLLLLLLLLLLLLLLL\\Desktop\\phg\\odn.txt" + "\n"; macro2 += "SET !DATASOURCE_LINE "+ r +"" + "\n"; macro2 += "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT={{!COL1}}" + "\n"; macro2 += "WAIT SECONDS=1" + "\n"; macro2 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; macro2 += "BACK" + "\n"; macro2 += "WAIT SECONDS="+ r +"" + "\n"; iimPlay(macro2); } ; }
Отредактировано volchsek (20-09-2016 23:34:39)
Отсутствует
Пишет ошибку. Выручайте!
может вы приведете код ошибки?
код верный, только не понятно, на кой ляд нужна вторая строка, да еще и в таком варианте (ADD вместо SET)
Добавлено 20-09-2016 23:40:53
volchsek
вы считаете, что скрипт выполняется снизу вверх?
Отредактировано InfSub (20-09-2016 23:40:53)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
InfSub
Вот что пишет
Aborted: User pressed Stop button in iMacros sidebar., line: 1 (Error code: -101)
Тупо зависает на первой строке и стоит. Стопарю-пишет что выше.
Отсутствует
Mur0veY
версия iMacros и FF?
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
volchsek
уже, лучше
скрытый текст
2. включаем голову, уже не однократно говорилось, каждый запуск функции iimPlay() или iimPlayCode() - равносилен запуску отдельного макроса (iim-скрипта)
соответственно, что такое в вашем коде {{!VAR3}} ? mоткуда оно тут нарисовалось? Где вставка данных из переменной extractedtext в код второго макроса?
скрытый текстВыделить кодКод:
macro2 += "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT=Здравствуйте,<SP>{{!VAR3}}!" + "\n";
iMacros for Firefox 9.0.3
ставьте последнюю 8.х.х версию (ссылка на все версии есть в FAQ), 9 - сырая и не работает с русскими именами папок и файлов
Добавлено 20-09-2016 23:57:23
я ни чего не считаю сверху вниз не пашет
тогда как вы пытаетесь получить результат до выполнения кода?
как можно получить результат iimGetExtract() до того как вы выполнили iimPlay() ?
Отредактировано InfSub (20-09-2016 23:58:46)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
InfSub
Всё заработало!
Теперь шаг номер два.
в файле 300+ ссылок.
Нужно что бы он открывал их одну за одной в цикле.
Не сильно нагло ?
Отредактировано InfSub (20-09-2016 23:59:15)
Отсутствует
Mur0veY
так запустите цикл, кнопка "Воспр. (Цикл)" предварительно установив количество циклов (строк в файле) в окне "Макс:"
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Mur0veYтак запустите цикл, кнопка "Воспр. (Цикл)" предварительно установив количество циклов (строк в файле) в окне "Макс:"
Он одну и ту же ссылку гоняет тогда по кругу.
Отсутствует
InfSub
вы мне скажите как нужно правильно, а никак у меня
я вставил вместо var3 переменную extractedtext но куда саму переменную вставить не знаю
Отсутствует
Mur0veY
Значит у вас в коде где-то указано - брать из первой (или иной) строки
принудительно указывать номер строки требовалось только в старых версиях или при запуске из js
указать строку можно так:
CMDLINE !DATASOURCE C:\iMacros\Macros\Обучение\zapros.txt SET !DATASOURCE_LINE {{!LOOP}} URL GOTO={{!COL1}}
Отредактировано InfSub (21-09-2016 00:11:44)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
InfSub
удалено, избыточное цитирование
Бро от души-пока что не дышу на FF. Всё работает! Кармы тебе в авоську!
InfSub
Отредактировано InfSub (21-09-2016 00:21:37)
Отсутствует
volchsek
например, как-то так:
var a,m1,m2; m1 = "SET !ERRORIGNORE YES" + "\n"; m1 += "SET !REPLAYSPEED SLOW" + "\n"; m1 += "TAG POS={{a}} TYPE=SPAN ATTR=class:usr<SP>emphased EXTRACT=TXT" + "\n"; m1 += "SET !VAR3 {{!EXTRACT}}" + "\n"; m1 += "WAIT SECONDS=1" + "\n"; m1 += 'TAG POS={{a}} TYPE=SPAN ATTR=class:"ic ic-msg __empty ic16"' + '\n'; m2 = "SET !ERRORIGNORE YES" + "\n"; m2 += "SET !REPLAYSPEED SLOW" + "\n"; m2 += 'TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT="Здравствуйте, {{b}}!"' + "\n"; m2 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; m2 += "SET !DATASOURCE C:\\Users\\ALLLLLLLLLLLLLLLLLLL\\Desktop\\phg\\odn.txt" + "\n"; m2 += "SET !DATASOURCE_LINE {{c}}" + "\n"; m2 += "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT={{!COL1}}" + "\n"; m2 += "WAIT SECONDS=1" + "\n"; m2 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; m2 += "BACK" + "\n"; m2 += "WAIT SECONDS={{d}}" + "\n"; for (a = 1; a <10; a++){ iimSet("a",a); iimPlayCode(macro); if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"ПР"')>0){ //<--- Если найдена надпись, то выполняем то что в след. скобках, //если найдено iimPlayCode('BACK'); }else{ //если не найдено iimSet("b",iimGetLastExtract()); iimSet("c",Math.random() * 8 + 1); iimSet("d",Math.random() * 52 + 1); iimPlay(m2); }; };
Отредактировано InfSub (21-09-2016 00:27:22)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
Уважаемые. Можно ли вызывать один .js несколькими скриптами одновременно? Поправьте если ошибаюсь.
var Cc=Components.classes, Ci=Components.interfaces; var ab=Cc["@mozilla.org/moz/jssubscript-loader;1"].getService(Ci.mozIJSSubScriptLoader); ab.loadSubScript("file:///C:\\1.js");
iimPlayCode("URL GOTO=file://C:/1.js\nTAG POS=1 TYPE=HTML ATTR=* extract=txt \n"); var GlobalFunction=iimGetExtract(1); eval(GlobalFunction); Alerttt();
Отсутствует
добрый день.
есть рабочий макрос в JS
var macro; macro = "CODE:"; macro += "WAIT SECONDS=2" + "\n" macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[0] CONTENT=" + "\n" macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[1] CONTENT=" + "\n" macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[2] CONTENT=" + "\n" macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[0] CONTENT=+7<SP>(727)<SP>3546370" + "\n" macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[1] CONTENT=+7<SP>(747)<SP>788-80-90" + "\n" macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[2] CONTENT=+7<SP>(702)<SP>660-78-10" + "\n" macro += "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:new-form ATTR=*" + "\n" iimPlay("CODE:SET !ERRORIGNORE YES"); iimPlay("CODE:SET !ERRORCONTINUE YES"); iimPlay("CODE:FILTER TYPE=IMAGES STATUS=ON"); for(i=2; i<=500; i++){ iimPlay("CODE:URL GOTO=http://kolesa.kz/my/?tab=live&text=2402555&sort_by=date-asc&page="+i); for(ku=1; ku<=40; ku++){ iimPlay('CODE:TAG POS='+ku+' TYPE=A ATTR=TXT:Редактировать<SP>текст'); iimDisplay('выполнено '+ ((i-1)*40+ku) +' объявление № '+ ku) iimPlay(macro) iimPlay("CODE:URL GOTO=http://kolesa.kz/my/?tab=live&text=2402555&sort_by=date-asc&page="+i);}}
как его переписать в IIM.
прочитал но не понял как цикл делать.
подскажите пожалуйста.
InfSub
Отсутствует
stalker50
зачем делать из мерседеса - запорожец?
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
как сделать такое
проверяем на условие
если нет определенного слова ждем 1сек, если появилось то идем дальше
проверяем это условие (10 раз!)
после чего refrash
if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"пр')>0){ while (iimPlayCode('WAIT SECONDS=1')); if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"Сообщения"')>0){ } }
Отредактировано volchsek (22-09-2016 20:19:37)
Отсутствует