Правила оформления сообщений в данном топике:
Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [spoiler][noindex]http://адрес_сайта/название_страницы[/noindex][/spoiler]
Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler][code]ваш код[/code][/spoiler]
или выложите на сайт «Pastebin».
При размещении объемных материалов, используйте тег "Spoiler" - [spoiler]ваш текст[/spoiler]
или выложите на сайт «Pastebin».
Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [spoiler][img]http://ссылка_на_изображение[/img][/spoiler]
.
«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон
«Не каждый вопрос заслуживает ответа.»
Сайрус
Отсутствует
Вовик
iimPlayCode('TAG POS=1 TYPE=TD ATTR=TXT:*Ректор* EXTRACT=TXT'); var r=iimGetLastExtract().match(/ректор:(?:[\s][а-я]+){2,3}/i).pop().split(': ').pop(); alert(r);
Отредактировано InfSub (02-03-2016 12:12:58)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
vitoff пишетпосле которого закрывается текущая (первая) вкладка. В итоге открытой остаётся вторая вкладка - страница подтверждения публикации в твитере. В общем не то
скрытый текстА ну тогда тебе наоборот нужно закрыть все вкладки, кроме текущей.
Предложенный вами код работает так же, как и мой - через раз. Первый раз всё проходит нормально, а второй раз, после клика, запускается таймаут 60 сек и вкладка закрывается после него.
Код ошибки между шагами - 802. Возможно, эта ошибка возникает из-за того, что imacros не успевает загрузить страницу, которая открывается во второй вкладке, так как его тут же перебрасывает на первую. Я не знаю, есть ли такие команды, которые заставят/запретят imacros ждать окончания загрузки страницы, может они помогут?
Отсутствует
есть ли такие команды, которые заставят/запретят imacros ждать окончания загрузки страницы, может они помогут?
SET !TIMEOUT_PAGE x - время ожидания загрузки страницы (знач по умолчанию 60)
SET !TIMEOUT_STEP x - время ожидания загрузки элемента на странице (знач по умолчанию 10)
SET !ERRORIGNORE YES - игнор ошибок (например, игнорирование ошибки о том что страница не загрузилась, при использовании timeout)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
vitoff
читаем фак по имакросу на форуме, там есть описание, как имакрос работает с вкладками, в том числе из js
Если вы об этом: https://forum.mozilla-russia.org/viewto … 34#p682034, информация оказалась полезной. Спасибо.
Отсутствует
var k; for (k=1;k<=1;k++){ iimPlayCode('ищет истину'); //Не должен переходить дальше пока не найдёт истину. if(u<0){ } } for (x=1;x<=1;x++){ iimPlayCode('.....'); var i,t1=1,t2=1,t3=1; for(i=0; i<1; t1++,i++){ if(t2>w)t2=1; if(t3>f)t3=1; iimPlayCode('......'); t3++,t2++;} }
Отсутствует
Подскажите пожалуйста,как в js добавить в EXTRACT URL страницы?В iim работает стабильно,а вот в js не хочет.Пробую так:
Отсутствует
Подскажите пожалуйста как сделать проверку условий в переменной K
Я делаю так:
function Istina(){ iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n "Ищет истину" EXTRACT=TXT'); } Istina(); for(;iimGetLastExtract() == '#EANF#';Istina()){}
Добавлено 02-03-2016 17:14:49
Доброго времени суток!!! И снова я к вам с проблемой:скрытый текстКак в js, после загрузки http://videochart.net/video/6j397.39222 … 914f03e092 страницы воспроизвести видео?Заранее благодарен.
Возможно такое? Если да, то как?
Отредактировано stars1981 (02-03-2016 17:14:49)
Я, как ангел!!! =D
Отсутствует
Gergi
}
...
а вот в js не хочет
iimPlayCode('SET !EXTRACTADD {{!URLCURRENT}}'); url=iimGetLastExtract(); alert(url);
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Хотя, если я этот же адрес imacros://run/?m=#Current.iim вставляю в адресную строку и перехожу по нему, то скрипт начинает запускаться и работать (на мозиле 3.6).
Подскажите как запускать скрипты в браузерах версий 3.6 при запуске самого браузера, то есть через планировщик задач?
Просто мне надо , чтоб в определенное время запускался браузер и в нём сразу же запускался скипт.
А то получается, что на более поздних версиях браузера так работает запуск скрипта, а на 3.6 нет. Чебез батник пробовал, тоже не запускается скрипт. Что ещё можно сделать? Как запускать скрипт в нужное время вместе с браузером (портабле) 3.6?
Отредактировано dvitkovs (03-03-2016 01:04:32)
Отсутствует
dvitkovs
Запуск из батника
@echo off start "СТАРТ МАЗИЛКИ" "D:\Firefox-1.exe" http://fmacros.ru/launcher.html?m=скрипт.js
Отредактировано PRESIDENT (03-03-2016 01:02:35)
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
dvitkovs
скрытый текстЗапуск из батника
Выделить кодКод:
@echo off start "СТАРТ МАЗИЛКИ" "D:\Firefox-1.exe" http://fmacros.ru/launcher.html?m=скрипт.js
Благодарю! Так всё работает как надо.
Отсутствует
vitoff пишетесть ли такие команды, которые заставят/запретят imacros ждать окончания загрузки страницы, может они помогут?
SET !TIMEOUT_PAGE x - время ожидания загрузки страницы (знач по умолчанию 60)
SET !TIMEOUT_STEP x - время ожидания загрузки элемента на странице (знач по умолчанию 10)
SET !ERRORIGNORE YES - игнор ошибок (например, игнорирование ошибки о том что страница не загрузилась, при использовании timeout)
Игнором пользовался и раньше, а вот эта штука SET !TIMEOUT_PAGE x очень помогла. Всё как бы работает, но остались вопросы.
В общем, мне нужно сделать рандомную паузу. Делаю так:
SET !VAR1 EVAL(\"var randomNumber=Math.random() * (320 - 310) + 310; randomNumber;\") SET !TIMEOUT_PAGE 10 WAIT SECONDS={{!VAR1}} следующая команда...
На решение этой проблемы, напрашиваются два варианта:
1. Сделать рандомным TIMEOUT_PAGE
2. Продолжить выполнение WAIT SECONDS после обновления страницы
Как реализовать второй вариант, вообще не представляю. Первый пробовал так:
SET !VAR1 EVAL(\"var randomNumber=Math.random() * (20 - 10) + 10; randomNumber;\") SET !TIMEOUT_PAGE {{!VAR1}} WAIT SECONDS=300 следующая команда...
В целом, я знаю как решить эту задачу - можно поставить короткую рандомную паузу после обновления страницы (перед следующей командой). Но хотелось бы метод поэлегантнее.
Отредактировано vitoff (03-03-2016 17:21:51)
Отсутствует
vitoff
При чём тут это время загрузки страницы TIMEOUT_PAGE, если тебе просто рандомная пауза нужна.
И пиши уже на JS, хватит этого извращения на iim.
s=Math.floor(Math.random()*100);
iimPlayCode('WAIT SECONDS='+s);
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
И пиши уже на JS, хватит этого извращения на iim.
Я пишу на .js:
pauseLong = 'CODE:SET !VAR2 EVAL(\"var randomNumber=Math.random() * (320 - 310) + 310; randomNumber;\")\n'; pauseLong += 'SET !TIMEOUT_PAGE 10\n'; pauseLong += 'WAIT SECONDS={{!VAR2}}\n';
При чём тут это время загрузки страницы TIMEOUT_PAGE
Если убрать TIMEOUT_PAGE, то при обновлении страницы он всё равно будет инициирован со значением по умолчанию (60сек), в результате чего, рандомная пауза будет проигнорирована и следующая команда начнёт выполнение не через 10 сек (как у меня), а через 60, что ещё хуже.
Объясню подробнее. На сайте (биткоин кран), после получения бонуса, идёт отсчёт 300сек, после чего страница автоматически обновляется и можно получить следующий бонус. И, как не крути, во время обновления страницы стартует TIMEOUT_PAGE - либо который задаю я, либо который по умолчанию. Несмотря на то, что я задаю в скрипте паузу, скажем в 500сек, после выполнения TIMEOUT_PAGE, команда WAIT SECONDS перестаёт выполнятся и из моих 500сек отсчитываются только 300...
Отсутствует
vitoff
Ещё раз, для особо одаренных.
При чём TIMEOUT_PAGE к паузе.
Я тебе дал готовый код, что ты ещё выдумываешь.
И ты сам проанализируй свой код, что за бредятина.
EVAL используется для запуска JS кода в iim-е
Ты уже в JS-е на кой эти извращения с эвалом.
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
При чём TIMEOUT_PAGE к паузе.
При том, что он прерывает паузу.
Я тебе дал готовый код, что ты ещё выдумываешь.
И где там диапозон от 310 до 320сек?
EVAL используется для запуска JS кода в iim-е
Так организован мой скрипт и это не преступление. Я предпочитаю макросы хранить в отдельных переменных и в технической части работать исключительно с переменными. Так проще разобраться в скрипте и адаптировать него для других нужд.
Отвечая на бредятину, если рандомное число будет генерироваться вне цикла (который работает только с переменными), это число сгенерируется только один раз и не будет переопределяться в дальнейшем, следовательно генерировать его нужно в самом макросе...
Отсутствует
Как в imacros извлечь ВСЕ ссылки со страницы, если у них одинаковое начало? При этом неизвестно, сколько их.
Или можно ли в imacros вызвать link gopher?
Добавлено 04-03-2016 01:45:15
Как запустить цикл, чтоб выполнялся до тех пор, пока находит нужный тег?
Отсутствует
И где там диапозон от 310 до 320сек?
Что попадёт в s при втором проходе
скрытый текст
На кой здесь вайл ????
Сделай эту паузу вообще одной строкой, я на несколько разнёс для наглядности, что такое рандом и что такое пауза.
Отредактировано PRESIDENT (04-03-2016 02:06:55)
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Подскажите пожалуйста,что конкретно означает данный код?
Отсутствует
borisenko1
Backend developer
PHP, JAVA, C#, Python
В личку только с серьёзными предложениями по заказу скриптов/программ.
Отсутствует
Что попадёт в s при втором проходе.
поместив генерацию рандомного числа в цикл, вы так ж получите каждый раз рандомное число, без eval()
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
А тебе как раз вайл нужен
Можно на примере? Есть страница с повторяющейся группой элементов. Через LOOP писал так
SET !EXTRACT_TEST_POPUP NO TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:"OBJECT-LINK FPM" EXTRACT=HREF TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:"OBJECT-LINK FPM" EXTRACT=TXT TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:"TEXT BB" EXTRACT=TXT TAG POS={{!LOOP}} TYPE=LI ATTR=CLASS:FMT* EXTRACT=TXT TAG POS={{!LOOP}} TYPE=LI ATTR=CLASS:SIZE* EXTRACT=TXT TAG POS={{!LOOP}} TYPE=LI ATTR=CLASS:CREATED_DATE* EXTRACT=TXT SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv
Отредактировано myscience (04-03-2016 10:34:00)
Отсутствует
myscience
Вам же привели схему работы while
как ее воплотить в жизнь, легко находится поиском по данной ветви форума, по слову while
в данном случае, правильнее использовать for()
var i,m='TAG POS={{MYVAR}} TYPE=A ATTR=CLASS:"OBJECT-LINK FPM" EXTRACT=HREF\nTAG POS={{MYVAR}} TYPE=A ATTR=CLASS:"OBJECT-LINK FPM" EXTRACT=TXT\nTAG POS={{MYVAR}} TYPE=DIV ATTR=CLASS:"TEXT BB" EXTRACT=TXT\nTAG POS={{MYVAR}} TYPE=LI ATTR=CLASS:FMT* EXTRACT=TXT\nTAG POS={{MYVAR}} TYPE=LI ATTR=CLASS:SIZE* EXTRACT=TXT\nTAG POS={{MYVAR}} TYPE=LI ATTR=CLASS:CREATED_DATE* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv'; for(i=1;iimPlayCode('TAG POS='+i+' TYPE=A ATTR=CLASS:"OBJECT-LINK FPM"')==1;i++){ iimSet('MYVAR',i); iimPlayCode(m); };
Отредактировано InfSub (04-03-2016 10:40:18)
Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox
на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!
Отсутствует
К сожалению, поиск мне совершенно не помог разобраться. Будьте добры, объясните, куда это вставить. Или же если это совсем долго, дайте ссылку на конкретную инструкцию.
unknown command: VAR, line 6 (Error code: -910)
Спасибо за понимание. Все мы когда-то только начинали.
UPD: Вставил все в js, но почему-то сначала переходит по ссылке, а надо ее только извлечь а не идти. Что-то нужно прописать в начале?
Отредактировано myscience (04-03-2016 11:15:29)
Отсутствует