Страницы: 1
Доброго времени суток.
Есть такой код для поиска фрейма (взят из соседней темы про распознавание капчи):
for(w=1; w<=30; w++){ if(iimPlayCode('SET !REPLAYSPEED FAST\nSET !TIMEOUT_STEP 0\nFRAME F='+w+'\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>P" BUTTON=0')>0){ iimPlayCode('FRAME F='+w+'\nEVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="'+comment+'"'); iimPlayCode('FRAME F=0\nEVENT TYPE=CLICK SELECTOR="#thread-reply-form>P>BUTTON" BUTTON=0'); break;}}
InfSub, сначала он использовался в iim, но потом мне понадобилось переделать скрипт в js и просто скопировала содержимое eval. Этот кусок кода именно в js работал раньше.
Вот он в iim (в таком виде работает правильно):
SET COMMENT EVAL("var words = ['amazing','sweet']; var string = ''; string += words[parseInt(Math.random() * 25)]; string")
var arr = ["Яблоко", "Апельсин", "Груша", "Лимон"]; var rand = Math.floor(Math.random() * arr.length); alert( arr[rand] );
Здравствуйте. Почему-то перестал работать в iMacros данный код:
var words = ['слово1','слово2','слово3','итд','слово31']; var string = ''; string += words[parseInt(Math.random() * 30)]; string;
Ребят, не могу сообразить как сделать, чтобы счётчик i увеличивался с учётом первого цикла, где переменная z. Нужно, чтобы iMacros взял из файла 10 строк в первом цикле, затем продолжил брать - 11-ую и далее строки в последующих циклах
Как заставить iMacros кликнуть по координатам поля для ввода текста и затем ввести сам текст, если это поле находится во фрейме? Это вообще возможно?
EVENT TYPE=CLICK SELECTOR="HTML" POINT="(255,85)" EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="text"
Как бы, без лишних замочек определить номер?
https://forum.mozilla-russia.org/viewto … 74#p697874
Ребят, а можно подробнее про определение номера фрейма? Хотелось бы оставить макрос в формате iim, а не переделывать js. Но если без этого нельзя, то всё равно хочется узнать подробнее. В данном макросе циклы уже используются для смены аккаунтов.
Нашла вот такую конструкцию:
SET S "var doc = window.document; var elt = doc.createElement('input'); elt.type = 'hidden'; elt.id = 'myFrameNumber'; elt.value = window.frames.length; doc.body.appendChild(elt); undefined;" URL GOTO=javascript:{{S}} SET !EXTRACT_TEST_POPUP NO TAG POS=1 TYPE=INPUT ATTR=ID:myFrameNumber EXTRACT=TXT URL GOTO=javascript:{doc.body.removeChild(doc.getElementById("myFrameNumber"));undefined;} SET frameNumber {{!EXTRACT}} 'PROMPT {{frameNumber}}
kolshix
Привет,
тебе идея/задача перезапуска фаерфокса через определенное время ещё актуально ?[spoiler=На всякий случай вдруг сгодится.]Делаешь через определенное время, или через определенное число циклов, запуск батника и стоп скрипта(желательно)
В батнике такую конструкциюЖдем пару (5-10) сек
убиваем просец, фаерфокс taskkill /F /IM FirefoxPortable.exe
опять ждём пару (10-30) сек
И запускаем снова мазилку с параметрами, что бы в ней сразу стартанул нужный скрипт
start "РЕСТАРТ МАЗИЛКИ" "D:\FirefoxPortable.exe" imacros://run/?m=твой_скрипт.jsДля паузы используй команду слеп или если будет ругаться
то так
ping -n 1 -w 5000 192.168.254.254 >nul
где -w 5000 это пауза в миллисекундах 5000 = 5 сек[code]
…
SET pathToFirefox=D:\FAERFOX\
timeout /T 5 /NOBREAK
taskkill /F /IM FirefoxPortable.exe
timeout /T 20 /NOBREAK
START "РЕСТАРТ МАЗИЛКИ" %pathToFirefox%\FirefoxPortable.exe imacros://run/?m=тво
А как сделать, чтобы переменная изменялась в соответствии со счетчиком? Я вот вообще ноль. Помогите, пожалуйста. :(
set !var2 eval("if({{!loop}} == 1 || {{!loop}} == 2 || {{!loop}} == 3) 'логин1' || 'логин2' || 'ещё какой-то логин';") TAG POS=1 TYPE=INPUT:TEXT FORM=ID:login-form ATTR=ID:_username CONTENT={{!var2}}
Для размещения кода, используйте тег "Code" внутри тега "Spoiler"
InfSub
Подскажите, пожалуйста, как iMacros заставить дописывать данные в новую строку существующего csv файла, а не переписывать файл по новой?
Вот мне нужно каждый день, допустим, запускать макрос и брать определённые данные с сайта, которые потом записывать в новую строку.
Страницы: 1