iMacros for FireFox - общие вопросы, обсуждение возможностей (Часть 1)

Продолжение темы (часть 2)



Правила оформления сообщений в данном топике:

1a50e37cd460db106ba5ca4992038a53.jpg


  • Адрес сайта и страницы, на которой возникла проблема, размещается в тегах [spoiler][noindex]http://адрес_сайта/название_страницы[/noindex][/spoiler]

  • Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler][code]ваш код[/code][/spoiler]
    или выложите на сайт «Pastebin».
  • При размещении объемных материалов, используйте тег "Spoiler" - [spoiler]ваш текст[/spoiler]
    или выложите на сайт «Pastebin».
  • Размещать изображения в открытом виде. Для размещения скриншотов и других изображений, используйте тег "Spoiler" - [spoiler][img]http://ссылка_на_изображение[/img][/spoiler]
    .


«Можно ответить на любой вопрос, если вопрос задан правильно.»
Платон

«Не каждый вопрос заслуживает ответа.»
Сайрус

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

Отлично! :cool:
Спасибо огромное :) Очень уж удобная она для разных действий.

=> Обсуждение расширений и дополнений

Макрос создается, но не сохраняется и не редактируется. Поиск ничего не дает.
Кто нибудь решал эту проблему?
post-2411-1202481231.png

Лёха-Плёха
Лично я решил это удалением (напрочь) этого расширения.

Sergeys

решил это удалением

Это не решение. Чем заменил? Есть ли аналогичное расширение. Только на английском не предлагать. :)

Лёха-Плёха
после возни с этим расширением больше желания не возникало, поэтому я не знаю есть или нет, возможно и существует.

Решение проблемы...
post-2411-1202510449.png

Добавлено Sat Feb  9 01:51:19 2008 :
В путях не должно быть символов, отличных от латинницы.

Добавлено Sat Feb  9 01:55:21 2008 :
Просто в путях допускаются только латинские символы.

Лёха-Плёха
Вот ты и сам ответил на свою проблему :D

BagZilla пишет

Лёха-Плёха
Вот ты и сам ответил на свою проблему :D , а тем временем я:angel:

Да, но некоторые проблемы (не столь существенные) остались. Например, некоторые сообщения в попап окнах этого расширения выскакивают крякозябрами. Где это можно исправить?

В качестве отзыва об iMacros-е могу сказать то, что это расширение весьма и весьма ускоряет заполнение форм.

Расширение работает хорошо, но иногда выдает сообщение типа "Ошибка# 802, Сайт не отвечает (Таймаут)"

Видно что дело в кодировках, но где оно исправляется? Помогите пожалуйста.:whiteflag::cry:

Тоже вот макросы понадобились, скачал сначала этот сверхглюкавый иМакрос. Потом вспомнил, что когда-то пользовался расширением вполне себе нормальным для записи макросов. С большим трудом вспомнил его название (спасибо логам аськи) :) Оно больше для отладки сайтов, но можно и так пользоваться.

Selenium IDE
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

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

Skat
Спасибо за ссылку, попробую.
А иМакрос вроде потихонечку начинает исправляться, на днях обновился и крякозябры исчезли.

не работает :( не сохраняются макросы хоть путь и латиницей указал :(

Подскажите
где можно найти описание языка. или его название
на котором можно программировать imacros

подскажите, пожалуйста, возможно ли в макросе автоматического заполнения форм регистрации этим аддоном сделать так, чтобы в определенное поле вписалось не указанное вручную в скрипте значение, а рандомно сгенерированный набор, например, из 7 символов? есть ли такая команда в iMacros?

то есть, допустим, есть макрос, который при запуске регистрирует меня на сайте (ХХХ), с логином (YYY) и паролем (ZZZ) значения XXX, YYY, ZZZ - указаны мной в скрипте, в виде, например, для логина:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:register ATTR=NAME:username CONTENT=YYY

можно ли поправить эту строчку так, чтобы при работе макрос вписывал в это поле НЕ YYY, а 7 СЛУЧАЙНЫХ символов?

Hed-kun, наверное можно воспользоваться функцией рандом и приписывать каждый раз к логину и паролю рандомное число... рандом в iMacros есть, но как реализовать это пока не знаю :( слаб в языке программирования который использует iMacros :(

Вот тоже с проблемой столкнулся:
Вот страница:
http://vellev7.narod.ru/index.html

Там 3 кнопки, нужно чтобы iMacros нажимал на первую кнопку до тех пор пока не выйдет сообщение 'bolshe', затем нажимал ОК (закрывал сообщение) и нажимал на вторую кнопку до тех пор пока не выйдет сообщение 'bolshe', затем нажимал ОК (закрывал сообщение) и нажимал на третью кнопку до тех пор пока не выйдет сообщение 'bolshe', затем нажимал ОК (закрывал сообщение), на этом конец макроса.

Как такое можно сделать на iMacros?
Помогите пожалуйста.

strelok77, вот и я о том же, хз как этот рандом там реализован. мануала по  языку этому нигде найти не могу, перерыл уже кучу готовых скриптов в надежде найти там че-нить похожее на функцю рандома, но безрезультатно :(

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

И вообще, можно ли организовывать циклы?

22-10-2009 00:15:57

Hed-kun пишет

можно ли поправить эту строчку так, чтобы при работе макрос вписывал в это поле НЕ YYY, а 7 СЛУЧАЙНЫХ символов?

Почти рандомно ;) . Можно использовать !NOW
А рандомности в иМакросе вроде нет.

есть ли аналогичное дополнение?
желательно с ифом...
ну и чтобы могло парсить страничку, тыкать в линки итд...

Можно ли с помощью iMacros сделать так, чтобы он извлекал ссылку из исходного когда страницы и запускал эту ссылку? Например: мне надо скачать файл через depositfiles не ожидая 60 секунд, iMacros запускает ссылку на скачивание которая присутствует в исходном коде depositfiles.

:( Отказался от использования iMacros последних версий
есть проблемы с длительным воспроизведением скриптов :(  постоянно виснет,  иногда вешает firefox


я пользуюсь стабильной версией 6.3.1.1

а в каком топике можно обсудить написание скриптов в iMacros ??
просто тут проблема возникла,есть координаты и требуется,чтобы между кликами по ним,было рандомное время от 4 до 7 секунд. Не объясните,как это сделать?

iMacros может выполнять javascript-файлы, которые вызывают выполнение *.iim.
Может ли такой javascript посчитать количество открытых табов?

okkamas_knife, спасибо, работает!

Является ли wiki.imacros.net официальной документацией к iMacros? Поиск getBrowser по этой wiki ничего не даёт.
А в javascript такой функции нет, на сколько я знаю.

Здравствуйте. Можно ли сделать, чтобы дополнение iMacros воспроизводило ту же запись на другой странице сайта?

То есть записано было на одной странице сайта, а надо воспроизвести на другой странице. Разница лишь в адресах страниц.

Нажимаю воспроизвести, переходит на ту страницу, на которой было записано.

Pomidor, ничего не понятно, что вы хотели спросить.
Если нужно устанавливать значение переменных в iim-файле, то попробуйте команду SET.
Если у вас управление идёт через js, то пробуйте iimSet( '-var_EMAIL', 'my@email.ru' );

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

20-07-2010 22:36:17
Делаю одни и те же действия на похожих страницах сайта. Если записать на одной странице, то нельзя тоже самое воспроизвести на другой. Вот как сделать, чтобы записанная на одной странице срабатывало и на других подобных страницах?

Я решил так:
завожу управляющий js-файл с массивом url-адресов.
прохожу по циклу и задаю переменную - очередной адрес из массива.
в iim-файле вместо адреса подставляю эту переменную.

получается, что одни и те же действия будут выполняться на разных страницах.

Спасибо. Только вот у меня бывает, что повторить надо на этой же странице. Трудно всё автоматизировать.

axe, а ты что, на каком сайте автоматизируешь? Секрет?

Pomidor, если повторить надо на этой же странице, то в js-массив вбиваешь два одинаковых адреса подряд. Опять же не вижу проблемы, подробнее?
Я использую iMacros для тестирования web-сервиса. Там нужно выполнять несколько действий последовательно.
Думал использовать для авторегистрации в каталогах сайтов. Но пока нет времени.

Pomidor пишет

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

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

попробуйте всё-таки описать действия подробно, по пунктам. что происходит, в какой момент.

Pomidor пишет

страницы сайта, на котором я выполняю действия, листаются так, что с полосой загрузки ничего не происходит

а страницы открываются?

Pomidor пишет

и будет всё работать?

сказать определённо можно только одно. что правильный код будет правильно работать.

Pomidor пишет

А сначала записать, а потом убрать url можно?

iim-файлы лежат примерно в такой директории:
C:\Documents and Settings\user_name\Мои документы\iMacros\Macros
далее берёте какой-нибудь Notepad++ и правите всё, что считаете нужным.

а через "редактировать" в самой мозилле не пойдёт?

23-07-2010 23:56:29
наверное, в Notepad++ возможностей больше?

24-07-2010 00:03:40
открыл через Notepad++ Разницу не почувствовал в коде. Может, больше возможностей в редактировании?

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

и, на мой взгляд, это удобно - в notepad открыл один раз и редактируешь, и в браузере сразу запускаешь.
нет надобности кликать каждый раз на открыть/закрыть.

24-07-2010 00:11:17
можно использовать любой другой текстовый редактор. думаю, что специально заточенных под iMacros просто не бывает

Pomidor пишет

3 строку надо удалить? Как именно?

:)

Особенности национальной охоты пишет

ну вы блин даёте!

я же не вижу ваш код! что там в третьей строке?
я бы посоветовал начать самостоятельно вникать в то, что написано в коде. там всё прозрачно.

вы разобрались с тем, как сделать управляющий js-файл?

Pomidor пишет

вы разобрались с тем, как сделать управляющий js-файл?
====
нет.

Напрасно. Если нужно ходить по разным страницам, то надо разобраться.
Вместе с iMacros есть примеры таких js-файлов. Основные команды в них тоже есть: iimPlay, iimSet и т.д.

js-файл может запустить многократно iim-файл и передавать ему каждый раз новые параметры. И этим параметром может быть целевой Url или следующий логин/пароль.

Pomidor пишет

просто очистить 3 строку достаточно, имею ввиду. Она удалится?

Да, если удалить 3-ю строку, то она удалиться. А может быть как-то по-другому?

Да, если удалить 3-ю строку, то она удалиться. А может быть как-то по-другому?
====
ну всё, проблема решена. после удаления строки на другой подобной странице всё работает) Просто я думал строку по-другому надо удалять, а не просто очистить.

Спасибо, что помогали!

Подскажите как реализовать такую вот цель. Мне нужно через управляющий js файл взывать iim файл и передавать ему переменную, Я это далаю так:

alt ="другое)|(не задумывался)|(конечно)|(>да)|(естественно)|(иногда)|(безусловно";

    macro = "CODE: FRAME F=1" + "\n";
    macro += 'SEARCH SOURCE=REGEXP:"('+alt+')" EXTRACT="$1"' + "\n";
    retcode = iimPlay(macro);

Думаю это не самый лучший способ так как есть чтото типа iimSet. Но это еще пол беды. А вот как потом полученый результат вернуть в js прогу чтоб с ней дальше работать. А то получается могу передавать только в одну сторону.
Подскажите кто знает.
З.Ы. Может кто знает почему SEARCH SOURCE=REGEXP:"('+alt+')" EXTRACT="$1 неработает через iOPUS (встренный браузер) пишет команды SEARCH нет

посмотри iimGetLastExtract. на сколько помню, он может либо содержимое тега вытащить, либо содержимое всей страницы целиком.

Всем доброго времени суток.  У меня вопрос такой:
Необходимо, чтоб Imacros переходил на некий url, который содержит в себе рандомный текст, например, http://site.zone/152???12, где символы ??? означают рандомные значения от 0 до 9. Очень прошу Вашей помощи, так как у самого не получилось никак реализовать рандом. :(

Как в imacros ускорить нажатие по кнопкам?(переход не происходит,т.к.это не ссылки,думаю)Просто нажимаешь и кнопки меняются.Затем другую кнопку на странице нажимаешь и т.д.
вот код:
VERSION BUILD=6700624 RECORDER=FX
TAB T=1
TAG POS=20 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=19 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=18 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=17 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=16 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=15 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=14 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=13 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=12 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=11 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=10 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=9 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=8 TYPE=LI ATTR=TXT:Нажать<SP>кнопку

как ускорить нажатие?

2 вопрос: если одна из кнопок не находится, то есть их меньше обычного количества, то как сделать автоматический переход на следующие кнопки?
Без автомат.перехода после некоторого времени аймакрос прекращает вопсроизведение после того, как не нашёл все кнопки

JohnGrace, рандом есть в javascript, из js можно передавать параметры в iim.

axe, мне очень стыдно, но не могли бы вы привести пример, как подключить js?

В iim есть возможность запускать js, но она очень ограниченная:

Выделить код

Код:

URL GOTO=javascript:alert('test');

лучше делать управляющий js файл, который запускает iim-файлы. Тогда в js можно генерить что угодно и передавать это внутрь iim через iimSet:

Выделить код

Код:

iimSet('-var_SERVER', 'http://i-meta.ru/?param=' + Math.random())

а далее вызываем iim-файл и в нём делаем:

Выделить код

Код:

URL GOTO={{SERVER}}

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

Выделить код

Код:

VERSION BUILD=6700624 RECORDER=FX
TAB T=1
URL GOTO=http://ru3.darkorbit.bigpoint.com/indexInternal.es?action=internalDock&tpl=internalDockShips
TAG POS=25 TYPE=DIV ATTR=TXT:
TAG POS=2 TYPE=IMG ATTR=ALT:Купить<SP>сейчас&&SRC:do_img/global/text.esg?l=ru&s=8&f=eurostyle_clan&t=buy_now&uc=1&&TXT:
TAG POS=1 TYPE=IMG ATTR=SRC:do_img/global/text.esg?l=ru&s=9&t=ok&f=eurostyle_clan&&TXT:

это надо чтобы выполнялось при каждом нажатии

Аймакрос слева на право как перенести?

16-08-2010 10:51:48
https://chrome.google.com/extensions/detail/cplklnmnlbnpmjogncfgfijoopmnlemp кто-нибудь ставил отсюда аймакрос на хром? Безопасно ли оттуда устанавливать?

Вопрос. На сайте имеется таблица по типу екселя. В нее требуется забить огромное количество повторяющихся значений. Попробовал сделать это через iMacros. Однако ввод в ячейку таблицы возможен после двойного клика по ней, или нажатия ввода.
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:ext-comp-1078 CONTENT=2407
Такая команда не срабатывает. Ячейка выбирается, но значение не вводится. Имитации нажатия клавиш в iMacros как я понял нет, отличать обычный клик от двойного он не умеет. Есть варианты, как решить эту проблему?

t2d, я бы попробовал почитать про greasemonkey. Он умеет догружать кастомный javascript для конкретной страницы. Т.е. с помощью grasemonkey доопределить конкретно вашу страницу, чтобы редактирование было не через дабл-клик, а по простому клику. Далее уже попробовать заюзать iMacros.

Постоянно высвечивает эту ошибку

Выделить код

Код:

TypeError: ClickHandler.findElementPosition is not a function, line: 4

даже записал как щелкаю на этом форуме, а он все равно эту ошибку выдает
Раньше такого не было,
Пробовал: Перезагруз браузера, компьютера, удаление-установка плагина и нету результата(
Что делать?

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

axe пишет

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

скрытый текст

Выделить код

Код:

VERSION BUILD=6700624 RECORDER=FX
TAB T=1
URL GOTO=http://tr4.darkorbit.bigpoint.com/indexInternal.es?action=internalDock&tpl=internalDockShips
TAG POS=47 TYPE=DIV ATTR=*
TAG POS=2 TYPE=IMG ATTR=SRC:http://tr4.darkorbit.bigpoint.com/do_img/global/text.esg?l=tr&s=8&f=eurostyle_clan&t=buy_now&uc=1
TAG POS=1 TYPE=IMG ATTR=SRC:http://tr4.darkorbit.bigpoint.com/do_img/global/text.esg?l=tr&s=9&t=ok&f=eurostyle_clan


этот код, раньше он воспроизводился, а сегодя не хочет

Выделить код

Код:

TAG POS=47 TYPE=DIV ATTR=*

это 47-й див от начала страницы?
а можно к нему доступ как-то по лучше определить? id или name, например есть?

axe пишет

Код:TAG POS=47 TYPE=DIV ATTR=*это 47-й див от начала страницы?а можно к нему доступ как-то по лучше определить? id или name, например есть?

а где его найти? может такое?
вот что есть в исходном коде
7fe6ab055142.jpg

Выделить код

Код:

<img alt="Купить сейчас" src="do_img/global/text.esg?l=ru&amp;s=8&amp;f=eurostyle_clan&amp;t=buy_now&amp;uc=1">
Выделить код

Код:

<div onclick="$('ship_buy_2').submit();" class="hangarButton hangarButtonCenter" id="sbmt1"><img alt="Купить сейчас" src="do_img/global/text.esg?l=ru&amp;s=8&amp;f=eurostyle_clan&amp;t=buy_now&amp;uc=1"></div>

по идее id="sbmt1" - то, что нужно и далее пробуем

TAG POS=1 TYPE=DIV ATTR=ID:sbmt1

хотя, честно говоря, не пробовал делать клики по div-ам

Кто-нибудь смотрел что за макросы стандартные? Какой-нибудь полезен? Вы все стандартные удалили?

я все стандартные макросы удалил. если будут нужны - можно плагин переустановить.

Умно! Спасибо.

TAG POS=8 TYPE=LI ATTR=TXT:Нажать<SP>кнопку
TAG POS=8 TYPE=A ATTR=TXT:Нажать<SP>кнопку

это что за LI  и почему 8 два раза? глюк записи макроса был?

с остальными строками всё в порядке, вроде:

TAG POS=4 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=3 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=2 TYPE=A ATTR=TXT:Нажать<SP>кнопку
TAG POS=1 TYPE=A ATTR=TXT:Нажать<SP>кнопку

ArtBigTema пишет

Постоянно высвечивает эту ошибку

У меня как-то imacros тоже перестал работать. Перестал переходить по ссылкам. Помогла полнаяерестановка фигефоха и imacros-a. И да, на хром imacros не качается, а скаченная с буржуйского сайта версия, совсем уж г... Еще есть imacros на осла... Ну вы поняли=)

что за буржуйский сайт? на хром imacros разве качать  надо? он же устанавливается онлайн. Или ты имеешь ввиду не устанавливается?

подскажите плиз, какие еще расширения можно использовать для просмотра времени загрузки страницы. к примеру в статусной строке чтобы показывало, по простому - сколько полностью грузится страница (в секундах)
в iMacros - есть подходящий макрос, но как-то сложно настраивать.

Pomidor пишет

что за буржуйский сайт?

Тысячи их!

на хром imacros разве качать  надо? он же устанавливается онлайн. Или ты имеешь ввиду не устанавливается?

А устанавливая, он разве не скачивает сначала? Сколько не пробовал, не выходит "УСТАНОВИТЬ" с офа.


На счет времени прогрузки
, в firebug-е что-то подобное есть, а вообще site-perf.com - очень советую.

Можно ли сразу двумя imacros'ами пользоваться? Например, 2 страницы соединить в одну вкладку, чтобы 2 аймакроса было?(2 вклдаки соединить в одну) Попробовал расширение Tile tabs 4.1 - не помог. Может, другое подобное расширение поможет или надо настройки поменять?

Кто нить знает можно сделать так чтоб при нажатии на кнопку аймакросом он не ждал пока произойдет загрузка страницы, а сразу переходил на новую вкладку и там нажимал заново кнопку??

Несколько вопросов:
1.Как сделать чтобы каждый макрос в цикле выполнялся после паузы в n секунд ?
2.Как сделать чтобы при невозможности выполнения макроса в данной вкладке она пропускалась,и макрос выполнялся на следующей ?

Нужно отметить все галочки на текущей странице...

Причем имя чекбоксов у всех разное! ( динамическое )
С iopus не получается, потому что он сохраняет статичные данные с именем статичного чекбокса, и соответственно, к другим страницам, у которых имя чекбокса уже другое, не отмечает ( не заполняет галками)


хтмл код примерно такой:

<input type="checkbox" name="76432" value="43423"> 

Как в макросе это сделать?

27-11-2010 12:58:38
при записи примерно такой код:

URL GOTO=сайт
TAG POS=1 TYPE=TD ATTR=TXT:stand
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:e_3537774 CONTENT=YES
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:e_24723440 CONTENT=YES
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:e_15785092 CONTENT=YES

видите, цифры постоянно разные, и не получается:(
помогите плиз

kpripper пишет

Несколько вопросов:
1.Как сделать чтобы каждый макрос в цикле выполнялся после паузы в n секунд ?
2.Как сделать чтобы при невозможности выполнения макроса в данной вкладке она пропускалась,и макрос выполнялся на следующей ?

1.оператор WAIT 5 кажись.
2. что-то из этого:
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

27-11-2010 14:22:35
и еще проблема с чтением cvs  файла..
Error: Component returned failure code: 0x80500001 [nsIConverterInputStream.init], line: 4
жЭсть..

Использую расширение TabMix. С его помощью блокирую и защищаю некоторые вкладки. Можно заставить iMacros выполнять блокировку вкладки?

в итоге решил свою проблема на англ. форуме ихнем, туго незная языка.. но тут видимо АЙмакрос нафиг никому не сдался, а жаль, хорошая и простая вещь...

Добрый день!
прописал макрос:

скрытый текст

Выделить код

Код:

VERSION BUILD=7031111 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT 60
TAB T=1
URL GOTO=http://site.ru
FRAME F=2
TAG POS=1 TYPE=IMG ATTR=SRC:site.ru/immage.gif
TAG POS=1 TYPE=TD ATTR=TXT:Название<SP>темы
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:REPLIER ATTR=NAME:TopicTitle CONTENT={{!VAR1}}
TAG POS=1 TYPE=TD ATTR=TXT:Введите<SP>сообщение
TAG POS=1 TYPE=TEXTAREA FORM=NAME:REPLIER ATTR=NAME:Post CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:REPLIER ATTR=NAME:submit&&VALUE:Кликнуть


Не могу понять как сделать следущее:
взять из текстового файла D:\user\документ.txt первую строку и подставить ее вместо {{!VAR1}}.
Далее из этого же документа взять все кроме первой строки и подставить ее вместо {{!VAR2}}.

Подскажите как прописать эти действия.
Заранее благодарен!

1) файлы хранятся в документах, специальная папка есть для Имакрос.
2)  это нужно делать в формате csv

paradoxx
В csv данные надо через запятую вводить например: предложение,email так макрос работает, а если самое предложение содержит запятые и чтоб его макрос не делил?? пробовал закрывать в "" не помогло:(

Добрый день господа.

В скриптинге не силен, но нужна помощь, может у кого то есть набросок кода, суть в чем:

есть FF+iMacros , нужен код для 1 странички на которой  3 кнопки:

1 кнопку нужно нажимать скажем раз в 10минут (но не секунда в секунду , а с рандомным числом в секундах)
2 кнопка нажимается сразу после первой , с ней все понятно

3 кнопку нужно нажимать только в том случае если на странице появляется сообщение в вите текста, например "это конец"

помогите осуществить пожалуйста.

я не силён в программировании,  научите делать цикл.

Макрос 7.1.1.2 мозилла.
вот от фонаря пример (просмотр страниц по принципу след. след. след.)

скрытый текст

Выделить код

Код:

1 VERSION BUILD=7110203 RECORDER=FX
2 TAB T=1
3 URL GOTO=http://spaces.ru/shared_zone/?sid=9684154328379354&com_id=24
4 TAG POS=1 TYPE=A ATTR=TXT:след
5 TAG POS=1 TYPE=A ATTR=TXT:след
6 TAG POS=1 TYPE=A ATTR=TXT:след
7 TAG POS=1 TYPE=A ATTR=TXT:след


я понял надо вставить счётчик циклов
   SET !LOOP n

но  должна быть ещё строка  переадресации  на начало цикла
на  http://wiki.imacros.net/!LOOP я ничего не понял.

можно зацыклить спомощью JS

у нас есть файл с мылами формата мыло1@rty.ru, мыло2@rty.ru и т.д. Нужно чтобы скрипт вводил в форму на странице следующие данные:

логин: мылоN
мыло: мылоN@rty.ru

как это сделать ?

Люди как можно сделать с помощью imacros добавлять фотки на vkontakte и на мой мир с коментариями?

вроде все ясно как делается а вот с комментариями проблемы
хочу чтоб подгружал с текстового файла коментария. вот таким вот кодом

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE 112.txt
SET !DATASOURCE_COLUMNS 10
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:edititems ATTR=ID:comment12 CONTENT={{!COL1}}<br>{{!COL2}}


выдает ошибку, что я не так сделал? делал по принципу http://compspeed.ru/569.html

zendbux пишет

paradoxx
В csv данные надо через запятую вводить например: предложение,email так макрос работает, а если самое предложение содержит запятые и чтоб его макрос не делил?? пробовал закрывать в "" не помогло:(

Думаю, автору сообщения уже не актуально, но т.к. нашёл этот вопрос в гугле и не нашёл здесь ответа, напишу:
Если в предложении есть запятые, то всё предложение нужно заключать в кавычки, например:
48, 488, Да, "Вася купил конфеты, но не съел их", Firefox

Baton1425 пишет

я не силён в программировании,  научите делать цикл.

Макрос 7.1.1.2 мозилла.
вот от фонаря пример (просмотр страниц по принципу след. след. след.)

скрытый текст

Выделить код

Код:

1 VERSION BUILD=7110203 RECORDER=FX
2 TAB T=1
3 URL GOTO=http://spaces.ru/shared_zone/?sid=9684154328379354&com_id=24
4 TAG POS=1 TYPE=A ATTR=TXT:след
5 TAG POS=1 TYPE=A ATTR=TXT:след
6 TAG POS=1 TYPE=A ATTR=TXT:след
7 TAG POS=1 TYPE=A ATTR=TXT:след


я понял надо вставить счётчик циклов
   SET !LOOP n

но  должна быть ещё строка  переадресации  на начало цикла
на  http://wiki.imacros.net/!LOOP я ничего не понял.

Строки переадресации на начало цикла быть не должно, это делается по-другому:
Слева (снизу iMacros'а) есть надпись "Повторить макрос", под ней поле "Макс:", там вводишь количество итераций цикла, и получается, твоя строка "счётчик циклов" подразумевается в конце макроса.

Эх, весь мозг уже себе вынес, но не могу разобраться. Поэтому за помощью к вам :)
Начну с того, что пользуюсь аймакросом уже не первый месяц, но только недавно он начал выёживаться.
Суть в том, что иногда он останавливается на каком-либо шаге (хотя его выполнение точно возможно), ждет 60 секунд (задано в настройках) и тупо виснет на этом месте. И висит, пока не перезапустишь. Ну а если убрать  SET !ERRORIGNORE YES, то естественно выполнение скрипта завершится с ошибкой. Мне же надо постоянное выполнение циклов, без таких "зависонов", которые можно исправить только вручную.
Помню, что раньше, если аймакрос не мог выполнить определенный шаг, он уделял ему 1/10 таймаута (в данном случае 6 секунд), и при ошибке - переходил к следующему. И пусть даже каждый шаг будет ошибочным и отнимет 6 секунд - главное, чтобы завершился цикл! А там, соответственно, и обновится страница, и ошибки скорей всего пропадут.
Но КАК это сделать?

Для того чтобы продолжить не ожидая 60 сек по умолчанию, нужно написать:
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
тогда должно работать. Я ставлю такой код в ботах, все зависит от скорости запрос-ответ.
Для циклов лучше использовать среднюю скорость(Редакт./Опции/General/Средне), медленнее конечно, но реже выбрасывает.
вот здесь

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


есть кое-что интересное.

Так и написано, не помогает. Скорость как раз средняя стоит, но ставил и медленную. Уже пробовал и на другом ПК, и экспериментировал с версиями ФФ и аймакроса - без толку... Была мысль, что дело в самом сайте - но видимо нет, раз скрипт бывает виснет даже на строчке SET !ERRORIGNORE YES на 1-м цикле.
По ссылке, к сожалению, ничего интересного не нашел...

Stiks.droid пишет

Так и написано, не помогает. Скорость как раз средняя стоит, но ставил и медленную. Уже пробовал и на другом ПК, и экспериментировал с версиями ФФ и аймакроса - без толку... Была мысль, что дело в самом сайте - но видимо нет, раз скрипт бывает виснет даже на строчке SET !ERRORIGNORE YES на 1-м цикле.
По ссылке, к сожалению, ничего интересного не нашел...

Может быть опишите проблему конкретно по сайту с алгоритмом задачи, а то как-то непонятно чем можно помочь?

Друзья!
Помогите с лекарством для iMacros - The Web's workhorse! Version 7.36.1445
Все облазил, ну никак. :sick:

Как сделать чтобы аймакрос нажимал на кнопку custom buttohs, подскажите пожалуйста?

Подскажите пожалуйста способен ли iMacros запомнить действия в самом браузере, например такие действия: открыть журнал, выделить там все адреса за сегодня и скопировать. Я пробовал что то не получается, даже такие простейшие действия как "обновить страницу" не запоминает.
 

Если iMacros не может, то какое тогда расширение может? подскажите плиз.

set_http_proxy и set_socks_proxy  функции  javascript для  установки прокси

скрытый текст

Выделить код

Код:

//Установка прокси http
function set_http_proxy(str_url_http,str_port_http)
{
if(str_port_http>0) set_socks_proxy('',0,4); //сброс socks

//Url
errCode = iimPlay('CODE:CLEAR\nURL GOTO=about:config\nURL GOTO=javascript:var<SP>prefb<SP>=<SP>Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);var<SP>str<SP>=<SP>Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);str.data<SP>=<SP>"'+str_url_http+'";prefb.setComplexValue("network.proxy.http",<SP>Components.interfaces.nsISupportsString,<SP>str);');

//порт
errCode = iimPlay('CODE:URL GOTO=javascript:gPrefBranch.setIntPref("network.proxy.http_port",'+str_port_http+');');
}

//Установка прокси socks
function set_socks_proxy(str_url_socks,str_port_socks,socks_version)
{
if(str_port_socks>0)set_http_proxy('',0); //сброс http

//Url
errCode = iimPlay('CODE:CLEAR\nURL GOTO=about:config\nURL GOTO=javascript:var<SP>prefb<SP>=<SP>Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);var<SP>str<SP>=<SP>Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);str.data<SP>=<SP>"'+str_url_socks+'";prefb.setComplexValue("network.proxy.socks",<SP>Components.interfaces.nsISupportsString,<SP>str);');

//порт
errCode = iimPlay('CODE:URL GOTO=javascript:gPrefBranch.setIntPref("network.proxy.socks_port",'+str_port_socks+');');

//тип
errCode = iimPlay('CODE:URL GOTO=javascript:gPrefBranch.setIntPref("network.proxy.socks_version",'+socks_version+');');
}

С разрешения модераторов о себя добавлю парочку полезных ссылок
iMacros. Примеры скриптов. удалено, в данный момент, сайт сменил тематику, линки - мертвые

Hed-kun пишет

подскажите, пожалуйста, возможно ли в макросе автоматического заполнения форм регистрации этим аддоном сделать так, чтобы в определенное поле вписалось не указанное вручную в скрипте значение, а рандомно сгенерированный набор, например, из 7 символов? есть ли такая команда в iMacros?

то есть, допустим, есть макрос, который при запуске регистрирует меня на сайте (ХХХ), с логином (YYY) и паролем (ZZZ) значения XXX, YYY, ZZZ - указаны мной в скрипте, в виде, например, для логина:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:register ATTR=NAME:username CONTENT=YYY

можно ли поправить эту строчку так, чтобы при работе макрос вписывал в это поле НЕ YYY, а 7 СЛУЧАЙНЫХ символов?

ещё не решился вопрос с рандомом? если кто обладает информацией, я вас жду :blush:

скрытый текст
хотя я думаю что за три с лишним года полюбому решился

Как защитить макрос паролем?

форумчане, кто в курсе, возможно ли сохранение с помощью этого дополнения страниц следующим образом:
в livejournal существует система постов (записей), на странице с записью всегда есть ссылки вида "следующий" / "предыдущий". Можно ли настроить иМакрос, к примеру так, чтобы кликалось на ссылку "предыдущий" (пост), происходило сохранение страницы, затем снова кликалось и сохранение уже предыдущей и так далее? Просто было бы удобно выкачивать полнстью жж таким образом. И если можно, то в кратце как это настроить?

Спасибо!

Привет.

Имеется csv, в котором н-число строк (допустим 30). В каждой строке данные для одной регистрации. 4 столба в строке.
Имя (1 столбец), e-mail (2), пароль (3), Число (4)

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

Спасибо.

sergiksergik пишет

Подскажите макрос для заполнения полей регистрации из csv.

скрытый текст

Выделить код

Код:

TAB T=1
SET !ERRORIGNORE YES
' ССЫЛКИ НА ФОРУМЫ  1 СТРОКА 1 ССЫЛКА 
CMDLINE !DATASOURCE forum_links.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
CLEAR
URL GOTO={{!COOL1}}
CMDLINE !DATASOURCE login.csv
SET !DATASOURCE_COLUMNS 4
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
CLEAR
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME  CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=mail  CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:TEXT FORM=PASS  CONTENT={{!COL3}}
TAG POS=1 TYPE=INPUT:TEXT FORM=CHISLO CONTENT={{!COL4}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:Auth ATTR=TXT CONTENT=Зарегистрироваться


И зацикливаем кнопкой воспр цикл столько раз сколько  строк в датафайлах

как сделать так, дабы скрипт, если страница долгое время не реагирует, повторял предыдущее действие?

на некоторых сайтах страницы могут с первого раза тупо не грузиться, а в айМакросе посел 60ти секунд бездействия скрипт отключается

El_Andy пишет

как сделать так, дабы скрипт, если страница долгое время не реагирует, повторял предыдущее действие?

на некоторых сайтах страницы могут с первого раза тупо не грузиться, а в айМакросе посел 60ти секунд бездействия скрипт отключается

Ни как :) JavaScript

а так не помогает ?

скрытый текст

Выделить код

Код:

URL GOTO=http://site.com
WAIT SECONDS=20
REFRECH
WAIT SECONDS=5
' Ну что то типа этого просто тупо обновить страничку  у меня так проходит на страничках которые не грузятся до конца :)

а может быть знает, какой в айМакросе аналог клавиши Enter? а то у меня вконтакте извлеченные из буфера в строку поиска названия песен-клипов искать не хочет сам, а клавиши поиска вроде нет...


или вообще - может есть инфа в наглядном виде, там где в соответствие Клавишным командам мозиллы стоят определенные макросы?

zello  пасиб!:)

El_Andy пишет

а может быть знает, какой в айМакросе аналог клавиши Enter? а то у меня вконтакте извлеченные из буфера в строку поиска названия песен-клипов искать не хочет сам, а клавиши поиска вроде нет...


или вообще - может есть инфа в наглядном виде, там где в соответствие Клавишным командам мозиллы стоят определенные макросы?

zello  пасиб!:)

Так не пробовал ?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


просто скриптом параметры в ссылку подставлять
Есть такой пример в папке Demo-Firefox
вот кусок кода JavaScript  можешь его просто под себя переделать :)
скрытый текст

Выделить код

Код:

URL GOTO=http://vkontakte.ru/search?c[q]=nina&c[section]=auto


Скрипты демо советую полистать в редакторе ! Много полезного :)

Выделить код

Код:

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

zello
дык мне нужно чтобы вконтакт (да и не только в него) вставлять из буфера.

общее решение нашел:
CONTENT=<SP>{{!CLIPBOARD}}

но вконтакте почему-то не работает. вернее, аймакрос текст в строку поиска (я ставил в поиск аудио) вставляет, но поиск почему-то не происходит.

остается только:
-либо заставить аймакрос делать Энтер. я вот потому и спросил.
-либо искать решение через ответ на вопрос "почему контакт после ввода текста с макроса, не хочет нифига искать? тогда как при обычном вводе вручную происходит инста-поиск без нажимания клавиш каких-либо?"

и в этом я хз,)) дык мало того, еще и после этого, нужно будет думать как этим воспользоваться через айМАкрос. а тут - я ну совсем хз))


и вот еще задачка - 2 одинаковых оч простых скрипта. один ищет, 2ой - нет.
Рутрекер

скрытый текст

Выделить код

Код:

VERSION BUILD=7401004 RECORDER=FX
TAB OPEN
TAB T=2
URL GOTO=http://rutracker.org/forum/index.php
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:search-text CONTENT=<SP>{{!CLIPBOARD}}

VERSION BUILD=7401004 RECORDER=FX
TAB OPEN 
TAB T=2
URL GOTO=http://ts.saahov.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:qGcrcGcsc16614 CONTENT=<SP>{{!CLIPBOARD}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=VALUE:Поиск


есть идеи?))

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:quick-search ATTR=VALUE:»

El_Andy пишет

zello
дык мне нужно чтобы вконтакт (да и не только в него) вставлять из буфера.

El_Andy
1. Для контакта добавь в буфер нажатие ЕНТЕР = "\n"  в примере выше это было !
                         

скрытый текст

Выделить код

Код:

"URL GOTO=http://forum.iopus.com/viewtopic.php?f=11&t={{postid}}\n"
'выглядит примерно так :
SET !VAR1 \n
ADD !CLIPBOARD {{!VAR1}}
CONTENT=<SP>{{!CLIPBOARD}}


2. Не ищет я так понимаю второй пример? :) 
  так будет искать :
скрытый текст

Выделить код

Код:

VERSION BUILD=7401004 RECORDER=FX
TAB OPEN 
TAB T=2
URL GOTO=http://ts.saahov.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=class:gsc-input CONTENT=<SP>{{!CLIPBOARD}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=VALUE:Поиск

zello сэнкс еще раз! :)

:rolleyes:пробовал по всякому чтобы заработало, а выстрадалось только вот такое, но оно тоже не сработало до конца:

скрытый текст

Выделить код

Код:

VERSION BUILD=7401004 RECORDER=FX
tab open
TAB T=2
URL GOTO=http://vkontakte.ru/audio={{postid}}\n
SET !VAR1 \n
ADD !CLIPBOARD {{!VAR1}}
TAG POS=4 TYPE=DIV ATTR=TXT:Search<SP>by<SP>track<SP>and<SP>artist
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:s_search CONTENT=<SP>{{!CLIPBOARD}}


а с джавой, как я понял -- если на веб-странице джава, то айМакрос вообще не сработает, если только не писать отдельный код на джав-идише, так?))

El_Andy пишет

zello сэнкс еще раз! :)

:rolleyes:пробовал по всякому чтобы заработало, а выстрадалось только вот такое, но оно тоже не сработало до конца:

скрытый текст

Выделить код

Код:

VERSION BUILD=7401004 RECORDER=FX
tab open
TAB T=2
URL GOTO=http://vkontakte.ru/audio={{postid}}\n
SET !VAR1 \n
ADD !CLIPBOARD {{!VAR1}}
TAG POS=4 TYPE=DIV ATTR=TXT:Search<SP>by<SP>track<SP>and<SP>artist
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:s_search CONTENT=<SP>{{!CLIPBOARD}}


а с джавой, как я понял -- если на веб-странице джава, то айМакрос вообще не сработает, если только не писать отдельный код на джав-идише, так?))

скорее всего здесь такая же причина как и постом выше !

TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:s_search CONTENT=<SP>{{!CLIPBOARD}}

Нужно поменять ID:s_search на класс в котором лежит контент  - Класс берешь в исходном коде страницы
Поставь себе FireBug для FF

есть макрос который заполняет из CSV файла, работает нормально пока нет кириллицы,  только появляется кириллица вылетает с ошибкой:
Error: Component returned failure code: 0x80500001 [nsIConverterInputStream.init], line: 8 (Error code: -1001)
что только не делал не получается побороть.

Отвечу себе сам :)
Нужно использовать кодировку UTF-8, все работает отлично.

sosedus пишет

есть макрос который заполняет из CSV файла, работает нормально пока нет кириллицы,  только появляется кириллица вылетает с ошибкой:
Error: Component returned failure code: 0x80500001 [nsIConverterInputStream.init], line: 8 (Error code: -1001)
что только не делал не получается побороть.

Насколько я помню айМакрос не работает с кириллицей 
Переделай в транслит .........................

а можно сделать замес, чтобы раб находил ссылку не html'ом или Х\У, а путем нажимания клавиши ТАВ?

то есть как будто бы дать аймакросу команду -- нажми, раб, 8 раз ТАБ, а затем ЭНТЭР?

zello
поправь меня, еси я не прав. все ли (из перечисленных) мои ламерские догадки верны:

аймакрос это такая сука, в которой разобраться хорошо можно зная основы разных языков вебдизайна.

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

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

просто хочеццо догнать че за чорт этот аймакрос - и в какой степени мне придется ( и придется ли) загружать свой моск geek-штучками.
:)

установила себе дополнение макрос 7.3.0.0
постоянно сбивается. суть такова: имеются картинки, на которые нужно кликать. 5 в ширину и 6 в высоту, ровно друг под другом. итого 30 штук. покликав на них, обновляю страницу. всю процедуру записала, время выставила. ставлю воспроизвести останавливается на 3 или 4 картинке и дальше не пашет или на обновлении страницы и дальше тоже не двигается. в чём может быть причина? версии мазиллы пробовала с макросом 3.6.12, 3.6.13, 3.6.24, 3.6.25. заранее прошу прощения, если не совсем понятно объяснила. я новичок.

El_Andy пишет

просто хочеццо догнать че за чорт этот аймакрос - и в какой степени мне придется ( и придется ли) загружать свой моск geek-штучками.
:)

то есть как будто бы дать аймакросу команду -- нажми, раб, 8 раз ТАБ, а затем ЭНТЭР?- В чем фишка ? не пойму

Работать С iMacros  можно и без знаний языков , но Для получения полной отдачи желательно Знание JS  или VBS
iMacros прекрасно с ними взаимодействует :)  С помощью скриптовых языков можно проверять условия и выполнять более сложные циклы
Комбинация iMacrosa и JS или VBS  позволяет решить больше задач ......

например часть кода приглашалки для майла  :

скрытый текст

Выделить код

Код:

............................
function send_invite()
{
var send_macros;
var s_n = "\n";
var x;
var retcode;
var errtext;
var ind;
var name_loop;
var n;

name_loop = new Array("Smirnov","Ivanov","Kuznetsov","Popov","Sokolov","Lebedev","Kozlov","Novikov","Morozov");
for (ind = 0; ind < name_loop.length; ind++)
{n = Math.floor(Math.random()* name_loop.length);// выбор случайной Фамилии из массива 
  iimSet("SNAME", name_loop[n]); }
send_macros = "CODE:SET !REPLAYSPEED MEDIUM" +s_n;
send_macros += "URL GOTO=http://my.mail.ru/my/search_people" +s_n;
send_macros += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:general-common CONTENT={{SNAME}}" +s_n;
for(x = 0; x < 15; x++) //кликаем на первые 15 найденных  пользователей
{
send_macros += "TAG POS=1 TYPE=A ATTR= class:mf_spIco<SP>mf_iAddMen<SP>mf_dIB<SP>mf_cp" +s_n; 
}
send_macros += "WAIT SECONDS=1000" +s_n;
send_macros += "SET !REPLAYSPEED FAST" +s_n;
retcode = iimPlay(send_macros);
if (retcode < 0) {              
        errtext = iimGetLastError();
        alert(errtext);
    }else{return 1;}
     }
     // Start invite
     var zerro, login1, login2, invite, invite1,xx;
     for(zerro=0; zerro<100; zerro++)
     {
          login1= my_login2();
     if(login1===1){invite=send_invite();}else{alert("error");}
     if(invite===1){login2= my_login3();}else{alert("error");}
     invite1=send_invite();
    ............................................ 
     }


16-01-2012 13:26:38

Aprelka пишет

установила себе дополнение макрос 7.3.0.0
постоянно сбивается. суть такова: имеются картинки, на которые нужно кликать. 5 в ширину и 6 в высоту, ровно друг под другом. итого 30 штук. покликав на них, обновляю страницу. всю процедуру записала, время выставила. ставлю воспроизвести останавливается на 3 или 4 картинке и дальше не пашет или на обновлении страницы и дальше тоже не двигается. в чём может быть причина? версии мазиллы пробовала с макросом 3.6.12, 3.6.13, 3.6.24, 3.6.25. заранее прошу прощения, если не совсем понятно объяснила. я новичок.

В начале макроса присутствуют строки ? :

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !REPLAYSPEED SLOW
'так же можно кликать без загрузки картинок тогда меньше глюков 
FILTER TYPE=IMAGES STATUS=ON
'единственный минус все вкладки браузера будут работать без графики пока работает скрипт и в конце скрипта 
' следует вернуть все на места 
FILTER TYPE=IMAGES STATUS=OFF 
REFRECH
.......................................

Доброго времени суток! Установил себе этот макрос. Суть проблемы - Есть страница на которой есть капча поле ввода этой капчи и кнопка ввести. Я так понимаю, что автоматически прикрутить распознование капчи и введение ее в поле нельзя? Или можно? Ну если нет, то как мне сделать чтобы иМакрос делал так: открывал страницу, ждал пока я вручную введу капчу а затем кликал по кнопке. Возможно это?

Silenoz пишет

прикрутить распознование капчи

нет,
это надо комбайн небольшой))) как драйвера и программное обеспечение к сканеру.

Silenoz пишет

Ну если нет, то как мне сделать чтобы иМакрос делал так: открывал страницу, ждал пока я вручную введу капчу а затем кликал по кнопке. Возможно это?

да там есть таймер ожидания

так таймер ожидания есть, но ведь во время выполнения макроса он не дает мне кликать по той странице которую крутит.
--------
Все разобрался. Команда Pause.
А кто вообще знает как использовать этот плагин для заработка? Может подскажите? Вот моя аська - 832295. Заранее спасибо!

feas пишет
Silenoz пишет

прикрутить распознование капчи

нет,
это надо комбайн небольшой))) как драйвера и программное обеспечение к сканеру.

Silenoz пишет

Ну если нет, то как мне сделать чтобы иМакрос делал так: открывал страницу, ждал пока я вручную введу капчу а затем кликал по кнопке. Возможно это?

да там есть таймер ожидания

Сам аймакрос может распознавать  капчу и даже собирать  пусле , но реализовать это программно сложно
Но существуют миллионы китайцев и школьников :)
Сервис по распознании капчи Сам пользуюсь :)(есть сервисы которые работают с аймакрос) Ссылок давать не буду google  в помощь ....
А макрос  будет выглядеть примерно так :

скрытый текст

Выделить код

Код:

URL GOTO=http://site.com/?function=picture2&print_format=html
TAG POS=1 TYPE=INPUT ATTR=NAME:username CONTENT={{YOUR_DBC_USERNAME}}
TAG POS=1 TYPE=INPUT ATTR=NAME:password CONTENT={{YOUR_DBC_PASSWORD}}
TAG POS=1 TYPE=INPUT ATTR=NAME:pict CONTENT={{CAPTCHA_IMAGE_FILE_NAME}}
TAG POS=1 TYPE=INPUT ATTR=TYPE:submit

TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}


То есть  вся работа обстоит в сохранении рисунка на комп и передачи в сервис , потом получить код и ввести .......
Примерно такой код предоставляет сервис по распознанию капчи ....
Удачи !!!

но я так понимаю все эти сервисы платные?

как сделать чтобы макрос копировал адрес сайта на котором находится и потом вставлял по курсору. и еще как сделать чтобы макрос брал мой нынешний IP и вставлял тоже куда надо

Silenoz пишет

как сделать чтобы макрос копировал адрес сайта на котором находится и потом вставлял по курсору. и еще как сделать чтобы макрос брал мой нынешний IP и вставлял тоже куда надо

скрытый текст

Выделить код

Код:

SET !VAR1 {{!URLCURRENT}}
TAB OPEN
TAB T=2
URL GOTO={{!VAR1}}

'или так 
SET !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.csv
SET !EXTRACT NULL

' или так 
SET !EXTRACT NULL
TAG POS=1 TYPE=A ATTR=class:mf_bold<SP>mf_t14 EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.csv
SET !EXTRACT NULL
'..........................................

''''''''''''''''''''Для IP
SET !VAR2 192.168.1.1
SET !EXTRACT {{!VAR2}}
Куда надо  {{ !EXTRACT }}

))) ничего не получилось из этого. Может кто вызовется помочь на конкретном примере? Я опишу что нужно, там для человека который разбирается - 5 минут работы.

Silenoz пишет

))) ничего не получилось из этого. Может кто вызовется помочь на конкретном примере? Я опишу что нужно, там для человека который разбирается - 5 минут работы.

iMacros Работает с браузерами по этому поменять с его помощью можно только прокси в браузере ............
если интересует конкретно работа с системными настройками то
VB + WMIClass  в помощь:)

скрытый текст

Выделить код

Код:

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
 
Set IPConfigSet = objWMIService.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")
 
For Each IPConfig in IPConfigSet
    If Not IsNull(IPConfig.IPAddress) Then  
        WScript.Echo IPConfig.ServiceName
        WScript.Echo IPConfig.MacAddress
        For i=LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
            WScript.Echo IPConfig.IPAddress(i)
        Next
    End If
Next


Копаем в этом направлении :http://msdn.microsoft.com/en-us/library/Aa394217
____________________________________________________
OFFTOP - Admins Sorry)

Можно ли выполнить в макросе javascript-файл?

И ещё: можно ли считать со страницы текст в определённых тегах, если он каждый раз разный?
Путём записи макроса получил такую строчку:

скрытый текст
TAG POS=1 TYPE=SPAN ATTR=TXT:Напишите<SP>девятнадцатую,<SP>восьмую,<SP>четвертую<SP>и<SP>шестнадцатую<SP>буквы<SP>из<SP>последовательности<SP>букв:<SP>PIWNqEzITxwCeMJqZruI<SP>

Но как только текст меняется, перестаёт работать

null28 пишет

Можно ли выполнить в макросе javascript-файл?

И ещё: можно ли считать со страницы текст в определённых тегах, если он каждый раз разный?
Путём записи макроса получил такую строчку:

скрытый текст
TAG POS=1 TYPE=SPAN ATTR=TXT:Напишите<SP>девятнадцатую,<SP>восьмую,<SP>четвертую<SP>и<SP>шестнадцатую<SP>буквы<SP>из<SP>последовательности<SP>букв:<SP>PIWNqEzITxwCeMJqZruI<SP>

Но как только текст меняется, перестаёт работать

Можно ли выполнить в макросе javascript-файл?

Читай выше http://forum.mozilla-russia.org/viewtop … 89#p540289

можно ли считать со страницы текст в определённых тегах, если он каждый раз разный?

Можно в iMacros есть папка Демо  смотри примеры скриптов запускай .................
Вот для примера кусок кода парсера ссылок с майла

скрытый текст
TAG POS=1 TYPE=A ATTR=class:none<SP>mr5 EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=1 TYPE=A ATTR=class:none<SP>mr5 EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=2 TYPE=A ATTR=class:none<SP>mr5 EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=2 TYPE=A ATTR=class:none<SP>mr5 EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=3 TYPE=A ATTR=class:none<SP>mr5 EXTRACT=HREF

результат в файле
Такой : 1 строка ссылка
             2 строка текст
Как видишь он текст берет из класса (если можно так выразится)

А можно сделать, чтобы содержимое {{EXTRACT}} передалось в переменную джаваскрипта? Когда присваиваю переменной "{{EXTRACT}}" или "{{VAR1}}", оно походу не содержимое, а сами эти строчки возвращает...
И ещё - можно сделать, чтобы джаваскрипт-функция выполнялась в нужный момент? Чтобы макрос ждал, пока выполнится функция, а потом продолжал заполнения полей, с учётом результата её выполнения.
В общем вот скрипт (из всей простыни в данном случае значение имеет 3, 13 строка - присвоение переменной JS  {{VAR1}} и присвоение переменной макроса {{VAR1}} {{EXTRACT}}, 70 строка - передача заполняемой форме результата выполнения JS-функции и 69 строка - загрузка JS-функции).

скрытый текст
var macro;
var retcode;
var que = "{{!VAR1}}";
var s_n = "\n";
macro = "CODE:SET !REPLAYSPEED MEDIUM"+s_n;
macro += "URL GOTO=http://sitename.ru/forum/profile.php?mode=register"+s_n;
macro += "TAG POS=1 TYPE=A ATTR=TXT:Я<SP>согласен<SP>с<SP>этими<SP>условиями<SP>и<SP>мне<SP>13<SP>лет<SP>или<SP>больше"+s_n;
macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:username CONTENT=user"+s_n;
macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:email CONTENT=ygjyjg@rambler.ru"+s_n;
macro += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:new_password CONTENT=pass"+s_n;
macro += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:password_confirm CONTENT=pass"+s_n;
macro +="TAG POS=1 TYPE=SPAN ATTR=TXT:Нап* EXTRACT=TXT"+s_n;
macro +="SET !VAR1 {{!EXTRACT}}"+s_n;
macro +="SET !EXTRACT NULL"+s_n;
var sim = "";
function brut(){
//var sim = "";
var arr=que.split("Напишите",2);
var arr2=arr[1].split(" буквы",2);
var arr3=arr2[0].split(" и",2);
var arr4=arr3[0].split(",",4);
arr4.splice(3,0,arr3[1]);//получаем вопрос
var arr5=arr2[1].split(": ",2);
var arr6=arr5[1].split(" ",2);//получаем капчу (0-й эл.)
for(i=0;i<4;i++){
if(arr4[i]==" одиннадцатую"){
    sim+=arr6[0].substr(10,1);
    }else if(arr4[i]==" двадцатую"){
    sim+=arr6[0].substr(19,1);
}else if(arr4[i]==" первую"){
    sim+=arr6[0].substr(0,1);
    }else if(arr4[i]==" вторую"){
    sim+=arr6[0].substr(1,1);
    }else if(arr4[i]==" третью"){
    sim+=arr6[0].substr(2,1);
    }else if(arr4[i]==" четвертую"){
    sim+=arr6[0].substr(3,1);
    }else if(arr4[i]==" пятую"){
    sim+=arr6[0].substr(4,1);
    }else if(arr4[i]==" шестую"){
    sim+=arr6[0].substr(5,1);
    }else if(arr4[i]==" седьмую"){
    sim+=arr6[0].substr(6,1);
    }else if(arr4[i]==" восьмую"){
    sim+=arr6[0].substr(7,1);
    }else if(arr4[i]==" девятую"){
    sim+=arr6[0].substr(8,1);
    }else if(arr4[i]==" десятую"){
    sim+=arr6[0].substr(9,1);
    }else if(arr4[i]==" двенадцатую"){
    sim+=arr6[0].substr(11,1);
    }else if(arr4[i]==" тринадцатую"){
    sim+=arr6[0].substr(12,1);
    }else if(arr4[i]==" четырнадцатую"){
    sim+=arr6[0].substr(13,1);
    }else if(arr4[i]==" пятнадцатую"){
    sim+=arr6[0].substr(14,1);
    }else if(arr4[i]==" шестнадцатую"){
    sim+=arr6[0].substr(15,1);
    }else if(arr4[i]==" семнадцатую"){
    sim+=arr6[0].substr(16,1);
    }else if(arr4[i]==" восемнадцатую"){
    sim+=arr6[0].substr(17,1);
    }else if(arr4[i]==" девятнадцатую"){
    sim+=arr6[0].substr(18,1);
    }
}
}
onLoad="brut";
macro +="TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:tc_answer CONTENT="+sim+s_n;
retcode = iimPlay(macro);

var macro;
var retcode;
var que = "{{!VAR1}}";

Конечно так не будет работать так как переменная
que содержит не значение VAR1 в переменной que на данный момент записано {{!VAR1}}
Я уже писал В iMacros есть папка со скриптами. Demo  называется, рой там, там все есть
Так в VAR1 запишется результат из JS

Выделить код

Код:

SET !VAR1 EVAL("[javascript statements]")

смотри макрос Eval.iim

И зачем все усложнять ?
Пиши JS как основной скрипт и запускай на выполнение  его .................
Разбей свою задачу на блоки и создай несколько макросов которые  будут получать данные из Джава скрипта,
И потом вызывай их в Джава скрипте и все .....
Вот смотри  я так делал для прокачки аков на майл.ру
Вот макрос :
название  макроса login

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
TAB T=1
CLEAR
URL GOTO={{LINK}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:Auth ATTR=ID:mailbox__login CONTENT={{LOGIN}}
TAG POS=1 TYPE=SELECT FORM=NAME:Auth ATTR=NAME:Domain CONTENT=%{{DOMEN}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:Auth ATTR=ID:mailbox__password CONTENT={{PASSWORD}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:Auth ATTR=ID:mailbox__submit__button

вот кусок Джава скрипта для наглядности
скрытый текст
function my_login2()
{
iimSet ("LOGIN", "albalbalb");
iimSet ("DOMEN", "list.ru");
iimSet ("PASSWORD", "123456789");
iimSet ("LINK", "http://mail.ru/");
i = iimPlay("JS/login",60);//Запускаем макрос login передаем ему значения
/* Check for error */
if (i < 0) {
    s = iimGetLastError();
    alert (s);
} else{return 1;}
}

function my_login3()
{
iimSet ("LOGIN", "blablabla");
iimSet ("DOMEN", "list.ru");
iimSet ("PASSWORD", "123456789");
iimSet ("LINK", "http://mail.ru/");
i = iimPlay("JS/login",60);
/* Check for error */
if (i < 0) {
    s = iimGetLastError();
        alert (s);
} else{return 1;}
}
//Функция приглашения
send_invite()
{
...................
............
}
......................................

zello пишет

Так в VAR1 запишется результат из JS

А можно сделать наоборот - записать в JS содержимое VAR1 (либо EXTRACT)? Потому что надо передать строку функции js на обработку...

zello пишет

Разбей свою задачу на блоки и создай несколько макросов которые  будут получать данные из Джава скрипта,
И потом вызывай их в Джава скрипте и все .....

Попробовал так сделать, почему-то ошибку выдаёт - RuntimeError: Macro regmacr.iim not found (Error code: -930), хотя я создал regmacr.iim
Макрос:

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
TAB T=1
CODE:SET !REPLAYSPEED MEDIUM
URL GOTO=http://sitename.ru/forum/profile.php?mode=register
TAG POS=1 TYPE=A ATTR=TXT:Я<SP>согласен<SP>с<SP>этими<SP>условиями<SP>и<SP>мне<SP>13<SP>лет<SP>или<SP>больше
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:username CONTENT={{LOGIN}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:email CONTENT={{EMAIL}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:new_password CONTENT={{PASSWORD}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:password_confirm CONTENT={{PASSWORD}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Нап* EXTRACT=TXT
SET !VAR2 EVAL("var que=\"{{!EXTRACT}}\"")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:tc_answer CONTENT={{OTVET}}

Джаваскрипт:
скрытый текст
var j;
var que;
iimSet ("LOGIN", "name");
iimSet ("EMAIL", "ltbrltbr@list.ru");
iimSet ("PASSWORD", "pass");
iimSet ("OTVET", sim);
var sim = "";
var arr=que.split("Напишите",2);
var arr2=arr[1].split(" буквы",2);
var arr3=arr2[0].split(" и",2);
var arr4=arr3[0].split(",",4);
arr4.splice(3,0,arr3[1]);//получаем вопрос
var arr5=arr2[1].split(": ",2);
var arr6=arr5[1].split(" ",2);//получаем капчу (0-й эл.)
for(i=0;i<4;i++){
if(arr4[i]==" одиннадцатую"){
    sim+=arr6[0].substr(10,1);
    }else if(arr4[i]==" двадцатую"){
    sim+=arr6[0].substr(19,1);
}else if(arr4[i]==" первую"){
    sim+=arr6[0].substr(0,1);
    }else if(arr4[i]==" вторую"){
    sim+=arr6[0].substr(1,1);
    }else if(arr4[i]==" третью"){
    sim+=arr6[0].substr(2,1);
    }else if(arr4[i]==" четвертую"){
    sim+=arr6[0].substr(3,1);
    }else if(arr4[i]==" пятую"){
    sim+=arr6[0].substr(4,1);
    }else if(arr4[i]==" шестую"){
    sim+=arr6[0].substr(5,1);
    }else if(arr4[i]==" седьмую"){
    sim+=arr6[0].substr(6,1);
    }else if(arr4[i]==" восьмую"){
    sim+=arr6[0].substr(7,1);
    }else if(arr4[i]==" девятую"){
    sim+=arr6[0].substr(8,1);
    }else if(arr4[i]==" десятую"){
    sim+=arr6[0].substr(9,1);
    }else if(arr4[i]==" двенадцатую"){
    sim+=arr6[0].substr(11,1);
    }else if(arr4[i]==" тринадцатую"){
    sim+=arr6[0].substr(12,1);
    }else if(arr4[i]==" четырнадцатую"){
    sim+=arr6[0].substr(13,1);
    }else if(arr4[i]==" пятнадцатую"){
    sim+=arr6[0].substr(14,1);
    }else if(arr4[i]==" шестнадцатую"){
    sim+=arr6[0].substr(15,1);
    }else if(arr4[i]==" семнадцатую"){
    sim+=arr6[0].substr(16,1);
    }else if(arr4[i]==" восемнадцатую"){
    sim+=arr6[0].substr(17,1);
    }else if(arr4[i]==" девятнадцатую"){
    sim+=arr6[0].substr(18,1);
    }
}
j = iimPlay("JS/regmacr",60);

И ещё.. в строке j = iimPlay("JS/regmacr",60); что означает 60? число циклов?

что означает 60? число циклов?

:) нет

Выделить код

Код:

int ret_code = iimPlay ( String macro [, int timeout] )

это не помогает? _http://wiki.imacros.net/iMacros_for_Firefox#Javascript_Scripting_Interface

RuntimeError: Macro regmacr.iim not found (Error code: -930), хотя я создал regmacr.iim

Положи их в одну папку
или создай папку JS  и положи в нее макрос :)
У меня тут лежит макрос

Выделить код

Код:

C:\Users\Имя пользователя\Documents\iMacros\Macros\JS\

а тут Jscript

Выделить код

Код:

C:\Users\Имя пользователя\Documents\iMacros\Macros\

А можно сделать наоборот - записать в JS содержимое VAR1 (либо EXTRACT)? Потому что надо передать строку функции js на обработку..

Выделить код

Код:

String extract = iimGetLastExtract ( [int index_of_extracted_text]   )

_http://wiki.imacros.net/iimGetLastExtract#Syntax

Запуск макроса исправил, а с iimGetLastExtract что-то запутался... Вот так пробовал:

скрытый текст

Выделить код

Код:

var que;
var imacros;
Set imacros = CreateObject("imacros") ;
retcode = imacros.iimInit(); 
retcode = imacros.iimPlay(macro);
que = imacros.iimGetLastExtract();


Выдаёт ошибку SyntaxError: missing ; before statement (Error code: 991)
При некоторых вариантах также выдавало ошибку ReferenceError: CreateObject is not defined (Error code: 991)

Есть текстовое поле, описание товара.  В начало нужно добавить одну строчку.
Я так понимаю надо извлечь текстовое поле потом добавить к нему текст и вставить его на место. У меня не получается.

sosedus пишет

Есть текстовое поле, описание товара.  В начало нужно добавить одну строчку.
Я так понимаю надо извлечь текстовое поле потом добавить к нему текст и вставить его на место. У меня не получается.

правильно понимаешь

скрытый текст

Выделить код

Код:

'Для наглядности с URL  сделал 
SET !VAR1 .com
SET !VAR2 http://google
ADD !VAR2 {{!VAR1}}
URL GOTO={{!VAR2}}


26-01-2012 13:13:47

null28 пишет

Выдаёт ошибку SyntaxError

Пытаешься использовать Синтаксис Visual Basic Script в Джава скрипте

В том примере же указано, что это Visual Basic Script

пробуй так :

скрытый текст

Выделить код

Код:

var myObj = JSON.parse( iimGetLastExtract(1) );
alert(myObj[1]);

Попробовал вот так:

Выделить код

Код:

var mac;
//var JSON;
var retcode;
var s_n = "\n";
mac = "CODE:SET !REPLAYSPEED MEDIUM"+s_n;
mac += "URL GOTO=http://sitename.ru/forum/profile.php?mode=register"+s_n;
mac += "TAG POS=1 TYPE=A ATTR=TXT:Я<SP>согласен<SP>с<SP>этими<SP>условиями<SP>и<SP>мне<SP>13<SP>лет<SP>или<SP>больше"+s_n;
mac += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:username CONTENT=имя"+s_n;
mac += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:email CONTENT=ygjyjg@rambler.ru"+s_n;
mac += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:new_password CONTENT=йцукен"+s_n;
mac += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:password_confirm CONTENT=йцукен"+s_n;
mac +="TAG POS=1 TYPE=SPAN ATTR=TXT:Нап* EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
function second_passed() {
var que = mac.parse( iimGetLastExtract(1) );
alert(que[1]);
}
setTimeout(second_passed, 15000)

Не выскакивает окошко. А JSON в примере за что отвечает?

null28 пишет

А JSON в примере за что отвечает?

JSON (англ. JavaScript Object Notation) — текстовый формат обмена данными, основанный на JavaScript и обычно используемый именно с этим языком....
Wiki

_http://ru.wikipedia.org/wiki/JSON
_https://developer.mozilla.org/en/Using_JSON_in_Firefox

Вот когда, например, делаю var que = JSON.parse("[1,2,3]"); окошко с результатом вылазит
А если пишу var que = JSON.parse(iimGetLastExtract(1)); то ничего не происхоит... Как правильно туда iimGetLastExtract(1) засунуть?

upd: В той статье кстати написано - Name change: Please use iimGetExtract instead. See API enhancements for details.
Попробовал заменить на iimGetExtract, но всё равно ничего

Здравствуйте, подскажите.
Мне нужно при каждым заходом на сайт менять User Agent.
Вот часть моего скрипта:

скрытый текст

Выделить код

Код:

'Sample code A

set iim1= CreateObject ("imacros")
For m = 1 to 5
    iret = iim1.iimInit()
    iret = iim1.iimPlay("macro1")
iret = iim1.iimInit ("-useragent ""AAAAAAAAAAAAAAAAAAAAAAAA"" ")


Где АААААААААА  - замена User Agent. Нужно чтоб при каждым заходом вместо "ААААААААААА" вставлялся "ББББББББББББ", потом "ВВВВВВВВВВ"... с текстового файла.
Просто не знаю как вставлять текст из файла в vbs.     Извините, простой макрос мне не подходит. Спасибо.

svliller2007 пишет

Здравствуйте, подскажите.Мне нужно при каждым заходом на сайт менять User Agent.Вот часть моего скрипта:'Sample code Aset iim1= CreateObject ("imacros")For m = 1 to 5    iret = iim1.iimInit()    iret = iim1.iimPlay("macro1")iret = iim1.iimInit ("-useragent ""AAAAAAAAAAAAAAAAAAAAAAAA"" ")Где АААААААААА  - замена User Agent. Нужно чтоб при каждым заходом вместо "ААААААААААА" вставлялся "ББББББББББББ", потом "ВВВВВВВВВВ"... с текстового файла.Просто не знаю как вставлять текст из файла в vbs.     Извините, простой макрос мне не подходит. Спасибо.

Так не пойдет ? :

скрытый текст
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim objFileSystem, objInputFile, iim1
Dim strInputFile, inputData

Const OPEN_FILE_FOR_READING = 1

strOutputFile = "01.txt"

''''''''''''''''''''''''''''''''''''''''''' Файл находится в одной директории со скриптом

Set objFileSystem = CreateObject("Scripting.fileSystemObject")
Set objInputFile = objFileSystem.OpenTextFile(strOutputFile, _
  OPEN_FILE_FOR_READING)

''''''''''''''''''''''''''''''''''''''''''читаeм файл в массив inputData

inputData = Split(objInputFile.ReadAll, vbNewline)
set iim1= CreateObject ("imacros")
For m = 1 to 5
    iret = iim1.iimInit()
    iret = iim1.iimPlay("macro1")
iret = iim1.iimInit ("-useragent " & inputData(m) & " ")

Next

'''''''''''''''''''''''''''''''''''''''''''''''очистка памяти

objInputFile.Close
Set objFileSystem = Nothing

WScript.Quit(0)


'формат файла 01.тхт:
'AAAAAAAAAAAAAAA
'BBBBBBBBBBBBBBB
'CCCCCCCCCCCCC
'DDDDDDDDDDDDD

А как всё-таки правильно в JSON.parse() поместить iimGetLastExtract() ?

Спасибо. Только он не меняет User agent.
Создал 01.txt возле скрипта, порядок:

скрытый текст

Выделить код

Код:

'AAAAAAAAAAAAAAA
'BBBBBBBBBBBBBBB
'CCCCCCCCCCCCC
'DDDDDDDDDDDDD

Сам скрипт:

Dim objFileSystem, objInputFile, iim1
Dim strInputFile, inputData

Const OPEN_FILE_FOR_READING = 1

strOutputFile = "01.txt"


Set objFileSystem = CreateObject("Scripting.fileSystemObject")
Set objInputFile = objFileSystem.OpenTextFile(strOutputFile, _
  OPEN_FILE_FOR_READING)

inputData = Split(objInputFile.ReadAll, vbNewline)
set iim1= CreateObject ("imacros")
For m = 1 to 5
    iret = iim1.iimInit()
    iret = iim1.iimPlay("macro1")
iret = iim1.iimInit ("-useragent " & inputData(m) & " ")

Dim MyMacroCode
MyMacroCode = "CODE:"
MyMacroCode = MyMacroCode+"CLEAR" + vbNewLine
MyMacroCode = MyMacroCode+"http://www.iopus.com/imacros/demo/v5/user-agent.htm" + vbNewLine
MyMacroCode = MyMacroCode+"WAIT SECONDS=#DOWNLOADCOMPLETE#" + vbNewLine
MyMacroCode = MyMacroCode+"WAIT SECONDS=5" + vbNewLine
MyMacroCode = MyMacroCode+"CLEAR" + vbNewLine

  
'Run the first macro
iret = iim1.iimPlay(MyMacroCode)

    iret = iim1.iimExit()
Next


Этот скрипт закрывает окно программы, открывает и начинает наново. Но Юзер агент не меняется на "АААААААААА" "ВВВВВВВВВВ"...

svliller2007 пишет

Спасибо. Только он не меняет User agent.
Создал 01.txt возле скрипта, порядок:

Этот скрипт закрывает окно программы, открывает и начинает наново. Но Юзер агент не меняется на "АААААААААА" "ВВВВВВВВВВ"...

К сожалению я не могу проверить iOpus у меня нет? а так не работает.....
Но  этот код  рабочий на 100% Дальше копать надо в сторону iim.iimInit() Наверно :) 
Вот кусок работает :

скрытый текст

Выделить код

Код:

'Формат файла 01.тхт
'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322) 
'Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 6.0) 
'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4
'Opera/8.51 (Windows NT 5.1; U; en)
'Mozilla/4.0 (compatible; MSIE 4.01; Windows CE; PPC; 240x320
'Nokia6230/2.0+(04.43)+Profile/MIDP-2.0+Configuration/CLDC-1.1+UP.Link/6.3.0.0.0
'Googlebot/2.1 (+http://www.google.com/bot.html)
'Mozilla/5.0 (compatible; Yahoo! Slurp;http://help.yahoo.com/help/us/ysearch/slurp)
'_________________________________________________________________________
Dim objFileSystem, objInputFile, iim1
Dim strInputFile, inputData, m 

Const OPEN_FILE_FOR_READING = 1

strOutputFile = "01.txt"


Set objFileSystem = CreateObject("Scripting.fileSystemObject")
Set objInputFile = objFileSystem.OpenTextFile(strOutputFile, _
  OPEN_FILE_FOR_READING)

inputData = Split(objInputFile.ReadAll, vbNewline)

For m = 1 to 5
 
WScript.Echo inputData(m)

Next

null28 пишет

А как всё-таки правильно в JSON.parse() поместить iimGetLastExtract() ?

Не понятно по обрывкам кода Что вы пытаетесь сделать

Как сделать так что бы при выполнении скрипта, слева не отображалась панель плагина iMacros?

vov41k пишет

Как сделать так что бы при выполнении скрипта, слева не отображалась панель плагина iMacros?

Нажать F8

zello пишет

Не понятно по обрывкам кода Что вы пытаетесь сделать

Ну передать джаваскрипу извлечённый текст. Весь код я там выше писал:

Выделить код

Код:

var mac;
var retcode;
var s_n = "\n";
mac = "CODE:SET !REPLAYSPEED MEDIUM"+s_n;
mac += "URL GOTO=http://sitename.ru/forum/profile.php?mode=register"+s_n;
mac += "TAG POS=1 TYPE=A ATTR=TXT:Я<SP>согласен<SP>с<SP>этими<SP>условиями<SP>и<SP>мне<SP>13<SP>лет<SP>или<SP>больше"+s_n;
mac += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:username CONTENT=имя"+s_n;
mac += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:profile.php ATTR=NAME:email CONTENT=ygjyjg@rambler.ru"+s_n;
mac += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:new_password CONTENT=123"+s_n;
mac += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:profile.php ATTR=NAME:password_confirm CONTENT=123"+s_n;
mac +="TAG POS=1 TYPE=SPAN ATTR=TXT:Нап* EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
function second_passed() {
var que = JSON.parse(iimGetLastExtract(0));
alert(que[0]);
}
setTimeout(second_passed, 15000
null28 пишет
zello пишет

Не понятно по обрывкам кода Что вы пытаетесь сделать

Ну передать джаваскрипу извлечённый текст. Весь код я там выше писал:

Выделить код

Код:

var mac;
var retcode;
var s_n = "\n";
var w;
mac = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
mac += "URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=6"+s_n;
mac += "TAG POS=1 TYPE=DIV ATTR=class:incqbox EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);
   alert(w);

Во! Наконец-то получилось! Я в самом начале даже почти так же пытался...  Похоже всё дело было в строчке CODE:SET !EXTRACT_TEST_POPUP NO

null28 пишет

Во! Наконец-то получилось! Я в самом начале даже почти так же пытался...  Похоже всё дело было в строчке CODE:SET !EXTRACT_TEST_POPUP NO

НЕТ НЕ ПРАВИЛЬНО!
!EXTRACT_TEST_POPUP NO нужен для других целей
просто забыл стереть :)
такой код тоже работает :

скрытый текст
var mac;
//var JSON;
var retcode;
var s_n = "\n";
var w;
var i;
//mac = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
mac = "CODE:URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=6"+s_n;
mac += "WAIT SECONDS=3"+s_n;
mac += "TAG POS=1 TYPE=DIV ATTR=class:incqbox EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);
alert(w);

zello пишет
vov41k пишет

Как сделать так что бы при выполнении скрипта, слева не отображалась панель плагина iMacros?

Нажать F8

Как в скрипте это прописать?

У меня просто скрипт перезагружается раз в час - и все это время панель iMacros отображается.
Нужно что бы нее не было видно.

Как в начале скрипта эмулировать нажатие на F8?

Выделить код

Код:

VERSION BUILD=7401110 RECORDER=FX
TAB T=1
URL GOTO=ССЫЛКА НА САЙТ
WAIT SECONDS=2
CLICK X=236 Y=127
WAIT SECONDS=2
CLICK X=354 Y=214
WAIT SECONDS=3600 // обновление через ЧАС
URL GOTO=imacros://run/?m=56465467.iim
vov41k пишет
zello пишет
vov41k пишет

Как сделать так что бы при выполнении скрипта, слева не отображалась панель плагина iMacros?

Нажать F8

Как в скрипте это прописать?

Так не подходит ?

Выделить код

Код:

Option Explicit
Dim WshShell,macr,start,i
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
macr="CODE:"
macr=macr+"URL GOTO=http://site.com/"+vbNewLine
macr=macr+"WAIT SECONDS=2"+vbNewLine
macr=macr+"CLICK X=236 Y=127"+vbNewLine
macr=macr+"WAIT SECONDS=2"+vbNewLine
macr=macr+"CLICK X=354 Y=214"+vbNewLine
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
set WshShell=WScript.CreateObject("Wscript.Shell")
Dim wmiObj, proCollection, scrShell
Set wmiObj = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set proCollection = wmiObj.ExecQuery("Select * from Win32_Process Where Name = 'firefox.exe'")
If proCollection.Count = 0 Then
WshShell.Run "Firefox"
WScript.sleep 2000
WshShell.SendKeys "{F8}"
End If
'выполняется  1000 часов
i = 1
Do while i< 1100
If i > 1000 Then 
Exit Do
End if

start = iim1.iimInit()
start = iim1.iimPlay(macr)
'Заснул на час 
WScript.sleep 3600000  
i=i+1
Loop

зы:Firefox Должен быть не запущен

Ребята подскажите можно сделать так чтоб по окончании всей записи, макросы начинали воспроизводить снача автоматически, а не каждый раз нажимать кнопку ВОСПРОИЗВЕСТИ? если можно то подскажите плиз как? зарание спасибо

Ребята подскажите как настроить что имакрос выполнял двойной клик  (double click). Один клик все гуд а вот с двумя не получается , может кто то сталкивался с такой ситуацией и подскажет  как это можно сделать.

caxapok2012 пишет

Ребята подскажите можно сделать так чтоб по окончании всей записи, макросы начинали воспроизводить снача автоматически, а не каждый раз нажимать кнопку ВОСПРОИЗВЕСТИ? если можно то подскажите плиз как? зарание спасибо

кнопка" Воспр. (Цикл)"

C firefox 10.0.2 несовместимо? И в обход установить никак нельзя?

Мужики, подскажите как в iMacros сделать вставку текста из файла.
Например:
... идет макрос, 
дальше обращается к файлу, 
вставляет из него текст в определенное поле....

Что-то типа:
VERSION BUILD=7401110 RECORDER=FX
SET !DATASOURCE file.txt
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:im-textarea CONTENT={{name}}
TAG POS=1 TYPE=DIV ATTR=ID:sendMesseng

в каком формате записывать данные в file.txt чтобы они вводились в поле CONTENT={{name}}
или может сделать в файле csv, тогда как?

Klaid пишет

Мужики, подскажите как в iMacros сделать вставку текста из файла.
Например:
... идет макрос, 
дальше обращается к файлу, 
вставляет из него текст в определенное поле....

Что-то типа:
VERSION BUILD=7401110 RECORDER=FX
SET !DATASOURCE file.txt
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:im-textarea CONTENT={{name}}
TAG POS=1 TYPE=DIV ATTR=ID:sendMesseng

в каком формате записывать данные в file.txt чтобы они вводились в поле CONTENT={{name}}
или может сделать в файле csv, тогда как?

Файл keys.csv
В данном примере данные записаны 1 строка 1 значеие

скрытый текст
CMDLINE !DATASOURCE keys.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 129
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://site.com
WAIT SECONDS=25
TAG POS=1 TYPE=TEXTAREA ATTR=* CONTENT={{!COL1}}
.....................................................

zello

zello пишет

Файл keys.csv В данном примере данные записаны 1 строка 1 значеие

на пальцах не понимаю, можно пример записи данных в файл csv?

zello
сейчас попробовал, не работает ваш вариант макроса

Klaid пишет

zello
сейчас попробовал, не работает ваш вариант макроса

Пример Файла keys.csv

скрытый текст
скачать новинки игры
новинки игр для пк 2012
мир игр для пк
компьютерные игры новые
компьютерные игры новости
последние новинки игр пк
все лучшие игры
скачать последние игры
новые игры в 2012
pc игры 2012 года

Пример  рабочий  я с ним работаю:) Это парсер вордстата Так что утверждение что пример не работает не приемлемо ..............
Из особенностей айМакроса - айМакрос не работает с русскими буквами
Для решения данной проблемы  я использовал следующее :
Создается файл csv  с текстом в кодировке UTF-8, далее чистим файл И вставляем в него текст русский созданный в текст файле и сохраненный в кодировке UTF-8
Вы скорее всего писали в файл русский текст в кодировке Windows-1251

Добрый день. Я уж и не думал, что найду живого форума по имакросу. Zello, спасибо что ты так доходчиво и быстро отвечеашь. У меня тоже есть вопрос))
1. Как сделать так, чтобы если d<1.3 макрос стартовал заново.
2. Или продолжил работу, но со следующей строчки, где d<1.2

URL GOTO=http://www.xe.com/ucc/convert/?Amount=1&From=EUR&To=USD
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TD ATTR=TXT:*<SP>USD&&WIDTH:46%&&ALIGN:left EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.3){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=EuroRate.csv
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.2){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}

Очень жду ответа. Спасибо)

zello

zello пишет

Из особенностей айМакроса - айМакрос не работает с русскими буквами

дело не в этом, я для примера цифры взял. Надеюсь тут ВСЕ понимают что кодировка теперь не при чем?

Ещё раз пройдемся по синтаксису макроса, там явно где-то косяк, но никак не соображу где:

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\Users\Klaid\Documents\iMacros\Datasources\file.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT="{{!COL1}}"
WAIT SECONDS=3
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT="{{!COL2}}"
WAIT SECONDS=3

в файле 3 строчки сделал, данные:

            1колонка 2колонка 3 колонка
строка     11                12             13
                21                22             23
                31                32             33

первую строчку он вставляет, а когда до второй доходит пишет undefined во всем поле, удаляя первую строчку.
Как вылечить?

А почему так ?

TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT="{{!COL2}}"

Так не работает ?

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL2}}
h2o2 пишет

Добрый день. Я уж и не думал, что найду живого форума по имакросу. Zello, спасибо что ты так доходчиво и быстро отвечеашь. У меня тоже есть вопрос))
1. Как сделать так, чтобы если d<1.3 макрос стартовал заново.
2. Или продолжил работу, но со следующей строчки, где d<1.2

URL GOTO=http://www.xe.com/ucc/convert/?Amount=1&From=EUR&To=USD
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TD ATTR=TXT:*<SP>USD&&WIDTH:46%&&ALIGN:left EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.3){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=EuroRate.csv
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.2){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}

Очень жду ответа. Спасибо)

Поступить наоборот Переписать все в JS  и от туда работать с макросом
Проще и удобней JS Создаст на лету макрос , получит из него данные обработает их и  передаст обратно
вот пример передачи данных в макрос ис Джава скрипта:
  http://forum.mozilla-russia.org/viewtop … 01#p541401
Вот пример получения данных из макроса в Джава скрипт:
http://forum.mozilla-russia.org/viewtop … 06#p542706
прерывание покопать ....

Выделить код

Код:

//....................
 if(d < 1.3)
{
         break;
                     }

 if(d < 1.2)
{
    Alert(\"Euro is below 1.3 USD.\");
                   }
//............

Возникла следующая проблема.

Нужно запустить скрипт imacros не со стандартной папки а любого другого места делал через командную строку

"C:\Program Files\Mozilla Firefox\firefox.exe"  "file:///D1.iim"   - просто открывает файл без запуска на выполнение

также пытался выполнить javascript. Если просто вставить javascript в адрессную строку браузера то все прекрасно работает если же свойствами html перед этим создав страничку html с переходом по скрипту ничего не происходит.

Пытался и таким методом:

<html>
<body>
<a href="file:///C9.js">Click to run iMacros</font></a>
</body>
</html>

Ничего не получаеться.



Вопрос: Подскажите как запустить скрипт с помощью командной строки ?

zello

zello пишет

А почему так ? TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT="{{!COL2}}"
Так не работает ? TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL2}}

и так пробовал, ей все равно есть там кавычки или нет.
На выходе все равно получаем:
undefined

zello пишет

Поступить наоборот Переписать все в JS  и от туда работать с макросом
Проще и удобней JS Создаст на лету макрос , получит из него данные обработает их и  передаст обратно
вот пример передачи данных в макрос ис Джава скрипта:

Если бы я умел, то давно бы написал на JS :-( Я посчитал, что имакрос легче понять на моем уровне.  Может все же подскажешь, примером, как мне сделать 2й пунктик?

crashcrash пишет

Возникла следующая проблема.Нужно запустить скрипт imacros не со стандартной папки а любого другого места делал через командную строку"C:\Program Files\Mozilla Firefox\firefox.exe"  "file:///D1.iim"   - просто открывает файл без запуска на выполнениетакже пытался выполнить javascript. Если просто вставить javascript в адрессную строку браузера то все прекрасно работает если же свойствами html перед этим создав страничку html с переходом по скрипту ничего не происходит.Пытался и таким методом:<html><body> <a href="file:///C9.js">Click to run iMacros</font></a></body></html>Ничего не получаеться.Вопрос: Подскажите как запустить скрипт с помощью командной строки ?

Помогите в моем вопросе пожалуйста. Неужели никто с этим не сталкивался?

Klaid пишет

zello

zello пишет

Из особенностей айМакроса - айМакрос не работает с русскими буквами

дело не в этом, я для примера цифры взял. Надеюсь тут ВСЕ понимают что кодировка теперь не при чем?

Ещё раз пройдемся по синтаксису макроса, там явно где-то косяк, но никак не соображу где:

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\Users\Klaid\Documents\iMacros\Datasources\file.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT="{{!COL1}}"
WAIT SECONDS=3
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT="{{!COL2}}"
WAIT SECONDS=3

в файле 3 строчки сделал, данные:

            1колонка 2колонка 3 колонка
строка     11                12             13
                21                22             23
                31                32             33

первую строчку он вставляет, а когда до второй доходит пишет undefined во всем поле, удаляя первую строчку.
Как вылечить?

если у вас в файле данные описаны как вы показали то скрипт ошибок не делает , ошибка в файле данных

Формат файла с 1 колонкой :
Естественно SET !DATASOURCE_COLUMNS 1
.......
ААА
БББ
ССС
............

Формат файла с 2 колонками(полями)
SET !DATASOURCE_COLUMNS 2
..............
ААА,БББ
ССС,ДДД
ЕЕЕ,ФФФ
...............

Формат файла с 3 полями
SET !DATASOURCE_COLUMNS 3
......................
ААА,БББ,ВВВ
ГГГ,ДДД,ЕЕЕ
....................

Вообще файл csv = comma separated value
ваш фал следует записать либо так :
11,12,13
21,22,23
31,32,33
Выбираем значения {{!COL1}} {{!COL2}} {{!COL3}} в коде макроса SET !DATASOURCE_COLUMNS 3
Либо так :
11,12,12,21,22,23,31,32,33
Выбираем значения полей так : {{!COL1}}{{!COL2}}{{!COL3}}{{!COL4}}{{!COL5}}{{!COL6}}{{!COL7}}{{!COL8}}{{!COL9}} в коде макроса SET !DATASOURCE_COLUMNS 9

10-03-2012 10:59:21

crashcrash пишет

Возникла следующая проблема.

Нужно запустить скрипт imacros не со стандартной папки а любого другого места делал через командную строку

"C:\Program Files\Mozilla Firefox\firefox.exe"  "file:///D1.iim"   - просто открывает файл без запуска на выполнение

также пытался выполнить javascript. Если просто вставить javascript в адрессную строку браузера то все прекрасно работает если же свойствами html перед этим создав страничку html с переходом по скрипту ничего не происходит.

Пытался и таким методом:

<html>
<body>
<a href="file:///C9.js">Click to run iMacros</font></a>
</body>
</html>

Ничего не получаеться.



Вопрос: Подскажите как запустить скрипт с помощью командной строки ?

_http://wiki.imacros.net/Browser_Automation#Command_Line_Interface_and_Batch_Files

zello  спасибо за ссылку


Пробывал таким способом

echo Start iMacros batch file
imacros -macro #nemk
echo Done!  - Ничего не происходит

Пробывал и таким способом

"C:\Program Files\Mozilla Firefox\firefox.exe" imacros -macro #nemk  - Запускаеться тупо браузер без выполнения макроса

Прошу предоставить пример *батника. Заранее спасибо за ответ.

Выполение требуеться произвести в браузере firefox с установленным плагином  imacros . Тоесть не предусмотрена установка полной версии imacros

zello

zello пишет

если у вас в файле данные описаны как вы показали то скрипт ошибок не делает , ошибка в файле данных

Формат файла с 1 колонкой :
Естественно SET !DATASOURCE_COLUMNS 1
.......
ААА
БББ
ССС
............

Формат файла с 2 колонками(полями)
SET !DATASOURCE_COLUMNS 2
..............
ААА,БББ
ССС,ДДД
ЕЕЕ,ФФФ
...............

Формат файла с 3 полями
SET !DATASOURCE_COLUMNS 3
......................
ААА,БББ,ВВВ
ГГГ,ДДД,ЕЕЕ
....................

Вообще файл csv = comma separated value
ваш фал следует записать либо так :
11,12,13
21,22,23
31,32,33
Выбираем значения {{!COL1}} {{!COL2}} {{!COL3}} в коде макроса SET !DATASOURCE_COLUMNS 3
Либо так :
11,12,12,21,22,23,31,32,33
Выбираем значения полей так : {{!COL1}}{{!COL2}}{{!COL3}}{{!COL4}}{{!COL5}}{{!COL6}}{{!COL7}}{{!COL8}}{{!COL9}} в коде макроса SET !DATASOURCE_COLUMNS 9

Поставил данные в 1 столбик, все остальное удалил, теперь так выглядит:
11
21

Запускаю макрос, все равно выдает ошибку undefined .

Давайте проверим синтаксис макроса, может что-то неправильно записано:

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\Users\user\Documents\iMacros\Datasources\file.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL1}}
WAIT SECONDS=10
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL2}}
WAIT SECONDS=10

Klaid пишет

zello

zello пишет

если у вас в файле данные описаны как вы показали то скрипт ошибок не делает , ошибка в файле данных

Формат файла с 1 колонкой :
Естественно SET !DATASOURCE_COLUMNS 1
.......
ААА
БББ
ССС
............

Формат файла с 2 колонками(полями)
SET !DATASOURCE_COLUMNS 2
..............
ААА,БББ
ССС,ДДД
ЕЕЕ,ФФФ
...............

Формат файла с 3 полями
SET !DATASOURCE_COLUMNS 3
......................
ААА,БББ,ВВВ
ГГГ,ДДД,ЕЕЕ
....................

Вообще файл csv = comma separated value
ваш фал следует записать либо так :
11,12,13
21,22,23
31,32,33
Выбираем значения {{!COL1}} {{!COL2}} {{!COL3}} в коде макроса SET !DATASOURCE_COLUMNS 3
Либо так :
11,12,12,21,22,23,31,32,33
Выбираем значения полей так : {{!COL1}}{{!COL2}}{{!COL3}}{{!COL4}}{{!COL5}}{{!COL6}}{{!COL7}}{{!COL8}}{{!COL9}} в коде макроса SET !DATASOURCE_COLUMNS 9

Поставил данные в 1 столбик, все остальное удалил, теперь так выглядит:
11
21

Запускаю макрос, все равно выдает ошибку undefined .

Давайте проверим синтаксис макроса, может что-то неправильно записано:

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\Users\user\Documents\iMacros\Datasources\file.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL1}}
WAIT SECONDS=10
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL2}}
WAIT SECONDS=10

Правильно выдает Он ошибку !
Вы пытаетесь из файла с одним полем(колонкой ) выбирать 2 поля
Для того чтоб данный макрос не выдавал ошибку правильная запись файла ресурсов : 11,21
Я же показывал сверху
Если вы пытаетесь вводить своим макросом данные которые могут содержать одно поле то макрос может быть короче

Выделить код

Код:

VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
'адрес файла ресурсов если файл лежит в штатной папке можно не писать 
SET !DATASOURCE file.csv
' одна колонка  в файле ресурсов (имеет заголовок DATA)
SET !DATASOURCE_COLUMNS 1
'Так как в файле ресурсов есть заголовок читаем файл со 2 строки
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL1}}
WAIT SECONDS=10
' Для того чтоб файл читался построчно на кнопке установить кол-во циклов равное кол-ву строк в файле 
'Формат файла ресурсов : 
DATA
01.01.2012
02.01.2012
03.01.2012
crashcrash пишет

zello  спасибо за ссылку


Пробывал таким способом

echo Start iMacros batch file
imacros -macro #nemk
echo Done!  - Ничего не происходит

Пробывал и таким способом

"C:\Program Files\Mozilla Firefox\firefox.exe" imacros -macro #nemk  - Запускаеться тупо браузер без выполнения макроса

Прошу предоставить пример *батника. Заранее спасибо за ответ.

Выполение требуеться произвести в браузере firefox с установленным плагином  imacros . Тоесть не предусмотрена установка полной версии imacros

:)

Выделить код

Код:

@echo off
rem start fire fox start macros close
cd\
rem У меня не переходит по прямому пути потому чтоб не париться я делал так 
rem Это адрес для Windows 7 64
cd C:\Program Files (x86)
cd Mozilla Firefox
rem Без Этого просто запускается лиса, как то с этим криво -)
start /MIN firefox.exe 
firefox.exe http://run.imacros.net/?m=nemk.iim
exit||exit

zello

Записал макрос как Вы сказали:

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
'адрес файла ресурсов если файл лежит в штатной папке можно не писать
SET !DATASOURCE file.csv
' одна колонка  в файле ресурсов (имеет заголовок DATA)
SET !DATASOURCE_COLUMNS 1
'Так как в файле ресурсов есть заголовок читаем файл со 2 строки
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:im-textarea CONTENT={{!COL1}}
WAIT SECONDS=10
' Для того чтоб файл читался построчно на кнопке установить кол-во циклов равное кол-ву строк в файле

В файл csv записал:
DATA
01.01.2012
02.01.2012

При запуске ставлю количество циклов: 2
Теперь макрос добавляет первую строчку только, ошибку перестал выдавать.

Нужно чтобы он добавлял первую и вторую строчку. Как мне его переделать?

При запуске ставлю количество циклов: 2
Теперь макрос добавляет первую строчку только, ошибку перестал выдавать.

Нужно чтобы он добавлял первую и вторую строчку. Как мне его переделать?

Формат Файла keys.csv :

скачать новинки игры,новинки игр для пк 2012,мир игр для пк,компьютерные игры новые,компьютерные игры новости

сам макрос

Выделить код

Код:

VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE keys.csv
SET !DATASOURCE_COLUMNS 5
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
CLEAR
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?pid=535468#p535468
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:post.php?tid=18806 ATTR=NAME:req_message CONTENT={{!COL1}}<BR>{{!COL2}}<BR>{{!COL3}}<BR>{{!COL4}}<BR>{{!COL5}}<BR>

Результат работы :

скачать новинки игры
новинки игр для пк 2012
мир игр для пк
компьютерные игры новые
компьютерные игры новости

crashcrash пишет

zello  спасибо за ссылку


Пробывал таким способом

echo Start iMacros batch file
imacros -macro #nemk
echo Done!  - Ничего не происходит

Пробывал и таким способом

"C:\Program Files\Mozilla Firefox\firefox.exe" imacros -macro #nemk  - Запускаеться тупо браузер без выполнения макроса

Прошу предоставить пример *батника. Заранее спасибо за ответ.

Выполение требуеться произвести в браузере firefox с установленным плагином  imacros . Тоесть не предусмотрена установка полной версии imacros

start /B "C:\Program Files\Mozilla Firefox\firefox.exe"   http://run.imacros.net/?m=название_файла.iim
Сохраняешь с расширением bat

10-03-2012 20:24:59
Подскажите, пожалуйста, Нужно чтобы imacros на странице определял фразу, после чего
1. Если фразу нашел - выполняет URL GOTO=Ссылка№1 и стоп.
2. Если фразу не нашел, ищет вторую фразу
3. Если вторую фразу нашел - выполняет URL GOTO=Ссылка №2 и стоп
4. Если вторую фразу не нашел - REFRESH и опять начинает как в первом пункте и так далее.
  Если можно, кодом сразу, я в терминологии ничего еще не понимаю толком. Спасибо.

Alexzhmail пишет

10-03-2012 20:24:59
Подскажите, пожалуйста, Нужно чтобы imacros на странице определял фразу, после чего
1. Если фразу нашел - выполняет URL GOTO=Ссылка№1 и стоп.
2. Если фразу не нашел, ищет вторую фразу
3. Если вторую фразу нашел - выполняет URL GOTO=Ссылка №2 и стоп
4. Если вторую фразу не нашел - REFRESH и опять начинает как в первом пункте и так далее.
  Если можно, кодом сразу, я в терминологии ничего еще не понимаю толком. Спасибо.

Такое в аймакрос не сделать без Джава
Вот в Этом направлении копать надо
Скрипт рабочий сохраняем как JS файл и запускаем из панели макроса

скрытый текст
var mac;
var retcode;
var s_n = "\n";
var w;
var constanta;
constanta ="zello пишет: Так в VAR1 запишется результат из JS";
mac = "CODE:URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=6"+s_n;
mac += "WAIT SECONDS=3"+s_n;
mac += "TAG POS=1 TYPE=DIV ATTR=class:incqbox EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);

alert("Значение скопированное со страницы:"+s_n+w);
if(constanta===w)
{
alert("Значение для сравнения:"+s_n+constanta+s_n+"равно:"+s_n+"Скопированному значению:"+s_n+w);
}


   else{ alert("Значение не равно");}

zello пишет
Alexzhmail пишет

10-03-2012 20:24:59
Подскажите, пожалуйста, Нужно чтобы imacros на странице определял фразу, после чего
1. Если фразу нашел - выполняет URL GOTO=Ссылка№1 и стоп.
2. Если фразу не нашел, ищет вторую фразу
3. Если вторую фразу нашел - выполняет URL GOTO=Ссылка №2 и стоп
4. Если вторую фразу не нашел - REFRESH и опять начинает как в первом пункте и так далее.
  Если можно, кодом сразу, я в терминологии ничего еще не понимаю толком. Спасибо.

Такое в аймакрос не сделать без Джава
Вот в Этом направлении копать надо
Скрипт рабочий сохраняем как JS файл и запускаем из панели макроса

скрытый текст
var mac;
var retcode;
var s_n = "\n";
var w;
var constanta;
constanta ="zello пишет: Так в VAR1 запишется результат из JS";
mac = "CODE:URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=6"+s_n;
mac += "WAIT SECONDS=3"+s_n;
mac += "TAG POS=1 TYPE=DIV ATTR=class:incqbox EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);

alert("Значение скопированное со страницы:"+s_n+w);
if(constanta===w)
{
alert("Значение для сравнения:"+s_n+constanta+s_n+"равно:"+s_n+"Скопированному значению:"+s_n+w);
}


   else{ alert("Значение не равно");}

А что дальше - фразу нашло - переход на страницу, а если не нашло - поиск второй фразы.
И еще назрел вопрос: Если во фразе есть пару меняющихся символов, можно ли их проигнорировать?

zello
Спасибо, со строчкой теперь работает.

А если у меня данные записаны в файле в 1 столбик но несколько строчек, например:

скачать новинки игры
новинки игр для пк 2012
мир игр для пк
компьютерные игры новые
компьютерные игры новости

и результат работы я хочу получить такой же:

скачать новинки игры
новинки игр для пк 2012
мир игр для пк
компьютерные игры новые
компьютерные игры новости

тогда как должен выглядеть этот макрос?

Выделить код

Код:

VERSION BUILD=7401110 RECORDER=FX
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE keys.csv
SET !DATASOURCE_COLUMNS 5
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
CLEAR
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?pid=535468#p535468
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:post.php?tid=18806 ATTR=NAME:req_message CONTENT={{!COL1}}<BR>{{!COL2}}<BR>{{!COL3}}<BR>{{!COL4}}<BR>{{!COL5}}<BR>

Для данного варианта данные стоит записывать так как было показано........
Потому как для перебора данных в столбик придется перезапускать макрос
Удобней делать так как я показывал  Данные записать примерно так :

скачать новинки игры,новинки игр для пк 2012,мир игр для пк
современные игры,новые симуляторы,свежие стратегии

при каждом запуске будет выдаваться 3 значения

zello

а можно заставить макрос брать данные из файла txt таким же образом?

Klaid пишет

zello

а можно заставить макрос брать данные из файла txt таким же образом?

Ну например плагин Этого не делает
Может делает само приложение

zello

zello пишет

Ну например плагин Этого не делает Может делает само приложение

Т.е он только может забирать данные из файла csv?

Klaid пишет

zello

zello пишет

Ну например плагин Этого не делает Может делает само приложение

Т.е он только может забирать данные из файла csv?

У меня да :)
А в чем проблема то ? Большие объемы информации ? Тогда iMacros  как средство будет малоэффективен

Спасибо за ответы по поводу запуска через командную строку

Но этот способ "C:\Program Files\Mozilla Firefox\firefox.exe"   http://run.imacros.net/?m=nemk.iim  запускает макросы со стандартной папки imacros а как запустить допустим с диска D:\

Заранее спасибо за ответ.

crashcrash пишет

Спасибо за ответы по поводу запуска через командную строку

Но этот способ "C:\Program Files\Mozilla Firefox\firefox.exe"   http://run.imacros.net/?m=nemk.iim  запускает макросы со стандартной папки imacros а как запустить допустим с диска D:\

Заранее спасибо за ответ.

Изменить в настройках путь к паке с макросами

zello  мне это нужно сделать программно. Тоесть ручками ничего писаться недолжно.  Может у кого есть батник или самописная прога для программной смены папки к макросам?

crashcrash пишет

zello  мне это нужно сделать программно. Тоесть ручками ничего писаться недолжно.  Может у кого есть батник или самописная прога для программной смены папки к макросам?

а не достаточно будет один раз поменять и все?

zello пишет
Alexzhmail пишет

10-03-2012 20:24:59
Подскажите, пожалуйста, Нужно чтобы imacros на странице определял фразу, после чего
1. Если фразу нашел - выполняет URL GOTO=Ссылка№1 и стоп.
2. Если фразу не нашел, ищет вторую фразу
3. Если вторую фразу нашел - выполняет URL GOTO=Ссылка №2 и стоп
4. Если вторую фразу не нашел - REFRESH и опять начинает как в первом пункте и так далее.
  Если можно, кодом сразу, я в терминологии ничего еще не понимаю толком. Спасибо.

Такое в аймакрос не сделать без Джава
Вот в Этом направлении копать надо
Скрипт рабочий сохраняем как JS файл и запускаем из панели макроса

скрытый текст
var mac;
var retcode;
var s_n = "\n";
var w;
var constanta;
constanta ="zello пишет: Так в VAR1 запишется результат из JS";
mac = "CODE:URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=6"+s_n;
mac += "WAIT SECONDS=3"+s_n;
mac += "TAG POS=1 TYPE=DIV ATTR=class:incqbox EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);

alert("Значение скопированное со страницы:"+s_n+w);
if(constanta===w)
{
alert("Значение для сравнения:"+s_n+constanta+s_n+"равно:"+s_n+"Скопированному значению:"+s_n+w);
}


   else{ alert("Значение не равно");}

Подскажите еще что подставить дальше при выполнении условия. Мне нужно, чтобы при этом начал работать следующий скрипт типа:
http://run.imacros.net/?m=Avto_melnica.iim
Если же условия не соблюдены, то:
REFRESH
http://run.imacros.net/?m=Другой_скрипт.iim

На данный момент я застопорен на этом:
var mac;
var retcode;
var s_n = "\n";
var w;
var constanta;
constanta ="Bugory";
mac = "SET !TIMEOUT_PAGE 5"+s_n;
mac = "SET !EXTRACT_TEST_POPUP NO"+s_n;
mac = "CODE:URL GOTO=http://www.igra3k.ru/user/interface#/account/journal"+s_n;
mac += "TAG POS=1 TYPE=SELECT FORM=ACTION:/account/journal ATTR=ID:action_type CONTENT=%227"+s_n;
mac += "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:filter ATTR=VALUE:Отфильтровать"+s_n;
mac += "WAIT SECONDS=3"+s_n;
mac += "TAG POS=1 TYPE=A ATTR=TXT:Bugory* EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);


if(constanta===w)
{

Помогите, пожалуйста

h2o2  нет это очень долго так как я пишу прогу и она будет устанавливаться на 40 машин, а теперь представь к каждой машине подойти и вручную это сделать...

Подскажите еще что подставить дальше при выполнении условия. Мне нужно, чтобы при этом начал работать следующий скрипт типа:
http://run.imacros.net/?m=Avto_melnica.iim
Если же условия не соблюдены, то:
REFRESH
http://run.imacros.net/?m=Другой_скрипт.iim

На данный момент я застопорен на этом:

var mac;
var retcode;
var s_n = "\n";
var w;
var constanta;
constanta ="Bugory";
mac = "SET !TIMEOUT_PAGE 5"+s_n;
mac = "SET !EXTRACT_TEST_POPUP NO"+s_n;
mac = "CODE:URL GOTO=http://www.igra3k.ru/user/interface#/account/journal"+s_n;
mac += "TAG POS=1 TYPE=SELECT FORM=ACTION:/account/journal ATTR=ID:action_type CONTENT=%227"+s_n;
mac += "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:filter ATTR=VALUE:Отфильтровать"+s_n;
mac += "WAIT SECONDS=3"+s_n;
mac += "TAG POS=1 TYPE=A ATTR=TXT:Bugory* EXTRACT=TXT"+s_n;
retcode = iimPlay(mac);
w = iimGetLastExtract(1);


Помогите, пожалуйста

А Эти манипуляции с какой целью?

mac = "SET !TIMEOUT_PAGE 5"+s_n;
mac = "SET !EXTRACT_TEST_POPUP NO"+s_n;

___________________________________
Дальше делай сам

if(constanta===w)
{
var mac1;
mac1="CODE:URL GOTO=http://run.imacros.net/?m=Avto_melnica.iim"+s_n;
mac1+="WAIT SECONDS 5";
retcode = iimPlay(mac1);
}

crashcrash пишет

h2o2  нет это очень долго так как я пишу прогу и она будет устанавливаться на 40 машин, а теперь представь к каждой машине подойти и вручную это сделать...

ну хорошо. если ты собираешься ложить скрипт куда-то на диск всех 40ка машин, то почему бы не положить сразу куда надо? расшарь на всех машинах папку для скриптов (если хочешь в последствии обновлять скрипт) и будешь удаленно туда ложить его. А можно в автозагрузку или заданиях прописать задачу которая бы смотрела в сети папку и при появлении *.IIM ложила куда тебе надо на локальный диск.

15-03-2012 14:35:32
Zello, я намылил пару вопросов. не дошли?

h2o2 пишет
crashcrash пишет

h2o2  нет это очень долго так как я пишу прогу и она будет устанавливаться на 40 машин, а теперь представь к каждой машине подойти и вручную это сделать...

ну хорошо. если ты собираешься ложить скрипт куда-то на диск всех 40ка машин, то почему бы не положить сразу куда надо? расшарь на всех машинах папку для скриптов (если хочешь в последствии обновлять скрипт) и будешь удаленно туда ложить его. А можно в автозагрузку или заданиях прописать задачу которая бы смотрела в сети папку и при появлении *.IIM ложила куда тебе надо на локальный диск.

15-03-2012 14:35:32
Zello, я намылил пару вопросов. не дошли?

не дошли

zello пишет

?не дошли

мое мыло nespider@mail.ru
вопрос: мне надо чтобы скрипт работал след. образом

...

циклирую скрипт

var ret;

try
    {
    do
...
    return;
}

h2o2
Привет! Отправил тебе на почту вопрос, очень надеюсь, что найдешь время ответить. Почта pryaha@spartak.ru

нужна помощь:
нужно условие для imacros
.....
если TAG POS=2 TYPE=IMG ATTR=SRC:http://www.site.ru/images/icons/list.png или TAG POS=2 TYPE=IMG ATTR=SRC:http://www.site.ru/images/icons/face.png
то TAG POS=2 TYPE=SPAN ATTR=TXT:×
иначе ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=IMG ATTR=SRC:http://www.site.ru/images/icons/ret.png
TAG POS=3 TYPE=IMG ATTR=SRC:http://www.site.ru/images/icons/ok.png
.....

просьба, продублировать на e-mail - spy686@gmail.com

Запускаю из .js-файла  .iim-файл с циклом, который берёт значения из .csv.  Но при этом не получается переход на новую строку цикла, а просто несколько раз отрабатывается 1-я строка. Вот код .js-файла, что в нём не так, подскажите? (В js я не силён, утащил кусок кода с итальянского форума и дописал немного от себя):

---
var loopNumber=2, i, n, Loop=n;
for(n=1;n<=loopNumber;n++) {
i = iimPlay("Current");
}
---
Прим.: я знаю, что можно запускать цикл без всякого js, но мне надо запускать несколько циклов последовательно.

Alexnadr пишет

Запускаю из .js-файла  .iim-файл с циклом, который берёт значения из .csv

В iim файле не должно быть циклов если он запускается из js

Js  создает при каждом запуске  новый iim  файл и передает в него данные
Если цикл повториться 10 раз то 10 раз будет создан файл и исполнен
Поэтому цикл из макроса выдает тока первую строку  csv файла
И М Х О : Все циклы и условия надо обрабатывать в JS  и потом передавать готовые данные в макрос...
Можно перебирать запуская  макрос из JS  и менять значение SET !LOOP

zello пишет

И М Х О : Все циклы и условия надо обрабатывать в JS  и потом передавать готовые данные в макрос

А где можно почитать по-русски про циклы в JS?

Alexnadr пишет
zello пишет

И М Х О : Все циклы и условия надо обрабатывать в JS  и потом передавать готовые данные в макрос

А где можно почитать по-русски про циклы в JS?

_http://www.firststeps.ru/html/js/r.php?5

zello пишет
Alexnadr пишет
zello пишет

И М Х О : Все циклы и условия надо обрабатывать в JS  и потом передавать готовые данные в макрос

А где можно почитать по-русски про циклы в JS?

_http://www.firststeps.ru/html/js/r.php?5

Ок, спасибо.

как организовать в imacros копирование ссылки и вставка ее в другой вкладке в поле ?

spy686 пишет

как организовать в imacros копирование ссылки и вставка ее в другой вкладке в поле ?

_http://wiki.imacros.net/!URLCURRENT

Всем привет. Я ничего не мыслю в программировании, надеюсь мне здесь помогут.

В общем есть интернет магазин.
Там список позиций с названиями, например:

545/41/10 товар
520/38/10 товар
510/30/12 товар

Когда я нажимаю на одну из позиций, то попадаю в её редактирование и там есть вкладка с тремя пустыми строчками.
Задача, заполнить эти строчки из названия в порядке:

10
41
545

Вручную это долго. Обрадовался что нашел макрос для браузера, но тут же разочаровался. Он копирует именно те данные, на которых была запись.
Хочу сделать так - вручную сам открываю позиции, но далее действует скрипт, когда он заполнит поля, я сохраняю эту позиции. Но как сделать, чтобы он копировал и вставлял каждый раз разные данные? И еще он возвращается на страницу, с которой была запись, тоже проблема.

Вот что получается в записи.

Выделить код

Код:

VERSION BUILD=7401110 RECORDER=FX
TAB T=1
URL GOTO=http://tirecar.ru/admin/categories.php?cPath=46&pID=3175&action=new_product
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=A ATTR=TXT:Спецификации
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[2][1] CONTENT=185
TAG POS=1 TYPE=A ATTR=TXT:Русский
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=IMG ATTR=SRC:http://tirecar.ru/admin/images/icons/tabs/filter.png
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[3][1] CONTENT=60
TAG POS=1 TYPE=A ATTR=TXT:Русский
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=A ATTR=TXT:Спецификации
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[1][1] CONTENT=14
Larin73 пишет

Всем привет. Я ничего не мыслю в программировании, надеюсь мне здесь помогут. В общем есть интернет магазин. Там список позиций с названиями, например:545/41/10 товар520/38/10 товар510/30/12 товарКогда я нажимаю на одну из позиций, то попадаю в её редактирование и там есть вкладка с тремя пустыми строчками. Задача, заполнить эти строчки из названия в порядке:1041545Вручную это долго. Обрадовался что нашел макрос для браузера, но тут же разочаровался. Он копирует именно те данные, на которых была запись. Хочу сделать так - вручную сам открываю позиции, но далее действует скрипт, когда он заполнит поля, я сохраняю эту позиции. Но как сделать, чтобы он копировал и вставлял каждый раз разные данные? И еще он возвращается на страницу, с которой была запись, тоже проблема.Вот что получается в записи.Выделить кодКод:VERSION BUILD=7401110 RECORDER=FX
TAB T=1
URL GOTO=http://tirecar.ru/admin/categories.php?cPath=46&pID=3175&action=new_product
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=A ATTR=TXT:Спецификации
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[2][1] CONTENT=185
TAG POS=1 TYPE=A ATTR=TXT:Русский
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=IMG ATTR=SRC:http://tirecar.ru/admin/images/icons/tabs/filter.png
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[3][1] CONTENT=60
TAG POS=1 TYPE=A ATTR=TXT:Русский
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=A ATTR=TXT:Спецификации
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[1][1] CONTENT=14
                    Отредактировано Larin73 (Сегодня 16:16:22)

есть переменная !EXTRACT она заносит в буфер данные, затем присваеваешь переменной !VAR1 значение !EXTRACT и затем вставляешь !VAR1 куда надо.
потестируй примеры extract в папке с макросами.

Larin73 пишет

В общем есть интернет магазин.
Там список позиций с названиями, например:

545/41/10 товар
520/38/10 товар
510/30/12 товар

Когда я нажимаю на одну из позиций, то попадаю в её редактирование и там есть вкладка с тремя пустыми строчками.
Задача, заполнить эти строчки из названия в порядке:

10
41
545

я так понимаю это размеры резины ......
То проще составить базу размеров 
в файл csv
Записать в таком виде : Файл rezina.csv

скрытый текст
185 60 14
185 60 17
185 60 19

и потом что то типа этого :
скрытый текст
SET !EXTRACT_TEST_POPUP NO
CMDLINE !DATASOURCE  rezina.csv
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://tirecar.ru/admin/categories.php?cPath=46&pID=3175&action=new_product
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=A ATTR=TXT:Спецификации
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[2][1] CONTENT={{!COL1}}
TAG POS=1 TYPE=A ATTR=TXT:Русский
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=IMG ATTR=SRC:http://tirecar.ru/admin/images/icons/tabs/filter.png
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[3][1] CONTENT={{!COL2}}
TAG POS=1 TYPE=A ATTR=TXT:Русский
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:new_product ATTR=NAME:products_name[1] CONTENT=185/60R14<SP>Dunlop<SP>SP<SP>SPORT<SP>LM703<SP>82Hc
TAG POS=1 TYPE=A ATTR=TXT:Спецификации
TAG POS=1 TYPE=TEXTAREA FORM=NAME:new_product ATTR=ID:products_specification[1][1] CONTENT={{!COL3}}
'ну и так далее  Все данные в этом куске можно заполнить с баз
'А если возникает необходимость именно Копировать данные со странички то
'Придется передавать данные в  JS  и там вытаскивать нужные потом передавать обратно в макрос

Ребята такой вопрос.
Я хочу что бы макрос действовал раз в 1 час,например я пишу макрос на вход куда либо и макрос должен сам включаться через час,это возможно?:|

ZeTko пишет

Ребята такой вопрос.
Я хочу что бы макрос действовал раз в 1 час,например я пишу макрос на вход куда либо и макрос должен сам включаться через час,это возможно?

я поставил на виртуальной машине VirtualBox mozill'y к нему imacros, и для длительной паузы и запуска использую EasyMacroRecorder. Это не самый ирроциональный вариант, но вариант.

ZeTko пишет

Ребята такой вопрос.Я хочу что бы макрос действовал раз в 1 час,например я пишу макрос на вход куда либо и макрос должен сам включаться через час,это возможно?

вот нашел, как это делаеться в javascript: http://www.cyberforum.ru/javascript/thread154553.html3
http://ajc.su/telefoniya/trixbox-i-imacros/

Как заставить скрипт выполняться много раз через определенное время?
Если интервал повтора всегда одинаковый, то следует воспользоваться функцией setInterval():
Код JavaScript

function func() {
    // что-то делаем
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

НО НЕ МОГУ РАЗОБРАТЬСЯ КАК ВСТАВИТЬ КОМАНДУ test.iim

28-04-2012 18:37:26

spy686 пишет
ZeTko пишет

Ребята такой вопрос.Я хочу что бы макрос действовал раз в 1 час,например я пишу макрос на вход куда либо и макрос должен сам включаться через час,это возможно?

вот нашел, как это делаеться в javascript: http://www.cyberforum.ru/javascript/thread154553.html

Как заставить скрипт выполняться много раз через определенное время?
Если интервал повтора всегда одинаковый, то следует воспользоваться функцией setInterval():
Код JavaScript

function func() {
    // что-то делаем
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

НО НЕ МОГУ РАЗОБРАТЬСЯ КАК ВСТАВИТЬ КОМАНДУ test.iim

function func() {
   i = iimPlay("T.iim",60);
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

не получаеться :(

разобрался, запустить вот так:

function func() {
  iimPlay("Cur.iim",60);
}
setInterval(func, 2000);

но теперь никак не могу остановить :(

clearInterval(func); - непомогает :(
пишет SyntaxError: can not parse macro line: clearInterval(func); (Error code: -910)

Как игнорировать ошибку, если страница не доконца загружаеться? Ато макросс останавливаеться :(

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

не помогают!!!

есть .js файл как его запустить с помощью .imm файла ?

spy686 пишет

ZeTko пишет:

Ребята такой вопрос.Я хочу что бы макрос действовал раз в 1 час,например я пишу макрос на вход куда либо и макрос должен сам включаться через час,это возможно?
вот нашел, как это делаеться в javascript: http://www.cyberforum.ru/javascript/thread154553.html3
http://ajc.su/telefoniya/trixbox-i-imacros/

Как заставить скрипт выполняться много раз через определенное время?
Если интервал повтора всегда одинаковый, то следует воспользоваться функцией setInterval():
Код JavaScript

function func() {
    // что-то делаем
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

НО НЕ МОГУ РАЗОБРАТЬСЯ КАК ВСТАВИТЬ КОМАНДУ test.iim

Добавлено Вчера 18:37:26
spy686 пишет:

ZeTko пишет:

Ребята такой вопрос.Я хочу что бы макрос действовал раз в 1 час,например я пишу макрос на вход куда либо и макрос должен сам включаться через час,это возможно?
вот нашел, как это делаеться в javascript: http://www.cyberforum.ru/javascript/thread154553.html

Как заставить скрипт выполняться много раз через определенное время?
Если интервал повтора всегда одинаковый, то следует воспользоваться функцией setInterval():
Код JavaScript

function func() {
    // что-то делаем
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

НО НЕ МОГУ РАЗОБРАТЬСЯ КАК ВСТАВИТЬ КОМАНДУ test.iim
function func() {
   i = iimPlay("T.iim",60);
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

не получаеться

разобрался, запустить вот так:

function func() {
  iimPlay("Cur.iim",60);
}
setInterval(func, 2000);

но теперь никак не могу остановить

clearInterval(func); - непомогает
пишет SyntaxError: can not parse macro line: clearInterval(func); (Error code: -910)

Ответ :)

'повтор скрипта trixbox.iim 300 раз
var i;
for (i=1;i<=300;i++){
iimPlay("trixbox.iim",60);
}

а если так:

iimPlay("trixboxActivation.iim",60);
'повтор скрипта trixbox.iim 300 раз
var i;
for (i=1;i<=300;i++){
iimPlay("trixbox.iim",60);
}

как можно вставить перенос строки в длинный текст?
BR не пашет..
т..к длинный текст вставляется в кавычки, и бр тупо прописывается в тексте, без кавычек перенос пашет, но тогда выдается ошибка, из-за длинного текстаююю

paradoxx пишет

как можно вставить перенос строки в длинный текст?BR не пашет..т..к длинный текст вставляется в кавычки, и бр тупо прописывается в тексте, без кавычек перенос пашет, но тогда выдается ошибка, из-за длинного текстаююю

CONTENT="\"привет\nвсем :) \""

Здравствуйте, допустим есть стандартная строчка "TAG POS=1 TYPE=IMG ATTR=ХХХХХ" Макрос с её помощью кликает по определённой картинке на странице, но как сделать, что бы был двойной клик по этой картинке?

Eliaden пишет

Здравствуйте, допустим есть стандартная строчка "TAG POS=1 TYPE=IMG ATTR=ХХХХХ" Макрос с её помощью кликает по определённой картинке на странице, но как сделать, что бы был двойной клик по этой картинке?

а что должно быть в результате ?

19-05-2012 12:19:49

Eliaden пишет

Здравствуйте, допустим есть стандартная строчка "TAG POS=1 TYPE=IMG ATTR=ХХХХХ" Макрос с её помощью кликает по определённой картинке на странице, но как сделать, что бы был двойной клик по этой картинке?

http://wiki.imacros.net/DirectScreen_Technology

SYNTAX

DS CMD=command X=coordinate Y=coordinate [CONTENT=some_content]
Parameters

CMD
The command/action to be performed
commands:
CLICK
behaves like (old) WINCLICK. Technically this is a combination of the MOVE, LDOWN, LUP and KEY commands.
LDBLCLK
Simulate left double click (at position)

KEY
Enter text, perform key sequence. Specify the keys/text to enter in the CONTENT parameter.
Special commands for the KEY command:
{BACKSPACE} Deletes one character. Use several BACKSPACE commands to delete more characters or CONTENT=#ERASEALL# to clear the whole field.
{ENTER} "Press" the Enter key.
Note: The modifier keys {SHIFT}, {CTRL}, and {ALT} are currently not supported, nor is {TAB}, {ESC} and others not listed here.

CONTENT
Specifies the content to send to the selected element. Specify CONTENT=#ERASEALL# to clear the entire field.
  Example:
  DS CMD=CLICK X=411 Y=434 CONTENT=#ERASEALL#
  DS CMD=KEY X=411 Y=434 CONTENT=#ERASEALL#

Ребята!
У меня такой вопрос к вам.... Мне нужно сделать так, чтобы макрос работал сразу на нескольких мазил. Это можно сделать?

Подскажите как сделать чтобы скрипт запускался при запуске фф? Ставлю http://run.imacros.net/?m=anyname.iim в качестве домашней страницы, но ничего не происходит

Artemka767 пишет

Ребята!
У меня такой вопрос к вам.... Мне нужно сделать так, чтобы макрос работал сразу на нескольких мазил. Это можно сделать?

создал несколько профилей mozilla
закидываю макрос в каждую папку mozilla профиль и везде одновременно работает прекрасно

spy686 пишет

Artemka767 пишет:

Ребята!
У меня такой вопрос к вам.... Мне нужно сделать так, чтобы макрос работал сразу на нескольких мазил. Это можно сделать?
создал несколько профилей mozilla
закидываю макрос в каждую папку mozilla профиль и везде одновременно работает прекрасно

У меня в разных окнах и так работают разные макросы. Можно еще запускать в песочнице, например Sandboxie.

31-05-2012 13:32:41

zello пишет

h2o2 пишет:

Добрый день. Я уж и не думал, что найду живого форума по имакросу. Zello, спасибо что ты так доходчиво и быстро отвечеашь. У меня тоже есть вопрос))
1. Как сделать так, чтобы если d<1.3 макрос стартовал заново.
2. Или продолжил работу, но со следующей строчки, где d<1.2

URL GOTO=http://www.xe.com/ucc/convert/?Amount=1&From=EUR&To=USD
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TD ATTR=TXT:*<SP>USD&&WIDTH:46%&&ALIGN:left EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.3){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=EuroRate.csv
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.2){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}

Очень жду ответа. Спасибо)
Поступить наоборот Переписать все в JS  и от туда работать с макросом
Проще и удобней JS Создаст на лету макрос , получит из него данные обработает их и  передаст обратно
вот пример передачи данных в макрос ис Джава скрипта:
  http://forum.mozilla-russia.org/viewtop … 01#p541401
Вот пример получения данных из макроса в Джава скрипт:
http://forum.mozilla-russia.org/viewtop … 06#p542706
прерывание покопать ....

Хотелось бы тоже узнать подробнее с примером, и можно ли вместо вывода ошибки {MacroError(\"Euro is below 1.3 USD.\");} перезапустить или остановить макрос.
А то в скриптах не силен, а как выполнить здесь условный переход не знаю.

Подскажите как сделать рандомный перебор? Т.е. он у меня вводит в поле слова из списка, как сделать что бы он шел не по порядку, а рандомно?

Подскажите, как сохранить изображение, ссылка на которое постоянно меняется?
Может быть можно как-то узнать ссылку по координатам, используя: CLICK X=100 Y=100 ??? Ума не приложу...
Спасибо! :|

Mew пишет

Подскажите, как сохранить изображение, ссылка на которое постоянно меняется? Может быть можно как-то узнать ссылку по координатам, используя: CLICK X=100 Y=100 ??? Ума не приложу...Спасибо!

а с какой страницы ?

spy686 пишет

а с какой страницы ?

Ну как я понимаю, в страницу вставлен блок *.swf, а уж в нем изображение. При просмотре исходного кода страницы - ссылки на изображение соответственно нет.... Но изображение можно сохранить из контекстного меню браузера (сохранить как, открыть в новой вкладке, копировать ссылку на изображение). После некоторых моих манипуляций, изображение меняется, соответственно, меняется и ссылка на него, и теперь мне нужно сохранить новое изображение по новой ссылке.... и так N-е число раз...  :(
P.s. чтобы было понятнее, речь идет о CAPCHA.

Mew пишет

ите, как сохранить изображение, ссылка на которое постоянно меняется?
Может быть можно как-то узнать ссылку по координатам, используя: CLICK X=100 Y=100 ??? Ума не приложу

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=IMG ATTR=ID:MainContent_loginForm_robotValidate_imgAntiRobot EXTRACT=HREF
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL 
TAB T=2
URL GOTO={{!VAR2}}

открой закладку 1 prior.by
закладку два пустую и запусти.
начало такое ?

spy686 пишет

Mew пишет: ите, как сохранить изображение, ссылка на которое постоянно меняется? Может быть можно как-то узнать ссылку по координатам, используя: CLICK X=100 Y=100 ??? Ума не приложуВыделить кодКод:SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=IMG ATTR=ID:MainContent_loginForm_robotValidate_imgAntiRobot EXTRACT=HREF
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL
TAB T=2
URL GOTO={{!VAR2}}открой закладку 1 prior.byзакладку два пустую и запусти.начало такое ?

Спасибо. Решил эту проблему, возникла другая.
Есть ли  в iMACROS оператор условия и оператор цикла? подозреваю, что нет (((
Если нет, то как вызвать скрипт *.imm (если это возможно) из друго языка... Хотелось бы получить решение для PHP (установлен на локальном сервере). Желательно, с примером. Буду очень благодарен.

Столкнулся с такой проблемой, простой макрос постоянно "виснет". Причем бывает останавливается на команде SET !ERRORIGNORE YES, затем идет отсчет по таймауту и все, макрос дальше не работает. Помогает открытие новой вкладки в ФФ, тогда макрос продолжает свой цикл там где остановился. На зарубежных форумах находил братьев по несчастью, но решения там не было :( Делает 2-3 цикла и постоянно зависает.

Mew пишет

Есть ли  в iMACROS оператор условия и оператор цикла? подозреваю, что нет (((
Если нет, то как вызвать скрипт *.imm (если это возможно) из друго языка... Хотелось бы получить решение для PHP (установлен на локальном сервере). Желательно, с примером. Буду очень благодарен.

можно через .js

условие незнаю, не разбпъирался, но в нете где-то встречал примеры.

вот пример вызова .imm и количество циклов:

Выделить код

Код:

iimPlay("T_Tooth_Activation.iim",60);
var i;
for (i=1;i<=9999999;i++){
 iimPlay("T_Tooth.iim",60);
 }

9999999 - количество циклов
60 - время ограничения (стандартно)

как на счет php - хз

11-07-2012 16:54:31

Immortal пишет

Столкнулся с такой проблемой, простой макрос постоянно "виснет". Причем бывает останавливается на команде SET !ERRORIGNORE YES, затем идет отсчет по таймауту и все, макрос дальше не работает. Помогает открытие новой вкладки в ФФ, тогда макрос продолжает свой цикл там где остановился. На зарубежных форумах находил братьев по несчастью, но решения там не было  Делает 2-3 цикла и постоянно зависает.

на сайте klout у меня такая же проблема
пробывал решить с помощью refresh, но не всегда помогает :(

ЖДЕМ РЕШЕНИЯ !!!

Привет! помогите решить проблему.

Выделить код

Код:

SET !DATASOURCE d:\xxx.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=http://yandex.ru/yandsearch?text={{!col1}}

В файле xxx.txt несколько строк

Выделить код

Код:

1111111111
2222222222
3333333333
...

ЗАДАЧА: Взять строку из файла, удалив ее.
Т.е., чтобы при запуске цикла в файле xxx.txt каждый раз становилось на одну стоку меньше и каждый раз бралась первая строка.

Возможно в iMacros есть команда , которая умеет это делать?
или же есть другой способ?

Доброго времени суток!
неск. вопросов...

1.может ли кто поделится ссылкой на русифицированный imacros

2. можно ли в imacros решить следующую задачу: на сайте переодически появляется окно -- необходимо раз в 5минут считывать изображения в браузере -- в случае если появилось нужное изображение -- выполнить ряд действий (к примеру отослать письмо по E-mail)
//буду признателен -- если кто кинется примерным кодом для решения этой задачи (моментс емэил не обязательна--главное сейчас научится ловить момент появления нужного изображения на экране)

Помогите пожалуйста, как извлечь meta tag description или keywords. Я прописываю так
TAG POS=1 TYPE=META ATTR=CONTENT:Description:* EXTRACT=HTM

Но выдает ошибку.:(

Всем привет. Прошу помощи у экспертов. На почте http://mail.yandex.ru/ есть паспорт, перейдя по ссылке паспорт нужно сохранить данные со страницы в txt файл с порядковым номером, в созданную папку.Нужно так чтоб каждый раз создаваля следующий файл с номером по порядку.Помогите решить проблему.

интерисует такой вопросец.
Нужно при помощи команды TAG .... CONTENT={{!EXTRACT}} извлечь данные и записать их в файл. Затем опять извлечь данные и дописать тот же файл.

Какая команда нужна? Желательно пример.

Вот это из этой оперы?

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=class:agp EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=2 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=3 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=4 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=5 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=6 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=7 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=8 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=9 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt 
TAG POS=10 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt 
TAG POS=1 TYPE=A ATTR=ID:next_page

Проверил, оно :)

spy686 пишет

интерисует такой вопросец.
Нужно при помощи команды TAG .... CONTENT={{!EXTRACT}} извлечь данные и записать их в файл. Затем опять извлечь данные и дописать тот же файл.

Какая команда нужна? Желательно пример.

Вот это из этой оперы?

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=class:agp EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=2 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=3 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=4 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=5 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=6 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=7 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=8 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=9 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt 
TAG POS=10 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt 
TAG POS=1 TYPE=A ATTR=ID:next_page

Проверил, оно :)

Огромное спасибо за ответ.:)
даже уже чуть больше нарыл....
Дополню чуть...
а чтоб при повторении цикла создавался новый тхт с датой и временем
нужна переменная и зто буде примерно так:

Выделить код

Код:

SET  !VAR9 {{!NOW:yyyymmdd_hhnnss}}_.txt
'УСТАНАВЛИВАЕМ ПЕРЕМЕННУЮ чтоб тхт создавался с датой и временем
'на каждом цыкле будет создаваться следующий тхт
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:name EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:otch EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:surname EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:phonecode EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:phone EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:skype EXTRACT=TXT
mishany76 пишет
spy686 пишет

интерисует такой вопросец.
Нужно при помощи команды TAG .... CONTENT={{!EXTRACT}} извлечь данные и записать их в файл. Затем опять извлечь данные и дописать тот же файл.

Какая команда нужна? Желательно пример.

Вот это из этой оперы?

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=class:agp EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=2 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=3 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=4 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=5 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=6 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=7 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=8 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt
TAG POS=9 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt 
TAG POS=10 TYPE=A ATTR=class:agp EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt 
TAG POS=1 TYPE=A ATTR=ID:next_page

Проверил, оно :)

Огромное спасибо за ответ.:)
даже уже чуть больше нарыл....
Дополню чуть...
а чтоб при повторении цикла создавался новый тхт с датой и временем
нужна переменная и зто буде примерно так:

Выделить код

Код:

SET  !VAR9 {{!NOW:yyyymmdd_hhnnss}}_.txt
'УСТАНАВЛИВАЕМ ПЕРЕМЕННУЮ чтоб тхт создавался с датой и временем
'на каждом цыкле будет создаваться следующий тхт
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:name EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:otch EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:surname EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:phonecode EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:phone EXTRACT=TXT
SET !CLIPBOARD {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR9}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:skype EXTRACT=TXT

спс за инфу :)
Но в mozilla FF помоему, переменных var максимум 3.

Разницы нет, можно и обнулить переменную
SET !VAR... NULL

mishany76 пишет

Разницы нет, можно и обнулить переменную
SET !VAR... NULL

спасибо, понял.

Переменных может быть запомнено одновременно максимум 3.

народ такой вопрос

нужно чтобы imacros копировал ссылку текущей страницы затем переходил во вкладку назад
и вставлял эту ссылку в определённое место

нужна именно команда вставки

желательно с примером
заранее спасибо за помощь

dima_bog_1990 пишет

народ такой вопрос

нужно чтобы imacros копировал ссылку текущей страницы затем переходил во вкладку назад
и вставлял эту ссылку в определённое место

нужна именно команда вставки

желательно с примером
заранее спасибо за помощь

вытягиваешь ссылку !EXTRACT
присваиваешь !EXTRACT !var1
переходишь на нужную вкладку и в нужное поле content {{var1}}

пишу с тела.

посмотри в примерах там почти все есть. а как ссылку извечь - погуглишь.

spy686 пишет
dima_bog_1990 пишет

народ такой вопрос

нужно чтобы imacros копировал ссылку текущей страницы затем переходил во вкладку назад
и вставлял эту ссылку в определённое место

нужна именно команда вставки

желательно с примером
заранее спасибо за помощь

вытягиваешь ссылку !EXTRACT
присваиваешь !EXTRACT !var1
переходишь на нужную вкладку и в нужное поле content {{var1}}

пишу с тела.

посмотри в примерах там почти все есть. а как ссылку извечь - погуглишь.

вроде смысл понял

1 час про***л но всё таки сделал, за помощь спс

23-08-2012 21:57:43
ещё нужна помощь, смысл в следующем:

макрос заходит на какой-то сайт ( рандомно, то есть каждый раз на другой )
1. нужно чтобы макрос на этом сайте делал несколько переходов по ссылкам ( по любым ), но не выходил за пределы сайта
(например кликал по меню навигации)
2. и чтобы затем выбирал объект ( реклама от google adsense) и кликал туда

вся проблема в том, что сайты разные и меню навигации и реклама меняют своё местоположение,хотя структура в принципе одна и та же
уже понятно, что командой click тут просто не обойдётся

буду ОЧЕНЬ сильно благодарен если кто поможет
ну, или подскажет как это реализовать любой другой прогой
ну, или подскажет кого-нибудь знающего это дело

заранее огромное спс

dima_bog_1990 пишет

spy686 пишет: dima_bog_1990 пишет: народ такой вопроснужно чтобы imacros копировал ссылку текущей страницы затем переходил во вкладку назади вставлял эту ссылку в определённое местонужна именно команда вставки желательно с примеромзаранее спасибо за помощьвытягиваешь ссылку !EXTRACTприсваиваешь !EXTRACT !var1переходишь на нужную вкладку и в нужное поле content {{var1}}пишу с тела.посмотри в примерах там почти все есть. а как ссылку извечь - погуглишь.вроде смысл понял1 час про***л но всё таки сделал, за помощь спсДобавлено Сегодня 21:57:43ещё нужна помощь, смысл в следующем:макрос заходит на какой-то сайт ( рандомно, то есть каждый раз на другой )1. нужно чтобы макрос на этом сайте делал несколько переходов по ссылкам ( по любым ), но не выходил за пределы сайта (например кликал по меню навигации)2. и чтобы затем выбирал объект ( реклама от google adsense) и кликал тудався проблема в том, что сайты разные и меню навигации и реклама меняют своё местоположение,хотя структура в принципе одна и та жеуже понятно, что командой click тут просто не обойдётсябуду ОЧЕНЬ сильно благодарен если кто поможетну, или подскажет как это реализовать любой другой прогойну, или подскажет кого-нибудь знающего это делозаранее огромное спс
                    Отредактировано dima_bog_1990 (Сегодня 21:57:43)

желательно конкретный сайт и ссылки. И при случае помогу (сечас комп не всегда под рукой).

http://hitkred.blogspot.com/ пример такого сайта
хотя как я уже говорил сайты разные и их много и ссылки там меняются ( в рекламе)

dima_bog_1990 пишет

http://hitkred.blogspot.com/ пример такого сайтахотя как я уже говорил сайты разные и их много и ссылки там меняются ( в рекламе)

А ссылки на сайты известны зарание ? т.е. список сайтов есть?
и блока рекламы нет на сайте http://hitkred.blogspot.com/2012_03_01_archive.html

23-08-2012 23:35:09
Это для перехода по сайтам.

SET !EXTRACT_TEST_POPUP NO
CMDLINE !DATASOURCE  sites.csv
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO={{!COL1}}

код из сообщения http://forum.mozilla-russia.org/viewtopic.php?pid=557020#p557020

продолжение позже.

спс за помощь
код пригодился

остался 1 вопрос:
надо чтобы imacros находил на сайте ссылку ( абсолюно любую, но желательно из главного меню ) и переходил по ней
сайтов очень много и ссылки и их местоположение постоянно меняется

это нужно для создания бота, набивающего просмотры

Имеем такую строку:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:answer_7818&&VALUE:1

На странице, много элементов отличающиеся только стройкой answer_7818, как сделать чтобы всем таким элементам присваивалось VALUE:1?

Kamui пишет

Имеем такую строку:Выделить кодКод:TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:answer_7818&&VALUE:1На странице, много элементов отличающиеся только стройкой answer_7818, как сделать чтобы всем таким элементам присваивалось VALUE:1?

используй *

вот выдержка из интернета:

Выделить код

Код:

сессии в ссылках обхожу, сокращая тег звёздочкой, например
TAG POS=1 TYPE=IMG ATTR=HREFhttp://serv198.en.prizee.com/index.php?nc=71c88a2&lg=1
заменяю на
TAG POS=1 TYPE=IMG ATTR=HREF:http://serv*.en.prizee.com/index.php?nc=*

а на WinGiftе вместо
http://www.wingift.net/forum/forumdisplay.php?s=razdvatrichetyrepiat&f=5будет
http://www.wingift.net/forum/forumdisplay.php?s=*&f=5

spy686

spy686 пишет

используй *

Да я пробовал, но макрос срабатывает только на первый элемент, то есть если десять раз

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1

То все десять раз будут нажаты на первом элементе :(

Kamui пишет

если десять раз
Выделить код
Код:

TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1
То все десять раз будут нажаты на первом элементе

надо менять pos=1

можно использовать код из 237 сообщения

делаешь файл sites.csv


1
2
3
4
5
...

и делаешь так


SET !EXTRACT_TEST_POPUP NO
CMDLINE !DATASOURCE  sites.csv
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAG POS={{!COL1}} TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1

Выделить код

Код:

SET !DATASOURCE d:\xxx.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=http://yandex.ru/yandsearch?text={{!col1}}
spy686 пишет

надо менять pos=1

Спасибо, все получилось :)

Доброго времени суток,у меня два вопроса извиняюсь возможно до смеха простые 1) Как заставить imacros при выполнении скрипта и появлении ошибки перейти на нужную строку для дальнейшего выполнения(не просто продолжить а непосредственно перейти на нужную строку) и 2)опять же переход на нужную строку при нахождении текста на странице или  на другую строку при отсутствии этого текста

Добрый день. Задача до банальности простая. Найти оперделенное значение и нажать "кнопку удалить", если нет значения -  искать следующее и нажать удалить. Когда закончаться все значения для функции удалить, то перебирать значения для функции модерировать. Что бы не останавливалось ставлю ероригнор , но функция удалить  попапдпет и на другие значения.   Нужно как то заявзать на условиии: если, то.   В js  не соображаю ничего абсолютно.
ЕСЛИ TAG POS=1 TYPE=DIV ATTR=TXT:Нарушена<SP>орфография ТО TAG POS=2 TYPE=DIV ATTR=TXT:Удалить
Заранее благодарен за ответ.

pahan27 пишет

Доброго времени суток,у меня два вопроса извиняюсь возможно до смеха простые 1) Как заставить imacros при выполнении скрипта и появлении ошибки перейти на нужную строку для дальнейшего выполнения(не просто продолжить а непосредственно перейти на нужную строку) и 2)опять же переход на нужную строку при нахождении текста на странице или  на другую строку при отсутствии этого текста

это надо с js расбираться и писать отдельно скрипты и выполнение их делать в js с командами if, else

29-08-2012 22:49:13

Oleksaua пишет

Добрый день. Задача до банальности простая. Найти оперделенное значение и нажать "кнопку удалить", если нет значения -  искать следующее и нажать удалить. Когда закончаться все значения для функции удалить, то перебирать значения для функции модерировать. Что бы не останавливалось ставлю ероригнор , но функция удалить  попапдпет и на другие значения.   Нужно как то заявзать на условиии: если, то.   В js  не соображаю ничего абсолютно. TAG POS=1 TYPE=DIV ATTR=TXT:Нарушена<SP>орфографияTAG POS=2 TYPE=DIV ATTR=TXT:УдалитьЗаранее благодарен за ответ.
                    Отредактировано Oleksaua (Сегодня 15:19:56)

ищи ветки форумов знающих JavaScript

29-08-2012 22:52:42

driveMax пишет

Доброе время суток. Нуждаюсь в помощи. Цель задачи такова: - нужно что б на сайте где есть капча, iMacros находило эту капчу(или допустим, в том месте где появляется капча), копировало ссылку на эту капчу и вставляло ее в другой вкладке, где делало скриншот и сохраняло на жесткий диск. Спасибо за любую помощь.

почитай сообщения №216-220

spy686 пишет

pahan27 пишет: Доброго времени суток,у меня два вопроса извиняюсь возможно до смеха простые 1) Как заставить imacros при выполнении скрипта и появлении ошибки перейти на нужную строку для дальнейшего выполнения(не просто продолжить а непосредственно перейти на нужную строку) и 2)опять же переход на нужную строку при нахождении текста на странице или  на другую строку при отсутствии этого текстаэто надо с js расбираться и писать отдельно скрипты и выполнение их делать в js с командами if, else

Премного благодарен за разъяснение,к сожелению пока нет времени на JS , скоро отпуск надеюсь найдётся времечко

spy686 пишет

ищи ветки форумов знающих JavaScript

Неужели нельзя обойтись без JS? Ведь более сложные операции выполняет TAG с условиями, те же извлечения, загрузки. Есть команда MOUSEOVERALL, которую можно использовать с TAG . Вот только как ее использовать на Вики ни на нашем ни на анг. не указано.
Очень прошу знающих людей поделиться соображениями, как это проще всего реализовать. Хоть намеки на javascript или php.

Напомню задачу.
Нужно как то завязать на условиии: если, то.

ЕСЛИ

TAG POS=1 TYPE=DIV ATTR=TXT:Нарушена<SP>орфография

ТО

TAG POS=2 TYPE=DIV ATTR=TXT:Удалить

П.С. Под ИЕ сайт не заточен, соответственно и imacrosbrowser его не понимает.

Добрый день. Задача до банальности простая. Найти оперделенное значение и нажать "кнопку удалить", если нет значения -  искать следующее и нажать удалить. Когда закончаться все значения для функции удалить, то перебирать значения для функции модерировать. Что бы не останавливалось ставлю ероригнор , но функция удалить  попапдпет и на другие значения.   Нужно как то заявзать на условиии: если, то.   В js  не соображаю ничего абсолютно.
ЕСЛИ TAG POS=1 TYPE=DIV ATTR=TXT:Нарушена<SP>орфография ТО TAG POS=2 TYPE=DIV ATTR=TXT:Удалить
Заранее благодарен за ответ.

Oleksaua пишет

spy686 пишет:

ищи ветки форумов знающих JavaScript
Неужели нельзя обойтись без JS? Ведь более сложные операции выполняет TAG с условиями, те же извлечения, загрузки

iMacros условие "если" выполняет только через js.

может такой код поможет, но не факт. если бы конкретный сайт дали бы, другое было бы дело.может такой код поможет, но не факт. если бы конкретный сайт дали бы, другое было бы дело.
TAG TYPE=DIV ATTR=TXT:Нарушена<SP>орфография EXTRACT=pos
SET !VAR1 {{!EXTRACT}}
TAG POS={{!VAR1}} TYPE=DIV ATTR=TXT:Удалить

spy686 пишет

:
если бы конкретный сайт дали бы, другое было бы дело.
TAG TYPE=DIV ATTR=TXT:Нарушена<SP>орфография EXTRACT=pos
SET !VAR1 {{!EXTRACT}}
TAG POS={{!VAR1}} TYPE=DIV ATTR=TXT:Удалить

Ответил в ПМ.

Здравствуйте, форумчане! Кто писал макросы на js, подскажите.

Пытаюсь вставить в макрос абсолютно рабочий кусок кода (работает при вызове из тега <script> в html документе):

Выделить код

Код:

var i;
var AllChild = document.body.children;

for (i=0; i<AllChild.length; i++) { 
           
if (AllChild[i].tagName == 'A') {
    alert('Эврика');
      
    AllHrefTag = AllChild[i].getAttribute('href'); 
    alert(AllHrefTag);
    AllChild[i].setAttribute('onclick','ClickResume(event)');   
    AllChild[i].removeAttribute('href');

} else {
      
      alert('Элемент не подходит по условию');
      
}

Выдаёт синтаксическую ошибку.
TypeError: document.body is undefined (Error code: 991)

В результате работы этого кода - должны изменяться атрибуты у тегов <a> в теле документа.

Кто пробовал изменять, добавлять свойства и атрибуты узлов DOM. как к ним правильно обращаться из тела макроса ?

Как в макрос подключить другой файл imm с макросом для выполнения.

Dizi пишет

Как в макрос подключить другой файл imm с макросом для выполнения.

.js файл:

Выделить код

Код:

iimPlay("KloutOneAll.iim",60);
 iimPlay("KloutAddFriends.iim",60);
 iimPlay("Klout.iim",60);

выполняет эти .imm макросы подряд

02-09-2012 21:22:08

spy686 пишет

Dizi пишет: Как в макрос подключить другой файл imm с макросом для выполнения..js файл:Выделить кодКод: iimPlay("KloutOneAll.iim",60);
iimPlay("KloutAddFriends.iim",60);
iimPlay("Klout.iim",60);
выполняет эти .imm макросы подряд

Спасибо понятно, это с .js запускается. Мне нужно так:  file_main.iim основной для выполнения и к нему подключать file_1.imm, file_2.iim, file_3.iim и тд.

Dizi пишет

Добавлено Вчера 21:22:08spy686 пишет: Dizi пишет: Как в макрос подключить другой файл imm с макросом для выполнения..js файл:Выделить кодКод: iimPlay("KloutOneAll.iim",60); iimPlay("KloutAddFriends.iim",60); iimPlay("Klout.iim",60);выполняет эти .imm макросы подрядСпасибо понятно, это с .js запускается. Мне нужно так:  file_main.iim основной для выполнения и к нему подключать file_1.imm, file_2.iim, file_3.iim и тд.
                    Отредактировано Dizi (Вчера 21:22:25)

разбивай на части и вставляй все в .js

driveMax пишет

какой макрос для iMacros с выполнением такой задачи, мышь находится на координатах X=350 Y=700, где находится рисунок. Как открыть этот рисунок в новом окне при помощи макроса(типа открыть изображение в новом окне). Очень благодарен за ответ

я бы с помощью команды extract копировал ссылку рисунка и вставлял в новом окне.

Подскажите, пожалуйста, возможно ли, чтобы после определённых действий

Выделить код

Код:

TAB T=1
URL GOTO=http://vkontakte.ru......
TAG POS=4 TYPE=DIV ATTR=TXT:...........

iMacros "нажимал" заданное сочетание клавиш (shift+s или shift+d), тем самым активировал другое расширение мазилы ???
Если Да, то подскажите, пожалуйста, как это реализовать на практике...

Народ, есть такая задумка. Есть капча, когда скрипт доходит до неё то останавливается и продолжает работу только после нажатия кнопки "Enter".
Это принциально. Ожидание 5-10 секунд не устраивает. Пробовал использовать:

var keyhandler = function(e){
if (e.keyCode == 13){
iimPlay("dalee.iim",60);
};

но так как с java практически 0, то естественно и результат...

kabano пишет

Народ, есть такая задумка. Есть капча, когда скрипт доходит до неё то останавливается и продолжает работу только после нажатия кнопки "Enter".
Это принциально. Ожидание 5-10 секунд не устраивает. Пробовал использовать:

var keyhandler = function(e){
if (e.keyCode == 13){
iimPlay("dalee.iim",60);
};

но так как с java практически 0, то естественно и результат...

попробуй после перехода на страницу с капчей команду refresh

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
URL GOTO=Ссылка
REFRESH

spy686 пишет

kabano пишет: Народ, есть такая задумка. Есть капча, когда скрипт доходит до неё то останавливается и продолжает работу только после нажатия кнопки "Enter".Это принциально. Ожидание 5-10 секунд не устраивает. Пробовал использовать:var keyhandler = function(e){ if (e.keyCode == 13){iimPlay("dalee.iim",60);};но так как с java практически 0, то естественно и результат...попробуй после перехода на страницу с капчей команду refreshSET !ERRORIGNORE YESSET !ERRORCONTINUE YES URL GOTO=СсылкаREFRESH

ожидаемо обновляет страницу и капчу с ней. К чему такой совет:rolleyes:

kabano пишет

spy686 пишет: kabano пишет: Народ, есть такая задумка. Есть капча, когда скрипт доходит до неё то останавливается и продолжает работу только после нажатия кнопки "Enter".Это принциально. Ожидание 5-10 секунд не устраивает. Пробовал использовать:var keyhandler = function(e){ if (e.keyCode == 13){iimPlay("dalee.iim",60);};но так как с java практически 0, то естественно и результат...попробуй после перехода на страницу с капчей команду refreshSET !ERRORIGNORE YESSET !ERRORCONTINUE YES URL GOTO=СсылкаREFRESHожидаемо обновляет страницу и капчу с ней. К чему такой совет

у меня было как-то, что зависала страница, то мне это помогало.

Подскажите, пожалуйста, возможно ли, чтобы после определённых действий, например

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://vkontakte.ru......
TAG POS=4 TYPE=DIV ATTR=TXT:...........


iMacros "нажимал" заданное сочетание клавиш (shift+s или shift+d), тем самым активировал другое расширение мазилы ???
Если Да, то подскажите, пожалуйста, как это реализовать на практике...

tashanik пишет

Подскажите, пожалуйста, возможно ли, чтобы после определённых действий, например

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://vkontakte.ru......
TAG POS=4 TYPE=DIV ATTR=TXT:...........


iMacros "нажимал" заданное сочетание клавиш (shift+s или shift+d), тем самым активировал другое расширение мазилы ???
Если Да, то подскажите, пожалуйста, как это реализовать на практике...

сочетания клавиш нада наверное через js как-то.

народ нужна помощь опять, нужно реализовать следующее:
есть файл sites.csv примерно с 2000 сайтами, нужно организовать след :
1) взять 1 сайт из списка
2) ...( тут уже сделано )
3)если выполнен или есть ошибка взять следующий сайт
и так по кругу, действия одинаковы

dima_bog_1990 пишет

народ нужна помощь опять, нужно реализовать следующее:есть файл sites.csv примерно с 2000 сайтами, нужно организовать след :1) взять 1 сайт из списка2) ...( тут уже сделано )3)если выполнен или есть ошибка взять следующий сайти так по кругу, действия одинаковы

копай js

копаю, не помогает

dima_bog_1990 пишет

копаю, не помогает

demo примеры посмотри, там много интересного есть

Начал юзать iMacros и такой вопрос ,  который не могу найти поиском :
вместо

TAG POS=5 TYPE=SPAN ATTR=TXT:ссылка

хочу

TAG POS=5 TYPE=SPAN ATTR=SPAN-1

т.е. нажать SPAN  первый встреченный в 5 форме, второй - и до последнего (еще как то узнать их количество?)
Дело в том , что текст почти одинаковый , а ссылки нет вообще - используется onclick

Пока не могу найти подробное описание для ATTR - может подскажете хоть на английском ?

Ball
лучше страницу в интернете или аналог и в понепонедел вторник попробпо помочь

сделал скрипт, час кода написана и на js.
Но вот не задача - после выполнения задачи (обработка текста js) - пропадают пtреводы строк :(
в чем могут быть причины ? есть какие нить соображения?

Здравствуйте.
Пожалуйста подскажите как реализовать следующее:
Веб страница, написана на ASPNET  при выполнении определенных форм выводит сообщение типа:

"Попробуйте зайти на сайт позже."

Я хочу использовать функцию FF window.find.
Но никак не могу понять как заставить Imaсros выполнить её.
При формировании скрипта и записью в него следующего содержания

скрытый текст

Выделить код

Код:

window.find('бла бла', false, false, false, false)


В теории на странице должны выделяться слова содержащие это самое БЛА БЛА, но вообще ничего не просиходит при запуске.

Аналогичная ситуация с этим скриптом (я нашел с помощью гугла):
Вообще ничего не происходит, Imacros отказывается хоть что-то делать.

скрытый текст

Выделить код

Код:

var win=parent.right;
//функция, отвечающая за поиск
function FindInPage(str)
{
var txt //текст на странице
var find //результат поиска
if (str == "") return false;

txt = win.document.body.createTextRange();
found =txt.findText(str)

//Листаем и выделяем
if (found == true) {
txt.select();
txt.scrollIntoView() }
else
alert ("нету совпадений")
return false;
}


Как быть подскажите пожалуйста.
Мне нужно заставить его искать фразу именно на активном окне, и если эту фразу находит, то запускать макрос.
Если не находит, выводить сообщение типа alert и желательно еще и громкий звуковой сигнал! :)

Это в идеале, если. Буду благодарен, если кто-то сможет подсказать как код написать на javascript
типа:
Переменная 1 определяется как текст который я ищу, это константа
Функция поиск совпадений на странице  (не в HTML коде, там в тегах, эта фраза присутствует постоянно, нужен поиск по экрану),
если совпадений на видимой части экрана найдено хоть одно, тогда выполняется макрос, иначе
выдается сообщение на экран и Звуковой сигнал.

Подсобите кто в теме Плз :)
Я не программер, совершенно, сорри если объясняю коряво.

на счет части что касаеться javascript, можешь спросить на http://forum.ru-board.com/

http://forum.ru-board.com/forum.cgi?forum=31

Спасибо за реакцию!
Но я на счет части Imacros!
Почему не выполняется команда?

скрытый текст

Выделить код

Код:

window.find('бла бла', false, false, false, false)

lostandleft1


интерисует конкретная страница и конкретный текст, тогда попробую

06-10-2012 00:07:36
Он та запускаеться но ничего не происходит. какой результат надо ?

06-10-2012 00:09:01
Мне нужно заставить его искать фразу именно на активном окне, и если эту фразу находит, то запускать макрос.
Если не находит, выводить сообщение типа alert и желательно еще и громкий звуковой сигнал!

такое можно будет попробывать сделать

06-10-2012 00:10:18
совпадений на странице - что именно, образец, пример в студию

spy686 пишет

lostandleft1
интерисует конкретная страница и конкретный текст, тогда попробую
06-10-2012 00:10:18
совпадений на странице - что именно, образец, пример в студию

Страница совершенно не прициписальна, пусть будет на http://forum.mozilla-russia.org/viewtop … 18806&p=11странице фраза:

Он та запускаеться но ничего не происходит. какой результат надо ?


Если используется оператор window.find то это аналогично значению ctrl+F схема поиска - та-же самая.
Поэтому не принципиально что именно искать и на какой страничке. Главное сама фраза.
Как запускать макрос я уже понял через команду iimPlay.

Т.е. общий синтаксис пусть будет такой:
Выполнять макрос iimPlay если на странице найдена фраза

Он та запускаеться но ничего не происходит. какой результат надо ?


Если фраза не найдена, тогда выводить сообщение ВНИМАНИЕ и играть ГРОМКИЙ ЗВУК

Или как вариант такой синтаксис:
Если поиск по странице через windows.find находит совпадения с фразой, то считает количество совпадений.
В том случае если количество совпадений больше 0, выполняется макрос iimPlay, иначе Играет громкий звук и сообщение внимание. При этом синтаксисе на этой странице должно быть найдено 3 совпадения.

lostandleft1
выделение обязателно ?

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

Добрый день гуру =)
Подскажите, пожалуйста, какая команда в imacros нажимает "пробел"

Creare пишет

Добрый день гуру Подскажите, пожалуйста, какая команда в imacros нажимает "пробел"

т.е. имитация на жатия клавиши SPACE ? Если да, то незнаю, ненашел на этот вопрос ответа :(

spy686 пишет

Creare пишет: Добрый день гуру Подскажите, пожалуйста, какая команда в imacros нажимает "пробел"т.е. имитация на жатия клавиши SPACE ?

Да, какая команда имитирует нажатие "Space" ?

Весь день пытаюсь найти и ничего не помогает.

Creare пишет

Весь день пытаюсь найти и ничего не помогает.

попробуй на js найти

Creare пишет

Подскажите, пожалуйста, какая команда в imacros нажимает "пробел"т.е. имитация на жатия клавиши SPACE ?

Если нужно ввести данные с пробелом вводи так:
TAG POS=1 TYPE=LI ATTR=TXT:Мама<SP>мыла<SP>раму
<SP> - это пробел - spase, в справке это есть.

lostandleft1
Мне нужно имитировать нажатие клавиши "Space"

Creare пишет

Мне нужно имитировать нажатие клавиши "Space"

Сори не понял, ответа на этот вопрос не знаю.

Почему Imacros не заполняет некоторые формы на aspnet?

Посмотрите макрос пожалуйста, он не выполняется:
поле телефонный номер остается пустым.

скрытый текст

Выделить код

Код:

VERSION BUILD=7500718 RECORDER=FX
TAB T=1
URL GOTO=http://demos.telerik.com/aspnet-ajax/input/examples/radmaskedtextbox/firstlook/defaultvb.aspx
TAG POS=1 TYPE=A ATTR=ID:RadComboBox1_Arrow
TAG POS=1 TYPE=LI ATTR=TXT:Telephone
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:defaultvb.aspx ATTR=ID:RadMaskedTextBox1 CONTENT=(777)<SP>123-456-789


Аналогичная проблемка тут:
Номер телефона не заполняется.
скрытый текст

Выделить код

Код:

VERSION BUILD=7500718 RECORDER=FX
TAB T=1
URL GOTO=http://demos.telerik.com/aspnet-ajax/input/examples/common/validation/defaultvb.aspx
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:defaultvb.aspx ATTR=ID:RadMaskedTextBox1 CONTENT=(777)-123-456-789

lostandleft1 пишет

Почему Imacros не заполняет некоторые формы на aspnet?

это надо на сайте смотреть, так я ничего и не скажу

spy686 пишет

это надо на сайте смотреть, так я ничего и не скажу

На каком сайте? Если на официальном форуме Imacros - сообщение оставил там....молчат.
Если на сайте, который я в пример привел - вы можете просто загрузить мои макросы, убедитесь сами, поля не заполняются.

может кто в курсе - он умеет делать так:

есть страница со списком ссылок. нужно чтобы он по каждой кликнул, т.е. кликнул по первой, вернулся обратно на страницу со списком, кликнул по второй, и т.д.

либо первую ссылку открыл в фоновой вкладке, и вкладку эту тут же закрыл, повторил цикл со второй ссылкой?

спасиб

El_Andy
да, может

Это сообщение хочу видеть на экране в alert:


Кто-нибудь подкскажет как реализовать чистым JS данный пример без использования функций IM getlastextract.
Нужно просто вывести текст в alert

Выделить код

Код:

iimPlay("code: TAG POS=1 TYPE=div ATTR=ID:message587788 EXTRACT=TXT");
var m
m = iimGetLastExtract()
alert (m)
lostandleft1 пишет

Кто-нибудь подкскажет как реализовать чистым JS данный пример без использования функций IM getlastextract.
Нужно просто вывести текст в alert

А такой вариант не подходит?

скрытый текст

Выделить код

Код:

iimPlay("code: TAG POS=1 TYPE=div ATTR=ID:message587788 EXTRACT=TXT");
iimPlay("code: PROMPT {{!EXTRACT}}");


(http://wiki.imacros.net/PROMPT)

Спасибо за ответ!
Нет не подходит, нужно как-нибудь вообще все через javascript реализовать вообще без команд imacros, через его JS интерпритатор (или как это правильно называется не знаю) но в общем теже самые команды но только все средствами JavaSсript прописать как-нибудь через getelementbytag или getelementbyid.


Например так: Показывает что-то подобное, но крякозябров - километр все-равно:

скрытый текст

Выделить код

Код:

var m = window.content.document.getElementById('message587788').innerHTML;
alert (m)


Мне нужен только текст, а там куча всего лишнего получается


Урря задачку сам решил!:rock:
Может кому понадобится ловите:

скрытый текст

Выделить код

Код:

var m = window.content.document.getElementById('message587788').textContent;
alert (m)


Полностью тоже самое что и:
скрытый текст

Выделить код

Код:

iimPlay("code: TAG POS=1 TYPE=div ATTR=ID:message587788 EXTRACT=TXT");
var m
m = iimGetLastExtract()
alert (m)

lostandleft1 пишет

Урря задачку сам решил!:rock:

Код та хорош, был случай когда я не мог Extract из iMacros передать в iimGetLastExtract(), и этот код помог, но
что делать если

скрытый текст

Выделить код

Код:

window.content.document.getElementById('message587788').textContent


нет такого элемента, скрипт становиться в тупик и останавливаеться, есть варианты ?

spy686
Может быть проверку сделать ?

Выделить код

Код:

var div = window.content.document.getElementById('message587788');
if (div) alert (div.textContent);
Dumby пишет

var div = window.content.document.getElementById('message587788'); if (div) alert (div.textContent);

Dumby пишет

Может быть проверку сделать ?

Действительно все работает супер:

Выделить код

Код:

var div = window.content.document.getElementById('message587785');
if (div) alert (div.textContent);
else { alert ('Переменная не найдена')}

ЗДравствуйте. ТАкая не сложная задача, подскажите пожалуйста.
При переходе на страницу генерируюстся разные кнопки ("заработать" и "отправить").
Как сделать так, что бы аймакрос нажимал на ту кнопку, которая появится рандомно (они появляются в разном месте, пропсиать по координатам не получится).
Т.е. после перехода должно нажать "заработать", а если там "отправить", то соответсвтенно эту кнопку "отпарвить". Или наоборот.
Надеюсь понятно обьяснил, спасибо.

Lifestyle пишет

ЗДравствуйте. ТАкая не сложная задача, подскажите пожалуйста.
При переходе на страницу генерируюстся разные кнопки ("заработать" и "отправить").
Как сделать так, что бы аймакрос нажимал на ту кнопку, которая появится рандомно (они появляются в разном месте, пропсиать по координатам не получится).
Т.е. после перехода должно нажать "заработать", а если там "отправить", то соответсвтенно эту кнопку "отпарвить". Или наоборот.
Надеюсь понятно обьяснил, спасибо.

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

08-11-2012 02:36:14
Dumby
А как можно на подобие getElementById вытянуть вот эту инфу:




image_509ae2d19fe01_small.png

Помогите.
Захожу на почту mail.ru
Нажимаю кнопку новое письмо.
Но imacros в упор не видит область где необходимо ввести текст письма и на отрез отказывается с ней работать.
Как быть? Выручите плыз.

yurapresident пишет

Помогите.
Захожу на почту mail.ru
Нажимаю кнопку новое письмо.
Но imacros в упор не видит область где необходимо ввести текст письма и на отрез отказывается с ней работать.
Как быть? Выручите плыз.

это элемент iframe, может iMacros с ними не работает. хз

а вот, можно так:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=ID:HeaderBtnSentMsg
TAG POS=1 TYPE=SPAN ATTR=ID:mailru-webagent-gen-39
TAG POS=1 TYPE=TEXTAREA FORM=NAME:Compose ATTR=ID:sentmsgcomposeEditor CONTENT=er<SP>werewre<SP>


ну или найди способ нажатия на кнопку                 
    Просто текст
и в путь

spy686 пишет

ну или найди способ нажатия на кнопку                 
    Просто текст
и в путь

просто текст не подходит, там есть картинка.

09-11-2012 17:59:04
imacros должен работать с элементом:

скрытый текст

Выделить код

Код:

<body id="tinymce" class="mceContentBody " contenteditable="true" dir="ltr" style="overflow: auto;"><br data-mce-bogus="1"></body>


Как сделать?

yurapresident пишет

Как сделать?

тут уже была такая проблема
http://forum.iopus.com/viewtopic.php?f=11&t=7091

Что бы было наглядней про какую область я говорю:

image_509d2f065ac13.png

09-11-2012 20:47:11
Не хочет работать с этой областью даже в режиме клика.

image_509d343175a3b.png

yurapresident пишет

Не хочет работать с этой областью даже в режиме клика.

в режиме клика работает только из под desktop версии

Народ назрела необходимость перенести в JS скрипт весь код из IIM файла, так, как если бы запускался фаил целиком
Пример файла:

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=ya.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT=Как<SP>ввести<SP>несколько<SP>срок<SP>в<SP>JS<SP>код<SP>в<SP>Imacros
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*


В JS скрипте, который нужно сделать не получается у меня задать весь кусок кода целиком. Подскажите как это сделать правильно.
Такой вариант работает, но не подъходит
скрытый текст

Выделить код

Код:

var GoTo = new String ('code: URL GOTO=ya.ru/');
var TextToFind = new String ('code: TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT=Как<SP>ввести<SP>несколько<SP>срок<SP>в<SP>JS<SP>код<SP>в<SP>Imacros');
var DoIt = new String ('code: TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*');
iimPlay (GoTo);
iimPlay (TextToFind);
iimPlay (DoIt);


Нужно чтобы вместо 3 переменных строковых была одна, т.е. мну нужна полная аналогия с тем, как это бы Imacros делал из одного исполняемого файла. А тут получается, что я 3 разных исполняемых файла по очереди запускаю
Прошу Helpa

lostandleft1 пишет

Народ назрела необходимость перенести в JS скрипт весь код из IIM файла, так, как если бы запускался фаил целиком
Пример файла:

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=ya.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT=Как<SP>ввести<SP>несколько<SP>срок<SP>в<SP>JS<SP>код<SP>в<SP>Imacros
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*


В JS скрипте, который нужно сделать не получается у меня задать весь кусок кода целиком. Подскажите как это сделать правильно.
Такой вариант работает, но не подъходит
скрытый текст

Выделить код

Код:

var GoTo = new String ('code: URL GOTO=ya.ru/');
var TextToFind = new String ('code: TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT=Как<SP>ввести<SP>несколько<SP>срок<SP>в<SP>JS<SP>код<SP>в<SP>Imacros');
var DoIt = new String ('code: TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*');
iimPlay (GoTo);
iimPlay (TextToFind);
iimPlay (DoIt);


Нужно чтобы вместо 3 переменных строковых была одна, т.е. мну нужна полная аналогия с тем, как это бы Imacros делал из одного исполняемого файла. А тут получается, что я 3 разных исполняемых файла по очереди запускаю
Прошу Helpa

Вариант1 :

скрытый текст

Выделить код

Код:

macro = "CODE:";
macro += "URL GOTO=http://wiki.imacros.net" + jsLF;
macro += "WAIT SECONDS=" + MyDelay + jsLF;
macro += "URL GOTO=http://wiki.imacros.net/iMacros_for_Firefox";

retcode = iimPlay(macro);


Вариант2 :
скрытый текст

Выделить код

Код:

errCode=iimPlay("CODE:WAIT SECONDS=1\nSET !EXTRACT NULL\nWAIT SECONDS=1");

spy686 пишет

lostandleft1 пишет: Народ назрела необходимость перенести в JS скрипт весь код из IIM файла, так, как если бы запускался фаил целиком:
Вариант1 :

скрытый текст

Выделить код

Код:

macro = "CODE:";
macro += "URL GOTO=http://wiki.imacros.net" + jsLF;
macro += "WAIT SECONDS=" + MyDelay + jsLF;
macro += "URL GOTO=http://wiki.imacros.net/iMacros_for_Firefox";
retcode = iimPlay(macro);


Вариант2 :
скрытый текст

Выделить код

Код:

errCode=iimPlay("CODE:WAIT SECONDS=1\nSET !EXTRACT NULL\nWAIT SECONDS=1");

Извиняюсь за свой французский но пример на JS не работает.
Не все переменные определены

Повторюсь мне нужно запустить тоже самое что я озвучил ранее через JS фаил и выполнить это через одну переменную.
нужна полная аналогия с тем, как это бы Imacros делал это выполняя один исполняемый файл

Еще одна проблема нарисовалась.
При запуске FF в нескольких профилях одного и тогоже скрипта, IM выплевывает ошибку.
:

[Exception... "Component returned failure code: 0x8052000e (NS_ERROR_FILE_IS_LOCKED) [nsIFileOutputStream.init]"  nsresult: "0x8052000e (NS_ERROR_FILE_IS_LOCKED)"  location: "JS frame :: resource://imacros/utils.js :: <TOP_LEVEL> :: line 299"  data: no] (Error code: 991)

Я так понимаю что конфликт блокировок....как лечить, кто-нибудь поможет?
Нужно запустить несколько одинаковых скриптов одновременно.

lostandleft1 пишет

Я так понимаю что конфликт блокировок....как лечить, кто-нибудь поможет?
Нужно запустить несколько одинаковых скриптов одновременно.

скрытый текст

Выделить код

Код:

errCode=iimPlay("CODE:TAB T=1\nURL GOTO=ya.ru/\nTAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT=Как<SP>ввести<SP>несколько<SP>срок<SP>в<SP>JS<SP>код<SP>в<SP>Imacros\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*");


А на счет ошибки - хз, у меня на 20 профилях один и тот же js прекрасно работает одновременно

spy686 пишет

скрытый текст

Выделить код

Код:

errCode=iimPlay("CODE:TAB T=1\nURL GOTO=ya.ru/\nTAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT=Как<SP>ввести<SP>несколько<SP>срок<SP>в<SP>JS<SP>код<SP>в<SP>Imacros\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*");


А на счет ошибки - хз, у меня на 20 профилях один и тот же js прекрасно работает одновременно

Спасибо за код - Работает!

Чтобы симулировать ошибку пожалуйста попробуй запустить следующий скрипт на 4 и более профилях:

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=9999;i++)
{
iimPlay("code: wait seconds = 0.01");
}


У меня ошибка вылетает в 99% случаев.
Попробуй запусти пожалуйста, если не затруднит!

lostandleft1 пишет

У меня ошибка вылетает в 99% случаев.
Попробуй запусти пожалуйста, если не затруднит!

проверил на двух - все норм. для проверки 20 надо все перестраивать - надо перезапускать IM

На двух профилях срабатывает не всегда, на 4х и более - эффект гарантирован!
PS чтоб было проще профили запускать я себе файлик сделал батовский следующего содержания:

bat

Выделить код

Код:

@Echo off
start "0" "E:\Mozilla\PF\1\firefox.exe" -p 1 -no-remote
start "1" "E:\Mozilla\PF\2\firefox.exe" -p 2 -no-remote
start "2" "E:\Mozilla\PF\3\firefox.exe" -p 3 -no-remote
start "3" "E:\Mozilla\PF\4\firefox.exe" -p 4 -no-remote


1,2,3,4 - профили
0,1,2,3 - процессы/демоны

lostandleft1 пишет

На двух профилях срабатывает не всегда, на 4х и более - эффект гарантирован!
PS чтоб было проще профили запускать я себе файлик сделал батовский следующего содержания:

bat

Выделить код

Код:

@Echo off
start "0" "E:\Mozilla\PF\1\firefox.exe" -p 1 -no-remote
start "1" "E:\Mozilla\PF\2\firefox.exe" -p 2 -no-remote
start "2" "E:\Mozilla\PF\3\firefox.exe" -p 3 -no-remote
start "3" "E:\Mozilla\PF\4\firefox.exe" -p 4 -no-remote


1,2,3,4 - профили
0,1,2,3 - процессы/демоны

а у меня на виртуалке они всегда запущены

Пытаюсь обработать свою ошибку, написал код, но не могу понять, почему цикл у меня бесконечный получается:

скрытый текст

Выделить код

Код:

while (a = 'wait')     // выполнять цикл до тех пор пока а = wait
{
    try    
    {
        var i;
        for (i=1;i<=9;i++)
        {
        iimPlay("code: wait seconds = 0.001");
        }
    }
    catch(e)     // ловлю ошибку, если она обнаружена, присваиваю значение wait
    {
            if (e)
        {
        a = 'wait'
        }
        else {a = 'go'}
alert (a)         // пытаюсь понять обнаружена ошибка, или нет, сообщение не вылазит никогда.
    }
    if (a = 'wait') // Если значение а = wait, обрабатваю ошибку, пытаюсь запустить код
    {
        try
            {iimPlay("code: wait seconds = 1")}
        catch(e)
            {
            if (e) {(a = 'wait')}
            else {a = 'go'}
            }
    }
else {a = 'go'}
}    
alert (a)

lostandleft1 пишет

почему цикл у меня бесконечный получается...
...while (a = 'wait')     // выполнять цикл до тех пор пока а = wait

Может быть так ?
while (a == 'wait')     // выполнять цикл до тех пор пока а == wait
Ну и остальное так же...

Dumby пишет

Может быть так ?while (a == 'wait')     // выполнять цикл до тех пор пока а == wait Ну и остальное так же...

Да, спасибо, помогло! НО только при условии что только первая а == wait, везде далее нужно 1(!) равно

Огромная прозьба помочь...

есть такая запить

скрытый текст

Выделить код

Код:

VERSION BUILD=7401004 RECORDER=FX
TAB T=1
SET !TIMEOUT_TAG 999
SET !ERRORIGNORE YES
SET !DATASOURCE инфо.csv 
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=http://wiki.imacros.net сайт чисто для примера
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:build.php?gid=16&tt=99 ATTR=ID:xCoordInput CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:build.php?gid=16&tt=99 ATTR=ID:t1 CONTENT=2 - здесь нужно!!!!
TAG POS=1 TYPE=BUTTON ATTR=ID:save


как сделать так что б с файла  "инфо.csv " брало данные с 2 столбиков, с первого вставляло где стоит {{!COL1}} а с друго столбика вставляло где я написало "здесь нужно!!!!" но там проблема в "t1"  мне нужно что б оно тоже плавало когда мне нужно на t6

Блин ребята, я вообще баран - ничего в этой проге не понимаю... Помогите, умоляю!

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://mobilewar1.games.nasimke.ru/confirmOtpravkaVoisk.do
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:otpravkaVoiskForm ATTR=VALUE:Отправить


Всё как бы просто должно быть... Мне нужно чтоб прога нажимала на кнопку "отправить" примерно 3 раза в секунду... Если просто повторять макрос 3 цыкла (Воспр. Цыкл) то после первого цыкла - прога ждет полной загрузки страницы... А интернет у меня настолько слабый, короче страница в 10 кб грузиться примерно 5 сек...(( И ещё нужно чтоб этот макрос (который 3 раза в секунду переходит по ссылке) повторялся каждые 30 минут... Пожалуйста помогите... И ссылку бросьте на самоучитель по языку этой проги...

Короче, без проги я самостоятельно нажимаю на кнопку "отправить" несколько раз в секунду (не дожидаясь загрузки страницы) всё получается!

Teks

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:otpravkaVoiskForm ATTR=VALUE:Отправить
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:otpravkaVoiskForm ATTR=VALUE:Отправить
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:otpravkaVoiskForm ATTR=VALUE:Отправить
WAIT SECONDS=1800


и попробуй поменять в опциях 60 на 1

и запускаешь сколько надо циклов

spy686
Эх, не работает.... Ещё есть варианты???

22-11-2012 23:41:42
WAIT SECONDS=1800 - работает, это хорошо! теперь знаю как делать задержку между циклами, но основной вопрос "как без ожидания полной загрузки страницы отправлять 3 запроса в секунду) остается открытым...((

Как открыть несколько окон Imacros browser, ток чтобы каждое окно независимо работало на одном и том же сайте но под РАЗНЫМИ ЛОГИНАМИ.???
Выручайте!!!

yurapresident пишет

Как открыть несколько окон Imacros browser, ток чтобы каждое окно независимо работало на одном и том же сайте но под РАЗНЫМИ ЛОГИНАМИ.???
Выручайте!!!

делай несколько профилей mozilla, устанавливай на каждом imacros, в опция указуй одну и туже папку макросов и вперед.

создание профилей

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -no-remote -p

Создаешь нужные профили, и потом ярлыки на эти профили.
Q: Как запустить несколько Firefox'ов с разными профилями?
A: Запуск всех копий, кроме основной, надо осуществлять с параметрами командной строки:
-no-remote -p "имя профиля"

Пример:

"C:\Program Files\Mozilla Firefox\firefox.exe" -no-remote -p "ИмяПрофиля"

spy686
Ты не понял, у меня imacros работает не на Firefox. У него свой браузер называется "imacros browser".

yurapresident
а что ты там за команды выполняешь, с которыми не справляеться mozilla+imacros (работа с flash) ?
попробуй установить в разные папки, например imacros1, imacros2

spy686
mozilla+imacros в упор не хочет видеть некоторые поля, даже работая через координаты X\Y

БЛИИИИИИН Разные папки не проканали(((((((((((

yurapresident
посмотри в папке мои документы, там по идее профили создаються может там что нить можно помутить
создание профилей

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -no-remote -p

Доброго времени. Можно ли с помощью imacros или imacros+js из списка уже имеющихся выражений вставлять случайное выражение в поисковую строку или другое текстовое поле.

02-12-2012 01:49:03
Как этот скрипт или его часть:

скрытый текст

Выделить код

Код:

<script type="text/javascript">
text = new Array();
text[0]="Текст скрипта #1"
text[1]="Текст скрипта #2"
text[2]="Текст скрипта #3 "
text[3]="Текст скрипта #4"
var a = Math.round(Math.random() * (text.length - 1))
document.write (text[a]);
</script>


прикрутить в .iim файл:
скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=yandex.ru
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.by/yandsearch ATTR=ID:text CONTENT=кофе(ЖЕЛАТЕЛЬНО СЮДА)
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:form ATTR=*
TAG POS=1 TYPE=SPAN ATTR=TXT:Кофе<SP>—<SP>ООО<SP>«Кофе<SP>Сервис»


:sick:

suselm
вот как соединить imacros и js

скрытый текст

Выделить код

Код:

var word = 'Есть бонусный код игры «The Settlers Онлайн» на 600 единиц' ;
var myRegExp = new RegExp('[\\s\\S]*'[b] + word + [/b]'[\\s\\S]*', 'gi');
Выделить код

Код:

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=TEXTAREA ATTR=NAME:confirmation* CONTENT="+str_ip+"<BR>"+msite1+"<BR>"+msite2+"<BR>"+msite3+"<BR>"+msite4+"<BR>"+msite5+"<BR>"+msite6+"<BR>"+msite7);

spy686 спасибо, принял к сведению

а может есть у кого идеи как нажать "рассказать друзьям" в vk.com после того как "мне нравиться" ???

всем доброго дня,
подскажите пожалуйста
существует страница, в сурсе которой присутствует значение формы, которое постоянно меняется
необходимо извлекать данное значение каждый раз при заполнении формы, а иначе она не заполняется

скрытый текст

Выделить код

Код:

<INPUT type="checkbox" name="item)12345" value="Set1" checked>
<INPUT type="checkbox" name="item)12323" value="Set1" checked>
<INPUT type="checkbox" name="item)12783" value="Set1" checked>


грубо говоря при каждом обновлении цифра 12345 меняется на другую, если я оставляю старое значение. выдаёт ошибку, типа такой формы не существует
как с помощью iMacros извлечь из сурса странички данное значение ?

и ещё вопрос:
как из буфера обмена вставить в форму определнное значение ?

Суть моей проблемы такова.

1. В макросе имеются пару строчек кода который надо циклически повторять n кол-во раз (возможность указывать число повторов)
если быть наглядным то эти строчки:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Заполнено
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:question_answer ATTR=NAME:commit&&VALUE:Далее


2.  Возможно ли создать такое условие в imacros, при котором он бы проверял наличие элементов на странице и если их нет, то он бы переходил дальше по заданию, а если есть то выполнял  бы определённый массив макросов ?

А именно:
Если imacros на странице не находит "Заполнено", или "Далее", то открывает след вкладку и продолжает работу.
Если imacros на странице  НАходит "Заполнено", или "Далее", то выполняет такой код n кол-во раз:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Заполнено
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:question_answer ATTR=NAME:commit&&VALUE:Далее

gs517

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=9;i++){
        
        errCode=iimPlay("CODE:TAG POS=1 TYPE=IMG ATTR=SRC:img/4.png EXTRACT=HREF");
        av4=iimGetLastExtract();

        if (av4 == '/img/4.png' ) {
                iimPlay("Macros/P1.iim",60);
                }
        else{
                iimPlay("Macros/P4.iim",60);
                } 
        
        }


оброзец на 9 циклов, можно вместо i в i<=9 число меньше 9 (например 2) и будет бесконечный цикл.

18-12-2012 17:35:02
browner
вместо 12345 ставь * т.е. item)*  , должно помочь. Но смотри что первое совподение это будет POS1, а второе POS2 и т.д.

для буфера используеться команда EXTRACT

А можно ли сделать цикл внутри цикла. К примеру вот так:

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=2;i++){
iimSet("LINE",i);
iimPlay("main.iim",60);
var i;
for (i=1;i<=5;i++){
iimSet("LINE",i);
iimPlay("root.iim",60);
}
}


у меня данная конструкция работать не хочет. в js не силён. подскажите как реализовать выполнение "цикла внутри цикла"

spy686 пишет

[вместо 12345 ставь * т.е. item)*  , должно помочь. Но смотри что первое совподение это будет POS1, а второе POS2 и т.д.

для буфера используеться команда EXTRACT

вот как я написал:

TAG POS=1 TYPE=INPUT ATTR=NAME:item)* EXTRACT=TXT

выдаёт: Extracted text: #EANF#

если сделать так:

TAG POS=1 TYPE=INPUT ATTR=NAME:item)* EXTRACT=TXT

выдаёт: Extracted text: #EANF#

если написать так:

TAG POS=1 TYPE=INPUT ATTR=NAME:* EXTRACT=TXT

выдаёт: Set1
то есть берёт значение value, а не name
почему так ?
как получить значение name ?

browner
а ты посмотри откуда он берет txt, на странице эта область должна обводить синим. или пробуй другое писать, например для извлечения ссылка пишут EXTRACT=HREF

доброго времени,не знаю может повторяюсь,подскажите как можно очищать при работе imacros кеш,всмысле что-бы куки не затрагивал как при команде CLEAR

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

скрытый текст

Выделить код

Код:

<html>
<head></head>
                          <body>
                                    <table>
                                              <tbody>
                                                           <tr>
                                                                 <td>0</td>
                                                                 <td>68490850</td>
                                                                 <td>114886</td>
                                                                 <td>0</td>
                                                                 <td>0</td>
                                                                 <td>VATLTS</td>
                                                           </tr>
                                               </tbody>
                                   </table>
                          </body>
</html>


Значение VATLTS и присвоить это значение переменной S


Только если можно, без кода

TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT

глючный он....именно регуляркой JS кто-нибудь сможет помочь вытащить?
:)


Написал кусок кода, помогите закончить, нужно чтобы было только значение VATLTS

скрытый текст

Выделить код

Код:

reg = new RegExp('(<td>0</td><td>)'+'......'+'(</td>)','gim');
a = window.content.document.body.innerHTML;
S = (a.match(reg));
alert (S)


а  alert показывает <td>0</td><td>VATLTS</td>

Два дня думал, голову ломал....в итоге вот это сделал...изврат конечно полный, но умнее ничего не придумал, может кто подскажет как было иначе, но сделал так:

скрытый текст

Выделить код

Код:

reg = new RegExp('0</td><td>'+('......')+'</td>','gim');
a = window.content.document.body.innerHTML;
s = (a.match(reg,'$1'));
//
window.content.document.body.innerHTML=(s)
reg1 = new RegExp('0......')
a1 = window.content.document.body.innerHTML
s1 = (a1.match(reg1,'$1'))
window.content.document.body.innerHTML=(s1)
//
reg2 = new RegExp('0(......)')
a2 = window.content.document.body.innerHTML
result = (a2.replace(reg2,'$1'))
window.content.document.body.innerHTML=(result)
alert (result)

gs517 пишет

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=2;i++){
iimSet("LINE",i);
iimPlay("main.iim",60);
var i;
for (i=1;i<=5;i++){
iimSet("LINE",i);
iimPlay("root.iim",60);
}
}

а по отделности все это работает?
iimSet("LINE",i); - например ;)
Вы чего сделать то хотите?
Посмотрите мои примеры выше, там есть работа с циклами.
Вложить один цикл в другой можно...но по Вашему коду не совсем понятно чего вы добиться хотите :)

Мужики как реализовать кнопку назад ??
Простейшее, но не могу додумать

01-01-2013 20:52:22
Люди еще вопрос возник.
Назрела необходимость использовать большое количество Прокси при работе с одним сайтиком, IPшник банят засранцы.
Нашел в сети скрипт по работе с прокси, думаю многим будет полезен поэтому выклядываю тут:
Прокси само собой может быть уже и не рабочий, подставьте в код тот, что работает, если нужно.

скрытый текст

Выделить код

Код:

PROXY ADDRESS=109.74.145.56:8080
URL GOTO=http://2ip.ru


Так вот, у меня есть список из 30 проксей, как заставить этот список
подставляться в PROXY ADDRESS по моему желанию.
К примеру в таком вечном цикле в JS файле:
скрытый текст

Выделить код

Код:

var a = 1
while (a==1)
{
iimPlay("code: PROXY ADDRESS=109.74.145.56:8080\n URL GOTO=http://2ip.ru\n WAIT SECONDS=5");
a=1}


мне нужно, чтобы через каждые 5 секунд в начале нового цикла прокси менялся на другой, из моего списка.
Подскажите пожалуйста как реализовать.

lostandleft1 пишет

Привет, а чем конструкция типа

скрытый текст

Выделить код

Код:

URL GOTO=ya.ru


Не устраивает?
Вбей свою ссылку, которая нужна и делов то

Нужно что б после неких дел возвращался на предыдущую страницу, нет просто другого варианта реализовать

Havchik пишет

Нужно что б после неких делов возвращался на предыдущую страницу, нет просто друго варианта реализовать

Как через внутреннюю команду назад вернуться - написали, мне больше через JS нравится реализация, выбирай что больше нравится:

Создай JS фаил следующего содержания:

Выделить код

Код:

window.content.history.back()

или

Выделить код

Код:

window.content.history.go(-1)

Где -1 - это количество страниц, которые назад отмотать нужно.


Но если честно, правда не понимаю на кой это надо....ну надо так надо, пользуйся.

Только через фаил JS сделай, его также в imacros запускать можно.
Удачи.

Огромное спасибо за форум очень много полезностей!:)
Помогите плиз реализовать такое:
1 Есть страница, на ней список улов, нужно зайти на первый и произвести в нем действия
2 Потом вернуться назад на исходную страницу
3 Зайти на второй урл и произвести те же действия
Вся сложность в том, что если записываю действия макросом, он воспроизводит те урлы которые записал, а надо вроде как случайные
если есть скрипт к которому можно привязать, скиньте плиз.

Спасиб! Буду искать, хотя думаю можно наверно реализовать через скрипт перехода по случайной ссылке, попробую еще и в эту сторону покопать:)

Ребята мою задачку с Проксей никто порешать не в состоянии?
Ок, а если я видоизменю немного задачку, сможете подсказать?

Допустим есть переменная PROXY - это массив состоящий из списка прокси серверов.
обозначим так:

скрытый текст

Выделить код

Код:

var PROXY = ['129.98.216.135:80', '130.14.29.110:80', '130.14.29.111:80', '130.14.29.120:80', '174.142.125.161:80']


Теперь я хочу взять первый прокси сервер и проверить его на доступность таким кодом например:
скрытый текст

Выделить код

Код:

While (a == 'TryNextProxy')
{
     try
           {
            iimPlay ("code: SET !TIMEOUT 2\n PROXY ADDRESS=129.98.216.135:80\n URL GOTO=http://www.yandex.st/www/1.415/yaru/i/logo.png")
           }
    Catch (e)
           { 
             If (e) 
                    { a = 'TryNextProxy'}
             else {a = 'GoodProxy'}
            }
    alert (a)
}


Т.е. если ошибки не возникло и если страница прогрузилась за 2 секунды, считаю что прокси мне подходит.
Подскажите пожалуйста как мне в каждой новой интерации брать новое значение из переменной PROXY.
Понимаю, что код вероятно приется переписать для реализации команд Imacrosa но мне бы идею кто подкинул как имено каждый раз брать новое значение из переменной....помогите плз.

lostandleft1
Вот такой код для отправки сообщений из тестового файла:

скрытый текст

Выделить код

Код:

var i;
for (i=1;1<=27;i++){
var randomNumber=Math.random()*(600-7200)+7200;

errCode=iimPlay("CODE:URL GOTO=https://ner.com/intent/ner");
errCode=iimPlay("CODE:SET !EXTRACT_TEST_POPUP NO\nSET !DATASOURCE  ner.txt\nSET !DATASOURCE_COLUMNS 103\nSET !LOOP 1\nSET !DATASOURCE_LINE {{!LOOP}}\nSET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES\nTAG POS=1 TYPE=TEXTAREA FORM=ACTION:/intent/ner/update ATTR=ID:status CONTENT={{!COL1}}\nWAIT SECONDS=3\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:update-form ATTR=VALUE:ОТПРАВИТЬ");
        errCode=iimPlay("CODE:WAIT SECONDS=3"); 
errCode=iimPlay("CODE:URL GOTO=http://04.for_autoner/Del_ner.php");

        errCode=iimPlay("CODE:WAIT SECONDS=" + randomNumber + " "); 

        }


http://04.for_autoner/Del_ner.php - это php код котрый удаляет первую строчку из файла, требует запущеного Denwer'a

скрытый текст

Выделить код

Код:

<?

//считали в массив
$f = file('ner.txt');
//сохранили и убрали верхнюю строку
$a = array_shift($f);
//сохранили что осталось в файл
$file = fopen("ner.txt","w+");
fputs($file, implode('',$f));
fclose($file);


файл ner.txt находиться в папке Denwer'a Denwer\home\04.For_Autoner\www\  памоему так.

ОЗАДАЧИЛСЯ как прописать в самом скрипте макроса кол-во  циклов к выполнению.

Havchik пишет

ОЗАДАЧИЛСЯ как прописать в самом скрипте макроса кол-во  циклов к выполнению.

for (i=1;i<=27;i++)

i=1 - с чего счет начинаеться
i<=27 - условие при котором будет выполняться
i++ - после каждого цикла к i будет прибовляться 1

если поставить i<=27,  то цикл будет выполняться 27 раз, т.е. процесс такой -
первый цикл 1, 1<27, 1+1=2
второй цикл 2, 2<27, 2+1=3
третий 3, 3<27, 3+1=4
.
.
.
27 цикл 27, 27<27 (!НЕВЕРНО!), СТОП

если поставить 1<=27, т.е. условие всегда верно, то цикл будет безконечен

spy686
Ненавижу этот плагин за его глючность, ничего более глючного и нестабильного в жизни не встречал...почти решил задачу с проксями обрадовался не на шутку...и хрен там в общем есть такой код, который работает крайне странно, если не сказать больше:

Предположительно в следующем скрипте должно выполнятся правило:
Берем прокси сервер, идем на 2ip.ru проверяем IP адрес, если сервер мертвый (т.е. если страница вообще не открывается), должна возникать внутренняя ошибка Imacrosa и в этом случае должно появится сообщение Идем на Iopus, после чего опять идем на 2ip.ru. При этом проверяем, не возникнет ли внутренних ошибок JS и если их не возникнит выводим сообщение что все нормально.
Если у кого-то получится это сделать, считайте что вы уникальны. Я пытался запустить этот скрипт на разных версиях FF и даже на PaleMoon...не работает.
Мало того, что я ни разу не видел сообщение Нормуль или Ошибка, так кроме того, команда PROXY которую я привожу тут....ДЕЙСТВУЕТ ТОЛКО ВНУТРИ IIM Команды...удивительно, когда после выполнения переменной Pr все настройки прокси сбрасываются и делов то...так что получается полная жо..желание деинсталировать этот плагин и начать изучение AutoIt например....
Один из проксей живой 100500%

скрытый текст

Выделить код

Код:

var PROXY = ['129.98.216.135:80', '174.142.125.1:80', '1.1.125.1:80', '130.14.29.111:80', '130.14.29.120:80', '174.142.125.161:80', '174.142.125.1:80', '109.74.145.56:8080'];

for(var i = 0; i < PROXY.length; i++)
{
        var Pr2 = PROXY[i];
        var Pr3 = new String ('code: CLEAR\n SET !TIMEOUT 15\n PROXY ADDRESS=');
        var Pr4 = new String ('\n URL GOTO=http://2ip.ru/');
        var Pr = Pr3 + Pr2 + Pr4;
        try     {
            var go = iimPlay (Pr);
            if (go!=1)     {
                    alert ("Иду на Iopus");
                    window.content.document.location = 'http://www.iopus.com';
                    iimPlay('code: wait seconds = 3');
                    window.content.document.location = 'http://2ip.ru/'
                    alert ("Цикл Кончился");
                    }
                 }
        catch (e)
            {
            if (e)    {alert ("ошибка")}
            else    {alert ("нормуль")}
            }
}


Итак, вырвав несколько кусков волос, обматерив все вокруг, и заглянув на Iopus форум, оказалось, что ничего страшного в таком нерабочем поведении плагина нет, авторы знаю об этом...
пожалуйста посетите 2 сссылочки и авторам Плюнь....напишите что очень нравится пользоваться плагином
Сделать это можно в 2х темах:
http://forum.iopus.com/viewtopic.php?t=12440#p36761
http://forum.iopus.com/viewtopic.php?f= … 151#p50151
Особенно коментарий разраба позабавил

Good to know, thanks for trying!

Так вот Первую часть проблемы мне решить удалось, оказывается ссылки типа:

URL GOTO=http://2ip.ru/

Использовать не рекомендуется в работе с прокси...и ответа разрабы не дают....эм......в общем ответ я нашел сам на помощь команды JS приходят.
В коде выше вместо станадартной строки в цикле FOR нужно прописать:

URL GOTO=javascript:window.content.document.location="http://2ip.ru/"

Таким образом чтобы относительно беспроблемно запускать в JS код из интерфейса Imacros....как в случае с ПРОКСИ, (сделать это иначе просто не получается, потому что после выполнения iim соманды/файла, значения Прокси сбрасываются, и ставятся те что были в браузере ранее, до запуска скрипта.
В итоге получается изварат, что из скрипта JS мы запускаем команду Imacros которая выполняется средствами JS опять же....большего извращения не видел:mad:

Сижу ломаю голову как все-таки реализовать перебор проксей...ибо все написанное выше....геморрой полный, прокси действует только внутри переменной Pr
Желания 5 страниц кода вписывать в эту переменную нет ну никакого....извращение, хуже некуда.

Резюме, код выше - работает частично условие Try не обрабатывается цикл For не отрабатывается.

Поправьте если я делаю что-то не так.

spy686
как я понял это нужно  явой вызывать скрипты *.imm , подскажите дилетанту мож есть общий пример на яве, что б по примеру сделать ??

За помощь биг спасибо !

Havchik пишет

подскажите дилетанту мож есть общий пример на яве, что б по примеру сделать ??

ну на счет того вызывать ли .imm или код Imacros вшивать в JS это свое усмотрение, есть ситуации разные, бывает что проще вшить в JS, а есть что лучше вызвать .imm.

если вшить в JS то я делаю это так:

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=27;i++){
var randomNumber=Math.random()*(600-7200)+7200;

errCode=iimPlay("CODE:URL GOTO=https://ner.com/intent/ner");
errCode=iimPlay("CODE:SET !EXTRACT_TEST_POPUP NO\nSET !DATASOURCE  ner.txt\nSET !DATASOURCE_COLUMNS 103\nSET !LOOP 1\nSET !DATASOURCE_LINE {{!LOOP}}\nSET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES\nTAG POS=1 TYPE=TEXTAREA FORM=ACTION:/intent/ner/update ATTR=ID:status CONTENT={{!COL1}}\nWAIT SECONDS=3\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:update-form ATTR=VALUE:ОТПРАВИТЬ");
        errCode=iimPlay("CODE:WAIT SECONDS=3"); 
errCode=iimPlay("CODE:URL GOTO=http://04.for_autoner/Del_ner.php");

        errCode=iimPlay("CODE:WAIT SECONDS=" + randomNumber + " "); 

        }


а если нужно при выполнении условий запускать .imm то так

скрытый текст

Выделить код

Код:

errCode=iimPlay("CODE:URL GOTO=http://getup.ru/");
        errCode=iimPlay("CODE:WAIT SECONDS=10");
        errCode=iimPlay("CODE:TAG POS=2 TYPE=IMG ATTR=SRC:http://getup.ru/img/Log.gif");
        errCode=iimPlay("CODE:WAIT SECONDS=10");

var i;
for (i=1;2<=9;i++){
        errCode=iimPlay("CODE:URL GOTO=http://getup.ru/");
        errCode=iimPlay("CODE:WAIT SECONDS=3"); 

        errCode=iimPlay("CODE:TAG POS=1 TYPE=IMG ATTR=SRC:*img/1.png EXTRACT=HREF");
        av1=iimGetLastExtract();

        if (av1 == 'http://getup.ru/img/1.png' ) {
                iimPlay("getup.ru/P1.iim",60);
                }
        }

В общем опять отвечаю сам себе, вот реально рабоющий пример работы с прокси, вроде как все делает так, как мне нужно, а нужно следующее:

Скрипт перебирает проксики по порядку, путем захода на сайт 2ip.ru и поиска фразы "Имя вашего компьютера" (парсить страничку лень, поэтому проверка сайта такая простая) и если находит тот прокси, что работает, то сообщает об этом радостным сообщением, если же прокси не находит, то переходит к следующему в списке, и так пока список проксей не кончится. Потом все те, что работают выводит в отдельный Alert

Пожалуйста пользуйтесь те, кому это может понадобиться. Только Если прокси повторяются, их придется в экселе вручную поубирать, если есть желание регулярку напишите, мне и так сойдет.

скрытый текст

Выделить код

Код:

var PROXY = ['129.98.216.135:80', '109.74.145.56:8080', '1.1.125.1:80', '130.14.29.111:80', '130.14.29.120:80', '174.142.125.161:80', '174.142.125.1:80', '109.74.145.56:8080'];
var GoodPrx = [];
for(var i = 0; i < PROXY.length; i++)
{
        var Pr2 = PROXY[i];
        var Pr3 = new String ('code: CLEAR\n SET !TIMEOUT 15\n PROXY ADDRESS=');
        var Pr4 = new String ('\n URL GOTO=javascript:window.content.document.location="http://2ip.ru/"');
        var Pr = Pr3 + Pr2 + Pr4;

        try     {
            var go = iimPlay (Pr);
            if (go!=1)     {
                    //alert ("Внутренняя ошибка, Иду на Iopus");//просто для проверки
                    //window.content.document.location = 'http://www.iopus.com';//просто для проверки
                    continue
                    //iimPlay('code: wait seconds = 3');//просто для проверки
                    //window.content.document.location = 'http://2ip.ru/' //просто для проверки
                    //alert ("Цикл Кончился"); //просто для проверки
                    }
            else         {    if     (window.content.find('Имя вашего компьютера', false, false, false, false))
                            {
                            alert("Прокси " + [i+1] + " Рабочий, Мои поздравления :-)");
                            GoodPrx.push(PROXY.slice(i,i+1))
                            }
                        else
                            {
                            continue
                            }
                    }

            }
        catch (e)
            {
            if (e)    {alert ("ошибка")}
            else    {alert ("нормуль")}
            }
}
alert (GoodPrx)


Тем не менее хоть скрипт и с костылями, о которых я писал ранее, в своем сообщении (стандартным GOTO тоже самое реализовать не получится, только в свяске с JS). Все равно мне не удается обработать нормально ошибку с помощью Try. Итоговое сообщение Ошибка или Нормуль не появляется никогда.
У кого есть идеи?
Также все еще напрягает то что прокси работает ТОЛЬКО внутри переменной Pr, помните об этом, если будете использовать скрипт.
Но сейчас свою функцию выполнят - поиск живых прокси для конкретного сайта...если вас банят, на каком то сайте, можете запустить скрипт натыканный проксями и найти те, что для конкретного сайта живые.

Доброго времени суток!

Буду очень признателен за помощь в следующем.
Как правильно описать несколько циклов с выборкой?
Вот сам скрипт

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE email.csv
SET !DATASOURCE_COLUMNS 200
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

CMDLINE !DATASOURCE female.csv
SET !DATASOURCE_COLUMNS 200
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://
TAG POS=1 TYPE=A ATTR=TXT:здесь
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:email CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/register/ ATTR=ID:password CONTENT=12345
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:name CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:secondname CONTENT=-
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:middlename CONTENT=-
TAG POS=1 TYPE=SELECT FORM=ACTION:/register/ ATTR=ID:r_day CONTENT=%10
TAG POS=1 TYPE=SELECT FORM=ACTION:/register/ ATTR=ID:r_month CONTENT=%7
TAG POS=1 TYPE=TBODY ATTR=TXT:E-mail:<SP>Пароль:<SP>Имя:<SP>Фамилия:<SP>Отчество:<SP>Пол:*
TAG POS=1 TYPE=SELECT FORM=ACTION:/register/ ATTR=ID:r_year CONTENT=%1982
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:phone CONTENT=-
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:uind CONTENT=-
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:city CONTENT=-
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:street CONTENT=-
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:house CONTENT=-
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:building CONTENT=-
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/register/ ATTR=VALUE:Зарегистрироваться


Задача в следующем:
Нужно чтоб из двух разных файлов выбирались для полей "Email" и "Имя" разные данные из файлов.

Когда пишу один цикл(email.csv) с выборкой для "Email" - то все работает.
Как только добавляю второй цикл(female.csv)  для "Имя"- то значения меняются...
Как их правильно разделить?

Буду очень признателен за помощь!

SpitFireA
Привет, выше я уже много раз писал о глючности всех манипуляций в imacros
Подобные же ошибки у тебя будут возникать с любыми извлечениями данных. при составлении макроса, если ты не используешь JS
учитывай следующее:
1 - Все команды типа EXTRACT будут давать тебе подобный результат. Каждый последний EXTRACT будет перетирать предыдущий.
2 - В Imacros вообще нет понятия циклов как таковых, а также никаких условий типа Если ТОгда...и так далее. Все делается просто последовательно по заранее прописанному сценарию
3 - Если нужна реализация циклы и условия Если ТОгда, то придется использовать JS
Таким образом, твой макрос не делает то что ты хочешь, потому как не может нормально работать с перменными.
Чтобы все работало правильно, тебе придется думать так, как думали разработчики сего чуда.
т.е. в конкретно твоем примере, нужно составить код таким образом чтобы ты сначала извлек все данные из одного файла потом заполнил этими данными значения формы на сайте, далее повторно произвел извлечение данных из другого файла и снова заполнил значения в форме.
Упрощенно:
1 Команды типа GOTU
2 Команды типа CMDLINE !DATASOURCE email.csv
3 Команды типа AG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/register/ ATTR=ID:password CONTENT=12345
4 команды типа CMDLINE !DATASOURCE female.csv
5 Команды типа TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:name CONTENT={{!COL2}}
Т.е. попробуй изменить последовательность выполнения макроса и все получится....а вообще лучше JS изучай...может и посложнее, но результат более адекватный....
Кстати если запустишь несколько сессий FF и будешь подобными баловаться командами типа EXTRACT ...то непременно нарвешся на ошибки, которые придется как-то обрабатывать.....
Удачи.

lostandleft1 пишет

Привет, выше я уже много раз писал о глючности всех манипуляций в imacros

скрытый текст
Подобные же ошибки у тебя будут возникать с любыми извлечениями данных. при составлении макроса, если ты не используешь JS
учитывай следующее:
1 - Все команды типа EXTRACT будут давать тебе подобный результат. Каждый последний EXTRACT будет перетирать предыдущий.
2 - В Imacros вообще нет понятия циклов как таковых, а также никаких условий типа Если ТОгда...и так далее. Все делается просто последовательно по заранее прописанному сценарию
3 - Если нужна реализация циклы и условия Если ТОгда, то придется использовать JS
Таким образом, твой макрос не делает то что ты хочешь, потому как не может нормально работать с перменными.
Чтобы все работало правильно, тебе придется думать так, как думали разработчики сего чуда.
т.е. в конкретно твоем примере, нужно составить код таким образом чтобы ты сначала извлек все данные из одного файла потом заполнил этими данными значения формы на сайте, далее повторно произвел извлечение данных из другого файла и снова заполнил значения в форме.
Упрощенно:
1 Команды типа GOTU
2 Команды типа CMDLINE !DATASOURCE email.csv
3 Команды типа AG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/register/ ATTR=ID:password CONTENT=12345
4 команды типа CMDLINE !DATASOURCE female.csv
5 Команды типа TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/register/ ATTR=ID:name CONTENT={{!COL2}}
Т.е. попробуй изменить последовательность выполнения макроса и все получится....а вообще лучше JS изучай...может и посложнее, но результат более адекватный....
Кстати если запустишь несколько сессий FF и будешь подобными баловаться командами типа EXTRACT ...то непременно нарвешся на ошибки, которые придется как-то обрабатывать.....
Удачи.

lostandleft1, спасибо за ответ!

Да, я знаю что iMacros не слишком подходит для таких "операций", но я надеялся что все же можно будет что-то придумать...:)
Про JS давно думал начать изучать, но времени мало, а там нужно вникать.
На выходных попробую поиграться с кодом и переменными, как ты посоветовал.

P.S. Если начинать изучать JS, с чего лучше начинать? Я имею ввиду книги.

SpitFireA
C тем как самообразоваться я не самый большой советчик, потому как сам нахожусь где-то в начале пути.
но мне здорово как ни банально помогает ЯндексоГугл :-)
Хотя можно сказать что я с закрытыми глазами в дверь пройти пытаюсь тыкаясь головой о косяки бесконечно. Делая массу повторений строя код, и исправляя ошибки старые, делаю новые.
В общем своими ошибками набираю опыт....что не есть правильно видимо.
ОБрати внимание на http://javascript.ru/,  загляни там примеров много, ну и ребята с этого форума помогают, если что не получается совсем.
Главное желание, мотив решить задачку...и все получится :)
Удачи.

lostandleft1 пишет

C тем как самообразоваться я не самый большой советчик, потому как сам нахожусь где-то в начале пути.
но мне здорово как ни банально помогает ЯндексоГугл :-)
Хотя можно сказать что я с закрытыми глазами в дверь пройти пытаюсь тыкаясь головой о косяки бесконечно. Делая массу повторений строя код, и исправляя ошибки старые, делаю новые.
В общем своими ошибками набираю опыт....

Золтые слова :) Из тех же рядов :D

:offtopic:

Народ привет. Возникла вот такая проблема. Хотел сделать автоматическую вступления в группу

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/club48061446
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:Groups.enter(this,<SP>48061446,<SP>'cdbbe2917c4251095f')&&TXT:Вступить<SP>в<SP>группу


Вот только беда. постоянно эти значения меняются
скрытый текст

Выделить код

Код:

(this,<SP>48061446,<SP>'cdbbe2917c4251095f')


Даже не знаю что и делать. Может кто подскажет?

alex0097

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
'вступит в club (сообщество), подписаться
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button

spy686 я люблю тебя чувак)))) Спасибо... правда очень выручил) Скинь в личку свой кошель))) Закину пару рублей) слишком долго просил людей что бы помогли))) Готов отблагодарить)

Здравствуйте! У меня уже давно установлен imacros. Все долгое время отлично работало. Но вчера в нем перестала отображаться папка с файлами, при помощи которых воспроизводился цикл. Сами файлы в Компьютер/Документы есть, а в макросе они не отображаются, там в верхней строке просто пусто. Я проверяла редакт/опции/paths там все записи остались как и были, все верно. Кто-нибудь мог бы подсказать, как сделать так, чтобы в макросе опять была папка с нужными файлами, это вообще возможно? Или надо все заново переустанавливать?
Заранее спасибо всем.

Спасибо большое! Сейчас попробую.

lostandleft1 пишет

SpitFireA
C тем как самообразоваться я не самый большой советчик, потому как сам нахожусь где-то в начале пути.
но мне здорово как ни банально помогает ЯндексоГугл :-)
Хотя можно сказать что я с закрытыми глазами в дверь пройти пытаюсь тыкаясь головой о косяки бесконечно. Делая массу повторений строя код, и исправляя ошибки старые, делаю новые.
В общем своими ошибками набираю опыт....что не есть правильно видимо.
ОБрати внимание на http://javascript.ru/,  загляни там примеров много, ну и ребята с этого форума помогают, если что не получается совсем.
Главное желание, мотив решить задачку...и все получится :)
Удачи.

Спасибо за советы и наводку!
Будем стараться. А на ошибках учатся. Главное их портом вновь не повторять;)

Что-то нигде не могу найти информации на тандем Imacros+FF+VBS(Visual Basic Script).
может кто нибудь что нить подскажет?
или как хоть применить код vbs ?

spy686 пишет

Что-то нигде не могу найти информации на тандем Imacros+FF+VBS(Visual Basic Script).может кто нибудь что нить подскажет?или как хоть применить код vbs ?

http://wiki.imacros.net/connect-to-fx.vbs - погуглил малость...
http://forum.iopus.com/viewtopic.php?f=8&t=4304
и тут
http://www.visualbasicscript.com/VBS-wi … 44032.aspx
Посмотри ссылки

lostandleft1
это я видел, а на русском есть? и вообще куда этот Visual Basic Script засовывать? его откуда запускать?

дайте какой нить небольшой пример использования VBS(Visual Basic Script) в   Imacros и что куда сувать. Ато что-то я вообще недогоняю :(

очень большое человеческое спасибо :)

будем приступать к изучению VBS

18-01-2013 11:26:19
но почему-то не получилось :(

скрытый текст
398103-thumb.png

okkamas_knife пишет

spy686

spy686 пишет

но почему-то не получилось :(

ну тут я уже не помощник,жди совета от тех кто пользуется имакросом.
как я понял из сообщения имакрос либо незарегистрирован в системе либо ещё чтото мешает системе создать указанный в скрипте объект.

понял спс. Будем ждать знатаков vbs+iMacros

Здравствуйте, нужно напистаь простой скрипт imacros
Смысл "берет готовый текст из файла и вставляет в окно сайта"
Все просто, но я не знаю как это сделать.
Готов заплатить за помощь.
Пишите тут или на почту ukraine.000@mail.ru с пометкой "imacros скрипт"

Народ на страницы частенько вскакивает оошибка страницы 500. код старницы

скрытый текст

Выделить код

Код:

<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>


Как сделать что бы при нахождении этого текста он обновлял страницу пока она не исчезнет

alex0097
ИМХО Код пишешь в неправильном направлении лучше формулировать иначе:

Как сделать так, чтобы до тех пор, пока не появится та страница, которая мне нужна происходило обновление страницы

ну а коли так хочешь

Как сделать что бы при нахождении этого текста он обновлял страницу пока она не исчезнет

то пожалуйста...

Создай JS фаил следующего содержания:

скрытый текст

Выделить код

Код:

window.content.document.location="file:///C:/Users/User/Desktop/1.htm";
iimPlay ("code: wait seconds = 2");

var Err = 'Internal Server Error';
var reg = new RegExp(Err,'gim');
body = window.content.document.body.innerHTML;
get = (body.match(reg));

if (get == Err)
    {
set = 'REFRESH';
    }
else     {
    set = 'STOP';
    }
while (set == 'REFRESH')
    {
        iimPlay("code: wait seconds = 2\n REFRESH");
        
        var reg = new RegExp(Err,'gim');
        body = window.content.document.body.innerHTML;
        get = (body.match(reg));
        
        if (get == Err)
            {
            set = 'REFRESH';
            }
        else     {
            set = 'STOP';
            }
    }


фаил "file:///C:/Users/User/Desktop/1.htm" содержит твой HTML код:
скрытый текст

Выделить код

Код:

<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>


Таким образом пока страница содержит HTML с фразой "Internal Server Error" скрипт будет обновлять страницу, и делать это будет до посинения, вплоть до скончания веков, но как только этой фразы не будет, или свет выключат...страница обновляться перестанет.

далее разбирайся сам...умываю руки
Удачи.

Здравствуйте, помогите разобраться с проблемой использования CMDLINE !DATASOURCE
Есть файл test.csv, ложу его туда же где  находится демонстрационный Address.csv в C:\Users\user\Documents\iMacros\Datasources.
При этом в коде макроса  прописываю такую строку:

CMDLINE !DATASOURCE test.csv

В таком варианте макрос работает как следует, данные извлекаются и используются в макросе.

Внимание вопрос! :)
Как корректно указать любой путь к файлу?
Положил test.csv в корень диска C:
Пишу

CMDLINE !DATASOURCE С:\test.csv

В результате макрос не работает.

Кто-нибудь сталкивался с такой проблемой?

Ребята помогите есть код:

скрытый текст

Выделить код

Код:

<div class="media_line_item even">
    <a href="video/1939" class="fleft thumb"><img src="/media/thumbs/170/1939.jpg" alt="Дитя человеческое / Дитя людське / Children of a Men (2006)" title="Дитя человеческое / Дитя людське / Children of a Men (2006)"></a>
    <a href="video/1939" class="heading">Дитя человеческое / Дитя людське / Children of a Men (2006)</a>
    <ul>
        <li><strong>Жанр:</strong> Боевик, Драма, Триллер, Криминал, Фантастика, Детектив, Приключения</li>        <li><strong> Клэр-Хоуп Эшити…</li>        <li><strong>Описание:</strong> Середина …</li>        <li><strong>Язык:</strong> Русский</li>        <li><strong>Перевод:</strong> Дублированный</li>        <li><strong>Просмотров:</strong> 1719</li>    </ul>
</div>


Нужно как то сделать проверку по полю <li><strong>Язык:</strong> Русский</li> , если русский-то забирать ссылку из <a href="video/1939" class="heading">  в  !VAR1, если украинский-!VAR2, на странице может быть много фильмов.

Пробовал сделать через позиционирование, но так и не разобрался, а в java не шарю
Кто разбирается- помогите пожалуйста, за деталями можете стукнуть в icq 63079455два

не сохраняет картинку(капчу)

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://vk.com/youngs3
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button&&TXT:Подписаться
FILEDELETE NAME=C:\captchas\captcha.png
ONDOWNLOAD FOLDER=C:\captchas\ FILE=captcha.png
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=5


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


Помогите пожалуйста решить эту проблему.

alex0097 пишет

не сохраняет картинку(капчу)

если FF 18, то потому что:
http://forum.iopus.com/viewtopic.php?f=11&t=19853

lostandleft1 действительно помогло обновление imacros

Подскажите, как нажать (не сделать клик, а нажать) кнопку в браузере. Дело в том что при записи события кнопка не определяется и воспроизводя макрос, происходит переход по ссылке, а нужно всего лишь нажатие.
вот запись кода

TAG POS=20 TYPE=A ATTR=TXT:

Edi пишет

Подскажите, как нажать (не сделать клик, а нажать) кнопку в браузере. Дело в том что при записи события кнопка не определяется и воспроизводя макрос, происходит переход по ссылке, а нужно всего лишь нажатие.
вот запись кода

TAG POS=20 TYPE=A ATTR=TXT:

надо смотреть код страницы и код кнопки.

spy686 пишет
Edi пишет

Подскажите, как нажать (не сделать клик, а нажать) кнопку в браузере. Дело в том что при записи события кнопка не определяется и воспроизводя макрос, происходит переход по ссылке, а нужно всего лишь нажатие.
вот запись кода

Выделить код

Код:

TAG POS=20 TYPE=A ATTR=TXT:

надо смотреть код страницы и код кнопки.

Вот здесь выложил странички в архиве. Скачать Primer.rar с WebFile.RU
6336577

так а какую кнопку нажать та надо

spy686 пишет

так а какую кнопку нажать та надо

Скриншот кнопки 15ed9c6aff0a.png я обвел красным, таких кнопок там несколько, но лучше нажимать ту, которая первая, так как они исчезают после того, как произойдет прослушивание звука, после их нажатия. Но для меня, чтоб понять, можно привести пример с любой из таких кнопок, там уж разберусь.

Edi пишет
spy686 пишет

так а какую кнопку нажать та надо

Скриншот кнопки http://s43.radikal.ru/i101/1301/a1/15ed9c6aff0a.png я обвел красным, таких кнопок там несколько, но лучше нажимать ту, которая первая, так как они исчезают после того, как произойдет прослушивание звука, после их нажатия. Но для меня, чтоб понять, можно привести пример с любой из таких кнопок, там уж разберусь.

в коде немогу найти кнопку, лучше адрес страницы.

spy686 пишет

Edi пишет: spy686 пишет: так а какую кнопку нажать та надоСкриншот кнопки http://s43.radikal.ru/i101/1301/a1/15ed9c6aff0a.png я обвел красным, таких кнопок там несколько, но лучше нажимать ту, которая первая, так как они исчезают после того, как произойдет прослушивание звука, после их нажатия. Но для меня, чтоб понять, можно привести пример с любой из таких кнопок, там уж разберусь.в коде немогу найти кнопку, лучше адрес страницы.

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

Выделить код

Код:

TAG POS=20 TYPE=A ATTR=TXT:

без перехода на адрес страницы

Выделить код

Код:

URL GOTO=http://3s-business.net/audio_markers

, попробовал его использовать сам и о чудо, все заработало как надо. Затем я догадался в чем дело и вставил после "URL GOTO" паузу и теперь все отлично работает. кому надо выкладываю код.

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://3s-business.net/audio_markers
WAIT SECONDS=1
TAG POS=2 TYPE=SPAN ATTR=*
WAIT SECONDS=8

Пользуйтесь на здоровье. )))
Вот бы еще написать тоже самое  на AutoIt. Может кто знает как?

Как запускать js-скрипты в iMacros Enterprice Edition? В ней в списке макросов js-скрипты не отображаются, как при использовании расширения для Firefox.

partizanin пишет

Как запускать js-скрипты в iMacros Enterprice Edition? В ней в списке макросов js-скрипты не отображаются, как при использовании расширения для Firefox.

он походу не работает с js

partizanin пишет

Как запускать js-скрипты в iMacros Enterprice Edition? В ней в списке макросов js-скрипты не отображаются, как при использовании расширения для Firefox.

А у меня все запускается и все отображается, хотя стоит только лишь адон для лисы FF.  Просто после добавления скрипта, нужно перегрузить (закрыть-открыть) окно адона, можно с помощью клавиши F8, с программой думаю тоже нужно просто перегрузить ее.
12dbd132c371t.jpg

Есть такой код:

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/friends?id=190460543&section=all
'нажатие ссылки с random номером (1 to 50) до позиций
SET !VAR1 EVAL("Math.floor(Math.random()*50 + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:mail_box_text CONTENT="Мой текст"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send
WAIT SECONDS=1

все отлично работает, но это вариант случайного выбора от 1 до 50, а мне нужно по очереди от 1 до 50. Как это сделать?
Вопрос второй, как изменить макрос, чтоб "Мой текст" извлекался из файла "test.csv".  В общем как изменить существующий макрос, чтобы текст извлекался из нужного мне файла и значение POS с каждым запуском (циклом) менялось на единицу больше?

Edi пишет
partizanin пишет

Как запускать js-скрипты в iMacros Enterprice Edition? В ней в списке макросов js-скрипты не отображаются, как при использовании расширения для Firefox.

А у меня все запускается и все отображается, хотя стоит только лишь адон для лисы FF.  Просто после добавления скрипта, нужно перегрузить (закрыть-открыть) окно адона, можно с помощью клавиши F8, с программой думаю тоже нужно просто перегрузить ее.
http://s020.radikal.ru/i712/1301/d6/12dbd132c371t.jpg

iMacros Enterprice Edition помоему не поддерживает js

28-01-2013 20:43:04

Edi пишет

Есть такой код:

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/friends?id=190460543&section=all
'нажатие ссылки с random номером (1 to 50) до позиций
SET !VAR1 EVAL("Math.floor(Math.random()*50 + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:Написать<SP>сообщение
TAG POS=1 TYPE=TEXTAREA ATTR=ID:mail_box_text CONTENT="Мой текст"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send
WAIT SECONDS=1

все отлично работает, но это вариант случайного выбора от 1 до 50, а мне нужно по очереди от 1 до 50. Как это сделать?
Вопрос второй, как изменить макрос, чтоб "Мой текст" извлекался из файла "test.csv".  В общем как изменить существующий макрос, чтобы текст извлекался из нужного мне файла и значение POS с каждым запуском (циклом) менялось на единицу больше?

я бы использовал js и функцию for и ++

Выделить код

Код:

for (i=1;i<=50;i++){
        alert (i)
      }

вот пример использования js+iMacros:
http://forum.mozilla-russia.org/viewtopic.php?pid=541920#p541920

а вот код использования txt (разница с csv наверно не большая):

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE  url2.txt
SET !DATASOURCE_COLUMNS 159
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

TAG POS=1 TYPE=A ATTR=TXT:ДОБАВИТЬ<SP>ВИДЕОРОЛИК
WAIT SECONDS=10
TAG POS=1 TYPE=NOBR ATTR=TXT:ДОБАВИТЬ
WAIT SECONDS=5
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://cis.com/upload.php ATTR=ID:video_link CONTENT={{!COL1}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=TXT:Сохранить
WAIT SECONDS=10
TAG POS=1 TYPE=DIV ATTR=TXT:Закрыть
WAIT SECONDS=10
spy686 пишет

iMacros Enterprice Edition помоему не поддерживает js

Не может быть, чтобы платная программа не поддерживала то, что поддерживает бесплатная.

Выделить код

Код:

for (i=1;i<=50;i++){
        alert (i)
      }

полезная ссылка http://www.w3schools.com/js/js_loop_for.asp
Не подскажите как вставить это в мой код, что-то не соображу.
Вместо этого кода, функция "Loop" не подойдет?

P.S. Эх, эту бы часть форума imacros уже можно было бы разделить по разделам и мусор повыкидывать.
Учебник по JS http://learn.javascript.ru/

Бьюсь уже второй день с кодом, не знаю как сделать, подскажите. Для примера вот на [url=http://vk.com/search?c[q]=TVM&c[section]=communities ][/url] сайте есть группы, среди всех групп нужно выбрать только "открытые группы" и просмотреть их (зайти в каждую группу) поочередно, вступить в эти группы. Как вступить в группу здесь уже написано Пост №360. А вот остальное. Я написал код,

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/search?c[q]=TVM&c[section]=communities
'  установка строки с которой идет отсчет.
SET !LOOP 1
TAG POS={{!loop}} TYPE=DIV ATTR=CLASS:labeled<SP>&&TXT:Открытая<SP>группа
TAG POS={{!loop}} TYPE=IMG ATTR=HREF:http://*.jpg
WAIT SECONDS=3

но он не прокатывает. В этом коде, строка 6, выбирается нужная группа, по очереди с каждым циклом выбирается следующая строчка, так как мне и надо, но заход происходит не в ту группу, так как в строке 7 перебор по файлам "http://*.jpg" без выбора "открытая группа". Как установить фильтр по открытым группам.  Или как исправить код, чтоб все работало правильно?
-----------------------
Через неделю мучений сам нашел решение, есть такая хорошая штука как относительное позиционирование http://wiki.imacros.net/Data_Extraction … ositioning  ссылка ру
Теперь полностью рабочий код выглядит так.

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/search?c[q]=TVM&c[section]=communities
'  установка строки с которой идет отсчет.
SET !LOOP 1
TAG POS={{!loop}} TYPE=DIV ATTR=CLASS:labeled<SP>&&TXT:Открытая<SP>группа
TAG POS=R-1 TYPE=IMG ATTR=HREF:http://*.jpg
WAIT SECONDS=3
Edi пишет

P.S. Эх, эту бы часть форума imacros уже можно было бы разделить по разделам и мусор повыкидывать.

По мотивам данного форума: iMacros: команды, скрипты, примеры


Плюс мои примеры.:)

кто знает может ли iOpus iMacros пасле завершения выполнения (или ошибки) одного скрипта автоматически перешел бы к выполнению другого.

А как можно получить все содержимое страницы, если она не имеет разметки. Просто строка без тегов.  Можно как-то экспортировать ее в JS?

Здравствуйте, подскажите, пожалуйста, как решить следующую задачу

iMacros заходит на сайт и ищет определённую комбинацию слов, и если:
1) находит её, то выполнение сценария продолжается
2) не находит её, то нажимается именно кнопка обновить на самом сайте (а не F5 в браузере) до тех пор, пока искомая комбинация слов не будет найдена

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Бесплатное<SP>мороженое
TAG POS=1 TYPE=BUTTON ATTR=TXT:Обновить<SP>расписание<SP>»

P.S.: js пользоваться не умею

variousiq пишет

Здравствуйте, подскажите, пожалуйста, как решить следующую задачу

iMacros заходит на сайт и ищет определённую комбинацию слов, и если:
1) находит её, то выполнение сценария продолжается
2) не находит её, то нажимается именно кнопка обновить на самом сайте (а не F5 в браузере) до тех пор, пока искомая комбинация слов не будет найдена

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Бесплатное<SP>мороженое
TAG POS=1 TYPE=BUTTON ATTR=TXT:Обновить<SP>расписание<SP>»

P.S.: js пользоваться не умею

Выделить код

Код:

var word = prompt('Введите Искомое слово', '');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
 iimPlay("#CurrentPERV.iim",60);
} else {
  iimPlay("#CurrentVTOR.iim",60);
  alert('Этой фразы тут нету!'); 
    
}

Как в случае зависания страницы браузера, при выполнении макроса, а соответственно зависания и самого iMacros запустить REFRESH? Я делая это в ручную заметил это помогает и макрос нормально продолжает работать.

Edi пишет

Как в случае зависания страницы браузера, при выполнении макроса, а соответственно зависания и самого iMacros сделать рефреш? Я делая это в ручную заметил это помогает и макрос нормально продолжает работать.

попрбуй в том месте где код зависает, добавить строчку refresh

spy686 пишет

Edi пишет: Как в случае зависания страницы браузера, при выполнении макроса, а соответственно зависания и самого iMacros сделать рефреш? Я делая это в ручную заметил это помогает и макрос нормально продолжает работать.попрбуй в том месте где код зависает, добавить строчку refresh

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

И еще, может кто знает как выбрать на странице все значения "POS".  POS={{*}}, POS=* не прокатывают. Нужно что-то типа  POS={{ALL}} но такого тоже нет.

Edi пишет
spy686 пишет

Edi пишет: Как в случае зависания страницы браузера, при выполнении макроса, а соответственно зависания и самого iMacros сделать рефреш? Я делая это в ручную заметил это помогает и макрос нормально продолжает работать.попрбуй в том месте где код зависает, добавить строчку refresh

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

И еще, может кто знает как выбрать на странице все значения "POS".  POS={{*}}, POS=* не прокатывают. Нужно что-то типа  POS={{ALL}} но такого тоже нет.

всмысле выбрать? как ты представляешь себе нажатие одновременноевсех кнопок?

Нажатие одновременно всех радиокнопок.

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1
TAG POS=2 TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1
и таих еще штук 20
Edi пишет

Нажатие одновременно всех радиокнопок.

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1
TAG POS=2 TYPE=INPUT:RADIO ATTR=NAME:answer_*&&VALUE:1
и таих еще штук 20

ты одновременно это сможешь сделать сам ?
iMacros - это имитатор твоих нажатий на интернет странице.

Здравствуйте, нужен макрос для создания некоторого количества учётных записей, с похожими именами (изменяются на одну цифру, к примеру: ааа1, ааа2, ааа3) я смог сделать только через многократный копипаст одного и того же кода впродолжении макроса, с заменой имени каждый раз, но это довольно долго, поэтому решил спросить) буду рад помощи

13-02-2013 14:12:50
если возможно сделать на распознавание капчи, то вобще круто будет)))

ПРИВЕТ ВСЕМ!!!!!!!!!!!! помогите пожалуйста как сделать так чтоб imacros работал на каждой вкладке??????? обязательно приходится открывать несколько окон что в итоге путаю их!:(:(:(:(:(:(

kolharik пишет

ПРИВЕТ ВСЕМ!!!!!!!!!!!! помогите пожалуйста как сделать так чтоб imacros работал на каждой вкладке??????? обязательно приходится открывать несколько окон что в итоге путаю их!:(:(:(:(:(:(

создай профили mozilla, так удобнее там есть плагин, чтобы внизу справа отображалось имя профиля

13-02-2013 21:11:16

143456 пишет

Здравствуйте, нужен макрос для создания некоторого количества учётных записей, с похожими именами (изменяются на одну цифру, к примеру: ааа1, ааа2, ааа3) я смог сделать только через многократный копипаст одного и того же кода впродолжении макроса, с заменой имени каждый раз, но это довольно долго, поэтому решил спросить) буду рад помощи

js через команду for
или imacros циклы с функцией loop

143456 пишет

13-02-2013 14:12:50
если возможно сделать на распознавание капчи, то вобще круто будет)))

погугли imacros + antigate на сайте seo помоему

пытался создать новый профиль никак не получилось, а почему в IE работает imacros на нескольких вкладках?????

13-02-2013 23:13:47
ПОЖАЛУЙСТА отзовитесь как сделать так чтоб imacros работал на нескольких вкладках?????????:):):):):):):):):):) и почему в IE можно запускать на нескольких вкладках????

kolharik пишет

пытался создать новый профиль никак не получилось, а почему в IE работает imacros на нескольких вкладках?????

13-02-2013 23:13:47
ПОЖАЛУЙСТА отзовитесь как сделать так чтоб imacros работал на нескольких вкладках?????????:):):):):):):):):):) и почему в IE можно запускать на нескольких вкладках????

в ярлыке напиши по анологии

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -no-remote -p

spy686 пишет

143456 пишет: Здравствуйте, нужен макрос для создания некоторого количества учётных записей, с похожими именами (изменяются на одну цифру, к примеру: ааа1, ааа2, ааа3) я смог сделать только через многократный копипаст одного и того же кода впродолжении макроса, с заменой имени каждый раз, но это довольно долго, поэтому решил спросить) буду рад помощи js через команду for или imacros циклы с функцией loop
                    Отредактировано spy686 (Вчера 20:11:16)

а насчёт этого поподробнее можно?) а то с ява языками не очень) я так понимаю там цикл можно делать?

kolharik пишет

пытался создать новый профиль никак не получилось, а почему в IE работает imacros на нескольких вкладках?????Добавлено Вчера 23:13:47ПОЖАЛУЙСТА отзовитесь как сделать так чтоб imacros работал на нескольких вкладках????????? и почему в IE можно запускать на нескольких вкладках????
                    Отредактировано kolharik (Вчера 23:15:51)

Код свой напишите, тогда можно будет что-то подсказать.

Господа, может кто-нибудь пояснить, что делаю не так?
Есть на странице ссылка с текстом "1.5"
Кусок кода: <font style="color: #CC0000; text-decoration: underline;">1.5</font>
Я пытаюсь по ней щёлкнуть вот так:
TAG POS=1 TYPE=FONT ATTR=COLOR:#CC0000&&TXT:1.5
Не получается. Если убираю COLOR:#CC0000 - щёлкает без проблем.

143456 пишет
spy686 пишет

143456 пишет: Здравствуйте, нужен макрос для создания некоторого количества учётных записей, с похожими именами (изменяются на одну цифру, к примеру: ааа1, ааа2, ааа3) я смог сделать только через многократный копипаст одного и того же кода впродолжении макроса, с заменой имени каждый раз, но это довольно долго, поэтому решил спросить) буду рад помощи js через команду for или imacros циклы с функцией loop
                    Отредактировано spy686 (Вчера 20:11:16)

а насчёт этого поподробнее можно?) а то с ява языками не очень) я так понимаю там цикл можно делать?

Выделить код

Код:

for (y=1;y<=150;y++){



    errCode=iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:ВКонтакте<SP>©<SP>2006-2012<SP>Русский");
    errCode=iimPlay("CODE:WAIT SECONDS=5");
    errCode=iimPlay("CODE:TAG POS="+y+" TYPE=IMG ATTR=class:search_item_img");
    errCode=iimPlay("CODE:WAIT SECONDS=5");
}

14-02-2013 21:37:57

udav221 пишет

Господа, может кто-нибудь пояснить, что делаю не так?
Есть на странице ссылка с текстом "1.5"
Кусок кода: <font style="color: #CC0000; text-decoration: underline;">1.5</font>
Я пытаюсь по ней щёлкнуть вот так:
TAG POS=1 TYPE=FONT ATTR=COLOR:#CC0000&&TXT:1.5
Не получается. Если убираю COLOR:#CC0000 - щёлкает без проблем.

главное что щелкает там где надо, а не как :)

spy686 пишет

главное что щелкает там где надо, а не как :)

Так ведь не щёлкает. Если по цвету не идентифицировать, то будет щёлкать куда попало. А подставляю цвет - не хочет щёлкать.
Говорит: RuntimeError: element FONT specified by COLOR:#CC0000&&TXT:1.5 was not found, line: 6 (Error code: -921)

udav221 пишет
spy686 пишет

главное что щелкает там где надо, а не как :)

Так ведь не щёлкает. Если по цвету не идентифицировать, то будет щёлкать куда попало. А подставляю цвет - не хочет щёлкать.
Говорит: RuntimeError: element FONT specified by COLOR:#CC0000&&TXT:1.5 was not found, line: 6 (Error code: -921)

а если так TAG POS=1 TYPE=FONT ATTR=COLOR:#CC0000 TXT:1.5

spy686 пишет

а если так TAG POS=1 TYPE=FONT ATTR=COLOR:#CC0000 TXT:1.5

Тогда синтаксическую ошибку выдаёт.
SyntaxError: wrong format of TAG command, line: 6 (Error code: -910)

udav221 пишет
spy686 пишет

а если так TAG POS=1 TYPE=FONT ATTR=COLOR:#CC0000 TXT:1.5

Тогда синтаксическую ошибку выдаёт.
SyntaxError: wrong format of TAG command, line: 6 (Error code: -910)

а страницу можно ?

Я в почту отправил.

spy686, спасибо, всё получилось!

udav221 пишет

spy686, спасибо, всё получилось!

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

Угу.

Моя строка: TAG POS=1 TYPE=FONT ATTR=COLOR:#CC0000&&TXT:1.5
Строка от spy686: TAG POS=1 TYPE=FONT ATTR=style:color:<sp>#CC0000;<sp>text-decoration:<sp>underline;&&TXT:1.5
Код объекта: <font style="color: #CC0000; text-decoration: underline;">1.5</font>

Наверное spy686 улыбнётся и даст своё объяснение случившемуся, но я предполагаю что по каким-то причинам  iMacros не захотел воспринимать цвет текста как отдельный атрибут. Скорее всего потому что в коде цвет указан как составляющая стиля, поэтому и нужно его передавать в макросе как стиль.

spy686
а куда вставлять дополнительные строки кода (если, например, после регистрации надо ещё некоторые действия выполнить)

143456 пишет

spy686
а куда вставлять дополнительные строки кода (если, например, после регистрации надо ещё некоторые действия выполнить)

ниже цикла просто писать

Выделить код

Код:

param += "TAG POS=1 TYPE=SELECT FORM=NAME:PC_*_OfficeTimetableForm ATTR=ID:PC_*_app_num CONTENT=%2"+s_n;
param += "TAG POS=1 TYPE=SELECT FORM=NAME:PC_*_OfficeTimetableForm ATTR=ID:PC_*_realty_num CONTENT=%1"+s_n;
param += "TAG POS=1 TYPE=SELECT FORM=NAME:PC_*_OfficeTimetableForm ATTR=ID:PC_*_regActionSelectP CONTENT=%20"+s_n;
param += "TAG POS=1 TYPE=TD ATTR=TXT:Тип<SP>очереди:<SP>Предварительная<SP>запись<SP>на<SP>приём*"+s_n;



do {
var word = "Записаться на приём";
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Обновить<SP>расписание<SP>»");

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=table ATTR=class:timetable EXTRACT=TXT");

ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");
}
while (ip!='TutTekstEst');

ret_param = iimPlay(param);

типа такого

Здравствуйте. Помогите разрешить задачу - имеется такой алгоритм действий, который будет повторяться много раз:
1) кликаем на ссылку-картинку (она каждый раз в одном и том же месте страницы - наверху, вероятно, можно задать координаты) и переходим тем самым на страницу.
2) на странице кликаем на другую картинку (в центре страницы, думаю, тоже нужна возможность добавить координаты клика), открывается увеличенная версия в слайдбоксе, правой кнопкой на нем и сохраняем на винт, закрываем слайдбокс крестиком.

Проблема в том, что при записи действий ничего не выходит - при записи в скрипте прописывается URL, по которому надо кликнуть, а они каждый раз разные (в 1 и 2 пункте).
Заранее спасибо.

Flynn пишет

Здравствуйте. Помогите разрешить задачу - имеется такой алгоритм действий, который будет повторяться много раз:
1) кликаем на ссылку-картинку (она каждый раз в одном и том же месте страницы - наверху, вероятно, можно задать координаты) и переходим тем самым на страницу.
2) на странице кликаем на другую картинку (в центре страницы, думаю, тоже нужна возможность добавить координаты клика), открывается увеличенная версия в слайдбоксе, правой кнопкой на нем и сохраняем на винт, закрываем слайдбокс крестиком.

Проблема в том, что при записи действий ничего не выходит - при записи в скрипте прописывается URL, по которому надо кликнуть, а они каждый раз разные (в 1 и 2 пункте).
Заранее спасибо.

установи firebug и индифицируй по какому нить тегу

Сейчас нашел команды CLICK X=... Y=... (координаты), это командой решил пункт 1 и кликнул на картинку в пункте 2. Осталось сохранить картинку (в одну и ту же папку) и закрыть слайдбокс.

Flynn пишет

Сейчас нашел команды CLICK X=... Y=... (координаты), это командой решил пункт 1 и кликнул на картинку в пункте 2. Осталось сохранить картинку (в одну и ту же папку) и закрыть слайдбокс.

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
ONDOWNLOAD FOLDER=C:\captchas\ FILE=image.jpg
TAG POS=1 TYPE=IMG ATTR=id:captchaImage CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

вот пример

Не получается...
Скрипт:

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\Users\Admin\Desktop\Folder FILE=* WAIT=YES
TAG POS=1 TYPE=DIV ATTR=CLASS:darkbox-canvas<SP>darkbox-canvas-load<SP>darkbox-canvas-done CONTENT=EVENT:SAVEPICTUREAS

Выдает ошибку:
RuntimeError: can not save picture: no src attribute found for element DIV, line: 8 (Error code: -923)

Но ведь у меня в атрибутах стоит класс к диву? Зачем он хочет src? Может, еще SRC можно как-то дописать?

Flynn пишет

Не получается...
Скрипт:

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\Users\Admin\Desktop\Folder FILE=* WAIT=YES
TAG POS=1 TYPE=DIV ATTR=CLASS:darkbox-canvas<SP>darkbox-canvas-load<SP>darkbox-canvas-done CONTENT=EVENT:SAVEPICTUREAS

Выдает ошибку:
RuntimeError: can not save picture: no src attribute found for element DIV, line: 8 (Error code: -923)

Но ведь у меня в атрибутах стоит класс к диву? Зачем он хочет src? Может, еще SRC можно как-то дописать?

firebug и теги смотри

Не выходит. Когда открыт слайд с картинкой, инспектирую картинку firebug кусок кода с дивами и ссылкой на нужную картинку:

Выделить код

Код:

<div class="darkbox-frame darkbox-frame-on">
<div class="darkbox-shadow" style="opacity: 0.6;"></div>
<div class="darkbox-canvas darkbox-canvas-load darkbox-canvas-done" style="width: 630px; display: block; margin-left: -315px; height: 474px; margin-top: -237px;">
<div class="darkbox-button darkbox-button-on darkbox-button-right"></div>
<img alt="Узы" src="http://icon.s.photosight.ru/img/0/12c/4809466_large.jpg" style="height: 474px; opacity: 1;">
</div>
</div>

Использую код

Выделить код

Код:

ONDOWNLOAD FOLDER=* FILE=* WAIT=YES
TAG POS=1 TYPE=IMG ATTR=STYLE:height:<SP>474px;<SP>opacity:<SP>1; CONTENT=EVENT:SAVEPICTUREAS

Пишет NS_ERROR_XPC_NOT_ENOUGH_ARGS: Not enough arguments [nsIWebBrowserPersist.saveURI], line: 8 (Error code: -1001)

Восьмая линия начинается с TAG POS=1.

Я не знаю, можно ли указать родительский DIV и его класс, у меня не получается, тогда выскакивает ошибка что нет SRC.

Странно, но даже пример отсюда http://wiki.imacros.net/Demo-ImageDownload выдает ошибку NS_ERROR_XPC_NOT_ENOUGH_ARGS: Not enough arguments [nsIWebBrowserPersist.saveURI], line: 28 (Error code: -1001)

Flynn пишет

Не выходит. Когда открыт слайд с картинкой, инспектирую картинку firebug кусок кода с дивами и ссылкой на нужную картинку:

Выделить код

Код:

<div class="darkbox-frame darkbox-frame-on">
<div class="darkbox-shadow" style="opacity: 0.6;"></div>
<div class="darkbox-canvas darkbox-canvas-load darkbox-canvas-done" style="width: 630px; display: block; margin-left: -315px; height: 474px; margin-top: -237px;">
<div class="darkbox-button darkbox-button-on darkbox-button-right"></div>
<img alt="Узы" src="http://icon.s.photosight.ru/img/0/12c/4809466_large.jpg" style="height: 474px; opacity: 1;">
</div>
</div>

Использую код

Выделить код

Код:

ONDOWNLOAD FOLDER=* FILE=* WAIT=YES
TAG POS=1 TYPE=IMG ATTR=STYLE:height:<SP>474px;<SP>opacity:<SP>1; CONTENT=EVENT:SAVEPICTUREAS

Пишет NS_ERROR_XPC_NOT_ENOUGH_ARGS: Not enough arguments [nsIWebBrowserPersist.saveURI], line: 8 (Error code: -1001)

Восьмая линия начинается с TAG POS=1.

Я не знаю, можно ли указать родительский DIV и его класс, у меня не получается, тогда выскакивает ошибка что нет SRC.

эт помоему из за версии mozilla, я у себя ставил 17 и отключал обновления

Flynn пишет

Странно, но даже пример отсюда http://wiki.imacros.net/Demo-ImageDownload выдает ошибку NS_ERROR_XPC_NOT_ENOUGH_ARGS: Not enough arguments [nsIWebBrowserPersist.saveURI], line: 28 (Error code: -1001)

Желательно почитать хотябы несколько страничек назад, или активно гуглом попользоваться пред тем как вопрос задавать.
Смотри мой ответ ранее по ссылке:

http://forum.mozilla-russia.org/viewtop … 07#p598607

Спасибо, получилось. Да, дело было в версии мозиллы, теперь все работает.
Теперь такая проблема - скрипт останавливается, когда натыкается на ошибку 404. Реально ли сделать так, чтобы скрипт №1 работал до тех пор, пока не наткнется на 404 (она содержит один и тот же текст и title, например), когда наткнется, выполнял бы скрипт №2, а после однократного его выполнения возвращался к многократному выполнению скрипта №1?
Причем (но это уже изыски, наверное), если скрипт №2 не выполняется, то вместо него выполнялся скрипт №3, тоже однократно, а потом дальше много раз скрипт №1. Реально ли такое осуществить?

Flynn пишет

Спасибо, получилось. Да, дело было в версии мозиллы, теперь все работает.
Теперь такая проблема - скрипт останавливается, когда натыкается на ошибку 404. Реально ли сделать так, чтобы скрипт №1 работал до тех пор, пока не наткнется на 404 (она содержит один и тот же текст и title, например), когда наткнется, выполнял бы скрипт №2, а после однократного его выполнения возвращался к многократному выполнению скрипта №1?
Причем (но это уже изыски, наверное), если скрипт №2 не выполняется, то вместо него выполнялся скрипт №3, тоже однократно, а потом дальше много раз скрипт №1. Реально ли такое осуществить?

штудируй js

Выделить код

Код:

do {
 iimPlay("#CurrentPERV.iim",60);
while (ip=='TutTekstEst');
Выделить код

Код:

if (ip == 'TutTekstEst' ) {
 iimPlay("#CurrentPERV.iim",60);
} else {
  iimPlay("#CurrentVTOR.iim",60);
  alert('Этой фразы тут нету!'); 
    }
Выделить код

Код:

for (i=1; i <= n; i++)
{
  iimPlay("#CurrentVTOR.iim",60);
}
Flynn пишет

Спасибо, получилось. Да, дело было в версии мозиллы, теперь все работает.
Теперь такая проблема - скрипт останавливается, когда натыкается на ошибку 404. Реально ли сделать так, чтобы скрипт №1 работал до тех пор, пока не наткнется на 404 (она содержит один и тот же текст и title, например), когда наткнется, выполнял бы скрипт №2, а после однократного его выполнения возвращался к многократному выполнению скрипта №1?
Причем (но это уже изыски, наверное), если скрипт №2 не выполняется, то вместо него выполнялся скрипт №3, тоже однократно, а потом дальше много раз скрипт №1. Реально ли такое осуществить?

Вас жизнь не учит....пардон

Написал же выше смотри предыдушие посты....
http://forum.mozilla-russia.org/viewtop … 92#p597892

вместо указанной ошибки

Internal Server Error

свою подставьте и соответсвенно вместо кода

Выделить код

Код:

iimPlay("code: wait seconds = 2\n REFRESH")

Свои макрокоманды наберите

Будет работать.

Такс...в общем кому интересно будет то, как автозапуск макросов и JS файлов делать.
Решил поделиться для потомков :-))

Стояла задачка при открытии профиля FF сделать так, чтобы JS фаилик запускался автоматически.
Задачку решил с помощью AutoIt но в принципе можно и с помощью обычного батника.

Предыстория такая, как я только не пытался запустить скрипт при автомате и в домашнюю страницу прописывал, и в ярлыки FF и в батник, и в AUTOiT ничего не помогало...но
благо смекалка не подвела и сделал опять таки костыль, но по порядку:

Для начала приведу готовый скрипт AutoIt да простят меня в этой ветке, и надеюсь что разработчики Imacros не прикроют эту возможность, потому как невозможность запускать скрипт - это исскуственное ограничение бесплатной версии.
Оговорюсь сразу у меня FF18 и самая последняя бета версия IM 8 на данный момент. Возможно в 7 версии Im так изголяться не придется...тем не менее, скрипт AutoIt

Выделить код

Код:

; Определяем переменные, кому удобнее делает это по другому как-нибудь
Global $way = '"E:\Mozilla\PF\OLD\1\'; тут каталог запуска ФФ
Global $name1 = "firefox1.exe"; У меня именно такой FF
Global $prfl1 = '1';Тут переменные запуска, соответсвующие профилю FF профиль у меня называется просто и лаконично - 1 :-)

;Тут пардон небольшое извращение но мне так удобнее просто :)
Global $path1 = 'file:///'; тут для связки
Global $path2 = 'D:/1/';Тут каталог запуска файла редиректа на JS, запишите свой каталог
Global $path = $path1&$path2;Тут каталог запуска файла редиректа на JS собранный

;Тут Создаем файл редиректа
$LogFile=$path2&"1.htm"
If Not FileExists($LogFile) Then $file = FileOpen($LogFile, 1)

; Если не запущен ФФ то запускаем его, иначе ничего не делаем
$aProcess1 = ProcessExists($name1) ; Определяю номер процесса
If $aProcess = 0 Then; 
Run($way&$name1&'" -p '&$prfl1&' -no-remote '&$path&'1.htm')
EndIf

Чего собственно происходит
Autoit снаачла создает пустой фаил 1.htm в каталге

После чего Запускает FF и передает ему URL на этот фаил.
Если фаил уже существует, то AutoIt его не трогает и не меняет, ничего не делает короче с файлом а сразу просто
заставляет FF идти по ссылке и открыть этот фаил при запуске.

В файле 1.htm я вписал следующий код:

Выделить код

Код:

<meta http-equiv="REFRESH" content="1; URL=http://run.imacros.net/?m=Test/Ready1/Auto-A-1st.js">

Т.е. мы заставляем открыться мозиллу и перейти по ссылке на фаил содержащий в своем коде редиректный HTML со ссылкой на скрипт который нам нужно запустить.
отдельно уточню, что скрипт я запускаю из домашней папки IM у меня к сожалению не получилось запустить его ни из какого другого места, только из домашней папки...ну в моем случае, фаил называется Auto-A-1st.js

Надеюсь кому-нибудь поможет моя небольшая заметочка.

spy686 пишет

штудируй js

Спасибо, удалось решить обычным циклом for.

ПРИВЕТ ВСЕМ! у меня такой вопрос imacros работает на андроиде????

Как зайти на один сайт по двум  и более логинам одновременно  и запустить imacros  на всех вкладках? ( разные логины на ОДНОМ сайте )

paradoxx пишет

Как зайти на один сайт по двум  и более логинам одновременно  и запустить imacros  на всех вкладках? ( разные логины на ОДНОМ сайте )

я создал профили и установил в каждом imacros , указал папку скрипта

ребят подскажите как JS написать , в плане вводит в форму ввода числовые значения ,допустим на этом форуме с эфектом уменьшения(увеличения) типа 99>отправить,98>отправить ... и т.д. до 0 , идею представляю как но т.к. мало знаком с языками не сооброжу как. :(

pahan27 пишет

ребят подскажите как JS написать , в плане вводит в форму ввода числовые значения ,допустим на этом форуме с эфектом уменьшения(увеличения) типа 99>отправить,98>отправить ... и т.д. до 0 , идею представляю как но т.к. мало знаком с языками не сооброжу как. :(

for (var i = 99; i > 1; --i) {
errCode=iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.by/yandsearch ATTR=ID:text CONTENT="+i+"");
}

спс,вот и говорю туплю цикл совсем по другому ставлю,переменную раньше задаю,ну не соображаю короч :)

Вдруг перестал грузится сайт liveresult.ru
Т.е. команда
URL GOTO=http://www.liveresult.ru/football/txt/match268737_Atletiko_Madrid-Espanyol_live/?do=showmatch/
дает
Page loading timeout, URL: (Error code: -802)

Хотя сама страница грузится в макросе за 5 сек - и дальше ждет чего-то!
Может какие-то рекламки ?

Как обойти это ожидание ??

Ball пишет

Вдруг перестал грузится сайт liveresult.ru
Т.е. команда
URL GOTO=http://www.liveresult.ru/football/txt/match268737_Atletiko_Madrid-Espanyol_live/?do=showmatch/
дает
Page loading timeout, URL: (Error code: -802)

Хотя сама страница грузится в макросе за 5 сек - и дальше ждет чего-то!
Может какие-то рекламки ?

Как обойти это ожидание ??

или время в настройках выстави больше
или пропиши в самом коде
или отключи картинки / flash

я когда-то где видел что можно сюда (см.картинку ниже) вывести свой комментарий, но не помню где. Может кто нить поможет?
445633-thumb.jpeg

spy686 пишет

я когда-то где видел что можно сюда (см.картинку ниже) вывести свой комментарий, но не помню где. Может кто нить поможет?
http://x.picp2.com/allimage/446/445633-thumb.jpeg

нашел !!! :)
    iimDisplay("Step "+(i+1)+" of "+macrolist.length + "\nMacro: "+macrolist[i]);
пример Self-Test.js в Demo-Firefox

Подскажите плиз.
Случай первый:
TAG POS=1 TYPE=A ATTR=TXT:название ссылки
Нужно чтобы, что бы переход без названия делался, а просто по случайной ссылке. возможно ли вообще такое?
Либо по другому
На странице имеются url. Как их со страницы макросом в тхт файл скопировать, url не в виде текста, а в виде ссылок
Подскажите плиз хоть в каком направлении гуглить?:)

spaun66614 пишет

Подскажите плиз.
Случай первый:
TAG POS=1 TYPE=A ATTR=TXT:название ссылки
Нужно чтобы, что бы переход без названия делался, а просто по случайной ссылке. возможно ли вообще такое?
Либо по другому
На странице имеются url. Как их со страницы макросом в тхт файл скопировать, url не в виде текста, а в виде ссылок
Подскажите плиз хоть в каком направлении гуглить?:)

TAG POS=1 TYPE=A ATTR=TXT:*
* - любое количество разных символов, т.е. если просто * - то любая первая ссылка будет, если - t* - то t первая ссылка начинающаяся на t.

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=2 TYPE=A ATTR=HREF:http://www.youtube.com/watch?v=* EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url2.txt
TAG POS=3 TYPE=A ATTR=HREF:http://www.youtube.com/watch?v=* EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url2.txt
TAG POS=4 TYPE=A ATTR=HREF:http://www.youtube.com/watch?v=* EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url2.txt
TAG POS=5 TYPE=A ATTR=HREF:http://www.youtube.com/watch?v=* EXTRACT=HREF 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url2.txt

в тхт файл скопировать url

Спасибо огромное, ща делать буду!

02-03-2013 21:43:24
Спасибо еще раз :) все получилось

Подскажите пожалуйста как сделать так то бы макрос когда не находит определенную форму он искал другую и кликнул по ней,а то на это  сайте каждый раз меняется форма, но их  всего 2

werty517387 пишет

Подскажите пожалуйста как сделать так то бы макрос когда не находит определенную форму он искал другую и кликнул по ней,а то на это  сайте каждый раз меняется форма, но их  всего 2

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

spy686 можешь дать страничку  вк хочу заказать макрос

03-03-2013 12:22:03
spy686 вот моя http://vk.com/cemmyel

werty517387 пишет

spy686 можешь дать страничку  вк хочу заказать макрос

03-03-2013 12:22:03
spy686 вот моя http://vk.com/cemmyel

скайп норм будет?
spy686

spy686 а страничку в вк мне удобней просто
И мне там дописать нужно

преложение imacros для фаирфокс
нужен свитчер хз как запилить

то есть. есть кнопка "1" в одном переложении после нажатия рандомно выдает кнопки от 1 до 4 . нужно что бы не останавливаясь постоянно нажимал рандомную кнопку

нужна такая штука
тык 1, если не 1 то 2, если не 2 то 3, если не 3 то 4

узнал. что там ява скритп может выступать в роли оператора
и вызывать по оттельности скрипты из аймакроса.

05-03-2013 00:35:41
я просто новичок, я думаю это ерундовая наверно задача

winrar
js, команда if.
рандомно - погугли - много примеров

Добрый день, подскажите пожалуйста как эмулировать на imacrose нажатие клавишы TAB  - нужно для переключения между элементами. Все перечитал - здесь уже есть такой вопрос, но ответа нету.

hrc734 пишет

Добрый день, подскажите пожалуйста как эмулировать на imacrose нажатие клавишы TAB  - нужно для переключения между элементами. Все перечитал - здесь уже есть такой вопрос, но ответа нету.

для чего таб, если там элемент выбираються по позиции элемента

Спасибо, за скорость. Нужен именно TAB, по другому никак.

а магешь, кинуть сайт и что надо нажимать?

Всех приветствую! Помогите сделать следующее: Нужно чтоб в случае разрыва соединения (к сожалению, приходится пользоваться iMacros и на ADSL), скрипт не выбивало с ошибкой а было ожидание подключения и в случае если прием байтов пошел и сайт может быть удачно обновлен (бывает такое, что подключение установилось, а байты на прием вообще не идут и даже веб-конфигуратор модема не загружается), то происходило обновление сайта, на экране жалась кнопка "Ок" (на сайте есть приветствие с кнопкой "Ок", без нажатия которой не зайти, могу лишь запомнить ее координаты на экране, т.к. адрес этого окошка узнать не получилось у меня), а после запускалась полноценная работа скрипта. При этом, на сайте происходит обновление адреса с дневного на ночной и обратно Если я все верно помню, то в дневное время в 6:00 по МСК происходит смена адреса на дневной тип, а в 22:00 на ночной). Код ниже в спойлере вставлю. Нужно чтоб работа макроса запускалась примерно, каждые 1.5 минут.

Дневной вариант

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
FRAME NAME="bottom"
WAIT SECONDS=5
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/day/a___friend3.gif
WAIT SECONDS=5
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/day/a___dlr.gif
WAIT SECONDS=5
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/day/a___inv.gif


Ночной вариант

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
FRAME NAME="bottom"
WAIT SECONDS=5
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/night/a___friend3.gif
WAIT SECONDS=5
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/night/a___dlr.gif
WAIT SECONDS=5
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/night/a___inv.gif


Возможно, запущу этот скрипт на VPS. Надо чтоб он сам мог включаться на выполнение, примерно, каждые полторы минуты. При этом, нужно чтоб код скрипта автоматически менялся при достижении 6:00 на дневной вариант а при 22:00 на ночной. Помогите пожалуйста, составить такой скрипт. Также, очень нужно чтоб в скрипте были те функции на случай обрыва связи с провайдером, про которые я написал выше (фактически, нужно обновление страницы в случае если сайт не отвечал допустим, 5 минут и если выбило на страницу как при отсутствии связи с интернетом). Буду очень рад, если кто-то сможет написать такой скрипт и захочет помочь безвозмездно решить данную задачу. Спасибо за то, что помогаете людям настроить iMacros "под себя". Удачи в делах!

P.S. А можно как-то настроить iMacros, чтоб он работал в фоновой вкладке которая допустим, первая но открыта в фоне (активна другая вкладка) и работа не сбивалась? Спасибо заранее.

Internet-User пишет

Всех приветствую! Помогите сделать следующее: Нужно чтоб в случае разрыва соединения (к сожалению, приходится пользоваться iMacros и на ADSL), скрипт не выбивало с ошибкой а было ожидание подключения и в случае если прием байтов пошел и сайт может быть удачно обновлен (бывает такое, что подключение установилось, а байты на прием вообще не идут и даже веб-конфигуратор модема не загружается), то происходило обновление сайта, на экране жалась кнопка "Ок" (на сайте есть приветствие с кнопкой "Ок", без нажатия которой не зайти, могу лишь запомнить ее координаты на экране, т.к. адрес этого окошка узнать не получилось у меня), а после запускалась полноценная работа скрипта.

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

Internet-User пишет

При этом, на сайте происходит обновление адреса с дневного на ночной и обратно Если я все верно помню, то в дневное время в 6:00 по МСК происходит смена адреса на дневной тип, а в 22:00 на ночной). Код ниже в спойлере вставлю. Нужно чтоб работа макроса запускалась примерно, каждые 1.5 минут. Возможно, запущу этот скрипт на VPS. Надо чтоб он сам мог включаться на выполнение, примерно, каждые полторы минуты. При этом, нужно чтоб код скрипта автоматически менялся при достижении 6:00 на дневной вариант а при 22:00 на ночной.

копай в сторону js, и взаимосвязь со временем

Internet-User пишет

P.S. А можно как-то настроить iMacros, чтоб он работал в фоновой вкладке которая допустим, первая но открыта в фоне (активна другая вкладка) и работа не сбивалась? Спасибо заранее.

сделай несколько профиле FF чтобы друг другу не мешать

spy686
Хотел у вас скприпт заказать, но в скайпе указанном вами выше ни кто не отвечает( как с вами можно связаться?

hrc734 пишет

Спасибо, за скорость. Нужен именно TAB, по другому никак.

TAB T=1
TAB T=2
переключение между вкладками, так не пойдет?
еще есть это
'In a quoted content, we can use \n for a new line, \t for tab and \" for literal quotes

spy686 пишет

Internet-User пишет: часто случае, если страница не загружаеться, то iMacros выкидует,  т.к. iMacros ждет полной загрузки страницы, т.е. перестает работать - с этим неизвестно как работать

Иногда iMacros продолжает выполнение скрипта, до того как сайт был полностью загружен. Этого можно избежать, добавив команду WAIT SECONDS=#DOWNLOADCOMPLETE# перед командой TAG
Пример
WAIT SECONDS=#DOWNLOADCOMPLETE#
TAG POS=1 TYPE=SPAN ATTR=TXT:Select<SP>path

Здравствуйте! Подскажите! можно ли реализовать в iMacros что бы в тексте менялись русские буквы на англиские рамдомным образом?

ezoterik пишет

Здравствуйте! Подскажите! можно ли реализовать в iMacros что бы в тексте менялись русские буквы на англиские рамдомным образом?

Не понятно что вы хотите сделать, пример приведите, где, как и для чего бы Вы это сделали вручную.

как сделать рандомную паузу..
вот пример:
Код:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
URL GOTO=http://www.iopus.com
' waits 1 to 10 seconds
WAIT SECONDS={{!VAR1}}


---------------------------------------------------------------------------------------
Все внутренние переменные в imacros имеют префикс «!».


присвоить переменной VAR1 рандомное (случайное) значение от 1 до 5

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*5 + 1);")


----------------------------------------------------------------------------------------
!VAR1, !VAR2, !VAR3 это внутренние переменные для произвольного использования, им можно присвоить как числовое так и строчное значение.
Чтобы установить значение переменной необходимо использовать команду SET:
скрытый текст

Выделить код

Код:

SET !VAR1 154


Для использования значения переменной, заключите её в двойные фигурные скобки: VAR1
Пример:
скрытый текст

Выделить код

Код:

SET !VAR1 {{VAR2}}


А так же существует команда сложения ADD, она добавляет значение переменной. Вы также можете вычесть значения путем добавления отрицательное значения переменной. Если по крайней мере одна из переменных содержит не целое число, значения объединяются в виде строчной переменной.
Пример:
скрытый текст

Выделить код

Код:

SET !VAR1 2012
SET !VAR2 New<SP>Year
ADD !VAR2 !VAR1
Итог: New Year 2012


SET !VAR1 49 'задаем  значение переменной равное 49
ADD !VAR1 2 'прибавляем значению переменной 2, т.е. 49+2=51
Оба значения являются числовыми поэтому результат также числовой:
скрытый текст

Выделить код

Код:

SET !VAR1 100
 ADD !VAR1 -20


=> В результате переменная !VAR1 содержит 80.

По крайней мере, одно из значений является строкой поэтому результатом также является строка:

скрытый текст

Выделить код

Код:

SET !VAR1 Hello
 ADD !VAR1 <SP>World<SP>
 ADD !VAR1 2011


=> В результате переменная !VAR1 содержит Hello World 2011


Присвоить переменной VAR1 текущее время

скрытый текст

Выделить код

Код:

SET !VAR1 {{!NOW:hh:nn:ss}}

Edi
Напрмер переменной VAR1 присваивается текстовое значение "Привет", можно ли сделать так что б например в слове привет рандомным образом менялась какая нибудь букава например на латинский аналог или хотя бы менялась с учётом регистра, напрмер - "ПриBет" - где "B" в данном случае это большая английская буква "b".  Это делается для уникализации текста, например при автоответе, или постинге на форумы!
Обьяснил как мог, простым и понятным языком, а числовой рандом любой школьник сделает, который конечно поиском умеет пользоваться! :) :) :)

ezoterik пишет

числовой рандом любой школьник сделает, который конечно поиском умеет пользоваться!

в жабаскрипте както так (буквы ессно для примера не все вбил,в цикле for указывается длина слова ну и 10 меняем на номер последнего элемента массива)

скрытый текст

Выделить код

Код:

var ar = new Array();
ar[0]="A";
ar[1]="B";
ar[2]="C";
ar[3]="D";
ar[4]="E";
ar[5]="F";
ar[6]="G";
ar[7]="H";
ar[8]="J";
ar[9]="I";
ar[10]="K";
var phrase="";
for (var i = 0; i < 6 ; i++){
var out=Math.round(Math.random()*(10))
var phrase=phrase+ar[out]
};

Нельзя ли просто приписывать цифру. Пример: "Привет1", "Привет2", ...и т.д.
Если не подходит, то может тут лучше со скриптами поупражняться.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


str.charAt(0) - ноль номер позиции буквы в слове
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Edi
Как ты указал в примере так я и использую, всё таки ручной труд заменить ничего не может как я понял!
Да и текста постинга с рандомным транслитом, будут выглядеть каряво, и видно будет что это машина делает - что плохо мотивирует человека на определённые действия!

11-03-2013 11:40:57
У меня вот завалялась програмка Zennoposter, с помощью неё я думаю все эти действия которые я хочу вполне выполнимы, но как то в ней не могу разобраться, пишут легко, я чёт не могу. Меня привлёк именно iMacros, любой скрипт пишется за минуты или часы под любой сайт, ведь мне не нужны замысловаты действия.

ezoterik пишет

Да и текста постинга с рандомным транслитом, будут выглядеть каряво

может Вам  попробовать стиль изменять?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Мне не совсем понятна Ваша задача, для чего все это.

Edi
Что бы не было 1. склейки текста, 2. на некоторых форумах нельзя постить одинаковые сообщения(Фильтр)
Нужно это для того что б одно текстовое предложение, представлялось во множестве множестве вариантов, будь то смена одной буквы это первый вариант, смена стиля второй вариант, Смена одной буквы предложения Регистром большой буквы, должно быть бесконечное множество вариантов!
Теперь понятно?
и как например реализовать рандомную смену стиля текста ? = VAR1

zello пишет
svliller2007 пишет

Здравствуйте, подскажите.Мне нужно при каждым заходом на сайт менять User Agent.Вот часть моего скрипта:'Sample code Aset iim1= CreateObject ("imacros")For m = 1 to 5    iret = iim1.iimInit()    iret = iim1.iimPlay("macro1")iret = iim1.iimInit ("-useragent ""AAAAAAAAAAAAAAAAAAAAAAAA"" ")Где АААААААААА  - замена User Agent. Нужно чтоб при каждым заходом вместо "ААААААААААА" вставлялся "ББББББББББББ", потом "ВВВВВВВВВВ"... с текстового файла.Просто не знаю как вставлять текст из файла в vbs.     Извините, простой макрос мне не подходит. Спасибо.

Так не пойдет ? :

скрытый текст
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Выделить код

Код:

Dim objFileSystem, objInputFile, iim1
Dim strInputFile, inputData

Const OPEN_FILE_FOR_READING = 1

strOutputFile = "01.txt" 

''''''''''''''''''''''''''''''''''''''''''' Файл находится в одной директории со скриптом

Set objFileSystem = CreateObject("Scripting.fileSystemObject")
Set objInputFile = objFileSystem.OpenTextFile(strOutputFile, _
  OPEN_FILE_FOR_READING)

''''''''''''''''''''''''''''''''''''''''''читаeм файл в массив inputData

inputData = Split(objInputFile.ReadAll, vbNewline)
set iim1= CreateObject ("imacros")
For m = 1 to 5
    iret = iim1.iimInit()
    iret = iim1.iimPlay("macro1")
iret = iim1.iimInit ("-useragent " & inputData(m) & " ")

Next

'''''''''''''''''''''''''''''''''''''''''''''''очистка памяти

objInputFile.Close
Set objFileSystem = Nothing

WScript.Quit(0)


'формат файла 01.тхт: 
'AAAAAAAAAAAAAAA
'BBBBBBBBBBBBBBB
'CCCCCCCCCCCCC
'DDDDDDDDDDDDD

В общем
Присваиваю SET !USERAGENT "Бла бла бла"
Далее
Присваиваю PROXY ADDRESS=бла бла бла
открываю ссылку, делаю постинг.
И т. д.
А вот Как вернуть истиное значение User Agent и Proxy?
SET !USERAGENT "" ?
PROXY ADDRESS=127.0.0.1 ?
Спасибо заранее!

ezoterik пишет

для чего все это.Что бы не было 1. склейки текста, 2. на некоторых форумах нельзя постить одинаковые сообщения(Фильтр)Нужно это для того что б одно текстовое предложение, представлялось во множестве множестве вариантов, будь то смена одной буквы это первый вариант, смена стиля второй вариант, Смена одной буквы предложения Регистром большой буквы, должно быть бесконечное множество вариантов!Теперь понятно?и как например реализовать рандомную смену стиля текста ? = VAR1

Теперь понятно, Вы форумный спамщик. )))

Преобразование данных полученных в верхнем регистре.

скрытый текст

Выделить код

Код:

VERSION BUILD=7400919 RECORDER=FX
TAB T=1
URL GOTO=http://android-developers.blogspot.com/2011/09/preparing-for-handsets.html
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=P ATTR=TXT:Early<SP>this<SP>year,* EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.toUpperCase()")
PROMPT {{!VAR1}}


Здесь тоже есть то, что Вам может пригодиться, функция s.replace()
взято от сюда http://ru.imacros.wikia.com/wiki/EVAL
и тут тоже можно глянуть http://javascript.ru/String/replace
Сравнить ставки евро которые выше порога 1,3 $ USA. Если ставка ниже выдать ошибку
скрытый текст

Выделить код

Код:

URL GOTO=http://www.xe.com/ucc/convert/?Amount=1&From=EUR&To=USD
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TD ATTR=TXT:*<SP>USD&&WIDTH:46%&&ALIGN:left EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"USD\",\"\"); var d=parseFloat(s); if(d < 1.3){MacroError(\"Euro is below 1.3 USD.\");} else d;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=EuroRate.csv


В слледующем примере показано как используется метод replace, чтобы заменить все вхождения "the" на "a". взято от сюда http://www.spravkaweb.ru/jscript/methods/replace
скрытый текст

Выделить код

Код:

01    function ReplaceDemo()
02    {
03        var s = "The batter hit the ball with the bat ";
04        s += "and the fielder caught the ball with the glove.";
05     
06        // заменим "the" на "a".
07        var re = /the/g;
08        var r = s.replace(re, "a");
09        return(r);
10    }


А Вам можно заменить например все русские "а" на английские "a" визуально ничего не изменится, но текст будет отформатирован по другому, так же по аналогии с другими похожими буквами можно сделать.

Edi
Про форумного спамщика не угадал Edi, по этому я и не ахти отписываю где нужно такое использовать! что б нишу не убили)))
а за инфу спасибо!

12-03-2013 14:15:51

okkamas_knife пишет

ezoterik
заходишь на домашнюю страничку имакроса там есть ссылка на вики по нему в которой есть описание всех команд с примерами применения.

Отличная идея, как я до этого не додумался)! я здесь вопросы задаю что б помогли, и пообщаться с живыми людьми а не с сылками!
Минус в общем!

Благодарю за помощь всем кто помогал. Пока до сих пор многое из того что нужно не решено. Родилось мысль объединить ночной и дневной вариант скрипта в один. Для этого нужно сделать переход в коде макроса который записывает iMacros. Нужно чтоб в случае если верхняя/нижняя строка не найдена, то работа макроса не прерывалась а происходил переход на нижнюю строку макроса. Как это реализовать в коде? К примеру, записать одна под другой строку:

TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/night/a___friend3.gif
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/day/a___friend3.gif

В случае если сейчас не ночь а день, и верхняя ссылка не найдена, то чтоб макрос не прекращал работу а просто переходил на выполнение следующей строки. Как это сделать? Подскажите, пожалуйста.

Мое сообщение выше, на 19 стр. Буду рад любой помощи по созданию макроса "моей мечты" =)

P.S. Команды SET !ERRORIGNORE YES и SET !ERRORCONTINUE YES - почему-то не "прокатывают". Происходит 15 секундное ожидание и работа макроса останавливается. Как сделать чтоб происходило игнорирование ошибки и игнорирование текущей строки в коде макроса и чтоб происходил переход на след. строку кода макроса?

okkamas_knife
спасибо за наводку. Буду разбираться. Я в языке скрипта (да и вообще - в программировании) не очень силен, постараюсь разобраться. Отличие только в url, но правильно прописать переменную которая переадресует работу макроса без остановки из-за ошибки url на строку ниже, в случае если один из вариантов (допустим, этот вариант url идет верхней строкой, а именно в url присутствует "day" - из дневного варианта url а сейчас ночь, ну или наоборот) url ошибочный, а строка ниже содержит подходящий на данный момент url - пока не знаю. Разобрался что команда SET !ERRORIGNORE YES в моем случае все таки исполняется, но с задержкой в 15 секунд (но на самом деле эти 15 сек. проходят за меньшее кол-во времени, там примерно, за 1 сек проходят 2 а то и 3 сек. ожидания) и как сделать исполнение без задержки на выполнение этой команды - пока не знаю. Но как я понял, в моем случае все таки логичнее было бы создать переменную которая будет располагаться ниже неработающего в данный момент url (просто возникает следующая проблема - нужно сделать игнорирование этой переменной, в случае если переход по верхнему варианту url прошел без ошибки). Если кто-то поможет с этим - буду несказанно благодарен за помощь.

Internet-User пишет

Нужно чтоб в случае если верхняя/нижняя строка не найдена, то работа макроса не прерывалась а происходил переход на нижнюю строку макроса. Как это реализовать в коде? К примеру, записать одна под другой строку:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/night/a___friend3.gi
fTAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/day/a___friend3.gif


В случае если сейчас не ночь а день, и верхняя ссылка не найдена, то чтоб макрос не прекращал работу а просто переходил на выполнение следующей строки. Как это сделать? Подскажите, пожалуйста.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/night/a___friend3.gif
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/day/a___friend3.gif


Эти две строки можно заменить  одной и возможно все проблемы исчезнут.
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/i/*/a___friend3.gif
или  так
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/*friend3.gif
или так
TAG POS=1 TYPE=IMG ATTR=SRC:http://site.ru/*.gif

Разобрался что команда SET !ERRORIGNORE YES в моем случае все таки исполняется, но с задержкой в 15 секунд (но на самом деле эти 15 сек. проходят за меньшее кол-во времени, там примерно, за 1 сек проходят 2 а то и 3 сек. ожидания) и как сделать исполнение без задержки на выполнение этой команды - пока не знаю

Желательно эти две команды прописать в самом начале кода
Пример:

скрытый текст

Выделить код

Код:

VERSION BUILD=7031111 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES    
TAB T=1    
TAB CLOSEALLOTHERS

Добрый день! Дорогие друзья помощники ! Подскажите будьте так любезны) Как сохранять в файл ссылку из браузерной строки? Спасибо!

ezoterik пишет

Добрый день! Дорогие друзья помощники ! Подскажите будьте так любезны) Как сохранять в файл ссылку из браузерной строки? Спасибо!

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=TD ATTR=CLASS:bdytxt&&TXT:*.* EXTRACT=TXT  'извлечь текст
SET !VAR1 {{!EXTRACT}}   'присвоить переменную извлеченного
SET !EXTRACT NULL    'стереть извлеченное
TAG POS=1 TYPE=A ATTR=TXT:H*links* EXTRACT=HREF  'извлечь ссылку
SAVEAS TYPE=EXTRACT FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}}.csv    'сохранить в файл .csv

извлечение текста в переменную !EXTRACT из позиции - TAG POS=1 TYPE=TD ATTR=ALIGN:center&&TXT:

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=ALIGN:center&&TXT:*.* EXTRACT=TXT

присвоить переменной VAR2 значение переменной !EXTRACT, если оно больше диапазона 0-3.5 выдается ошибка - Значение за пределами

Выделить код

Код:

SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; var d = parseFloat(s); if((d>0)&&(d<3.5))d; else MacroError(\"Значение за пределами\");")


Как сделать чтобы выводилась ошибка, если это не ссылка. Думаю нужно смотреть функции скрпта по фукции EVAL - Вычисляет строку кода JavaScript без ссылки на определённый объект.
Синтаксис: eval(string)
Параметр: string
Строка, представляющая выражение, оператор или последовательность операторов JavaScript. Выражение может содержать переменные и свойства существующих объектов.
можно почитать тут http://pyramidin.narod.ru/clientref13/t … tm#1063795
!CLIPBOARD
Внутренняя переменная !CLIPBOARD содержит значение из буфера обмена.
Пример:
Чтобы в макросе прописать вставку в поле ввода данных из буфера обмена.
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:formuzd ATTR=ID:zd_name CONTENT={{!CLIPBOARD}}


Или имеется ввиду извлечь ссылку из адресной строки браузера?
ADD !EXTRACT {{!URLCURRENT}}

Добрый день! Помогите, пожалуйста, как на форуме в поле редактирования поста удалить текст "АБВГД" и удалить текст, который начинается символами "ПП" и заканчивается символами "ЯЯ"?
Буду очень благодарен!

Andy13 пишет

Добрый день! Помогите, пожалуйста, как на форуме в поле редактирования поста удалить текст "АБВГД" и удалить текст, который начинается символами "ПП" и заканчивается символами "ЯЯ"? Буду очень благодарен!

Сколько раз уже на этой странице писали об этом!!!
Ладно, вот рабочий код для этого форума

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?pid=Тут_ваш_pid_типа_1234567#p123456
TAG POS=2 TYPE=A ATTR=TXT:Редактировать
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:edit.php?id=*&action=edit ATTR=NAME:req_message EXTRACT=TXT
' Все АБВГД будут заменены на пробел, игнор регистра (g-global, i-igore)
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/АБВГД/gi,\"\");")
SET !VAR2 EVAL("var s=\"{{!VAR1}}\"; var re = /(ПП.+)(ЯЯ)/gi; s.replace(re ,\"??замена??\");") 
' тут re = /(ПП.+)(ЯЯ)/; точка "." любая буква, ".+" любые несколько букв
' SET !EXTRACT NULL
' SET !EXTRACT {{!VAR1}}
' PROMPT {{!VAR1}} 'вывод на экран
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:edit.php?id=*&action=edit ATTR=NAME:req_message CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:edit ATTR=ID:submit


Если не найдет в тексте "АБВГД", предупреждение\ошибку выдавать не будет. Чтоб сделать предупреждение нужно в этой строке

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/АБВГД/gi,\"\"); var d=exec(s); if(d <> "АБВГД"){MacroError(\"ошибка, не найдено АБВГД\");} else d;")

добавить что-то типа того что выделено жирным шрифтом и расконспектировать  два параметра SET.

Если додумаетесь что именно, напишите.

Edi
Спасибо Эди за помощь! Разобрался! Подскажи ещё вот что! У меня есть список ссылок в формате csv...вот ... макрос берет каждую ссылку построчно в соответствии с циклом. Вот. Нужно реализовать, что бы взятая ссылка удалялась из файла, то есть, в итоге файл должен оказаться пустым...

в итоге файл должен оказаться пустым...

Зачем это нужно? Ведь можно просто заменять текущие значения на новые в том числе и пустые значения.
А с помощью той же функции replace() можно и удалять, если в качестве замены поставить "".
Ну, а удаление всего файла это самая лучшая очистка )))
FILEDELETE NAME=c:\output\mydata.csv

Edi пишет

в итоге файл должен оказаться пустым...

Зачем это нужно? Ведь можно просто заменять текущие значения на новые в том числе и пустые значения.
А с помощью той же функции replace() можно и удалять, если в качестве замены поставить "".
Ну, а удаление всего файла это самая лучшая очистка )))
FILEDELETE NAME=c:\output\mydata.csv

Удаление должно происходить посторочно , очистить я знаю как!
Или как бы вырезать строку из файла....так понятнее?

14-03-2013 11:43:04

Edi пишет

Ведь можно просто заменять текущие значения на новые в том числе и пустые значения.А с помощью той же функции replace() можно и удалять, если в качестве замены поставить ""

Подскажи пожалуйста Эди как это в коде например реализовать, не совсем понимаю, новое для меня!

ezoterik пишет

Удаление должно происходить посторочно , очистить я знаю как!
как это в коде например реализовать, не совсем понимаю, новое для меня!

см. как тут пост 99
еще тут не плохо описано что к чему ссылка
Я же не вижу Вашего кода, выложите его под спойлер. Так не понятно для чего это нужно, удалять данные,  а соответственно как реализовывать. Откуда данные берутся в файле .csv? Если вручную или автоматически заносятся, то в чем проблема, так же на место старых данных вставить новые. Вообщем нужно код глянуть.

Спасибо Edi это всё уже просмотрено)! попозже постараюсь выложить код. но он написан совсем не так как нужно, а по своему типу (т.е. для решения какой то задачи нужно использовать определённую формулу без которой как все математики думают решения нет, но оно всегда есть, и не поддаётся обьяснению логически, своя формула, - не стандартное мышление в общем!)

Edi пишет
Andy13 пишет

Добрый день! Помогите, пожалуйста, как на форуме в поле редактирования поста удалить текст "АБВГД" и удалить текст, который начинается символами "ПП" и заканчивается символами "ЯЯ"? Буду очень благодарен!

вот рабочий код для этого форума

Спасибо! На этом форуме всё работает, только на другом не получается:
Вместо

TAG POS=1 TYPE=TEXTAREA FORM=ACTION:edit.php?id=*&action=edit ATTR=NAME:req_message EXTRACT=TXT

подставил

TAG POS=1 TYPE=TEXTAREA FORM=NAME:postform ATTR=NAME:message EXTRACT=TXT

но удаления и замены не происходит. Подскажите, что не так?

Andy13 пишет

На этом форуме всё работает, только на другом не получается:Вместо TAG POS=1 TYPE=TEXTAREA FORM=ACTION:edit.php?id=*&action=edit ATTR=NAME:req_message EXTRACT=TXTподставил TAG POS=1 TYPE=TEXTAREA FORM=NAME:postform ATTR=NAME:message EXTRACT=TXTно удаления и замены не происходит. Подскажите, что не так?

в примере

FORM=ACTION:edit.php?id=*&action=edit

у Вас

FORM=NAME:postform

в примере

ATTR=NAME:req_message

у Вас

ATTR=NAME:message

Попробуйте так

ATTR=NAME:*

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

Доброе утро! Товарищи помошники)) Вот и сново я) Можно ли использовать в iMacros сокс прокси? Если да, то как это можно реализовать.
Наверняка PROXY ADDRESS=127.0.0.1:8888 так не прокатит! Эди! Жду твоего вердикта)!

ezoterik пишет

Доброе утро! Товарищи помошники)) Вот и сново я) Можно ли использовать в iMacros сокс прокси? Если да, то как это можно реализовать.
Наверняка PROXY ADDRESS=127.0.0.1:8888 так не прокатит! Эди! Жду твоего вердикта)!

http://forum.mozilla-russia.org/viewtopic.php?pid=516931#p516931
нашел только такую инфу

spy686 пишет

ezoterik пишет: Доброе утро! Товарищи помошники)) Вот и сново я) Можно ли использовать в iMacros сокс прокси? Если да, то как это можно реализовать.Наверняка PROXY ADDRESS=127.0.0.1:8888 так не прокатит! Эди! Жду твоего вердикта)!http://forum.mozilla-russia.org/viewtopic.php?pid=516931#p516931нашел только такую инфу
                    Отредактировано spy686 (Сегодня 11:48:26)

Тест прокси
Вам нужен локальный прокси-сервер для тестирования макросами? Или хотите использовать макросы с локальный прокси-сервер для отладки веб-сайт? Мы рекомендуем Fiddler инструмент. Это Web-прокси отладки, который регистрирует все HTTP (S) трафик между вашим компьютером и Интернетом, - и он может быть установлен для работы в качестве локальный прокси-сервер (порт 8888 по умолчанию).
PROXY ADDRESS=127.0.0.1:8888
=> Перенаправляет весь трафик проходит через Fiddler. PROXY команда не глобальный, так только макрос с PROXY команды влияет.
http://wiki.imacros.net/PROXY

Edi
Я извиняюсь, но исходный код http://forum.mozilla-russia.org/viewtop … 04#p605404 верный и работает на других форумах. Я был просто не внимателен. Но вопросы ещё остались)
Подскажите, как удалить пустую стоку (или две пустые строки) перед словом "АБВГД" , и как в условиях удаления и замены прописывать различные символы типа: / \ { [  и т.д.

Andy13 пишет

Я извиняюсь, но  исходный код верный и работает на других форумах. Я был просто не внимателен. Но вопросы ещё остались)
Подскажите, как удалить пустую стоку (или две пустые строки) перед словом "АБВГД" , и как в условиях удаления и замены прописывать различные символы типа: / \ { [  и т.д.

In a quoted content, we can use \n for a new line, \t for tab and \" for literal quotes
Удаление символов  прописывайте с кавычками "/ \ { ["
Экранирование служит исключительно для правильного восприятия строки JavaScript. В памяти строка будет содержать сам символ без '\'. Вы можете увидеть это, запустив пример выше.
Сам символ обратного слэша '\' является служебным, поэтому всегда экранируется, т.е пишется как \\:
На эти вопросы надо искать ответы в справочнике http://javascript.ru/String/replace
, а еще лучше почить учебник String
http://learn.javascript.ru/string

Добрый вечер други! в общем написан скрипт:
Есть файл со списком строй, макрос берёт первую строку и вставляет в поле и нажимает кнопку --- скрипт завершён, так вот в моём файле 10 строк, в макросе ставлю 100 повторений скрипта, проходит десять строк как задумано, но вот 11, 12, 13 ... и так далее повтор, берёт одну и ту же 10 строку из файла, как сделать что б по кругу брались строки, то есть, когда список строк закончился, строки начали браться заново с первой строки...всё исходя из колличества повторов......ПОМОГИТЕ...ГОРИТЬ БЕНДЮШКА

ezoterik пишет

Добрый вечер други! в общем написан скрипт:
.ПОМОГИТЕ...ГОРИТЬ БЕНДЮШКА

Ваш код в студию, посмотрим поможем.

так вот в моём файле 10 строк, в макросе ставлю 100 повторений скрипта, проходит десять строк как задумано, но вот 11, 12, 13 ... и так далее

Вы пишете в  вашем файле 10 строк, откуда берутся 11, 12, 13???

Под ваши задачи должно вот это подойти

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE SET !DATASOURCE C:\users.csv
'устанавливаем количество столбцов, например 4
SET !DATASOURCE_COLUMNS 4
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк спомощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
URL GOTO={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:nsform ATTR=NAME:alias CONTENT={{!COL2}}


Если формат файла users.txt то — в каждой строке один URL, потом запятая. После последнего адреса запятая не ставится.
Тут еще почитайте http://compspeed.ru/569.html

в том то и дело срок 11, 12, их попросту нет, но в макросе стоит цикл на 100 повторений, проходя 10 циклов, скрипт в последующих повторениях берёт одну и туже 10 строку из списка, а мне нужно так ..... 1, 2, ... 10, 1, 2, 3, ... 10, 1, 2, 3 и так далее, теперь надеюсь ясно, а выкладывать код смысла нету, он состоит из 4 строк

Можно ли как-то увидеть значения переменных !VAR1, !VAR2 и т.д. в процессе работы макроса? Очень нужно для отладки.

Andrey1254 пишет

Можно ли как-то увидеть значения переменных !VAR1, !VAR2 и т.д. в процессе работы макроса? Очень нужно для отладки.

Конечно можно. PROMPT {{!VAR1}} и  т.п.

Как можно в Макросе прописать эмуляцию нажатие клавиши F2 на клавиатуре при работе браузера?
Мне необходимо во время работы макроса перед определённым шагом выполнения задачи, чтобы не мне нажимать клавишу F2 на клавиатуре во время паузы Макроса, а чтобы Макрос сам нажал (сэмулировал) нажатия этой клавиши, если это не возможно то можно заменить F2 например на сочетание "ctrl alt 0" или  "ctrl shift #" или что то типа того.
И второй вопрос: можно ли сделать всплывающее окно с подсказкой во время выполнения Макроса, например во время ПАУЗЫ Макроса, которое появлялось например на 5 секунд и исчезало, или перед каким либо шагом выполнения задачи.
:) Буду очень признателен за ответы. Спасибо.

zawuhi пишет

Как можно в Макросе прописать эмуляцию нажатие клавиши F2 на клавиатуре при работе браузера?
Мне необходимо во время работы макроса перед определённым шагом выполнения задачи, чтобы не мне нажимать клавишу F2 на клавиатуре во время паузы Макроса, а чтобы Макрос сам нажал (сэмулировал) нажатия этой клавиши, если это не возможно то можно заменить F2 например на сочетание "ctrl alt 0" или  "ctrl shift #" или что то типа того.
И второй вопрос: можно ли сделать всплывающее окно с подсказкой во время выполнения Макроса, например во время ПАУЗЫ Макроса, которое появлялось например на 5 секунд и исчезало, или перед каким либо шагом выполнения задачи.
:) Буду очень признателен за ответы. Спасибо.

Точно не скажу, но на JS вроде как можно такое сотворить, см. ниже.
Все символьные кнопки записываются как символы, например, требуется нажать кнопку «а» пишем wsh.SendKeys("а"), элементарно. Если нужны специальные клавиши (enter, alt…) тогда пользуемся записью показанной в таблице:

скрытый текст
Кнопка           Аргумент 
    BACKSPACE   {BACKSPACE}, {BS}, или {BKSP} 
    BREAK           {BREAK}
    CAPS LOCK           {CAPSLOCK} 
    DEL or DELETE   {DELETE} ил {DEL} 
    DOWN ARROW  {DOWN} 
    END                  {END} 
    ENTER            {ENTER} или ~ 
    ESC             {ESC} 
    HELP            {HELP} 
    HOME                     {HOME}
    INS or INSERT   {INSERT} или {INS} 
    LEFT ARROW  {LEFT} 
    NUM LOCK            {NUMLOCK} 
    PAGE DOWN   {PGDN} 
    PAGE UP          {PGUP}
    PRINT SCREEN    {PRTSC}
    RIGHT ARROW {RIGHT}
    SCROLL LOCK {SCROLLLOCK}   
    TAB                  {TAB} 
    UP ARROW    {UP}   
    F1                       {F1} 
    F2                   {F2} 
      ……… ……….   
    F12                  {F12} 
    SHIFT               + 
    CTRL                       ^   
    ALT                     %

Иногда требуется нажать одновременно две кнопки для выполнения действия, например, переход в следующее приложение ALT+TAB в SendKeys() это реализуется записью SendKeys("%+{TAB}"), тоесть запись имеет формат <первая нажимаемая клавиша>+<вторая нажимаемая клавиша>.
Если получится отпишитесь как Вы это сделали.
По второму вопросу, на этом форуме уже был ответ. 453
Команда PROMPT не подойдет Вам, так как остановит ваш скрипт, до нажатия кнопки "ок", но подойдет для отладки скрипта. Примените вот это iimDisplay ( String message [, int timeout] )
http://wiki.imacros.net/iimDisplay

Всем добрый день, ночь,:) Спасиба за помощь по предыдущим вопросам! Сейчас назрела более глубокая проблемка:) Нужна имитировать курсор мыши для подсвечивания скрипта, а уже на скрипте imacros выполняет действие заданное. Вопрос следующий, в какую сторону копать, что бы с имитировать наведение курсора мыши в область на странице, либо какие другие варианты есть, главное скрипт подсветить.

spaun66614 пишет

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

Зачем? Далее просто не понятно что хотите сделать, сформулируйте вопрос внятнее.  Если Вам нужна имитация перемещения курсора DS CMD=MOVETO X=75 Y=452 (вместо цифр ваши значения), если не то, тогда возьмите на вооружение Autoit.

Edi
а что мне прописать в самом макросе? например чтобы он выполнял нажатие F2

werty517387 пишет

Подскажите пожалуйста как сделать так то бы макрос когда не находит определенную форму он искал другую и кликнул по ней,а то на это  сайте каждый раз меняется форма, но их  всего 2

Тут можно найти ответ на Ваш вопрос http://wiki.imacros.net/Keyword_Search

Edi пишет
zawuhi пишет

а что мне прописать в самом макросе? например чтобы он выполнял нажатие F2

URL GOTO=javascript:

URL GOTO=javascript:
а дальше а дальше не подскажете F2 как правильно написать?

zawuhi пишет

Edi пишет: zawuhi пишет: а что мне прописать в самом макросе? например чтобы он выполнял нажатие F2URL GOTO=javascript:URL GOTO=javascript:а дальше а дальше не подскажете F2 как правильно написать?

URL GOTO=javascript:{F2}
или так, точно не знаю
URL GOTO=javascript:SendKeys({F2})

Edi пишет
zawuhi пишет

Edi пишет: zawuhi пишет: а что мне прописать в самом макросе? например чтобы он выполнял нажатие F2URL GOTO=javascript:URL GOTO=javascript:а дальше а дальше не подскажете F2 как правильно написать?

URL GOTO=javascript:{F2}

увы не работает, а точнее ничего не происходит
а если написать для теста вместо F2 например цифру 1, тоже ничего не получится?
или надо установить дополнительную программу, чтобы яваскрипт выполнялся? система у меня Виндовс 7

Edi пишет
zawuhi пишет
Edi пишет

URL GOTO=javascript:{F2}

увы не работает, а точнее ничего не происходит
а если написать для теста вместо F2 например цифру 1, тоже ничего не получится?
или надо установить дополнительную программу, чтобы яваскрипт выполнялся? система у меня Виндовс 7

А что происходит или должно происходить при нажатии "F2"? Для чего вообще код нужен, может лучше автоитом воспользоваться?

горячая клавиша для запуска скрипта по распознаванию капчи, причём там есть возможность изменить горячую клавишу хоть на цифру 1 или другую клавишу на клавиатуре

Но меня прежде всего интересует что бы сам Макрос нажимал (эмулировал) это нажатие, сейчас у меня Макрос становится на паузу и я F2 нажимаю вручную, а потом продолжаю сценарий Макроса.

zawuhi пишет

горячая клавиша для запуска скрипта по распознаванию капчи, причём там есть возможность изменить горячую клавишу хоть на цифру 1 или другую клавишу на клавиатуре

Но меня прежде всего интересует что бы сам Макрос нажимал (эмулировал) это нажатие, сейчас у меня Макрос становится на паузу и я F2 нажимаю вручную, а потом продолжаю сценарий Макроса.

Запуск скрипта можно запустить из макроса, незачем городить огород с горячей клавишей. Запускайте скрипт напрямую.  iimPlay("capcha.js",60);
файл capcha.js должен лежать в папке с макросами, либо указать к нему явный путь.

Edi пишет
zawuhi пишет

горячая клавиша для запуска скрипта по распознаванию капчи, причём там есть возможность изменить горячую клавишу хоть на цифру 1 или другую клавишу на клавиатуре

Но меня прежде всего интересует что бы сам Макрос нажимал (эмулировал) это нажатие, сейчас у меня Макрос становится на паузу и я F2 нажимаю вручную, а потом продолжаю сценарий Макроса.

Запуск скрипта можно запустить из макроса, незачем городить огород с горячей клавишей. Запускайте скрипт напрямую.  iimPlay("capcha.js",60);
файл capcha.js должен лежать в папке с макросами, либо указать к нему явный путь.

так капча передаётся сайту Webvisum расшифровывается и копируется в буфер обмена, а в этом расширении много функциональных команд, и как я узнаю какую команду мне прописать в Макросе? Мне проще чтобы сам Макрос нажал ту или иную клавишу...

Edi пишет
zawuhi пишет

так капча передаётся сайту Webvisum расшифровывается и копируется в буфер обмена, а в этом расширении много функциональных команд, и как я узнаю какую команду мне прописать в Макросе? Мне проще чтобы сам Макрос нажал ту или иную клавишу...

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

а где его можно посмотреть?

Подскажите, плиз, как вставить на сайте в поле из документа текст (русский). Вставлять текст можно только из файла с расширением *.csv?
Получается вытащить текст, но только латинский... И как это все зациклить, что бы в обновленную страницу вставлял след. строчку?
Заранее спасибо.

beslam пишет

Подскажите, плиз, как вставить на сайте в поле из документа текст (русский). Вставлять текст можно только из файла с расширением *.csv?
Получается вытащить текст, но только латинский... И как это все зациклить, что бы в обновленную страницу вставлял след. строчку?
Заранее спасибо.

я использую txt, кодировка utf-8 (без вом)
текст такого плана:

"воуют детали.",
"что скоторый будут)",
"скольствованы?",

вот кусок кода

скрытый текст

Выделить код

Код:

var twitts = "CODE:SET !ERRORIGNORE YES"+s_n;
    twitts += "SET !ERRORCONTINUE YES"+s_n;
       twitts += "URL GOTO=https://twitter.com"+s_n;
    var randomPause=Math.floor(Math.random()*(7000-60)+60);
    twitts += "WAIT SECONDS=" + randomPause + " "+s_n;
    twitts += "SET !EXTRACT_TEST_POPUP NO"+s_n;
    twitts += "SET !DATASOURCE  Z:\\home\\Auto\\www\\itts.txt"+s_n; 
    twitts += "SET !DATASOURCE_COLUMNS 103"+s_n;
    twitts += "SET !LOOP 1"+s_n;
    twitts += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
    twitts += "SET !ERRORIGNORE YES"+s_n;
    twitts += "SET !ERRORCONTINUE YES"+s_n;
    twitts += "URL GOTO=https://ter.com/intent/et"+s_n;
    twitts += "TAG POS=1 TYPE=TEXTAREA FORM=ACTION:https://ter.com/intent/eet/update ATTR=ID:status CONTENT={{!COL1}}"+s_n;
    twitts += "WAIT SECONDS=3"+s_n;
    twitts += "URL GOTO=http://04.ts/Deltt.php"+s_n;
    var randomPause=Math.floor(Math.random()*(150-60)+60);
    twitts += "WAIT SECONDS=" + randomPause + " "+s_n;
    twitts += "URL GOTO=https://ter.com"+s_n;
    var pl_twitts = iimPlay(twitts);

Спасибо, ОГРОМНОЕ, в принципе , как вставить текст, разобрался.
Теперь еще пара вопросов появилось, как добавлять из текстового документа следующую строчку в новое поле
Вот часть кода:

скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS
CMDLINE !DATASOURCE text.txt
SET !DATASOURCE_COLUMNS 1
SET !ERRORIGNORE YES
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:the_form ATTR=ID:subject CONTENT={{!COL1}}
TAB CLOSEALLOTHERS
CMDLINE !DATASOURCE text.txt
SET !DATASOURCE_COLUMNS 1
SET !ERRORIGNORE YES
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA FORM=NAME:the_form ATTR=ID:text CONTENT={{!COL1}}


Что изменить что бы в новое поле, новая строчка....
Если поставить SET !LOOP 2, то при цикле это не работает....

И еще вопросик, не могу ни где найти, как картинку вставить???

Заранее спасибо.

С картинками вроде разобрался, а вот с текстом пока не получается, так что, если кто может, подскажите...

Опять таки повторюсь, постоянно нахожусь в поисках правильного применения этого криворукого плагина.
Кто из Вас часто и долго пользовался его замечательными функциями, такими как SAVEAS например мог заменить, что функция имеет
бесконечные глюки и с каждой новой версией FF перестает что-нибудь работать.
А функции извлечения текста из файла....эм, если вам нужно 30-40 потоков запустит и фаил поколбасить....в общем эти функции не для
брутальных экстремалов.
Порыл гугл. яндекс, нашел 2 кода, очень интересных думаю многим будет полезно, если припечет
Сохранение файла, и чтение данных из файла. нормальные скриптовые команды, ловите, повторюсь, автор не я, но очень ему благодарен.

СОХРАНЕНИЕ файла

скрытый текст

Выделить код

Код:

function fromUnicode(charset, data){
var uniConv=Components.classes["@mozilla.org/intl/scriptableunicodeconverter"];
uniConv=uniConv.createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
uniConv.charset = charset;
data = uniConv.ConvertFromUnicode(data);
return data;
};
var newFile = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
newFile.initWithPath("D:\\");
newFile.appendRelativePath('file.txt');
if(!newFile.exists()){
    alert('Файл еще не существует, но будет создан '); 
    newFile.create(0x00, 0666);
    }else{alert('Файл уже существует и будет перезаписан');}
var stream;
stream = Components.classes['@mozilla.org/network/file-output-stream;1'];
stream = stream.createInstance(Components.interfaces.nsIFileOutputStream);
stream.init(newFile,2,0,0);
var str='Это надо сохранить';
str=fromUnicode("windows-1251",str);
stream.write(str, str.length);
stream.close();
alert('+');


ЧТЕНИЕ из файла
скрытый текст

Выделить код

Код:

function toUnicode(charset, data){
var uniConv = Components.classes['@mozilla.org/intl/scriptableunicodeconverter'];
uniConv = uniConv.createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
uniConv.charset = charset;
data = uniConv.ConvertToUnicode(data);
return data;
 };
var conv = Components.classes["@mozilla.org/network/protocol;1?name=file"];
conv = conv.createInstance(Components.interfaces.nsIFileProtocolHandler);
var url ="file:\\\D:\\file.txt";
var file = conv.getFileFromURLSpec(url);
var file_size=file.fileSize; 
var stream;
stream = Components.classes["@mozilla.org/network/file-input-stream;1"];
stream = stream.createInstance(Components.interfaces.nsIFileInputStream);
stream.init(file, 1, 0,0);
var s2 = Components.classes["@mozilla.org/scriptableinputstream;1"];
s2 = s2.createInstance(Components.interfaces.nsIScriptableInputStream);
s2.init(stream);
var content = null;
content = s2.read(file_size);
stream.close();
str=toUnicode("windows-1251",content.toString());
alert(str);

beslam пишет

Теперь еще пара вопросов появилось...

скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS
CMDLINE !DATASOURCE text.txt
SET !DATASOURCE_COLUMNS 1
SET !ERRORIGNORE YES
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:the_form ATTR=ID:subject CONTENT={{!COL1}}
WAIT SECONDS=5
TAG POS=1 TYPE=TEXTAREA FORM=NAME:the_form ATTR=ID:text CONTENT={{!COL2}}


попробуй так

beslam пишет

Подскажите, плиз, как вставить на сайте в поле из документа текст (русский). Вставлять текст можно только из файла с расширением *.csv?Получается вытащить текст, но только латинский... И как это все зациклить, что бы в обновленную страницу вставлял след. строчку?Заранее спасибо.

Читайте форум, об этом здесь уже много раз писали.

19-04-2013 10:58:09
beslam
Зачем второй раз код повторяете? Сбиваете цикл. Если нужно вставить еще одно значение, то используйте {{!COL2}} вместо выделенного текста таким образом
TAG POS=(нужный номер позиции) TYPE=INPUT:TEXT FORM=NAME:the_form ATTR=ID:subject CONTENT={{!COL2}}

Гляньте, тут хорошо об этом рассказано http://webmasters.ru/forum/f26/imacros-1084/

Sality пишет

FRAME NAME="тут_рандомное_значение_буквы+цифры+разная_длина"Собственно проблема с этим, после каждой перезагрузки страницы значение меняется. Помогите, * не спасают.

найди хоть что-то общее, может несколько букв, цифр. может другой эллемент, др. имя общее

Sality пишет

Код макроса:VERSION BUILD=8300326 RECORDER=FX
TAB T=1
FRAME NAME="fXD9623c"
TAG POS=2 TYPE=A ATTR=TXT:купить
Wait seconds=0.5

Номер фрейма можете указать.
FRAME (F=n|NAME=id)
F - Номер фрейма, (Примечание: F = 0 указывает на главу страницы).
NAME - Имя фрейма.
http://forum.iopus.com/viewtopic.php?f=6&t=12147
Статейка по фреймам http://citforum.ru/internet/koch/part3/part3.htm
Wiki frame

spy686 пишет

ZeTko пишет: function func() {
    // что-то делаем
}
// регистрируем периодический вызов функции через 1 секунду
setInterval("func()", 1000);

это в последних версиях iMacros'a даже не запускается - сразу ошибка...

есть ли способ подгрузить js файл из другого js и зациклить? не хотелось бы зацикливание делать в основном файле

Заранее, спасибо за ответ.

13-05-2013 03:43:20

Edi пишет

zawuhi пишет: горячая клавиша для запуска скрипта по распознаванию капчи, причём там есть возможность изменить горячую клавишу хоть на цифру 1 или другую клавишу на клавиатуреНо меня прежде всего интересует что бы сам Макрос нажимал (эмулировал) это нажатие, сейчас у меня Макрос становится на паузу и я F2 нажимаю вручную, а потом продолжаю сценарий Макроса.Запуск скрипта можно запустить из макроса, незачем городить огород с горячей клавишей. Запускайте скрипт напрямую.  iimPlay("capcha.js",60);файл capcha.js должен лежать в папке с макросами, либо указать к нему явный путь.
                    Отредактировано Edi (08-04-2013 12:02:44)

Запускайте скрипт напрямую.  iimPlay("capcha.js",60); - я пробовал подобный вариант - это был один из первых вариантов include'a - но iMacros начал материться на комменты в скрипте, видимо он воспринимает код как iim а не как js

тут так же упоминалось про использование нескольких профилей - можно поподробней? а то мне требуется использовать 2 (иногда 3) js-скрипта параллельно для 1го сайта, и получается что пока 1н не отработает #Current.iim - занят и не дает выполняться другом скрипту, а при зацикливании - не дает выполняться другому вообще :(

Всем привет ) Вот начал изучать imacros и возникло пару вопросов про которые я рассказал в видео для более детального понимания проблемы вот ссылка на видео в ютубе:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Вот первый код с видео для сайта турболайк как поменять масштаб или заставить скрол двигаться
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://turboliker.ru/index.php
TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>группы
TAG POS=2 TYPE=A ATTR=TXT:Подписаться
CLICK X=276 Y=448
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button
TAB T=2
TAB CLOSE
TAB T=1
CLICK X=276 Y=525
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button
TAB T=2
TAB CLOSE
TAB T=1
CLICK X=275 Y=600
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button
TAB T=2
TAB CLOSE
TAB T=1
CLICK X=278 Y=680
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button
TAB T=2
TAB CLOSE
TAB T=1
CLICK X=276 Y=757
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button
TAB T=2
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=P ATTR=ID:lbl1
TAG POS=1 TYPE=P ATTR=ID:lbl2
TAG POS=1 TYPE=P ATTR=ID:lbl3
TAG POS=1 TYPE=P ATTR=ID:lbl4
TAG POS=1 TYPE=P ATTR=ID:lbl5


А вот второй для репоста вконтакте
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=span  ATTR=class:fl_l
TAG POS=1 TYPE=span  ATTR=class:like_publish_label

PIAR
пауза - это десятая часть SET !TIMEOUT, http://ru.imacros.wikia.com/wiki/!TIMEOUT, можно менять командой в коде, можно в опциях.
убрать вообще хз, но как вариант - попробывать ставить перед той командой которая не должна при ненахождении долго зависать поставить   SET !TIMEOUT 0 или SET !TIMEOUT 1.

для нажатия 4 и последующих ссылок лучше использовать нажати е не покоординатом а по елементам html кода, можешь попробывать записать, если не получаеться, то посмотреть код найти общую часть, а то что меняеться заменить*
пример:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:vk.com/*

рассказать друзьям у я так и неразобрался

а на счет видеоуроков - очень много демо примеров есть

spy686
SET !TIMEOUT 1 Работает спасибки ) А всё остальное не очень я уже всю голову сломал как по элементу HTML привязать по id по class по txt пробовал единственное что помогло только по оси и то так халтура потому как не пойму как менять размер в прочем в видео есть что не понятно ну и в любом случае  как поменять масштаб и управления скролом интересная инфа для X Y ) А по поводу рассказать друзям вконтакте тоже не пойму как курсор сфокусировать на мне нравится чтоб дополнительное окошко появилося и можно было поставить рассказать друзям  в прочим это тоже в видео описано )) А за ускорения ошибки ещё раз спасибо жду дальнейших ответов кто знает )

PIAR

Выделить код

Код:

TAG POS=16 TYPE=a ATTR=href:*vk.com/*

это для 15 строчки

Выделить код

Код:

TAG POS=12 TYPE=a ATTR=href:*vk.com/*

это для 11 строчки

принцип понятен

spy686 пишет

TAG POS=12 TYPE=a ATTR=href:*vk.com/*

честно не чё не понял ) вот я просто скопировал и вставил к себе в imacros и не чего не происходишь тыб мог дать код который будет там работать по привязке html чтоб просто я скопировал и вставил всё от начала и до конца и если будет работать я найду свою ошибку а так я не пойму и ссылка  *vk.com/* что означают звёздочки типо что оно автоматически добирает остольной код ссылки на группу кароче что то я запутался ) если есть скайп или вконтакте отстав свои координаты пообщаемся )

PIAR пишет
spy686 пишет

TAG POS=12 TYPE=a ATTR=href:*vk.com/*

честно не чё не понял ) вот я просто скопировал и вставил к себе в imacros и не чего не происходишь тыб мог дать код который будет там работать по привязке html чтоб просто я скопировал и вставил всё от начала и до конца и если будет работать я найду свою ошибку а так я не пойму и ссылка  *vk.com/* что означают звёздочки типо что оно автоматически добирает остольной код ссылки на группу кароче что то я запутался ) если есть скайп или вконтакте отстав свои координаты пообщаемся )

Выделить код

Код:

TAG POS=2 TYPE=a ATTR=href:*vk.com/*
spy686 пишет

TAG POS=2 TYPE=a ATTR=href:*vk.com/*

Круто спасибо полезная инфа а то всё не мог понять ка как по ссылки прелепить )
Теперь осталась узнать 1  как написать команду для репоста вконтакте чтоб вызвать это всплывающее окошко
                                        2  как за биндеть кнопку в команду
и кстате ты говорил что есть много роликов ну вот я весь ютуб по запросу  imacros посмотрел кроме того как скачать приложение и установить в браузер не чего полезного не нашел пришлось форумы все перечитывать да и сайтытакие как http://wiki.imacros.net/ с переводчиком переводить чтоб хоть что то научится более мение ))

PIAR пишет

1  как написать команду для репоста вконтакте чтоб вызвать это всплывающее окошко

- ХЗ

PIAR пишет

2  как за биндеть кнопку в команду

- не понял вопроса

PIAR пишет

и кстате ты говорил что есть много роликов

- не ролики, а готовые скрипты\коды, когда устанавливаешь imacros там есть папочка Demo - там очень много чего интересного.

spy686 пишет

PIAR пишет:

1  как написать команду для репоста вконтакте чтоб вызвать это всплывающее окошко
- ХЗ

Ну а чтоб не вызывая окно просто чтоб ре посты делало знаешь как ?

spy686 пишет

PIAR пишет:

2  как за биндеть кнопку в команду
- не понял вопроса

ну не знаю так чтоб можно было управлять браузером ) с помощю каких то горячих кнопок )
пример ты включил команды они идут и тут тебе надо открыть окно на весь экран и тут ты для этого прописывал что то вроде:
тролололло F8 команда проходит окно открылось полностью )

spy686 пишет

PIAR пишет:

и кстате ты говорил что есть много роликов
- не ролики, а готовые скрипты\коды, когда устанавливаешь imacros там есть папочка Demo - там очень много чего интересного.

ага скрипты это круто но если к каждой команде было ещё описание что она делает и как ей пользоваться или видео обзор каждого скрипта типо урока для чайника и разобрать по командам что для чего былоб вообще чётко )) это я не много разбераюсь
в HTML и то тяжковато приходится пока найдёшь все команды что надо и всё методом тыка потому как хрен кто подскажет что куда тыкать ты мне первый раз кидал те команды я тоже не чё не понял только вот щас чехлы снял а если чел просто захочет что то написать я думаю ему вообще тяжко придётся без базы HTML и видео обзора )
Карочи я много что то тут настрочил ну всё таки я думаю можно былоб сделать курс типа imaсros для чайников )

PIAR пишет

spy686 пишет: PIAR пишет:1  как написать команду для репоста вконтакте чтоб вызвать это всплывающее окошко- ХЗНу а чтоб не вызывая окно просто чтоб ре посты делало знаешь как ? spy686 пишет: PIAR пишет:2  как за биндеть кнопку в команду- не понял вопросану не знаю так чтоб можно было управлять браузером ) с помощю каких то горячих кнопок ) пример ты включил команды они идут и тут тебе надо открыть окно на весь экран и тут ты для этого прописывал что то вроде:тролололло F8 команда проходит окно открылось полностью )spy686 пишет: PIAR пишет:и кстате ты говорил что есть много роликов- не ролики, а готовые скрипты\коды, когда устанавливаешь imacros там есть папочка Demo - там очень много чего интересного.ага скрипты это круто но если к каждой команде было ещё описание что она делает и как ей пользоваться или видео обзор каждого скрипта типо урока для чайника и разобрать по командам что для чего былоб вообще чётко )) это я не много разбераюсь в HTML и то тяжковато приходится пока найдёшь все команды что надо и всё методом тыка потому как хрен кто подскажет что куда тыкать ты мне первый раз кидал те команды я тоже не чё не понял только вот щас чехлы снял а если чел просто захочет что то написать я думаю ему вообще тяжко придётся без базы HTML и видео обзора ) Карочи я много что то тут настрочил ну всё таки я думаю можно былоб сделать курс типа imaсros для чайников )
                    Отредактировано PIAR (Сегодня 02:46:38)

попробуй через кнопку поделиться (дата-поделиться и т.д.)

PIAR пишет

PIAR пишет:

2  как за биндеть кнопку в команду
- не понял вопроса
ну не знаю так чтоб можно было управлять браузером ) с помощю каких то горячих кнопок )
пример ты включил команды они идут и тут тебе надо открыть окно на весь экран и тут ты для этого прописывал что то вроде:
тролололло F8 команда проходит окно открылось полностью )

непонимаю. код работает - надо развернуть, взял и развернул вручную окно, а на работу это не отражаеться развернуто окно или нет, если команды написаны не по координатам конечно

PIAR пишет

PIAR пишет:

и кстате ты говорил что есть много роликов
- не ролики, а готовые скрипты\коды, когда устанавливаешь imacros там есть папочка Demo - там очень много чего интересного.
ага скрипты это круто но если к каждой команде было ещё описание что она делает и как ей пользоваться или видео обзор каждого скрипта типо урока для чайника и разобрать по командам что для чего былоб вообще чётко )) это я не много разбераюсь
в HTML и то тяжковато приходится пока найдёшь все команды что надо и всё методом тыка потому как хрен кто подскажет что куда тыкать ты мне первый раз кидал те команды я тоже не чё не понял только вот щас чехлы снял а если чел просто захочет что то написать я думаю ему вообще тяжко придётся без базы HTML и видео обзора )
Карочи я много что то тут настрочил ну всё таки я думаю можно былоб сделать курс типа imaсros для чайников )

видео никчему - запускай код, открывай код и построчно разбирай что что означает.

spy686 пишет

попробуй через кнопку поделиться (дата-поделиться и т.д.)

Смотри репосты надо для того же сайта а там кидают ссылки на открытый пост а в нём нет пункта поделится поделится есть только на постах на стенки но не в открыточных теоретически я мог бы перейти на исходник поста на стенку но тогда как определить автоматически  каким он будет по счёту POS=? не знаю если помог бы справится с этой проблемой былбы очень благодарен

spy686 пишет

непонимаю. код работает - надо развернуть, взял и развернул вручную окно, а на работу это не отражаеться развернуто окно или нет, если команды написаны не по координатам конечно

Я про координаты и намекал )) конечно былоб интересно научится писать и по координатам это всётаки на мой взгляд нужная штука но для этого опять такиж надо чтото сделать с размерам автоматически и со скролом чтоб прокручивать )   

spy686 пишет

видео никчему - запускай код, открывай код и построчно разбирай что что означает.

Не думай что все такие умные как ты ) Просто видео материал воспринимается на много проще и лучше чем просто включить и седеть дупля отбивать что это за команда и что делать дальше и т.д....

Добрый день) хочу попросить помощи)
объясняю... есть голосование в котором нужно авторизовываться через твиттер. нужно сделать ввод мэйла для авторизации из файла.
с каждого аккаунта можно проголосовать 100 раз, затем нужно зайти через другой акк, проголосовать еще 100 раз и так далее. аккаунтов очень много, поэтому вручную это делать весьма проблематично... почитала форум, но мало что поняла :) помогите, пожалуйста, я вас умоляю просто)


скрытый текст

Выделить код

Код:

URL GOTO=https://twitter.com/
TAG POS=2 TYPE=LABEL ATTR=TXT:Псевдоним<SP>или<SP>адрес<SP>электронной<SP>почты
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-email CONTENT=ПОЧТА
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-password CONTENT=ПАРОЛЬ
TAG POS=2 TYPE=BUTTON ATTR=TXT:Войти
TAB OPEN
TAB T=2
URL GOTO=http://www.omusicawards.com/
TAG POS=1 TYPE=A ATTR=TXT:ААААААААААААААААААААА
TAG POS=1 TYPE=A ATTR=TXT:Log<SP>Out
TAG POS=1 TYPE=A ATTR=TXT:Twitter
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:oauth_form ATTR=ID:allow
TAB T=1
URL GOTO=http://www.omusicawards.com/user/aleksakaulitz
TAG POS=1 TYPE=A ATTR=TXT:Vote!
TAG POS=2 TYPE=A ATTR=TXT:Vote!


это код без ввода текста из файла.

еще у меня есть 2 вопроса. при лог ауте нужно нажать твиттерский ник на самом сайте, а так как он всегда разный как можно его обозначить? *он должен быть вместо "ААААААА"*. можно сделать копированием с самого твиттера, но я не умею :(
и по самому голосованию...там немного глючный сайт, я раньше прописывала 5 голосов, потом переход на страницу, еще 5 голосов и так далее. ставила цикл на 25 и со всеми глюками сайта он прекрасно голосовал до лимита. как теперь его лучше прописать?

aleksakaulitz
ответ на первый вопрос

скрытый текст

Выделить код

Код:

SET !DATASOURCE_DELIMITER ;
CMDLINE !DATASOURCE SET !DATASOURCE C:\users.csv
SET !DATASOURCE_COLUMNS 2 
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк спомощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
URL GOTO=https://twitter.com/
TAG POS=2 TYPE=LABEL ATTR=TXT:Псевдоним<SP>или<SP>адрес<SP>электронной<SP>почты
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-email CONTENT={{!COL1}}
WAIT SECONDS=1
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-password CONTENT={{!COL2}}
TAG POS=2 TYPE=BUTTON ATTR=TXT:Войти


или
скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !DATASOURCE_DELIMITER ;
CMDLINE !DATASOURCE SET !DATASOURCE C:\users.csv
SET !DATASOURCE_COLUMNS 2 
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк спомощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
TAB T=1
URL GOTO=http://www.omusicawards.com/user/aleksakaulitz
TAG POS=1 TYPE=A ATTR=TXT:Twitter
TAG POS=1 TYPE=LABEL ATTR=TXT:Псевдоним<SP>или<SP>адрес<SP>электронной<SP>почты
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://api.twitter.com/oauth/authenticate ATTR=ID:username_or_email CONTENT=имя@почта.ру
TAG POS=1 TYPE=LABEL ATTR=TXT:Пароль
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://api.twitter.com/oauth/authenticate ATTR=ID:password CONTENT=12345
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:oauth_form ATTR=ID:allow
' вместо "имя@почта.ру" {{!COL1}}, а вместо "12345" {{!COL2}}


Вот так будет выглядеть файл users.CSV
скрытый текст

ПОЧТА;ПАРОЛЬ;
aleksakaulitz@mail.ru;12345;
aleksa@mail.ru;3254;
aleks@mail.ru;87654;
ale@mail.ru;54321;
al@mail.ru;12345;


Обратите внимание, что файл users.csv, должен лежать в директории C:\Users\user\Documents\iMacros\Datasources , или необходимо указать абсолютный путь до файла C:\\users.csv
По умолчанию, макрос считывает CSV в формате в котором разделителями являются просто запятые. Иногда может потребоваться использовать альтернативный разделитель например в виде точки с запятой. В этом случае нужно выполнить команду:
SET !DATASOURCE_DELIMITER ;
Если внутри поля csv необходимо использовать значение содержащие в себе разделитель, то нужно взять его в двойные кавычки.
см. ссылки по теме
пост 159
http://compspeed.ru/569.html
http://lifeexample.ru/jquery-javascript … meryi.html
http://webmasters.ru/forum/f26/imacros-1084/

по второму вопросу, если текст всегда меняется то,

TAG POS=1 TYPE=A ATTR=TXT:ААААААААААААААААААААА
вместо этого можно написать
TAG POS=1 TYPE=A ATTR=TXT:*

а можно зайти обратно в твиттер и разлогиниться там

по третьему вопросу не разбирался, не хочется на том сайте регистрироваться.

Есть ли какие либо глюки если код создается управляющим js скриптом? кто-нибудь с подобным сталкивался?

Создал iim скрипт - он содержит в себе вставки javascript'a с помощью eval
Файл работает корректно.
Создаю идентичный файл с помощью управляющего js-файла - не работает (файл полностью идентичный, т.е. в том числе содержит в себе eval вставки java-script'a, только 2 переменных передаются через iimSet, но они передаются корректно, т.к. в них url и id страницы, были б не корректными была бы 404 ошибка)... на странице тоже есть java-script'ы, но если бы по каким-либо причинам возникал конфликт, думаю не работал бы и iim скрипт...

Помогите разобраться.

скрытый текст

Выделить код

Код:

trader = function()
{
    var macro = '';
    var type_res = new Array('res1', 'res2', 'res3');
    // den - коэффициент обмена относительно res3
    var den = new Array(4,2,1);
    
    
    macro += 'URL GOTO={{P_TRADER}}&cp={{ID_PL}}\n\n';
    
    for (var res = 0; res < type_res.length; res++) 
    {
        var curr_res = 'RES_'+ type_res[res].toUpperCase();
        
        macro += 'TAG POS=1 TYPE=TD ATTR=ID:current_'+ type_res[res] +' EXTRACT=TXT\n';
        macro += 'SET '+ curr_res +' {{!EXTRACT}}\n';
        macro += 'SET !EXTRACT NULL\n\n';
    //macro += 'PROMPT {{'+ curr_res +'}}\n'; //for test
    
        macro += 'SET '+ curr_res +' EVAL("var m = \\"{{'+ curr_res +'}}\\"; m.replace(/[.]/g, \\"\\");")\n';
        macro += 'SET RES_RES3 EVAL("d = Math.floor((Number(\\"{{'+ curr_res +'}}\\")-1)/'+ den[res] +');")\n\n';
        
        if (type_res[res] != 'res3') 
        {
            //macro += 'WAIT SECONDS=5\n';
            //macro += 'URL GOTO={{P_TRADER}}&cp={{ID_PL}}\n\n';
            macro += 'URL GOTO={{P_TRADER}}&ress='+ type_res[res] +'&action=trade&res3={{RES_RES3}}\n';
            macro += 'WAIT SECONDS=0.5\n';
            macro += 'URL GOTO={{P_TRADER}}&cp={{ID_PL}}\n\n';
        };
    };
    
    macro += 'SET !EXTRACT {{RES_res3}}\n\n';
    

 return macro;
};

var macro = 'CODE:';
                            
iimSet ("P_TRADER", 'адрес_страницы_сайта');
iimSet ("ID_PL", 'id_страницы_сайта');
                            
macro += trader();
                            
retcode = iimPlay( macro );

InfSub пишет

return macro;
};
macro = 'CODE:';

iimSet ("P_TRADER", 'адрес_страницы_сайта');

не пропущено ли тут "var"

var macro = 'CODE:';

можно еще перед объявлением новой переменной обнулить старую переменную, хотя точно не знаю, нужно ли это делать.

Edi пишет
InfSub пишет

return macro;
};
macro = 'CODE:';

iimSet ("P_TRADER", 'адрес_страницы_сайта');

не пропущено ли тут "var"

var macro = 'CODE:';

Код выдран из полного js-скрипта - var macro объявлено ранее, просто забыл сюда дописать (исправил в основном посте)

Edi пишет

можно еще перед объявлением новой переменной обнулить старую переменную, хотя точно не знаю, нужно ли это делать.

думаю что не нужно, так как написано не macro += 'CODE:'; а macro = 'CODE:'; - т.е. значение обнуляется автоматически

22-05-2013 00:26:54
Хотелось бы уточнить, что запросы создаются корректные, проверял руками, к тому же, как уже сказано, управляющий js-скрипт генерит #Current.iim -  аналогичный тому, *.iim файлу, что написан мной и работает корректно. Создается впечатление, что сайт отбрыкивает запросы от *.iim файла, сгенерированного управляющим js-скриптом, т.е. создается какой-то конфликт между работающими на сайте скриптами и моим файлом.... ><

Боже, все работает О_О Edi, вы гений! Нереально огромное Вам спасибо!!!
В начале поменяла две строчки и все заработало^^
Спасибо еще раз))))))

Edi пишет

по третьему вопросу не разбирался, не хочется на том сайте регистрироваться.

Могу в личку скинуть, если что) просто я сейчас прописала каждый клик в голосовании, и код стал очень длинный, на ~400 строчек)) я боюсь как бы он не завис где-нибудь посередине хД
тогда еще такой вопрос... в аймакросе есть команда, которая позволяет прокручивать любой кусок кода определенное кол-во раз?

П.С. а Вы не могли бы удалить из Вашего предыдущего поста ссылки на сайт с голосованием? а то мало ли))))

aleksakaulitz пишет

тогда еще такой вопрос... в аймакросе есть команда, которая позволяет прокручивать любой кусок кода определенное кол-во раз?

Есть команда LOOP, хотя она Вам вряд ли подойдет.

Либо делаете управляющий javascript, который вызывает нужный кусок кода (или создает его из кусочков) - нужное Вам количество раз - см. Demo идущее с плагином (файлы с расширением *.js)

aleksakaulitz пишет

и код стал очень длинный, на ~400 строчек)) я боюсь как бы он не завис где-нибудь посередине хД

в 400 строк - ваш код точно не зависнет, у меня крутился макрос на ~37000 строк, разве что пришлось подредактировать настройки Firefox, чтобы каждый раз не ругался на длину макроса. Максимальная длина макроса по умолчанию 2500 строк.
С помощью js - вы скорее всего сократите свой макрос, как минимум раза в 4, в зависимости от того сколько раз у Вас дублируются данные.




22-05-2013 04:18:16
По поводу своего собственного вопроса выше:

InfSub пишет

Хотелось бы уточнить, что запросы создаются корректные, проверял руками, к тому же, как уже сказано, управляющий js-скрипт генерит #Current.iim -  аналогичный тому, *.iim файлу, что написан мной и работает корректно. Создается впечатление, что сайт отбрыкивает запросы от *.iim файла, сгенерированного управляющим js-скриптом, т.е. создается какой-то конфликт между работающими на сайте скриптами и моим файлом.... ><

В общем нашел обходное решение, косяк в выражении:  'SET RES_RES3 EVAL("d = Math.floor((Number(\\"{{'+ curr_res +'}}\\")-1)/'+ den[res] +');")\n\n';
Не знаю уж почему, но видимо -1 как-то не корректно обрабатывается или что-то там...
если делаю так:

скрытый текст

Выделить код

Код:

macro += 'URL GOTO={{P_TRADER}}&cp={{ID_PL}}&ress=res3&action=trade&'+ type_res[res] +'=1\n';
        macro += 'URL GOTO={{P_TRADER}}&cp={{ID_PL}}\n\n';
    
        macro += 'SET '+ curr_res +' EVAL("var m = \\"{{'+ curr_res +'}}\\"; m.replace(/[.]/g, \\"\\");")\n';
        macro += 'SET RES_RES3 EVAL("d = Math.floor(Number(\\"{{'+ curr_res +'}}\\")/'+ den[res] +');")\n\n';


вместо
скрытый текст

Выделить код

Код:

macro += 'SET '+ curr_res +' EVAL("var m = \\"{{'+ curr_res +'}}\\"; m.replace(/[.]/g, \\"\\");")\n';
        macro += 'SET RES_RES3 EVAL("d = Math.floor((Number(\\"{{'+ curr_res +'}}\\")-1)/'+ den[res] +');")\n\n';


все норм.

(смысл этих манипуляций с "1" - в том, что значение res1, res2 и res3 округляется javascript'ом на самой странице, и если я пытаюсь перевести значение res1 или res2 полностью в res3 и при этом значение делится без остатка (к примеру 8/4=2 и переводим 2) - то выдает ошибку на недостаточность ресурсов. При работе предыдущей версии скрипта ошибку на недостаток не выводило, но и перевода не происходило... в общем баг какой-то...)

InfSub пишет

В общем нашел обходное решение, косяк в выражении

Молодец! Поздравляю!
http://www.w3schools.com/jsref/jsref_regexp_newline.asp
Я например, для отладки использую "PROMPT" - вывод на экран

SET !VAR1 EVAL()
PROMPT {{!VAR1}} 'вывод на экран

Есть еще такая полезная программулька iMacros Script Code Creator Создает коды для imacros.
#Current.iim - занят и не дает выполняться другом скрипту

aleksakaulitz пишет

тогда еще такой вопрос... в аймакросе есть команда, которая позволяет прокручивать любой кусок кода определенное кол-во раз?

Есть, на этом форуме уже много раз об этом писалось.
пост 222
пост 439
пост 448
пост 402
пост 395
пост 352
пост 331
пост 349

Этот скрипт, 50 раз вызывает макрос "primer.iim", передавая ему параметр LINE, равный номеру вызова. Далее текст скрипта "test.is".

var i;
for (i=1;i<=50;i++)
iimSet("LINE",i);
iimPlay("primer.iim",60);

Создадим его в блокноте, вставив текст приведенный выше, а потом поменяем расширение на *. js, назвав его "test.js". Поместить его надо в папку с макросами в XP - C:\Documents and Settings\Администратор\Мои документы\iMacros\Macros, там же должен находиться записанный вами макрос "primer.iim", выделяем "test.js" и нажимаем "Воспроизвести".

Cкрипт повтора макроса "пример.iim" 100 раз

var i;
for (i=1;i<=100;i++){
iimPlay("пример.iim",60);
}

Как изменять и создавать макросы скриптами.
Этот скрипт:

var macro;
macro = "CODE:";
macro += "SET !VAR1 {{!NOW:nn}}" + "\n";
macro += "SET !EXTRACT {{!VAR1}}" + "\n";
iret = iimPlay(macro);

вставляет в макрос #Current.iim строки:

SET !VAR1 {{!NOW:nn}}
SET !EXTRACT {{!VAR1}}

и запускает созданный макрос
+ "\n"   необходимо для перехода на новую сточку

про голосование гляньте тут

Edi пишет

Есть, на этом форуме уже много раз об этом писалось.
пост 222
пост 439
пост 448
пост 402
пост 395
пост 352
пост 331
пост 349

InfSub пишет
aleksakaulitz пишет

тогда еще такой вопрос... в аймакросе есть команда, которая позволяет прокручивать любой кусок кода определенное кол-во раз?

Есть команда LOOP, хотя она Вам вряд ли подойдет.

Либо делаете управляющий javascript, который вызывает нужный кусок кода (или создает его из кусочков) - нужное Вам количество раз - см. Demo идущее с плагином (файлы с расширением *.js)

aleksakaulitz пишет

и код стал очень длинный, на ~400 строчек)) я боюсь как бы он не завис где-нибудь посередине хД

в 400 строк - ваш код точно не зависнет, у меня крутился макрос на ~37000 строк, разве что пришлось подредактировать настройки Firefox, чтобы каждый раз не ругался на длину макроса. Максимальная длина макроса по умолчанию 2500 строк.
С помощью js - вы скорее всего сократите свой макрос, как минимум раза в 4, в зависимости от того сколько раз у Вас дублируются данные.

Если бы я еще что то понимала в этом яваскрипт))) в общем почитала форум и пришла к выводу, что проще сделать так: нужно выполнять Current.iim (где само голосование) до тех пор, пока на странице не будет найдено слово "лимит", после чего выполнить Eval.iim (где прописана авторизация)

Выделить код

Код:

var word = prompt('Введите Искомое слово', '');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
 iimPlay("#CurrentPERV.iim",60);
} else {
  iimPlay("#CurrentVTOR.iim",60);
  alert('Этой фразы тут нету!'); 
    
}

что то похожее нашла вот, пыталась исправить, но оно не хочет работать :(

aleksakaulitz пишет

Если бы я еще что то понимала в этом яваскрипт))) в общем почитала форум и пришла к выводу, что проще сделать так: нужно выполнять Current.iim (где само голосование) до тех пор, пока на странице не будет найдено слово "лимит", после чего выполнить Eval.iim (где прописана авторизация)

скрытый текст
var word = prompt('Введите Искомое слово', '');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("#CurrentPERV.iim",60);
} else {
  iimPlay("#CurrentVTOR.iim",60);
  alert('Этой фразы тут нету!');
   
}


что то похожее нашла вот, пыталась исправить, но оно не хочет работать

То что вы написали это код JS, так что это должен быть файл не *.imm, а *.js, по этому его надо переименовать в файл "#Current.js" (без кавычек).
Этот код писал spy686 обратитесь к нему, он вам отредактирует под ваши нужды.
по поводу поиска по словам и картинкам гляньте тут
Ниже приведен код с того сайта для поиска слова на вебстранице.
Нужно создать файл "MySearch.iim" c кодом который  см. ниже

VERSION BUILD=6140125
URL GOTO=http://www.omusicawards.com/user/aleksakaulitz
TAG POS=1 TYPE=* ATTR=TXT:*лимит* EXTRACT=TXT

второй файл c вашим кодом авторизации Eval.iim и третий "#Current.js" в котором код приведенный ниже. Запускать нужно его.

скрытый текст

Выделить код

Код:

set iim1= CreateObject ("imacros")
iret = iim1.iimInit()
iplay = iim1.iimPlay("MySearch")
extracted_text = iim1.iimGetLastExtract(1)

'Проверить, если ключевое слово появилось на сайте.
If iplay = 1 Then
  If instr (extracted_text, "#EANF#") > 0 Then
'    MsgBox ("Извините, слово не найдено")
       iimPlay("#Current.js",60);
  Else
' здесь действие, если слово нашлось.
     iimPlay("Eval.iim",60);
'    iplay = iim1.iimPlay("MySearch")
  End If
End If

If iplay < 0 Then
  MsgBox "Ошибка!"
End If


P.S. Мог что-нибудь напутать, так что проверяйте и экспериментируйте.

скрытый текст
Пример: Мы хотим узнать, если слова "заказ завершен" на веб-странице. Если да, мы хотим, распечатать страницу. Для поиска на веб-странице теста указанной выше фразы, необходимо создать макрос,  с названием "MySearch" и который имеет только две строки:

VERSION BUILD=6140125
TAG POS=1 TYPE=* ATTR=TXT:*Order<SP>completed* EXTRACT=TXT

В этом примере мы ищем на веб-странице первую позицию (POS = 1) ключевого слова "заказ завершен". Если сообщение #EANF# возвращается, то ключевое слово не было найдено. В качестве ключевого слова является извлечение данных. Если ключевое слово было найдено, то  команда извлечения возвращает полный текст найденного HTML тегов. В нашем примере это может быть "при заказе программного обеспечения завершена".
Для печати веб-страницы создать макрос называется "print_this". Он тоже имеет только две строки:

VERSION BUILD=6140125
PRINT

Далее нужно создать скрипт например "#Current.js".

set iim1= CreateObject ("imacros")
iret = iim1.iimInit()
iplay = iim1.iimPlay("mysearch")
extracted_text = iim1.iimGetLastExtract(1)

'test if keyword appeared on website.
If iplay = 1 Then
  If instr (extracted_text, "#EANF#") > 0 Then
    MsgBox ("Sorry, keywords not found")
  Else
    iplay = iim1.iimPlay("print_this")
  End If
End If

If iplay < 0 Then
  MsgBox "Error!"
End If

Примечание: Такая же процедура может быть использована для поиска нескольких ключевых слов на странице, например, "кошка", "собака" и "мышь":
Решение заключается в использовании нескольких команд извлечения текста. Таким образом, в макросе "MySearch" пишем:

TAG POS=1 TYPE=* ATTR=TXT:*КОТ* EXTRACT=TXT
TAG POS=1 TYPE=* ATTR=TXT:*СОБАКА* EXTRACT=TXT
TAG POS=1 TYPE=* ATTR=TXT:*МЫШЬ* EXTRACT=TXT

Чтобы убедиться, что ключевое слов найдено в сценарии кода нужно изменить следующее:

iplay = iim1.iimPlay("wsh-extract-rate")
If iplay = 1 Then
  If iim1.iimGetLastExtract (1) <> "#EANF#" Then MsgBox "Ключевое слово КОТ найдено!"
  If iim1.iimGetLastExtract (2) <> "#EANF#" Then MsgBox "Ключевое слово СОБАКА найдено!"
  If iim1.iimGetLastExtract (3) <> "#EANF#" Then MsgBox "Ключевое слово МЫШЬ найдено!"
End If

Я свихнусь сейчас((( это вынос мозга просто... Код с авторизацией, который на Хроме на этом моем компе работает как часы, отказывается вставлять логины и пароли из csv файла в Мозиле и в Хроме на ноутбуке :(
Это как вообще? При чем специально записала скрипт на мозиле, точно такой же получился, только вместо {{!COL1}} я написала всякую белиберду - всё нормально вставляет :(

Выделить код

Код:

SET !TIMEOUT 3
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE users.csv
SET !DATASOURCE_COLUMNS 2 
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк с помощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
URL GOTO=https://twitter.com/
TAG POS=1 TYPE=I ATTR=TXT:Настройки<SP>и<SP>помощь
TAG POS=1 TYPE=A ATTR=ID:signout-button
URL GOTO=https://twitter.com/
TAG POS=2 TYPE=LABEL ATTR=TXT:Псевдоним<SP>или<SP>адрес<SP>электронной<SP>почты
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-email CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-password CONTENT={{!COL2}}
TAG POS=2 TYPE=BUTTON ATTR=TXT:Войти

Ведь нормальный же код?(((
Я бы не стала даже заморачиваться по этому поводу, если бы в аймакросе в хроме работал яваскрипт(( я так и не нашла как его там включить :)

aleksakaulitz пишет

Я свихнусь сейчас((( это вынос мозга просто... Код с авторизацией, который на Хроме на этом моем компе работает как часы, отказывается вставлять логины и пароли из csv файла в Мозиле и в Хроме на ноутбуке  Это как вообще? При чем специально записала скрипт на мозиле, точно такой же получился, только вместо {{!COL1}} я написала всякую белиберду - всё нормально вставляет

По поводу белиберды поподробней пожалуйста. Без {{!COL1}} не должно работать.

aleksakaulitz пишет

скрытый текст
SET !DATASOURCE_DELIMITER ; 'в вашем коде этого нет!
SET !TIMEOUT 3
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE users.csv
SET !DATASOURCE_COLUMNS 2
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк с помощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
URL GOTO=https://twitter.com/
TAG POS=1 TYPE=I ATTR=TXT:Настройки<SP>и<SP>помощь
TAG POS=1 TYPE=A ATTR=ID:signout-button
URL GOTO=https://twitter.com/
TAG POS=2 TYPE=LABEL ATTR=TXT:Псевдоним<SP>или<SP>адрес<SP>электронной<SP>почты
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-email CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-password CONTENT={{!COL2}}
TAG POS=2 TYPE=BUTTON ATTR=TXT:

ВойтиВедь нормальный же код?(((Я бы не стала даже заморачиваться по этому поводу, если бы в аймакросе в хроме работал яваскрипт(( я так и не нашла как его там включить

Вы пропустили важную вещь! Вот почему я всегда прошу выкладывать свои коды, так как без этого не понятно где закралась ошибка. ))) Про это я писал в посте 545, в том случае если Вы используете в *.csv файле разделитель ";" нужно добавить.

SET !DATASOURCE_DELIMITER ;

Вставить это надо в первую строчку вашего кода. Сравните с вашим кодом который работает.
Старайтесь в дальнейшем длинные коды прятать под спойлер.
По поводу ява скрипта на других компах - возможно его нужно установить или включить.

Edi пишет

По поводу белиберды поподробней пожалуйста. Без {{!COL1}} не должно работать.

я имела ввиду, что оно прекрасно работает когда не нужно вставлять ничего из файла) код без вставки логина/пароля из файла работает на мозиле, если саму почту и пароль прописать в этом коде (вместо {{!COL1}})

aleksakaulitz пишет

скрытый текст
SET !DATASOURCE_DELIMITER ; 'в вашем коде этого нет!
SET !TIMEOUT 3
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE users.csv
SET !DATASOURCE_COLUMNS 2
'Начало со второй строки, минуя заголовки. '
SET !LOOP 2
'Увеличения счетчика строк с помощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее Непосредственно сами команды цикла'
URL GOTO=https://twitter.com/
TAG POS=1 TYPE=I ATTR=TXT:Настройки<SP>и<SP>помощь
TAG POS=1 TYPE=A ATTR=ID:signout-button
URL GOTO=https://twitter.com/
TAG POS=2 TYPE=LABEL ATTR=TXT:Псевдоним<SP>или<SP>адрес<SP>электронной<SP>почты
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-email CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://twitter.com/sessions ATTR=ID:signin-password CONTENT={{!COL2}}
TAG POS=2 TYPE=BUTTON ATTR=TXT:

ВойтиВедь нормальный же код?(((Я бы не стала даже заморачиваться по этому поводу, если бы в аймакросе в хроме работал яваскрипт(( я так и не нашла как его там включить

Edi пишет

Вы пропустили важную вещь! Вот почему я всегда прошу выкладывать свои коды, так как без этого не понятно где закралась ошибка. ))) Про это я писал в посте 545, в том случае если Вы используете в *.csv файле разделитель ";" нужно добавить.

SET !DATASOURCE_DELIMITER ;

Вставить это надо в первую строчку вашего кода. Сравните с вашим кодом который работает.

Так я поменяла разделитель на запятую, так как с командой DELIMITER он писал ошибку. Повторюсь, что на хроме все отлично работает)

Edi пишет

Старайтесь в дальнейшем длинные коды прятать под спойлер.

хорошо)

Edi пишет

По поводу ява скрипта на других компах - возможно его нужно установить или включить.

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

Помогите, пожалуйста, решить задачу:
- На текущей вкладке выделить всю станицу (аналогично Ctrl+A)
- Отправить в csv файл исходный код выделенного фрагмента

aleksakaulitz пишет

я имела ввиду, что оно прекрасно работает когда не нужно вставлять ничего из файла) код без вставки логина/пароля из файла работает на мозиле, если саму почту и пароль прописать в этом коде (вместо {{!COL1}})

Если такое происходит, то значит у вас проблема с *.csv файлом. Проверьте, там ли он находится где у вас прописан путь к нему!!! Файл по умолчанию должен находиться в папке "Datasources". Попробуйте в коде указать другой путь и переместить туда файл *.csv. А так же проверьте расширение файла должно быть *.csv, а не например *.cvs. Если пишет ошибку посмотрите что она означает.
В хроме скрипты не поддерживаются.

Andy13 пишет

Помогите, пожалуйста, решить задачу:- На текущей вкладке выделить всю станицу (аналогично Ctrl+A)- Отправить в csv файл исходный код выделенного фрагмента

Сохранить извлеченный текст в файл по умолчанию ("extract.csv" в папку iМacros, в папку"Downloads"). У меня например путь такой D:\Мои документы\iMacros\Downloads у вас может быть другой.

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://translate.yandex.ru/translate?srv=yasearch&url=http%3A%2F%2Fwiki.imacros.net%2FData_Extraction&lang=en-ru&ui=ru
WAIT SECONDS=7
URL GOTO=http://translate.yandex.ru/translate?srv=yasearch&url=http%3A%2F%2Fwiki.imacros.net%2FSAVEAS&lang=en-ru&ui=ru
WAIT SECONDS=7
SET !EXTRACT_TEST_POPUP NO
URL GOTO=http://wiki.imacros.net/Data_Extraction
'Complete Page TEXT only
TAG POS=1 TYPE=HTML ATTR=* EXTRACT=TXT
'вывод на экран не обязателен, только для отладки, можно выкинуть из кода.
PROMPT {{!EXTRACT}}
'сохранение в файл по умолчанию в папку c iМacros, в папку"Downloads"
SAVEAS TYPE=EXTRACT FOLDER=* FILE=*
'вместо звездочек можно указать свои данные, тогда имя и путь к файлу изменятся.
WAIT SECONDS=300

Edi пишет
aleksakaulitz пишет

я имела ввиду, что оно прекрасно работает когда не нужно вставлять ничего из файла) код без вставки логина/пароля из файла работает на мозиле, если саму почту и пароль прописать в этом коде (вместо {{!COL1}})

Если такое происходит, то значит у вас проблема с *.csv файлом. Проверьте, там ли он находится где у вас прописан путь к нему!!! Файл по умолчанию должен находиться в папке "Datasources". Попробуйте в коде указать другой путь и переместить туда файл *.csv. А так же проверьте расширение файла должно быть *.csv, а не например *.cvs. Если пишет ошибку посмотрите что она означает.
В хроме скрипты не поддерживаются.

ошибку никакую не пишет, файл лежит в папке по умолчанию, с расширением все нормально... переместить пробовала, "SET !DATASOURCE_DELIMITER" писала и ";" между записями в файле ставила, никакого результата не дало. в хроме, повторюсь, все отлично работает(

27-05-2013 20:18:14
П.С.:
нашла косяк :) ему первая строчка не нравилась, где написано "ПОЧТА" и "ПАРОЛЬ" %) без нее отлично пашет...

27-05-2013 20:22:37
А при запуске яваскрипта сразу пишет такую ошибку:

SyntaxError: missing ; before statement, line: NaN (Error code: 991)

про нее вот что написано:

Javascript parsing/evaluation error

aleksakaulitz пишет

скрытый текст

Edi пишет
aleksakaulitz пишет

я имела ввиду, что оно прекрасно работает когда не нужно вставлять ничего из файла) код без вставки логина/пароля из файла работает на мозиле, если саму почту и пароль прописать в этом коде (вместо {{!COL1}})

Если такое происходит, то значит у вас проблема с *.csv файлом. Проверьте, там ли он находится где у вас прописан путь к нему!!! Файл по умолчанию должен находиться в папке "Datasources". Попробуйте в коде указать другой путь и переместить туда файл *.csv. А так же проверьте расширение файла должно быть *.csv, а не например *.cvs. Если пишет ошибку посмотрите что она означает.
В хроме скрипты не поддерживаются.

ошибку никакую не пишет, файл лежит в папке по умолчанию, с расширением все нормально... переместить пробовала, "SET !DATASOURCE_DELIMITER" писала и ";" между записями в файле ставила, никакого результата не дало. в хроме, повторюсь, все отлично работает(


П.С.:
нашла косяк :) ему первая строчка не нравилась, где написано "ПОЧТА" и "ПАРОЛЬ" %) без нее отлично пашет...

А при запуске яваскрипта сразу пишет такую ошибку:

SyntaxError: missing ; before statement, line: NaN (Error code: 991)

про нее вот что написано:

Javascript parsing/evaluation error

Пост 156

zello пишет
Klaid пишет

сейчас попробовал, не работает ваш вариант макроса
Пример Файла keys.csv

скрытый текст
скачать новинки игры
новинки игр для пк 2012
мир игр для пк
компьютерные игры новые
компьютерные игры новости
последние новинки игр пк
все лучшие игры
скачать последние игры
новые игры в 2012
pc игры 2012 года

Пример  рабочий  я с ним работаю:) Это парсер вордстата Так что утверждение что пример не работает не приемлемо ..............
Из особенностей айМакроса - айМакрос не работает с русскими буквами
Для решения данной проблемы  я использовал следующее :
Создается файл csv  с текстом в кодировке UTF-8, далее чистим файл И вставляем в него текст русский созданный в текст файле и сохраненный в кодировке UTF-8
Вы скорее всего писали в файл русский текст в кодировке Windows-1251

Как сохранить в кодировке UTF-8

скрытый текст
Чтобы сохранить файл CSV с помощью формата кодировки UTF-8, выполните следующие действия.

    Откройте файл CSV с помощью программы «Блокнот».
    В программе «Блокнот» откройте меню файл и выберите команду Сохранить как.
    В списке Кодировка выберите UTF-8, а затем нажмите кнопку Сохранить.

Edi пишет
aleksakaulitz пишет

скрытый текст

Edi пишет

Если такое происходит, то значит у вас проблема с *.csv файлом. Проверьте, там ли он находится где у вас прописан путь к нему!!! Файл по умолчанию должен находиться в папке "Datasources". Попробуйте в коде указать другой путь и переместить туда файл *.csv. А так же проверьте расширение файла должно быть *.csv, а не например *.cvs. Если пишет ошибку посмотрите что она означает.
В хроме скрипты не поддерживаются.

ошибку никакую не пишет, файл лежит в папке по умолчанию, с расширением все нормально... переместить пробовала, "SET !DATASOURCE_DELIMITER" писала и ";" между записями в файле ставила, никакого результата не дало. в хроме, повторюсь, все отлично работает(


П.С.:
нашла косяк :) ему первая строчка не нравилась, где написано "ПОЧТА" и "ПАРОЛЬ" %) без нее отлично пашет...

А при запуске яваскрипта сразу пишет такую ошибку:

SyntaxError: missing ; before statement, line: NaN (Error code: 991)

про нее вот что написано:

Javascript parsing/evaluation error

Пост 156

с этим разобралась, спасибо большое)))
а кто-нибудь может помочь с яваскриптами?
я уже готова даже заплатить, только помогите))))

а кто-нибудь может помочь с яваскриптами?

А что надо-то?
полезная программулька iMacros Script Code Creator Создает коды скриптов для imacros.

Edi пишет

а кто-нибудь может помочь с яваскриптами?

А что надо-то?
полезная программулька iMacros Script Code Creator Создает коды скриптов для imacros.

вот это:

Edi пишет
aleksakaulitz пишет

Если бы я еще что то понимала в этом яваскрипт))) в общем почитала форум и пришла к выводу, что проще сделать так: нужно выполнять Current.iim (где само голосование) до тех пор, пока на странице не будет найдено слово "лимит", после чего выполнить Eval.iim (где прописана авторизация)

скрытый текст
var word = prompt('Введите Искомое слово', '');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("#CurrentPERV.iim",60);
} else {
  iimPlay("#CurrentVTOR.iim",60);
  alert('Этой фразы тут нету!');
   
}


что то похожее нашла вот, пыталась исправить, но оно не хочет работать

То что вы написали это код JS, так что это должен быть файл не *.imm, а *.js, по этому его надо переименовать в файл "#Current.js" (без кавычек).
Этот код писал spy686 обратитесь к нему, он вам отредактирует под ваши нужды.
по поводу поиска по словам и картинкам гляньте тут
Ниже приведен код с того сайта для поиска слова на вебстранице.
Нужно создать файл "MySearch.iim" c кодом который  см. ниже

VERSION BUILD=6140125
URL GOTO=http://www.omusicawards.com/user/aleksakaulitz
TAG POS=1 TYPE=* ATTR=TXT:*лимит* EXTRACT=TXT

второй файл c вашим кодом авторизации Eval.iim и третий "#Current.js" в котором код приведенный ниже. Запускать нужно его.

скрытый текст

Выделить код

Код:

set iim1= CreateObject ("imacros")
iret = iim1.iimInit()
iplay = iim1.iimPlay("MySearch")
extracted_text = iim1.iimGetLastExtract(1)

'Проверить, если ключевое слово появилось на сайте.
If iplay = 1 Then
  If instr (extracted_text, "#EANF#") > 0 Then
'    MsgBox ("Извините, слово не найдено")
       iimPlay("#Current.js",60);
  Else
' здесь действие, если слово нашлось.
     iimPlay("Eval.iim",60);
'    iplay = iim1.iimPlay("MySearch")
  End If
End If

If iplay < 0 Then
  MsgBox "Ошибка!"
End If


P.S. Мог что-нибудь напутать, так что проверяйте и экспериментируйте.

скрытый текст
Пример: Мы хотим узнать, если слова "заказ завершен" на веб-странице. Если да, мы хотим, распечатать страницу. Для поиска на веб-странице теста указанной выше фразы, необходимо создать макрос,  с названием "MySearch" и который имеет только две строки:

VERSION BUILD=6140125
TAG POS=1 TYPE=* ATTR=TXT:*Order<SP>completed* EXTRACT=TXT

В этом примере мы ищем на веб-странице первую позицию (POS = 1) ключевого слова "заказ завершен". Если сообщение #EANF# возвращается, то ключевое слово не было найдено. В качестве ключевого слова является извлечение данных. Если ключевое слово было найдено, то  команда извлечения возвращает полный текст найденного HTML тегов. В нашем примере это может быть "при заказе программного обеспечения завершена".
Для печати веб-страницы создать макрос называется "print_this". Он тоже имеет только две строки:

VERSION BUILD=6140125
PRINT

Далее нужно создать скрипт например "#Current.js".

set iim1= CreateObject ("imacros")
iret = iim1.iimInit()
iplay = iim1.iimPlay("mysearch")
extracted_text = iim1.iimGetLastExtract(1)

'test if keyword appeared on website.
If iplay = 1 Then
  If instr (extracted_text, "#EANF#") > 0 Then
    MsgBox ("Sorry, keywords not found")
  Else
    iplay = iim1.iimPlay("print_this")
  End If
End If

If iplay < 0 Then
  MsgBox "Error!"
End If

Примечание: Такая же процедура может быть использована для поиска нескольких ключевых слов на странице, например, "кошка", "собака" и "мышь":
Решение заключается в использовании нескольких команд извлечения текста. Таким образом, в макросе "MySearch" пишем:

TAG POS=1 TYPE=* ATTR=TXT:*КОТ* EXTRACT=TXT
TAG POS=1 TYPE=* ATTR=TXT:*СОБАКА* EXTRACT=TXT
TAG POS=1 TYPE=* ATTR=TXT:*МЫШЬ* EXTRACT=TXT

Чтобы убедиться, что ключевое слов найдено в сценарии кода нужно изменить следующее:

iplay = iim1.iimPlay("wsh-extract-rate")
If iplay = 1 Then
  If iim1.iimGetLastExtract (1) <> "#EANF#" Then MsgBox "Ключевое слово КОТ найдено!"
  If iim1.iimGetLastExtract (2) <> "#EANF#" Then MsgBox "Ключевое слово СОБАКА найдено!"
  If iim1.iimGetLastExtract (3) <> "#EANF#" Then MsgBox "Ключевое слово МЫШЬ найдено!"
End If

тот скрипт, код которого Вы написали, он просто вообще не хочет даже запускаться( все расширения файлов нормальные, iim с js не перепутала)

вот это:

aleksakaulitz пишет

Если бы я еще что то понимала в этом яваскрипт))) в общем почитала форум и пришла к выводу, что проще сделать так: нужно выполнять Current.iim (где само голосование) до тех пор, пока на странице не будет найдено слово "лимит", после чего выполнить Eval.iim (где прописана авторизация)

скрытый текст
var word = prompt('Введите Искомое слово', '');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("#CurrentPERV.iim",60);
} else {
  iimPlay("#CurrentVTOR.iim",60);
  alert('Этой фразы тут нету!');
   
}

Edi пишет

VERSION BUILD=6140125
URL GOTO=http://www.omusicawards.com/user/aleksakaulitz
TAG POS=1 TYPE=* ATTR=TXT:"*лимит*" EXTRACT=TXT

второй файл c вашим кодом авторизации Eval.iim и третий "#Current.js" в котором код приведенный ниже. Запускать нужно его.

скрытый текст

Выделить код

Код:

set iim1= CreateObject ("imacros")
iret = iim1.iimInit()
iplay = iim1.iimPlay("MySearch")
extracted_text = iim1.iimGetLastExtract(1)

'Проверить, если ключевое слово появилось на сайте.
If iplay = 1 Then
  If instr (extracted_text, "#EANF#") > 0 Then
'    MsgBox ("Извините, слово не найдено")
       iimPlay("#Current.js",60);
  Else
' здесь действие, если слово нашлось.
     iimPlay("Eval.iim",60);
'    iplay = iim1.iimPlay("MySearch")
  End If
End If

If iplay < 0 Then
  MsgBox "Ошибка!"
End If


P.S. Мог что-нибудь напутать, так что проверяйте и экспериментируйте.

тот скрипт, код которого Вы написали, он просто вообще не хочет даже запускаться( все расширения файлов нормальные, iim с js не перепутала)

Первый код писал spy686 обратитесь к нему, он вам отредактирует под ваши нужды.
Эти коды для FF в хроме работать не будут. Проверьте мой код еще раз, у вас были неточности, я отредактировал. Работоспособность кода не проверял, так как нет возможности.

Ребята, прошу помощи.
Нужно научить максрос сохранять текст странички с помощью ctrl+a в буфер обмена, а оттуда в тхт файл на компе.

Да, и еще, как поставить таймер на повторение макроса каждые 5 минут?

a_dze пишет

Ребята, прошу помощи.
Нужно научить максрос сохранять текст странички с помощью ctrl+a в буфер обмена, а оттуда в тхт файл на компе.

Обязательно в буфер обмена (пост 25) или можно так, пост 560?

Да, и еще, как поставить таймер на повторение макроса каждые 5 минут?

устанавливаем необходимое кол-во циклов и пишем в конце кода задержку в 300 сек, что равно 5 минутам.

WAIT SECONDS=300

Как можно проверить количество строк данных в файле или провести проверку на пустую строку, если код генерится из js?
мне нужно считать данные из файла и определив количество строк соответственно столько же раз запустить скрипт (цикл for или do... while)

Edi пишет

зачем даете ссылку на NOKIA LUMIA 920?

не сочтите за рекламу:) Именно ее розыгрыш пытаюсь автоматизировать.

Доброго времени суток! кто поможет решить проблему?

работал у меня код этого макроса пока Администратор игры, не переделал рыбалку!

работало у меня по такому коду:

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
set !errorignore yes
TAB T=1
FRAME NAME="main_top"
TAG POS=1 TYPE=A ATTR=TXT:Рыбалка
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20MessBoxDivCloseRefresh();
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20ButClick('fis');
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);
TAG POS=1 TYPE=INPUT:BUTTON ATTR=VALUE:Рыбалка
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20MessBoxDivCloseRefresh();
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20ButClick('fis');
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);

мне этот код дали, тот кто давал, пропал..  сейчас я пытаюсь сам записать, и вот что я записал:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
FRAME NAME="main_top"
TAG POS=1 TYPE=A ATTR=TXT:Рыбалка
TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:bait&&VALUE:829
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=A ATTR=TXT:Закрыть
REFRESH



и у меня постоянно выбивает вот такую ошибку:

The requested content cannot be loaded.
Please try again later.

помогите

06-06-2013 23:22:17
и этот код:

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
set !errorignore yes
TAB T=1
FRAME NAME="main_top"
TAG POS=1 TYPE=A ATTR=TXT:Рыбалка
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);
TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:bait&&VALUE:829
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20MessBoxDivCloseRefresh();
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20ButClick('fis');
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);
TAG POS=1 TYPE=INPUT:BUTTON ATTR=VALUE:Рыбалка
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);
TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:bait&&VALUE:829
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20MessBoxDivCloseRefresh();
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20ButClick('fis');
TAG POS=1 TYPE=A ATTR=HREF:javascript:%20FishStart('1',0);

и этот:

Выделить код

Код:

VERSION BUILD=7300701 RECORDER=FX
set !errorignore yes
FRAME F=1
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:bait&&VALUE:829
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=A ATTR=TXT:Закрыть
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=INPUT:RADIO ATTR=NAME:bait&&VALUE:829
TAG POS=1 TYPE=A ATTR=TXT:Ловить
TAG POS=1 TYPE=A ATTR=TXT:Закрыть

всёравно выбивает эту ошибку:

The requested content cannot be loaded.
Please try again later.

06-06-2013 23:38:41
P.S. ошибка не в макросе, а в самой игре :)

Друзья помогите плз. imacros выполняет 25 повторяющихся действий а потом тормозит сильно, потом в течении 5 мин еще 2-3 и все повисло все! Есть какая нить команда чтоб очищала от перегруза.

Ребята, очень нужна помощь в написании простого макроса, но я не спец. Прошу напишите в личку, если все будет работать как надо, с меня немного денег на телефон!

electrikkz пишет

Друзья помогите плз. imacros выполняет 25 повторяющихся действий а потом тормозит сильно, потом в течении 5 мин еще 2-3 и все повисло все! Есть какая нить команда чтоб очищала от перегруза.

Сегодня вообще написал виртуальная память перегружена, включаю подкачку.

Zyuzka пишет

Ув. господа... Прошу помощи... Третий день уже мучаюсь:blush:
Есть макрос

скрытый текст
VERSION BUILD=6011206 RECORDER=CR
SET !TIMEOUT_PAGE 10
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\test_url.csv
    SET !LOOP 1
    SET !DATASOURCE_LINE {{!LOOP}}
    URL GOTO={{!COL1}}
    WAIT SECONDS=5
    TAG POS=1 TYPE=A ATTR=HREF:{{!COL2}}
    WAIT SECONDS=5
TAB CLOSE
    TAB T=1
    SET !LOOP 2
    URL GOTO={{!COL1}}
    WAIT SECONDS=5
    TAG POS=1 TYPE=A ATTR=HREF:{{!COL2}}
    WAIT SECONDS=5

Количество столбцов не меняется. Меняется только количество строк...
Как можно записать количество строк в переменную и сделать цикл

Заранее спасибо

{{!COL1}} и {{!COL2}} и есть переменные
укажите необходимое Вам кол-во циклов и выкиньте из кода то, что выделено жирным шрифтом. Должно все получиться, если я Вас правильно понял.

electrikkz пишет

Друзья помогите плз. imacros выполняет 25 повторяющихся действий а потом тормозит сильно, потом в течении 5 мин еще 2-3 и все повисло все! Есть какая нить команда чтоб очищала от перегруза.

Установите таймаут.
SET !TIMEOUT_PAGE 60

Здрасте.
Подскажите пожалуйста,как запустить 2 или 3 макроса одновременно в разных вкладках?
По очереди уже разобрался но одновременно как запустить никак не могу найти,или это невозможно?
Для рассылки рекламных сообщений на 500 и более сайтов уходит много времени,хочу разбить эту базу на три или более частей и одновременно запустить.

Спасибо за внимание.

hirurgrrr1984 пишет

Здрасте.Подскажите пожалуйста,как запустить 2 или 3 макроса одновременно в разных вкладках?По очереди уже разобрался но одновременно как запустить никак не могу найти,или это невозможно?Для рассылки рекламных сообщений на 500 и более сайтов уходит много времени,хочу разбить эту базу на три или более частей и одновременно запустить.Спасибо за внимание.

Запуск имакроса в нескольких вкладках одновременно - не возможен. Одновременный запуск имакроса возможен в разных профелях ФФ или разных браузерах.

Zyuzka пишет

Всё сделал с помощью js... Подскажите  можно ли сделать что бы скрипт сам посчитал количество строк в csv и загнал это число в переменную?

А для чего это надо - указывать кол-во строк? Вот попробуйте мой макрос, установив цикл воспроизведения 3 или более. Обязательно нажать кнопку "воспроизвести цикл". Принцип работы кода будет понятен. Потом отпишитесь, что для Вас не подходит.

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT_PAGE 20
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
CMDLINE !DATASOURCE users.csv
SET !DATASOURCE_COLUMNS 2
'Начало с первой строки, заголовков нет 
SET !LOOP 1
'Увеличение счетчика строк с помощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
'Далее непосредственно сами команды цикла'
URL GOTO={{!COL1}}
WAIT SECONDS=5
URL GOTO={{!COL2}}
WAIT SECONDS=5
BACK


содержание файла users.csv
скрытый текст
http://www.yandex.ru/, http://www.rbc.ru/
http://www.autofon.ru/, http://www.sg-motors.ru/
http://quoteforum.ru/, http://forum.mozilla-russia.org

Всем привет я новичок.А можно создать такой макрос чтоб сам заходил в гости в Мой мир к любым людям?Допустим ставишь Поиск в Мире (Таня) находит 130 тысяч Тань,может он сам заходить к каждой в гости?:(

Подскажите пожалуйста - абсолютно тормозит imacros. Не понимаю в кодинге вообще ничего.
Не выполняются элементарные вещи правильно. Допустим мне надо такое действие - зайти на пару сайтов - 3-5-7 и там на этих сайтах еще возможно зайти в разные страницы. Не получается корректно даже с 1 сайтом. Ну вот для примера - сайт - там логин прописывается сразу аддоном для логинов и паролей. Нажал запись - потом там еще зашел на 5 страниц - стоп, сохранение. И Вот почему то этот имакрос тормозит чрезвычайно - когда нормально выполняет ход записи (изначально то что записал), а иногда закрывается уже сразу после входа на втором щаге (из 5).
Не говоря уже про то, что записать макрос допустим с 5 сайтами абсолютно не реально - обычно до второго не доходит никогда (например пишет что у второго сайта неверные логин или пароль) - бредятина короче.
Может дело в версии моего браузера (последняя 21 фаерфокс сборка яндекса) или может еще в чем то?

hammill пишет

Подскажите пожалуйста - абсолютно тормозит imacros. Не понимаю в кодинге вообще ничего.
Не выполняются элементарные вещи правильно. Допустим мне надо такое действие - зайти на пару сайтов - 3-5-7 и там на этих сайтах еще возможно зайти в разные страницы. Не получается корректно даже с 1 сайтом. Ну вот для примера - сайт - там логин прописывается сразу аддоном для логинов и паролей. Нажал запись - потом там еще зашел на 5 страниц - стоп, сохранение. И Вот почему то этот имакрос тормозит чрезвычайно - когда нормально выполняет ход записи (изначально то что записал), а иногда закрывается уже сразу после входа на втором щаге (из 5).
Не говоря уже про то, что записать макрос допустим с 5 сайтами абсолютно не реально - обычно до второго не доходит никогда (например пишет что у второго сайта неверные логин или пароль) - бредятина короче.
Может дело в версии моего браузера (последняя 21 фаерфокс сборка яндекса) или может еще в чем то?

Попробуй поставить чистый фаерфокс, без всяких рюшечек от яндекса...
А вообще, если возникают проблемы, выкладывай проблемный код, в спойлер

24-06-2013 02:18:47

Ebgen пишет

Всем привет я новичок.А можно создать такой макрос чтоб сам заходил в гости в Мой мир к любым людям?Допустим ставишь Поиск в Мире (Таня) находит 130 тысяч Тань,может он сам заходить к каждой в гости?:(

можно, используй TAG POS={{!LOOP}} TYPE=A ATTR=TXT:Таня
Лень заходить на "мир", так что подгоняй под код страницы
и при запуске используй цикл (кнопка Воспр. (Цикл)) с нужным кол-вом проходов

Всем добрый день. Ни когда не занимался программированием но жизнь заставила. Очень нужна помощь в отладке следующего кода:

VERSION BUILD=8300326 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=https://by.e-konsulat.gov.pl/Uslugi/RejestracjaTerminu.aspx?IDUSLUGI=8&IDPlacowki=95
PAUSE
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:aspnetForm ATTR=ID:ctl00_cp_btnDalej
TAG POS=1 TYPE=SELECT FORM=NAME:aspnetForm ATTR=ID:ctl00_cp_cbRodzajUslugi CONTENT=%89
TAG POS=1 TYPE=SELECT FORM=NAME:aspnetForm ATTR=ID:ctl00_cp_cbDzien CONTENT=ALL(выбирает крайнюю дату)
SAVEAS TYPE=CPL FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:aspnetForm ATTR=ID:ctl00_cp_btnRezerwuj
WAIT SECONDS=10
Код в принципе работает, но для того чтобы заполнить анкету необходимо выбрать дату, из предложенного списка дат, в формате 2013-07-31. В данном случае код выбирает крайнюю дату.  Можно ли выбирать даты из списка  рандомным образом. Заранее благодарен.

KadrBBC пишет

Код в принципе работает, но для того чтобы заполнить анкету необходимо выбрать дату, из предложенного списка дат, в формате 2013-07-31. В данном случае код выбирает крайнюю дату.  Можно ли выбирать даты из списка  рандомным образом. Заранее благодарен.

Можно, но скорее всего придется для этого реализовывать код на java-script'e

при проверке скрипта:

Отсутствие свободные даты до 2013-07-31

так что конкретику, что и как можно сделать - привести не могу, если же брать образно, то можно использовать что-то типа:

SET DATA_NUMBER EVAL("Math.floor(Math.random()*5);")

где 5 в данном случае, кол-во дат в списке, после чего подставляем номер даты ( {{DATA_NUMBER}} ) и получаем рандомную дату из предложенных... ну или как-то так

и на будущее, код выкладываем в спойлере, дабы не захламлять форум

Доброго времени суток! Помогите, пожалуйста, решить проблему. Есть сайт (скрин сайта прилагается), на сайте есть база пользователей, она постоянно обновляется. Нужно сделать что бы макрос зашел в 1 профиль, потом отправил письмо, потом зашел во 2 ну и так далее. Проблема в том, что профили постоянно обновляются, но положение их на сайте всегда одинаково. Кликать по координатам не решает проблемы. За решение данной проблемы готов вознаградить материально.

скрытый текст
image.png

Уже задавали такой вопрос, но ответа не последовало. Как настроить автоматическое сохранение страниц ветки форума, например на этом форуме Mozilla?
Тоесть чтобы iMacros нажимал следующую страницу, потом сохранял ее, добавляя порядковый номер страницы в название файла, а потом переходил на следующую страницу итд.

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=1
EVENT TYPE=CLICK SELECTOR="#punviewtopic>DIV:nth-of-type(4)>DIV>P:nth-of-type(2)>A" BUTTON=0
SAVEAS TYPE=CPL FOLDER=* FILE=*
EVENT TYPE=CLICK SELECTOR="#punviewtopic>DIV:nth-of-type(4)>DIV>P:nth-of-type(2)>A:nth-of-type(3)" BUTTON=0
SAVEAS TYPE=CPL FOLDER=* FILE=*
greatnow пишет

Уже задавали такой вопрос, но ответа не последовало. Как настроить автоматическое сохранение страниц ветки форума, например на этом форуме Mozilla?
Тоесть чтобы iMacros нажимал следующую страницу, потом сохранял ее, добавляя порядковый номер страницы в название файла, а потом переходил на следующую страницу итд.

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=1
EVENT TYPE=CLICK SELECTOR="#punviewtopic>DIV:nth-of-type(4)>DIV>P:nth-of-type(2)>A" BUTTON=0
SAVEAS TYPE=CPL FOLDER=* FILE=*
EVENT TYPE=CLICK SELECTOR="#punviewtopic>DIV:nth-of-type(4)>DIV>P:nth-of-type(2)>A:nth-of-type(3)" BUTTON=0
SAVEAS TYPE=CPL FOLDER=* FILE=*

Внимательней читать нужно, ответ уже был  пост 560

InfSub

Огромное спасибо за ответ. Если Вас не затруднит более конкретно работу скрипта можно посмотреть на сайте.
https://secure.e-konsulat.gov.pl/informacyjne/placowka.aspx?IDPlacowki=134
В моем случае сайт работает только для белорусских и польских IP.  Даты появляются на сайте только раз в месяц на несколько минут и для того чтобы выхватить хотя бы одну дату приходится автоматизировать этот процесс.

KadrBBC пишет

Даты появляются на сайте только раз в месяц на несколько минут и для того чтобы выхватить хотя бы одну дату приходится автоматизировать этот процесс.

InfSub пишет

можно использовать что-то типа:
SET DATA_NUMBER EVAL("Math.floor(Math.random()*5);")
где 5 в данном случае, кол-во дат в списке, после чего подставляем номер даты ( {{DATA_NUMBER}} ) и получаем рандомную дату из предложенных... ну или как-то так

В данном случае способ описанный мной выше - вряд ли поможет т.к. даты имеют вид:

скрытый текст
<select name="ctl00$cp$cbDzien" id="ctl00_cp_cbDzien" onChange="cbDzienGodzina_onChange(this);" style="width:200px;">
                                    <option value="-1"></option>
                                    <option value="2013-07-16">2013-07-16</option>
                                    <option value="2013-07-18">2013-07-18</option>
                                    <option value="2013-07-22">2013-07-22</option>
                                    <option value="2013-07-23">2013-07-23</option>
                                    <option value="2013-07-25">2013-07-25</option>
                                    <option value="2013-07-29">2013-07-29</option>
                                    <option value="2013-07-30">2013-07-30</option>
                                    <option value="2013-08-01">2013-08-01</option>
                                    <option value="2013-08-05">2013-08-05</option>
                                    <option value="2013-08-06">2013-08-06</option>
                                    <option value="2013-08-08">2013-08-08</option>
                                    <option value="2013-08-12">2013-08-12</option>
                                    <option value="2013-08-13">2013-08-13</option>
                                    <option value="2013-08-19">2013-08-19</option>
                                    <option value="2013-08-20">2013-08-20</option>
                                    <option value="2013-08-22">2013-08-22</option>
                                    <option value="2013-08-26">2013-08-26</option>
                                    <option value="2013-08-27">2013-08-27</option>
                                    <option value="2013-08-29">2013-08-29</option>

                                </select>


Здесь, для выбора даты, инъекции java-script'a (с помощью EVAL) будет не достаточно, хотя может, конечно и получится... в общем нужно подумать, как это можно реализовать

чисто теоретически - нужно взять содержимое всего тега select и вычленить из него все значения, очистив от тега option, перемешать, добавить соли и перца по вкусу и варить до готовности =)

Edi пишет

Внимательней читать нужно, ответ уже был  пост 560

понятно, но у меня вместо нормального сохранения в контейнер mht файлы страниц сохраняются по 7байт
вот мой код:

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=1
SET !LOOP 1
TAG POS=1 TYPE=A ATTR=TXT:H*links* EXTRACT=TITLE 
SAVEAS TYPE=MHT FOLDER=D:\Download FILE={{!EXTRACT}}.mht
WAIT SECONDS=4
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=*
WAIT SECONDS=4
TAG POS=1 TYPE=A ATTR=TXT:H*links* EXTRACT=TITLE 
SAVEAS TYPE=MHT FOLDER=D:\Download FILE={{!EXTRACT}}.mht


короче ошибку пишет при Extract - #EANF#

а мне нужно чтобы сохраняло в контейнере mht + тайтл + номер *
у меня есть название топика в коде страницы:

скрытый текст

Выделить код

Код:

<title>iMacros | Форум Mozilla Россия</title>


а как написать правильно? TAG POS=1 TYPE=TITLE ATTR=TXT:* - не прокатывает.

ага, нашел
TAG POS=1 TYPE=TITLE ATTR=* EXTRACT=TXT
но теперь выводит окно и останавливает скрипт.
добавил SET !EXTRACT_TEST_POPUP NO в начале скрипта...где-то ошибка, до конца не выполняется(

весь скрипт:

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=1
SET !LOOP 1
TAG POS=1 TYPE=TITLE ATTR=* EXTRACT=TXT
SAVEAS TYPE=MHT FOLDER=D:\Internet\Download FILE={{!EXTRACT}}.mht
WAIT SECONDS=4
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:http://forum.mozilla-russia.org/viewtopic.php?id=18806&p=*
WAIT SECONDS=4
TAG POS=1 TYPE=TITLE ATTR=* EXTRACT=TXT
SAVEAS TYPE=MHT FOLDER=D:\Internet\Download FILE={{!EXTRACT}}.mht

InfSub пишет

Здесь, для выбора даты, инъекции java-script'a (с помощью EVAL) будет не достаточно, хотя может, конечно и получится... в общем нужно подумать, как это можно реализовать чисто теоретически - нужно взять содержимое всего тега select и вычленить из него все значения, очистив от тега option, перемешать, добавить соли и перца по вкусу и варить до готовности =)

Если Вашу светлую голову посетит идея, буду Вам очень благодарен.   Очень надеюсь на  помощь.

InfSub пишет

<option value="2013-08-29">2013-08-29</option>
Здесь, для выбора даты, инъекции java-script'a (с помощью EVAL) будет не достаточно, хотя может, конечно и получится... в общем нужно подумать, как это можно реализовать

чисто теоретически - нужно взять содержимое всего тега select и вычленить из него все значения, очистив от тега option, перемешать, добавить соли и перца по вкусу и варить до готовности =)

Этот пост 491 не поможет?

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/<option value="/gi,\"\");")
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/</option>/gi,\"\");")

помогите пожалуйста. на сайте украинского ж/д ( http://booking.uz.gov.ua/ ) есть функция бесплатной брони на 15 минут, для того чтобы успеть в кассу хочу сделать макрос. но не получается
7lwv.png
когда выбираю номер места (25) оно мне его выделяет синим квадратом, но не открывается меню такое как на скрине что внизу... вот такое
t21.png
как мне сделать чтобы выбиралось место , надо какой-то джава скрипт? как его делать? буду очень благодарен за помощь


скрытый текст

Выделить код

Код:

VERSION BUILD=7401110 RECORDER=FX
TAB T=1
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вибрати
WAIT SECONDS=8
TAG POS=1 TYPE=SPAN ATTR=TXT:25
URL GOTO=javascript: (сюда что то надо добавить наверное, джава скрипт...)
WAIT SECONDS=6
TAG POS=6 TYPE=INPUT:TEXT ATTR=* CONTENT=Anton
TAG POS=7 TYPE=INPUT:TEXT ATTR=* CONTENT=Paluch
TAG POS=1 TYPE=BUTTON ATTR=CLASS:complex_btn&&TXT:111,42<SP>грнВ<SP>кошик

new87 пишет

помогите пожалуйста. на сайте украинского ж/д ( http://booking.uz.gov.ua/ ) есть функция бесплатной брони на 15 минут, для того чтобы успеть в кассу хочу сделать макрос. но не получается когда выбираю номер места (25) оно мне его выделяет синим квадратом, но не открывается меню такое как на скрине что внизу... вот такоекак мне сделать чтобы выбиралось место , надо какой-то джава скрипт? как его делать? буду очень благодарен за помощь

скрытый текст
VERSION BUILD=7401110 RECORDER=FX
TAB T=1
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вибрати
WAIT SECONDS=8
TAG POS=1 TYPE=SPAN ATTR=TXT:25
URL GOTO=javascript: (сюда что то надо добавить наверное, джава скрипт...)
WAIT SECONDS=6
TAG POS=6 TYPE=INPUT:TEXT ATTR=* CONTENT=Anton
TAG POS=7 TYPE=INPUT:TEXT ATTR=* CONTENT=Paluch
TAG POS=1 TYPE=BUTTON ATTR=CLASS:complex_btn&&TXT:111,42<SP>грнВ<SP>кошик

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

TAG POS=1 TYPE=BUTTON ATTR=CLASS:complex_btn&&TXT:111,42<SP>грнВ<SP>кошик
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=CLASS:complex_btn&&TXT:111,42<SP>грнВ<SP>кошик

и вставить между ними паузу. Произойдет сначала выделение позиции, а затем нажатие объекта.
Или попробуйте изменить тип объекта на TYPE=SPAN или другой.

помогите пожалуйста как сделать так чтоб imacros работал на каждой вкладке?

kolharik пишет

помогите пожалуйста как сделать так чтоб imacros работал на каждой вкладке?

Читайте форум, об этом не раз говорилось. Если Вам лень читать, то нам лень вам объяснять.

Edi пишет
InfSub пишет

<option value="2013-08-29">2013-08-29</option>
Здесь, для выбора даты, инъекции java-script'a (с помощью EVAL) будет не достаточно, хотя может, конечно и получится... в общем нужно подумать, как это можно реализовать

чисто теоретически - нужно взять содержимое всего тега select и вычленить из него все значения, очистив от тега option, перемешать, добавить соли и перца по вкусу и варить до готовности =)

Этот пост 491 не поможет?

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/<option value="/gi,\"\");")
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/</option>/gi,\"\");")

Как вариант... пока что не было времени помозговать над проблемой...

Всем привет, помогите пожалуйста :rolleyes:

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT 30
TAB T=1
URL GOTO=(ссылка)
WAIT SECONDS=22
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=(текст)
WAIT SECONDS=9
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2


Есть txt файл с ссылками, где одна ссылка в одной строке, нужно что бы из этого txt файла бралась ссылка поочередно и вставлялась после URL GOTO= и делался переход по ссылке, это возможно сделать?

И еще, есть информация по использованию imacros и antigate?

За ранее спасибо :blush:

Protey пишет

Есть txt файл с ссылками, где одна ссылка в одной строке, нужно что бы из этого txt файла бралась ссылка поочередно и вставлялась после URL GOTO= и делался переход по ссылке, это возможно сделать?

использую txt вида:

Выделить код

Код:

"привеи как дела",
"Чернь вышла",
"двери сломались ",
"именно это",
Protey пишет

И еще, есть информация по использованию imacros и antigate?

http://apiexamples.antigate.com/phpnocurl.txt
ставишь денвер и прикручиваешь

spy686 пишет

Protey пишет: Есть txt файл с ссылками, где одна ссылка в одной строке, нужно что бы из этого txt файла бралась ссылка поочередно и вставлялась после URL GOTO= и делался переход по ссылке, это возможно сделать?использую txt вида:Выделить кодКод:"привеи как дела",
"Чернь вышла",
"двери сломались ",
"именно это",

Т.е. как я понимаю нужно в файле txt или csv прописать:

"ссылка на сайт",
"ссылка на сайт",
"ссылка на сайт",
"ссылка на сайт",
"ссылка на сайт",
и т.д.?

Прописал, а что с этим делать что я не так прописал, не грузит страницу из файла?:(
SET !ERRORIGNORE YES
SET !TIMEOUT 30
TAB T=1
CMDLINE !DATASOURCE url1.csv(или обращение к файлу url1.txt)
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

Protey пишет

Т.е. как я понимаю нужно в файле txt или csv прописать:

"ссылка на сайт",
"ссылка на сайт",
"ссылка на сайт",
"ссылка на сайт",
"ссылка на сайт",
и т.д.?

да

Protey пишет

Прописал, а что с этим делать что я не так прописал, не грузит страницу из файла?
SET !ERRORIGNORE YES
SET !TIMEOUT 30
TAB T=1
CMDLINE !DATASOURCE url1.csv(или обращение к файлу url1.txt)
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE  Z:\\home\\www\\url.txt 
SET !DATASOURCE_COLUMNS 103
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

может конфликт imacros и mozilla
ставь mozilla - 17.0 а imacros - 7.6.0.2

spy686 пишет

url1.csv

Все конечно работает, но он только одну ссылку считывает, как сделать так что бы поочередно ссылки грузило?

И еще вопрос, "DATASOURCE_COLUMNS 103" что обозначает 103, и {{!COL1}} цифра 1?

14-07-2013 16:05:35
К стати народ, мож кто задавался вопросом или уже был такой, как прописать в файле js что бы файлы iim открывались поочередно, к примеру с начала 1.iim потом 2.iim, 3.iim  и т.д., конечно же при как я понимаю, при условии, если эти 3 iim и 1 js лежали в одной папке!?:rolleyes:

К примеру что то вреде такого файла js
TIMEOUT=700
iimPlay('имя файла.iim')
TIMEOUT=700
iimPlay('имя файла.iim')
TIMEOUT=700
iimPlay('имя файла.iim')
TIMEOUT=700
iimPlay('имя файла.iim')

14-07-2013 16:29:49

spy686 пишет

может конфликт imacros и mozilla
ставь mozilla - 17.0 а imacros - 7.6.0.2

Извиняюсь, не прочитал раньше, а можно сделать так чтоб не было конфликта, то у меня mozilla - 22.0 а imacros - 8.3.0?

Protey пишет

К примеру что то вреде такого файла js
TIMEOUT=700
iimPlay('имя файла.iim')
TIMEOUT=700
iimPlay('имя файла.iim')
TIMEOUT=700
iimPlay('имя файла.iim')
TIMEOUT=700
iimPlay('имя файла.iim')

Выделить код

Код:

var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);
Protey пишет

а можно сделать так чтоб не было конфликта, то у меня mozilla - 22.0 а imacros - 8.3.0?

хз, найди старые версии, и будет тебе счастье

spy686 пишет
Выделить код

Код:

var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);

хз, найди старые версии, и будет тебе счастье

Ясно, спс, я как понимаю "T_T(папка)/T_T2.iim(файл)",60(таймаут)?

Protey пишет

Ясно, спс, я как понимаю "T_T(папка)/T_T2.iim(файл)",60(таймаут)?

ага

:rolleyes: извините если надоел, НО возник вопрос, как сделать что ВК через Макрос грузились фотографии(файлы) на стену?
Очень нужно, помогите пожалуйста :|

И еще, можно как нибудь организовать через макрос, копирование текста с сайта и сохранение его в txt?

Protey пишет

И еще, можно как нибудь организовать через макрос, копирование текста с сайта и сохранение его в txt?

функция extract помоему

spy686 пишет

extract

ясн, ща по гуглим)
а по поводу загрузки фото на стену ВК, не знаешь?

InfSub пишет
Edi пишет
InfSub пишет

<option value="2013-08-29">2013-08-29</option>
Здесь, для выбора даты, инъекции java-script'a (с помощью EVAL) будет не достаточно, хотя может, конечно и получится... в общем нужно подумать, как это можно реализовать

чисто теоретически - нужно взять содержимое всего тега select и вычленить из него все значения, очистив от тега option, перемешать, добавить соли и перца по вкусу и варить до готовности =)

Этот пост 491 не поможет?

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/<option value="/gi,\"\");")
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/</option>/gi,\"\");")

Как вариант... пока что не было времени помозговать над проблемой...

Готов премировать за решение данного вопроса.

Блин я себе уже мозг взорвал как это сделать :dumb:
Помогите плиз, нужно что бы в группу, на стену вконтакте загружалась определенное фото

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=ID:photos_choose_upload_area_label
TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\Users\Protey\Desktop\getImage.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Это "TAG POS=1 TYPE=SPAN ATTR=ID:photos_choose_upload_area_label" как я понимаю команда нажатия "Фотографию" и контекстного меню, а дальше открывает окно "Прикрепление фотографии", где для загрузки фото нужно нажать "Загрузить фотографию", но у меня после "TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\Users\Protey\Desktop\getImage.jpg" ничего не происходит :(

По гуглил, но ничего похожего не нашел, помогите пожалуйста :rolleyes:

15-07-2013 19:45:52

spy686 пишет

функция extract помоему

Я наверное не правильно выразился, мне надо, к примеру при записи в макросе
1 Заходишь на Googl_com
2 Вбиваешь в поиск определенное слово для поиска
3 Вот с этого момента мне надо чтоб из 10ки выдачи поиска копировались ссылки 1 выдачи, 2 выдачи, 3...и т.д

Забыл...надо еще чтоб эти ссылки копировал в текстовый файл

Protey пишет

Я наверное не правильно выразился, мне надо, к примеру при записи в макросе
1 Заходишь на Googl_com
2 Вбиваешь в поиск определенное слово для поиска
3 Вот с этого момента мне надо чтоб из 10ки выдачи поиска копировались ссылки 1 выдачи, 2 выдачи, 3...и т.д
Забыл...надо еще чтоб эти ссылки копировал в текстовый файл

с этим разобрался, просто тупо использовал функцию X Y и код

Выделить код

Код:

SET !EXTRACT NULL
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=x:\папка FILE=url.csv

Осталось разобраться с загрузкой фото на стену вконтакте, а как это сделать не могу понять, пробовал через функцию x y, даже фото загружал в свой фотоальбом и уже от туда вставить фото через функцию x y...все без успешно :(
Помогите пожалуйста разобраться :(

Protey пишет

Protey пишет:

Я наверное не правильно выразился, мне надо, к примеру при записи в макросе
1 Заходишь на Googl_com
2 Вбиваешь в поиск определенное слово для поиска
3 Вот с этого момента мне надо чтоб из 10ки выдачи поиска копировались ссылки 1 выдачи, 2 выдачи, 3...и т.д
Забыл...надо еще чтоб эти ссылки копировал в текстовый файл
с этим разобрался, просто тупо использовал функцию X Y и код

можно extract прикрутить, вот пример

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Показать<SP>в<SP>Твиттере EXTRACT=HREF
spy686 пишет

TAG POS=1 TYPE=A ATTR=TXT:Показать<SP>в<SP>Твиттере EXTRACT=HREF

Объясни, что этот пример делает и вместо чего его в заменить коде?:

Выделить код

Код:

SET !EXTRACT NULL
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=x:\папка FILE=url.csv

К стати, на счет vk_com, по поводу вставки/загрузки фото на стену, не сталкивался с таким кодом?

Народ, неужели никто не сталкивался с проблемой загрузки фото на стену вконтакте? :cry:
Помогите пожалуйста решить ее(

При коде:

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=ID:photos_choose_upload_area_label
TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Выдает постоянно ошибку "RuntimeError: Error loading page http://cs413218.vk.com/upload.php, line 4 (Error code: -933)"  :(

или в коде HTML

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=CLASS:photos_choose_upload_area_label&&ID:photos_choose_upload_area_label&&TXT:Загрузить<SP>фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post&&TXT:Отправить

Тут "TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\13.jpg" открывается окно загрузки и все, больше ничего не происходит :(

Protey пишет

Народ, неужели никто не сталкивался с проблемой загрузки фото на стену вконтакте? :cry:
Помогите пожалуйста решить ее((

Выделить код

Код:

URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
InfSub пишет

URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

А можно по подробнее, что к чему, а то попробовал разными способами и нифига?

Так ничего не происходит

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Так то же

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=ID:photos_choose_upload_area_label
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

и так

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

и так

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://vk.com/id123456789
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=CLASS:photos_choose_upload_area_label&&ID:photos_choose_upload_area_label&&TXT:Загрузить<SP>фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post&&TXT:Отправить

везде открывается окно загрузки и все...

Protey пишет

везде открывается окно загрузки и все...

файл C:\13.jpg - физически существует?
Вы на свою доску добавляете фото?
Какой браузер для этого используете?
Какую версию imacros? судя по версии у Вас в скриптах у Вас устаревшая версия - обновите

Попробуйте так:

Выделить код

Код:

URL GOTO=http://vk.com/id123456789
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

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

Здравствуйте. Мне нужно сделать чтобы при нахождении определенного текста на странице выполнялось одно действие, а если текст не найден, то вкладка закрывалась бы.
Пробовал примерно как тут http://stackoverflow.com/questions/14792812/imacros-stuggling но ничего не вышло, выполняется только ложное условие, т.е. закрывается вкладка.
Помогите, кто разбирается в js, я его совсем не знаю. Какие тут ошибки в коде или вообще не так нужно?



Выделить код

Код:

//declaring the macro
var macroIronMaiden;


macroIronMaiden =  "CODE:";
macroIronMaiden +=  "SET !ERRORIGNORE YES"+"\n";


(((действие с извлечением слова "ТЕКСТ")))


{
iimPlay(macroIronMaiden)


var extract=iimGetLastExtract();


if(extract.toLowerCase()=="ТЕКСТ")
{

var macro;
macro =  "CODE:";
macro +=  "SET !ERRORIGNORE YES"+"\n";

(((Тут действие которое выполнится в случае нахождения текста)))


iimPlay(macro)
}


else
{
var macrox;
macrox +=  "SET !ERRORIGNORE YES"+"\n";
macrox =  "CODE:";
macrox +=  "Tab t=1" + "\n"; 
macrox +=  "tab close" + "\n"; 


iimPlay(macrox)
}

}
InfSub пишет

файл C:\13.jpg - физически существует?
Вы на свою доску добавляете фото?
Какой браузер для этого используете?
Какую версию imacros? судя по версии у Вас в скриптах у Вас устаревшая версия - обновите

Браузер FireFox 22.0
13.jpg - физически существует, только путь другой, но я его проставляю, он в папке iMacros\Datasources
на свою стену
обновил макрос до последней

Выделить код

Код:

URL GOTO=http://vk.com/id123456789
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Спасибо, тебе добрый человек, сработало!:rock:

Только я еще в начале добавил

Выделить код

Код:

SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO

18-07-2013 10:10:15

InfSub пишет

Еще раз спасибо!

Пока такой кураж...)
Случайно не сталкивался с макросом что бы постить в комментариях, в постах людей Google+?:angel:

Народ, помогите пожалуйста разобраться с кодом, не пойму что не так :(
Переходит по ссылке, построчно (в каждой строке новая ссылка) из файла url1.csv нормально, а вот когда уже начинает писать пост, который в файле DB.csv (в котором то же посты построчно, написанные через "<SP> и <BR>",) постица ссылка из файла url1.csv, а не пост из файла DB.csv :whiteflag:

раньше использовал макрос 7.6.0.2, работало нормально с другим файлом, а тут.......одно разочарование, даже переходил обратно на 7.6.0.2, даже это не спасло :|

С кодом, разобрался, вроде бы, просто тупо, посты из DB.csv, заменил в файле с которым нормально работал, но согласитесь, это что-то как-то не то.......:cool:

InfSub

у тебя случайно нету примерного и рабочего js скрипта который бы запускал файлы imm по очередно из одной папки, под последнюю версию аймакрос?

А то который дал spy686, чет не работает, по моему на s_n ругается, а из-за чего ругается не пойму, т.к. не волоку в ява скриптах :(

Выделить код

Код:

var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);
Protey пишет

InfSub
у тебя случайно нету примерного и рабочего js скрипта который бы запускал файлы imm по очередно из одной папки, под последнюю версию аймакрос?

Выделить код

Код:

var i, retcode;
var report;
var macrolist = new Array();

/* Macros  */
macrolist.push("test/1macros.iim");
macrolist.push("test/two.iim");
macrolist.push("test/three_macros.iim");



iimDisplay("Start Self Test");

report  =  "Self-Test Report\n\n";

for (i = 0; i < macrolist.length; i++) {
    iimDisplay("Step "+(i+1)+" of "+macrolist.length + "\nMacro: "+macrolist[i]);
    retcode = iimPlay(macrolist[i]);
    report += macrolist[i];
    if (retcode < 0) {
        report += ": "+iimGetLastError();
    } else {
        report += ": OK";
        /* display the FIRST extracted item in report*/
        s = iimGetLastExtract(1);
        if ( s != "" )  report += ", Extract: "+s;
    }
    report += "\n";
}
iimDisplay("Test complete");

/* Print Result */
alert ( report );
Protey пишет

А то который дал spy686, чет не работает, по моему на s_n ругается, а из-за чего ругается не пойму, т.к. не волоку в ява скриптах :(

s_n, в данном случае переменная для переноса строки, ее - нужно объявить в начале скрипта и добавить ей значение

Выделить код

Код:

var s_n="\n";

или просто заменить значением и не использовать:

Выделить код

Код:

var pause = "CODE:WAIT SECONDS="+pausa1+"\n";
InfSub пишет

УМ А ЭЭЭЭ :sick: мозг взорвался :D

Выделить код

Код:

s_n, в данном случае переменная для переноса строки, ее - нужно объявить в начале скрипта и добавить ей значение

Где объявить?

Выделить код

Код:

или просто заменить значением и не использовать:

Заменить значение на что?

Прости, я действительно не волоку в ява скриптах :dumb:

Допустим у меня 4 файла iim, под именем
1.imm
2.imm
3.imm
4.imm
В одной папке, как мне сделать чтоб они запускались поочередно от 1 по 4, допустим с интервалом 5 минут?

И еще такой вопрос, пока ты добрый :rolleyes:

Есть imm файл, с TAG POS=от1 по 45, ожно js как нибудь прописать команду, что бы TAG POS= читались поочередно, т.е. чтобы файл imm не был таким массивным?

Protey пишет

Народ, помогите пожалуйста разобраться с кодом, не пойму что не так :(
Переходит по ссылке, построчно (в каждой строке новая ссылка) из файла url1.csv нормально, а вот когда уже начинает писать пост, который в файле DB.csv (в котором то же посты построчно, написанные через "<SP> и <BR>",) постица ссылка из файла url1.csv, а не пост из файла DB.csv :whiteflag:

раньше использовал макрос 7.6.0.2, работало нормально с другим файлом, а тут.......одно разочарование, даже переходил обратно на 7.6.0.2, даже это не спасло :|

С кодом, разобрался, вроде бы, просто тупо, посты из DB.csv, заменил в файле с которым нормально работал, но согласитесь, это что-то как-то не то.......:cool:

код в студию

19-07-2013 01:16:53

Protey пишет
InfSub пишет

УМ А ЭЭЭЭ :sick: мозг взорвался :D

Выделить код

Код:

s_n, в данном случае переменная для переноса строки, ее - нужно объявить в начале скрипта и добавить ей значение

Где объявить?

Выделить код

Код:

или просто заменить значением и не использовать:

Заменить значение на что?

В начало скрипта добавить var s_n="\n"; смотри ниже:

Выделить код

Код:

var s_n="\n";
var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+ pausa1 + s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);

19-07-2013 01:27:28

Protey пишет

Допустим у меня 4 файла iim, под именем
1.imm
2.imm
3.imm
4.imm
В одной папке, как мне сделать чтоб они запускались поочередно от 1 по 4, допустим с интервалом 5 минут?

Выделить код

Код:

var i, retcode;
var report;
var max_macro_files = 4;
var path = "folder_with_macros/";  // folder with macro files
var pause = "CODE:WAIT SECONDS=600"; // 5min (60sec * 5min)

for (i = 1; i <= max_macro_files; i++) {
    iimDisplay("Step "+(i)+" of "+ i + "\nMacro: "+ i + ".iim");
    retcode = iimPlay(path + i+".iim");
    iimPlay(pause);
    report += i;
    if (retcode < 0) {
        report += ": "+iimGetLastError();
    } else {
        report += ": OK";
        /* display the FIRST extracted item in report */
        s = iimGetLastExtract(1);
        if ( s != "" )  report += ", Extract: "+s;
    }
    report += "\n";
}
iimDisplay("Macros complete");

/* Print Result */
alert ( report );

19-07-2013 01:29:44

Protey пишет

И еще такой вопрос, пока ты добрый :rolleyes:

Есть imm файл, с TAG POS=от1 по 45, ожно js как нибудь прописать команду, что бы TAG POS= читались поочередно, т.е. чтобы файл imm не был таким массивным?

Если без использования js, только запуск iim, то {{!LOOP}}
TAG POS={{!LOOP}} ...

19-07-2013 01:37:42

Protey пишет

Случайно не сталкивался с макросом что бы постить в комментариях, в постах людей Google+?:angel:

не использую чужих макросов, разве что для поиска каких-либо нововведений или новых решений...
думаю, при желании - написать можно.

19-07-2013 01:40:13

KadrBBC пишет

Готов премировать за решение данного вопроса.

в личку пиши

InfSub пишет

var s_n="\n";
var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);

Вставил как та написал выше, заменив T_T/T_T1.iim на iimPlay("C:\art_fi.iim",60), пробовал на iimPlay("C:\/art_fi.iim",60), ни чего не происходит

http://SSMaker.ru/3e7208ca/ скриншот
и при нажатии Продолжит / Обновить сценарий ничего не происходит
http://SSMaker.ru/7c508ee6/ скриншот

код в студию

Код в котором тупо заменил посты из не рабочего в рабочий?

Protey пишет

var pausa1=Math.random()*(2000-300)+300;

http://SSMaker.ru/3e7208ca/ скриншот
и при нажатии Продолжит / Обновить сценарий ничего не происходит
http://SSMaker.ru/7c508ee6/ скриншот

Замени var pausa1=Math.random()*(2000-300)+300;
на
var pausa1=Math.floor(Math.random()*(2000-300)+300);

Protey пишет

Вставил как та написал выше, заменив T_T/T_T1.iim на iimPlay("C:\art_fi.iim",60)

при использовании пути от корня диска слеш дублируем т.е. пишем iimPlay("C:\\art_fi.iim",60), а не iimPlay("C:\art_fi.iim",60)

19-07-2013 02:25:36

InfSub пишет
Protey пишет

Переходит по ссылке, построчно (в каждой строке новая ссылка) из файла url1.csv нормально, а вот когда уже начинает писать пост, который в файле DB.csv (в котором то же посты построчно, написанные через "<SP> и <BR>",) постица ссылка из файла url1.csv, а не пост из файла DB.csv :whiteflag:

код в студию

Речь о коде в котором ты работаешь с двумя csv файлами

InfSub пишет

Речь о коде в котором ты работаешь с двумя csv файлами

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Прошу так же сделать в сполере и ноиндекс, если будешь скрипт код цетировать

19-07-2013 02:57:39

InfSub пишет

var pausa1=Math.floor(Math.random()*(2000-300)+300);

ааа, о, спасибо добрый человек, дай бог тебе здоровье! :whistle:

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE файл с ссылками.csv(пример) 
SET !DATASOURCE_COLUMNS 129
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE файл с постами.csv
SET !DATASOURCE_COLUMNS 129
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2
InfSub пишет
Protey пишет

Переходит по ссылке, построчно (в каждой строке новая ссылка) из файла url1.csv нормально, а вот когда уже начинает писать пост, который в файле DB.csv (в котором то же посты построчно, написанные через "<SP> и <BR>",) постица ссылка из файла url1.csv, а не пост из файла DB.csv :whiteflag:

код в студию

На вскидку - проблема в том что используются одни и те же переменные для разных файлов - сейчас лень тестить и править, чтобы заставить работать с 2я файлами - но можно все сделать в одном в 2х столбцах, тогда конфликтов быть не должно, просто используй для текста сообщений 2й столбец и переменную {{!COL2}}

InfSub пишет

просто используй для текста сообщений 2й столбец и переменную {{!COL2}}

Это типо тупо?

1 сталбец           2 сталбец
ссылка                 пост
ссылка                 пост
ссылка                 пост
ссылка                 пост

Можно без таблицы, просто я notepad++, использую для созданий файлов?

Protey пишет
InfSub пишет

просто используй для текста сообщений 2й столбец и переменную {{!COL2}}

Это типо тупо?

1 сталбец           2 сталбец
ссылка                 пост
ссылка                 пост
ссылка                 пост
ссылка                 пост

Можно без таблицы, просто я notepad++, использую для созданий файлов?

можно, только укажи что является разделителем, к примеру если разделитель ; то в начале пропиши SET !DATASOURCE_DELIMITER ;

19-07-2013 03:11:37
Соответственно - разделитель не должен встречаться в самом тексте постов или в ссылках

InfSub пишет

можно, только укажи что является разделителем, к примеру если разделитель ; то в начале пропиши SET !DATASOURCE_DELIMITER ;

Тоесть другими словами

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Где в файле 1.csv:

1 сталбец           2 сталбец
ссылка;                     пост
ссылка;                     пост
ссылка;                     пост
ссылка;                     пост

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE 1.csv 
SET !DATASOURCE_COLUMNS 129
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE 1.csv
SET !DATASOURCE_COLUMNS 129
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
Protey пишет
InfSub пишет

можно, только укажи что является разделителем, к примеру если разделитель ; то в начале пропиши SET !DATASOURCE_DELIMITER ;

Тоесть другими словами

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Где в файле 1.csv:

1 сталбец           2 сталбец
ссылка;                     пост
ссылка;                     пост
ссылка;                     пост
ссылка;                     пост

почти...
ссылка;пост
ссылка;пост
ссылка;пост

оффтопик
лан, я спать

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE 1.csv 
SET !DATASOURCE_COLUMNS 129
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE 1.csv
SET !DATASOURCE_COLUMNS 129
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
InfSub пишет

почти...
ссылка;пост
ссылка;пост
ссылка;пост

ясно, спасибо за разъяснение!

офф топик
хорошо

Protey пишет

InfSubу тебя случайно нету примерного и рабочего js скрипта который бы запускал файлы imm по очередно из одной папки, под последнюю версию аймакрос?А то который дал spy686, чет не работает, по моему на s_n ругается, а из-за чего ругается не пойму, т.к. не волоку в ява скриптах Выделить кодКод:var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);
                    Отредактировано Protey (Вчера 23:41:18)

ах да, сори.

Выделить код

Код:

var s_n = "\n";
var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);

но s_n - тут впринципе и не надо, это просто кусок с друго кода

lisiv пишет

Здравствуйте. Мне нужно сделать чтобы при нахождении определенного текста на странице выполнялось одно действие, а если текст не найден, то вкладка закрывалась бы.
Пробовал примерно как тут http://stackoverflow.com/questions/14792812/imacros-stuggling но ничего не вышло, выполняется только ложное условие, т.е. закрывается вкладка.
Помогите, кто разбирается в js, я его совсем не знаю. Какие тут ошибки в коде или вообще не так нужно?



Выделить код

Код:

//declaring the macro
var macroIronMaiden;


macroIronMaiden =  "CODE:";
macroIronMaiden +=  "SET !ERRORIGNORE YES"+"\n";


(((действие с извлечением слова "ТЕКСТ")))


{
iimPlay(macroIronMaiden)


var extract=iimGetLastExtract();


if(extract.toLowerCase()=="ТЕКСТ")
{

var macro;
macro =  "CODE:";
macro +=  "SET !ERRORIGNORE YES"+"\n";

(((Тут действие которое выполнится в случае нахождения текста)))


iimPlay(macro)
}


else
{
var macrox;
macrox +=  "SET !ERRORIGNORE YES"+"\n";
macrox =  "CODE:";
macrox +=  "Tab t=1" + "\n"; 
macrox +=  "tab close" + "\n"; 


iimPlay(macrox)
}

}

Никто не подскажет? :(

lisiv пишет
lisiv пишет

Здравствуйте. Мне нужно сделать чтобы при нахождении определенного текста на странице выполнялось одно действие, а если текст не найден, то вкладка закрывалась бы.
Пробовал примерно как тут http://stackoverflow.com/questions/14792812/imacros-stuggling но ничего не вышло, выполняется только ложное условие, т.е. закрывается вкладка.
Помогите, кто разбирается в js, я его совсем не знаю. Какие тут ошибки в коде или вообще не так нужно?



Выделить код

Код:

//declaring the macro
var macroIronMaiden;


macroIronMaiden =  "CODE:";
macroIronMaiden +=  "SET !ERRORIGNORE YES"+"\n";


(((действие с извлечением слова "ТЕКСТ")))


{
iimPlay(macroIronMaiden)


var extract=iimGetLastExtract();


if(extract.toLowerCase()=="ТЕКСТ")
{

var macro;
macro =  "CODE:";
macro +=  "SET !ERRORIGNORE YES"+"\n";

(((Тут действие которое выполнится в случае нахождения текста)))


iimPlay(macro)
}


else
{
var macrox;
macrox +=  "SET !ERRORIGNORE YES"+"\n";
macrox =  "CODE:";
macrox +=  "Tab t=1" + "\n"; 
macrox +=  "tab close" + "\n"; 


iimPlay(macrox)
}

}

Никто не подскажет? :(

скрытый текст

Выделить код

Код:

var imacros = 'CODE:';
var page 'http://....ru';
var whats_find 'ИСКОМЫЙ ТЕКСТ';
var find_result;

// ищем, есть ли искомый текст
retcode = iimPlay( imacros +'URL GOTO='+ page +'\nTAG POS=1 TYPE=TD ATTR=TXT:'+ whats_find +' EXTRACT=TXT' );
    
    if (retcode < 1) {              // an error has occured
        errtext = iimGetLastError();
        iimDisplay( 'iimPlay ERROR:\n\n'+ errtext );
    }
    else {
        find_result = iimGetLastExtract(1);
    };
    
    // если текст не найден - закрываем вскладки... CLOSEALLOTHERS
    if (find_result == '#EANF#') {
        iimPlay( imacros +'TAB CLOSEALLOTHERS' );
    }
    else { 
        // сюды вводим условие если текст найден
    };

InfSub, большое спасибо!  Только немного изменил, из-за того что несколько действий нужно было и все вышло. :)

19-07-2013 11:59:50
Теперь еще один вопрос. Можно ли воспроизвести весь скрипт какое-либо кол-во раз? Просто в нем 3 макроса выходит.

lisiv пишет

InfSub, большое спасибо!  Только немного изменил, из-за того что несколько действий нужно было и все вышло. :)

19-07-2013 11:59:50
Теперь еще один вопрос. Можно ли воспроизвести весь скрипт какое-либо кол-во раз? Просто в нем 3 макроса выходит.

Сделай цикл, который будет перебирать условия или проходы
например for (i=0;i<count.lenght;i++) {
};

spy686 пишет
Выделить код

Код:

var s_n = "\n";
var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);

но s_n - тут впринципе и не надо, это просто кусок с друго кода

Ну главное он работает, только вот я тут (2000-300)+300;, как я понимаю это время к "CODE:WAIT SECONDS=", по меньше выставил)

Такой вопрос, можно как-то сделать в коде js цикл?
К примеру:

        iimPlay("T_T/T_T1.iim",60);
        Цикл=60 раз
var pl_pause = iimPlay(pause);
        iimPlay("T_T/T_T2.iim",60);
        Цикл=60 раз

Т.е. надо что бы 1.iim и 2.iim выполнялся по 60 раз, возможно такое?

Protey пишет

Т.е. надо что бы 1.iim и 2.iim выполнялся по 60 раз, возможно такое?

for (i=1;i<=60;i++)
iimPlay("1.iim")

Protey пишет

Такой вопрос, можно как-то сделать в коде js цикл?

Выделить код

Код:

for (i=0;i<10;i++) {
тут код который надо зациклить
};
spy686 пишет

for (i=0;i<10;i++) {
тут код который надо зациклить
};

lisiv пишет

for (i=1;i<=60;i++)
iimPlay("1.iim")

Как я понимаю расстановка должна быть такая(пример)?

var s_n = "\n";
var pausa1=Math.random()*(2000-300)+300;
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;



            iimPlay("T_T/T_T1.iim",60);
for (i=1;i<=60;i++)
iimPlay("1.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("T_T/T_T2.iim",60);
for (i=1;i<=60;i++)
iimPlay("2.iim")

(i=1;i<=60;i++) тут как я понял, если цикл 60, счет пойдет от 1 (i=1) до 60 (i<=60), а i++ на что влияет?

Protey пишет

(i=1;i<=60;i++) тут как я понял, если цикл 60, счет пойдет от 1 (i=1) до 60 (i<=60), а i++ на что влияет?

i++ наращивание на единицу, т.е. в начале цикла ш=1 потом с каждым циклом прибовляеться единица, и когда i будет равно 60 тогда и закончиться цикл
в google пошарь там все есть поподробнее

spy686 пишет

i++ наращивание на единицу

понятно, спасибо за ответ)

spy686

прости что надоедаю :blush:
Помоги, еще раз, пожалуйста, не пойму в этом js не так?

Выделить код

Код:

var s_n = "\n";
var pausa1=Math.random()*(20-5)+10);
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;

            iimPlay("C:\\1.iim",60);
for (i=0;i<2;i++) {"1.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\2.iim",60);
for (i=0;i<2;i++) {"2.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\3.iim",60);
for (i=0;i<2;i++) {"3.iim"};
            iimPlay("C:\\ogout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\4.iim",60);
for (i=0;i<2;i++) {"amadeus833.iim"};
            iimPlay("C:\\logout.iim")

Делает выход из аккаунта  iimPlay("C:\\ogout.iim")
При запуске выдает ошибку "SyntaxError: missing ; before statement, line: NaN (Error code: 991)"

Protey пишет

spy686

прости что надоедаю :blush:
Помоги, еще раз, пожалуйста, не пойму в этом js не так?

Выделить код

Код:

var s_n = "\n";
var pausa1=Math.random()*(20-5)+10);
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;

            iimPlay("C:\\1.iim",60);
for (i=0;i<2;i++) {"1.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\2.iim",60);
for (i=0;i<2;i++) {"2.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\3.iim",60);
for (i=0;i<2;i++) {"3.iim"};
            iimPlay("C:\\ogout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\4.iim",60);
for (i=0;i<2;i++) {"amadeus833.iim"};
            iimPlay("C:\\logout.iim")

Делает выход из аккаунта  iimPlay("C:\\ogout.iim")
При запуске выдает ошибку "SyntaxError: missing ; before statement, line: NaN (Error code: 991)"

у тебя все проекты на своих  местах?
я понимаюу тебя тут их 9:
C:\\1.iim
C:\\2.iim
C:\\3.iim
C:\\4.iim
1.iim
2.iim
3.iim
amadeus833.iim
C:\\logout.iim

В настройках посмотри папку макросов

spy686 пишет

Protey пишет: spy686прости что надоедаю Помоги, еще раз, пожалуйста, не пойму в этом js не так?Выделить кодКод:var s_n = "\n";

Выделить код

Код:

var pausa1=Math.random()*(20-5)+10);
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;

            iimPlay("C:\\1.iim",60);
for (i=0;i<2;i++) {"1.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\2.iim",60);
for (i=0;i<2;i++) {"2.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\3.iim",60);
for (i=0;i<2;i++) {"3.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\4.iim",60);
for (i=0;i<2;i++) {"4.iim"};

iimPlay("C:\\logout.iim")Делает выход из аккаунта  iimPlay("C:\\ogout.iim")При запуске выдает ошибку "SyntaxError: missing ; before statement, line: NaN (Error code: 991)"

у тебя все проекты на своих  местах? я понимаюу тебя тут их 9:C:\\1.iimC:\\2.iimC:\\3.iimC:\\4.iim1.iim2.iim3.iimamadeus833.iimC:\\logout.iimВ настройках посмотри папку макросов

Поправил немного, 4 файла и один logout.iim, который подходит к каждому файлу, т.к. у всех файлов сайт один с кнопкой выход.
Все файлы лежат в одном пути, пример:
C:\\iMacros\Macros\\sait\\one\\1.iim
C:\\iMacros\Macros\\sait\\one\\2.iim
C:\\iMacros\Macros\\sait\\one\\3.iim
C:\\iMacros\Macros\\sait\\one\\4.iim
C:\\iMacros\Macros\\sait\\one\\logout.iim

Даже пытался по стандартному пути C:\\Users\\(Имя пользователя)\\Documents\\iMacros\\Macros\\, и рекомендованному C:\\Users\\(имя пользователя)\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\nahd6ha2.default\\iMacros\\Macros\\

Все та жа ошибка "SyntaxError: missing ; before statement, line: NaN (Error code: 991)":(

okkamas_knife пишет

возможно проблема в имени переменной - pause

Спасибо, так оно и есть
Заменил var pausa1=Math.random()*(20-5)+10); на var pausa1=Math.floor(Math.random()*(20-5)+10);

Получился рабочий код:

Выделить код

Код:

var pausa1=Math.floor(Math.random()*(20-5)+10);
    var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;

            iimPlay("C:\\1.iim",60);
for (i=0;i<2;i++) {"1.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\2.iim",60);
for (i=0;i<2;i++) {"2.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\3.iim",60);
for (i=0;i<2;i++) {"3.iim"};
            iimPlay("C:\\logout.iim")
    var pl_pause = iimPlay(pause);
            iimPlay("C:\\4.iim",60);
for (i=0;i<2;i++) {"4.iim"};

Мда :D, теперь проблема, как будто командной строки for (i=0;i<2;i++) {"1.iim"}; не существует, просто тупо идет переход от файла 1.iim до 4.iim и logout.iim при каждом переходе, без цикла:/

может кто помочь?

Так с циклом разобрался, по мне рабочий:

Выделить код

Код:

var loops
var s_n = "\n";
var pausa1=Math.floor(Math.random()*(20-5)+10);
var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;
iimPlay("C:\\Login1.iim")
for (i=1;i<100;i++){
iimSet("i",i);
iimPlay("C:\\1.iim");}
iimPlay("C:\\1.iim")
iimPlay("C:\\logout.iim")
var pl_pause = iimPlay(pause);
iimPlay("C:\\Login2.iim")
for (i=1;i<100;i++){
iimSet("i",i);
iimPlay("C:\\2.iim");}
iimPlay("C:\\2.iim")
iimPlay("C:\\logout.iim")
var pl_pause = iimPlay(pause);
iimPlay("C:\\Login3.iim")
for (i=1;i<100;i++){
iimSet("i",i);
iimPlay("C:\\3.iim");}
iimPlay("C:\\3.iim")
iimPlay("C:\\logout.iim")

Теперь мучаюсь с кодом

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !DATASOURCE_DELIMITER "~"
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE urlpost.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE urlpost.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2

Где в urlpost.csv (пример: "sait.ru"~"привет",)
Проблема в том что при воспроизведении проскакивает линию URL GOTO={{!COL1}} и линию TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
Пробовал и так SET !DATASOURCE_DELIMITER "~" и так SET !DATASOURCE_DELIMITER ~

Помогите пожалуйста разобраться :whiteflag: , а то уже все голову себе сломал :(

20-07-2013 20:02:11

InfSub пишет
Protey пишет

Случайно не сталкивался с макросом что бы постить в комментариях, в постах людей Google+?

не использую чужих макросов, разве что для поиска каких-либо нововведений или новых решений...
думаю, при желании - написать можно.

А можешь по играться, а то никак не пойму как там комментарии в постах оставлять, при записи какие-то не понятные символы для меня вылезают?:rolleyes:

Protey пишет

Где в urlpost.csv (пример: "sait.ru"~"привет",)

попробуй в txt

"sait.ru",
"привет",

Protey пишет
Выделить код

Код:

var loops
var s_n = "\n";
var pausa1=Math.floor(Math.random()*(20-5)+10);
var pause = "CODE:WAIT SECONDS="+pausa1+""+s_n;
iimPlay("C:\\Login1.iim")
for (i=1;i<100;i++){
iimSet("i",i);
iimPlay("C:\\1.iim");}
iimPlay("C:\\1.iim")
iimPlay("C:\\logout.iim")
var pl_pause = iimPlay(pause);
iimPlay("C:\\Login2.iim")
for (i=1;i<100;i++){
iimSet("i",i);
iimPlay("C:\\2.iim");}
iimPlay("C:\\2.iim")
iimPlay("C:\\logout.iim")
var pl_pause = iimPlay(pause);
iimPlay("C:\\Login3.iim")
for (i=1;i<100;i++){
iimSet("i",i);
iimPlay("C:\\3.iim");}
iimPlay("C:\\3.iim")
iimPlay("C:\\logout.iim")

Код какой-то кривой получился, он почему-то в 1...2...3....iim, по первой ссылке из файла urlpost.csv 100 раз переходит, а в файле urlpost.csv их там 100 построчно, уже мозги кипят :cry:

spy686 пишет

попробуй в txt

"sait.ru",
"привет",

При кривом коде выше, норм переходит по ссылке и постит, только вот циклит одну ссылку
сам код где норм...

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE url.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE post.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2

Какой именно код надо вставлять в команду?:

Выделить код

Код:

for (i=1;i<100;i++){
iimSet("i",i);
(СЮДА КАКОЙ КОД?);}
Protey пишет

for (i=1;i<100;i++){
iimSet("i",i);
(СЮДА КАКОЙ КОД?);}

тот который надо что бы 100 раз выполнялся

spy686 пишет

от который надо что бы 100 раз выполнялся

сам файл 1.iim

for (i=1;i<100;i++){
iimSet("i",i);
(1.iim);}

Или одну из команд в файле, если да, то какую именно?

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE url.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE post.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2

for (i=0;i<100;i++) {
iimPlay("C:\\1.iim");
};

spy686 пишет

for (i=0;i<100;i++) {
iimPlay("C:\\1.iim");
};

Т.е. вот так с командой iimSet("i",i); не правильно?
for (i=1;i<100;i++){
iimSet("i",i);
("C:\\1.iim");
};

Блин, я уже не знаю где искать ответ, почти весь инет перерыл с поиском похожей проблемой

Помогите пожалуйста, как для этого кода (код файла ниже) прописать цикл, файл называется 1.iim

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
[b]SET !DATASOURCE url.csv[/b]
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE post.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2

Что бы при каждом цикле переходил по новой ссылке из файла url.csv прописанном в коде выше, в файле 100 ссылок по строчно

команда:
for (i=0;i<100;i++) {
iimPlay("C:\\1.iim");
};

Не подходит, т.к. цикл перехода идет по одной ссылке из первой строки.

Помогите пожалуйста, всю ночь измучился с этой проблемой :sick: :( :( :(

Protey пишет

Блин, я уже не знаю где искать ответ, почти весь инет перерыл с поиском похожей проблемой Помогите пожалуйста, как для этого кода (код файла ниже) прописать цикл, файл называется 1.iimВыделить кодКод:VERSION BUILD=8300326 RECORDER=FX
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE url.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE post.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2Что бы при каждом цикле переходил по новой ссылке из файла url.csv прописанном в коде выше, в файле 100 ссылок по строчнокоманда:for (i=0;i<100;i++) {iimPlay("C:\\1.iim");};Не подходит, т.к. цикл перехода идет по одной ссылке из первой строки.Помогите пожалуйста, всю ночь измучился с этой проблемой

Выделить код

Код:

var s_n = "\n";
for (i=0;i<100;i++) {


var Ret = "CODE:VERSION BUILD=8300326 RECORDER=FX"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
.
.
.
аналогично дальше
Ret += " строчка кода "+s_n;
.
.
.

Ret += "URL GOTO={{!COL"+i+"}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
.
.
.
аналогично дальше
Ret += " строчка кода "+s_n;
.
.
.
var pl_Ret = iimPlay(Ret);
};

словами: код imm перевели в js, а 1 в COL1 заменили на переменную i, которая при последующем цикле выростает на единицу. попробуй так.

spy686

Т.е., как я понял, прописать надо так?


Выделить код

Код:

var s_n = "\n";
for (i=0;i<100;i++) {

var Ret = "CODE:VERSION BUILD=8300326 RECORDER=FX"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !EXTRACT_TEST_POPUP NO"+s_n;
Ret += "SET !DATASOURCE url.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 1"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "URL GOTO={{!COL"+i+"}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение.."+s_n;
Ret += "WAIT SECONDS=3"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !EXTRACT_TEST_POPUP NO"+s_n;
Ret += "SET !DATASOURCE post.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 2"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !ERRORCONTINUE YES"+s_n;
Ret += "EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0"+s_n;
Ret += "EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "TAG POS=1 TYPE=BUTTON ATTR=ID:send_post"+s_n;
Ret += "TAB T=1"+s_n;
}

а где прописано что он обращается к файлу 1.imm, другими словами где он берет информацию про коды var Ret = "CODE:VERSION BUILD=8300326 RECORDER=FX"+s_n; и Ret += "SET !TIMEOUT 30"+s_n;....?

не дописал

var pl_Ret = iimPlay(Ret);

обращение к файлу ненадо, ты его в js перенес, только этот код надо запустить
var pl_Ret = iimPlay(Ret);

spy686 пишет

var pl_Ret = iimPlay(Ret);

Его надо в самый верх прописать в коде js?

Выделить код

Код:

var pl_Ret = iimPlay(Ret);
var s_n = "\n";
for (i=0;i<100;i++) {

var Ret = "CODE:VERSION BUILD=8300326 RECORDER=FX"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !EXTRACT_TEST_POPUP NO"+s_n;
Ret += "SET !DATASOURCE url.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 1"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "URL GOTO={{!COL"+i+"}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение.."+s_n;
Ret += "WAIT SECONDS=3"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !EXTRACT_TEST_POPUP NO"+s_n;
Ret += "SET !DATASOURCE post.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 2"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !ERRORCONTINUE YES"+s_n;
Ret += "EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0"+s_n;
Ret += "EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "TAG POS=1 TYPE=BUTTON ATTR=ID:send_post"+s_n;
Ret += "TAB T=1"+s_n;
}

var s_n = "\n";
for (i=0;i<100;i++) {


var Ret = "CODE:VERSION BUILD=8300326 RECORDER=FX"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
.
.
.
аналогично дальше
Ret += " строчка кода "+s_n;
.
.
.

Ret += "URL GOTO={{!COL"+i+"}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
.
.
.
аналогично дальше
Ret += " строчка кода "+s_n;
.
.
.
var pl_Ret = iimPlay(Ret);
};

spy686 ты только одного не учел, при цикле по файлу, если в файле окажется меньше строк, будет ошибка, подобные вещи в оптимале писать не на определенный файл, состоящий в данном случае из 100 строк, а под любой подсунутый, чтобы скрипт сам определял, есть ли продолжение файла или уже конец, ну и игнорил случайно затесавшиеся пустые строки... ибо игнор ошибок - конечно, хорошо, но для того они и выводятся, чтобы найти где косяк.... и в случае внезапно засбоившего скрипта найти причину сразу а не гадать, что же пошло не так

Всем привет!
Подскажите, пожалуйста, как в iMacros в js-коде сохранить полученные данные с Extract в csv-файл в определенный столбец/строку?

Тут

spy686 пишет

Ret += "URL GOTO={{!COL"+i+"}}"+s_n;

просто идет счет COL, т.е. при цикле COL1, COL2, COL3, COL4....а не переход на следующею строку с ссылкой :(

InfSub

мож ты знаешь как решить мой головняк?:(

22-07-2013 01:23:04

bogdanov63 пишет

Всем привет! Подскажите, пожалуйста, как в iMacros в js-коде сохранить полученные данные с Extract в csv-файл в определенный столбец/строку?

При переходе на определенный сайт копирует ссылку из адресной строки {{!URLCURRENT}}

Код iim файла

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Не программист, но мож чем поможет код

Выделить код

Код:

SET !EXTRACT NULL
SET !ERRORIGNORE YES
ADD !EXTRACT {{!URLCURRENT}}
SET !ERRORIGNORE YES
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\(Имя пользователя)\Documents\iMacros\Downloads\ FILE=url.csv
SET !ERRORIGNORE YES
TAB CLOSE
Protey пишет

Тут

spy686 пишет

Ret += "URL GOTO={{!COL"+i+"}}"+s_n;

просто идет счет COL, т.е. при цикле COL1, COL2, COL3, COL4....а не переход на следующею строку с ссылкой :(

InfSub

мож ты знаешь как решить мой головняк?:(

лень читать все что вы тут наШкодили...
на вскидку:

скрытый текст

Выделить код

Код:

/* Created by: InfSub, Jule 22th, 2013 */
/* build: 0.1 stable                   */

/* VARS */
var s_n = '\n';
var macro = 'CODE:';
var setting_iim = '';
var setting_data = '';
var data_filename = 'url.csv';

setting_iim += 'SET !TIMEOUT 30'+ s_n;
setting_iim += 'SET !ERRORIGNORE YES'+ s_n;
setting_iim += 'SET !EXTRACT_TEST_POPUP NO'+ s_n;

setting_data += 'SET !DATASOURCE '+ data_filename + s_n;
setting_data += 'SET !DATASOURCE_COLUMNS 2'+ s_n;
setting_data += 'SET !LOOP 1'+ s_n;

/* CODE */

for (i=0;i<100;i++) {

var Ret = macro + setting_iim + setting_data;

Ret += 'SET !DATASOURCE_LINE '+ (i+1) + s_n;
Ret += 'SET !EXTRACT {{!COL2}}' + s_n;
Ret += "URL GOTO={{!COL2}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;

/* Next Operations is not tested */

Ret += "TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение.."+s_n;
Ret += "WAIT SECONDS=3"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !EXTRACT_TEST_POPUP NO"+s_n;
Ret += "SET !DATASOURCE post.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 2"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !ERRORCONTINUE YES"+s_n;
Ret += 'EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0'+s_n;
Ret += 'EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0'+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "TAG POS=1 TYPE=BUTTON ATTR=ID:send_post"+s_n;
Ret += "TAB T=1"+s_n;

iimPlay (Ret);
};

22-07-2013 02:16:09
...  опять этот бред с 2я файлами... сказал же как от него уйти с помощью одного файла еще 3 дня назад...

InfSub пишет

лень читать все что вы тут наШкодили...
на вскидку:

Блин, пожал бы тебе руку за такую неоценимую помощь, все работает как часы!

Только вот, конечно все работает, но смущает {{!COL2}}, т.к. в файле url.csv нету второй колонки

Выделить код

Код:

Ret += 'SET !DATASOURCE_LINE '+ (i+1) + s_n;
[b]Ret += 'SET !EXTRACT {{!COL2}}' + s_n;
Ret += "URL GOTO={{!COL2}}"+s_n;[/b]
Ret += "WAIT SECONDS=2"+s_n;

И еще, как правильно прописать команду в код выше (№670) для входа на сайт, ну или прописать в код сам файл LoginSait.iim с указанием пути на него?

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
URL GOTO=about:newtab
URL GOTO=http://sait.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:login ATTR=ID:quick_email CONTENT=Login
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:login ATTR=ID:quick_pass CONTENT=Password
TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button (кнопка входа)

и выхода LogOutSait.iim, не касаясь цикла переходов по ссылкам Url.cvs

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
WAIT SECONDS=2
EVENT TYPE=CLICK SELECTOR="#logout_link" BUTTON=0 (кнопка выхода)
Protey пишет

как правильно прописать команду в код

скрытый текст

Выделить код

Код:

/* Created by: InfSub, Jule 22th, 2013 */
/* build: 0.2 stable                   */

/* VARS */
var s_n = '\n';
var macro = 'CODE:';
var setting_iim = '';
var setting_data = '';
var data_filename = 'url.csv';

/* Current site info */
var site_page_login = 'http://sait.ru/';
var site_login = 'Login';
var site_passw = 'Password';

var macro_login = '';
var macro_logout = '';

setting_iim += 'SET !TIMEOUT 30'+ s_n;
setting_iim += 'SET !ERRORIGNORE YES'+ s_n;
setting_iim += 'SET !EXTRACT_TEST_POPUP NO'+ s_n;

setting_data += 'SET !DATASOURCE '+ data_filename + s_n;
setting_data += 'SET !DATASOURCE_COLUMNS 2'+ s_n;
setting_data += 'SET !LOOP 1'+ s_n;

/* CODE */

/* Login */

macro_login += macro;
macro_login += 'URL GOTO='+ site_page_login + s_n;
macro_login += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:login ATTR=ID:quick_email CONTENT='+ site_login + s_n;
macro_login += 'SET !ENCRYPTION NO'+ s_n;
macro_login += 'TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:login ATTR=ID:quick_pass CONTENT='+ site_passw + s_n;
macro_login += 'TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button';

iimPlay (macro_login);

/* Cycle */

for (i=0;i<100;i++) {

var Ret = macro + setting_iim + setting_data;

Ret += 'SET !DATASOURCE_LINE '+ (i+1) + s_n;
Ret += 'SET !EXTRACT {{!COL1}}' + s_n;
Ret += "URL GOTO={{!COL1}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;

/* Next Operations is not tested */

Ret += "TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение.."+s_n;
Ret += "WAIT SECONDS=3"+s_n;
Ret += "SET !TIMEOUT 30"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !EXTRACT_TEST_POPUP NO"+s_n;
Ret += "SET !DATASOURCE post.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 2"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "SET !ERRORIGNORE YES"+s_n;
Ret += "SET !ERRORCONTINUE YES"+s_n;
Ret += 'EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0'+s_n;
Ret += 'EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0'+s_n;
Ret += "WAIT SECONDS=2"+s_n;
Ret += "TAG POS=1 TYPE=BUTTON ATTR=ID:send_post"+s_n;
Ret += "TAB T=1"+s_n;

iimPlay (Ret);
};

/* Logout */

macro_logout += macro;
macro_logout += 'WAIT SECONDS=2'+ s_n;
macro_logout += 'EVENT TYPE=CLICK SELECTOR="#logout_link" BUTTON=0';

iimPlay (macro_logout);


22-07-2013 03:36:17

Protey пишет

все работает, но смущает {{!COL2}}, т.к. в файле url.csv нету второй колонки

все работает?! В чем тогда вопрос? Все примененные мной методы так или иначе описаны в данной ветке форума, а так же есть на просторах сети и на страницах iMacros'a

22-07-2013 03:41:23

bogdanov63 пишет

Всем привет! Подскажите, пожалуйста, как в iMacros в js-коде сохранить полученные данные с Extract в csv-файл в определенный столбец/строку?

с помощью самого имакрома это действо не для слабонервных, а с js - думаю можно написать ф-цию которая реализует сохранение файла с определенной последовательностью данных... разве что надо указать что и где должно быть... по моему - где-то тут уже публиковалась подобная функция...

Protey пишет

Только вот, конечно все работает, но смущает {{!COL2}}, т.к. в файле url.csv нету второй колонки

исправь на Col1 - я же говорю - лень было разбирать то, что Вы тут накодили... где-то мог перепутать используемый столбец... нужен 1 - поставь первый

22-07-2013 04:38:36

Protey пишет

Где в urlpost.csv (пример: "sait.ru"~"привет",)
Проблема в том что при воспроизведении проскакивает линию URL GOTO={{!COL1}} и линию TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
Пробовал и так SET !DATASOURCE_DELIMITER "~" и так SET !DATASOURCE_DELIMITER ~

А что ее ломать, вот честно, уже даже отвечать не хочется... ответ ищется за 10 секунд в гугле..... открываешь wiki по имакросу и там все написано:

!DATASOURCE_DELIMITER should be set before !DATASOURCE. It is also possible to get that variable.

перевести?

InfSub пишет

все работает?! В чем тогда вопрос? Все примененные мной методы так или иначе описаны в данной ветке форума, а так же есть на просторах сети и на страницах iMacros'a

)) Прости не хотел обидеть, просто любопытство взяло верх, по этому и спросил)

я так понимаю заменить надо на свое

Выделить код

Код:

/* Current site info */
var site_page_login '[b]адрес сайта[/b]';
var site_login = '[b]логин для входа[/b]';
var site_passw = '[b]пароль для входа[/b]';

Если да, то выдает ошибку "SyntaxError: missing ; before statement, line: 12 (Error code: 991)" т.е. ругается на var site_page_login 'http://sait.ru/';

22-07-2013 04:49:17

InfSub пишет

перевести?

Не надо)
! DATASOURCE_DELIMITER должны быть установлены до  ! источника данных.
Я и ДО и после и как только еще не устанавливал, даж без SET

Protey пишет

var site_page_login 'http://sait.ru/';

= поставь
var site_page_login = 'http://sait.ru/';

InfSub пишет

= поставь

Спасибо тебе, добрый человек, все отлично работает!

Protey пишет

Где в urlpost.csv (пример: "sait.ru"~"привет",)
Проблема в том что при воспроизведении проскакивает линию URL GOTO={{!COL1}} и линию TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
Пробовал и так SET !DATASOURCE_DELIMITER "~" и так SET !DATASOURCE_DELIMITER ~

urlpost.csv (кодировка UTF8):
http://ya.ru/~привет

скрытый текст

Выделить код

Код:

/* Created by: InfSub, Jule 22th, 2013 */
/* build: 0.2 stable                   */

/* VARS */
var s_n = '\n';
var macro = 'CODE:';
var setting_iim = '';
var setting_data = '';
var data_filename = 'urlpost.csv';

setting_iim += 'SET !TIMEOUT 30'+ s_n;
setting_iim += 'SET !ERRORIGNORE YES'+ s_n;
setting_iim += 'SET !EXTRACT_TEST_POPUP NO'+ s_n;

setting_data += 'SET !DATASOURCE_DELIMITER ~' + s_n;
setting_data += 'SET !DATASOURCE '+ data_filename + s_n;
setting_data += 'SET !DATASOURCE_COLUMNS 2'+ s_n;
setting_data += 'SET !LOOP 1'+ s_n;

/* CODE */

/* Cycle */

for (i=0;i<1;i++) {

var Ret = macro + setting_iim + setting_data;

Ret += 'SET !DATASOURCE_LINE '+ (i+1) + s_n;

Ret += 'SET !EXTRACT {{!COL1}}' + s_n;
Ret += 'PROMPT {{!EXTRACT}}' + s_n;
Ret += 'URL GOTO={{!COL1}}'+s_n;
Ret += 'WAIT SECONDS=2'+s_n;

Ret += 'SET !EXTRACT {{!COL2}}' + s_n;
Ret += 'PROMPT {{!EXTRACT}}' + s_n;
Ret += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT={{!COL2}}'+s_n;
Ret += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://yandex.ru/yandsearch ATTR=*'+s_n;
Ret += 'WAIT SECONDS=2'+s_n;


iimPlay (Ret);
};


поспорим что все работает?

InfSub пишет

поспорим что все работает?

:D со знающими людьми этого дела не спорю, да и вообще не увлекаюсь подобным :blush:

:) понял ошибку
у меня не было прописано
SET !EXTRACT {{!COL1}}
PROMPT {{!EXTRACT}}
и
SET !EXTRACT {{!COL2}}
PROMPT {{!EXTRACT}}

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

По поводу UTF-8 я в курсе, немножко по читал форум во время поиска решения проблем)

П.С. Оффтоп
спасибо еще раз за разъяснение и помощь, теперь я со спокойной душой смогу лечь спать)

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !DATASOURCE_DELIMITER "~"
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE urlpost.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
[b]SET !EXTRACT {{!COL1}}
PROMPT {{!EXTRACT}}[/b]
URL GOTO={{!COL1}}
WAIT SECONDS=2
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS=3
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE urlpost.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
SET !EXTRACT {{!COL2}}
PROMPT {{!EXTRACT}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL2}}
WAIT SECONDS=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
EVENT TYPE=CLICK SELECTOR="#add_media_menu_1>DIV>DIV>A>NOBR" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#photos_choose_row198795666_306802601_>DIV" BUTTON=0
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
TAB T=1
WAIT SECONDS=2
Protey пишет

PROMPT {{!EXTRACT}}

убери - это для тестирования вставлял - тебе же не нужны каждый раз всплывающие окна...

Как извлечь какое-то слово без пробелов в начале и в конце?   т.е. я извлекаю его из текста, а выходит " 123 "  а нужно "123", чтобы его потом в форму вставить. 

И еще можно ли брать строки из файла .csv с их удалением? Через js может...  Поочереди брать не вариант.

lisiv пишет

Как извлечь какое-то слово без пробелов в начале и в конце?   т.е. я извлекаю его из текста, а выходит " 123 "  а нужно "123", чтобы его потом в форму вставить.

Это решено.

Остается только

lisiv пишет

И еще можно ли брать строки из файла .csv с их удалением? Через js может...  Поочереди брать не вариант.

lisiv пишет

И еще можно ли брать строки из файла .csv с их удалением? Через js может...  Поочереди брать не вариант.

на форуме что-то подобное уже обсуждалось, ищите... хотя я, хоть убей не могу представить ситуацию, когда стандартный перебор - не вариант....
например, что-то подобное обсуждалось тут

22-07-2013 08:24:45

lisiv пишет

Это решено.

раз уж решил, написал бы страждущим свой вариант решения, а то ж завалят вопросами...
как я понимаю использовался eval() и js-функцию .replace()

22-07-2013 08:34:23

Protey пишет

понял ошибку

прочти внимательно, как в DATASOURCE_DELIMITER параметр передается 3b2b1a0c922307f5b471f3c620cba1b4.gif

InfSub пишет

раз уж решил, написал бы страждущим свой вариант решения, а то ж завалят вопросами...
как я понимаю использовался eval() и js-функция .replace()

Нет, без js, перемножил значение на 1 в калькуляторе http://mirurokov.ru/калькулятор-онлайн/обычный.html и извлек его, уже в форму, но это для чисел только. Подумал так сделать из-за того что еще в одном действии надо будет поделить значение извлеченное.

InfSub пишет

на форуме что-то подобное уже обсуждалось, ищите... хотя я, хоть убей не могу представить ситуацию, когда стандартный перебор - не вариант....

Тоже решено, может и примитивно - но работает :D Вот макрос для 10-ти строк в файле.

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAB CLOSEALLOTHERS

tab t=1
url goto=http://forms.ucoz.pl/
CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 2
SET !DATASOURCE_LINE 2
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 3
SET !DATASOURCE_LINE 3
TAG POS=2 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 4
SET !DATASOURCE_LINE 4
TAG POS=3 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 5
SET !DATASOURCE_LINE 5
TAG POS=4 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 6
SET !DATASOURCE_LINE 6
TAG POS=5 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 7
SET !DATASOURCE_LINE 7
TAG POS=6 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 8
SET !DATASOURCE_LINE 8
TAG POS=7 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 9
SET !DATASOURCE_LINE 9
TAG POS=8 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}


CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 10
SET !DATASOURCE_LINE 10
TAG POS=9 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

FILEDELETE NAME=C:\Users\Администратор\Documents\iMacros\Datasources\123.txt

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=2 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=3 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=4 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=5 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=6 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=7 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=8 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

TAG POS=9 TYPE=INPUT:TEXT ATTR=NAME:form EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Администратор\Documents\iMacros\Datasources FILE=123.txt

Всем привет! Подскажите, пожалуйста, как в iMacros в js-коде сохранить полученные данные с Extract в csv-файл в определенный столбец/строку?
с помощью самого имакрома это действо не для слабонервных, а с js - думаю можно написать ф-цию которая реализует сохранение файла с определенной последовательностью данных... разве что надо указать что и где должно быть... по моему - где-то тут уже публиковалась подобная функция...

а можно подробней описать или дать ссылку на эту функцию, например для этого случая:
при прохождении одного цикла я извлекаю имя  -> сохраняю в первой строке в первый столбец; после фамилию -> сохраняю в ту же строку, но уже в другой столбец. Затем проходит следующий цикл и т.д.
?
заранее спасибо!

bogdanov63 пишет

Всем привет! Подскажите, пожалуйста, как в iMacros в js-коде сохранить полученные данные с Extract в csv-файл в определенный столбец/строку?
с помощью самого имакрома это действо не для слабонервных, а с js - думаю можно написать ф-цию которая реализует сохранение файла с определенной последовательностью данных... разве что надо указать что и где должно быть... по моему - где-то тут уже публиковалась подобная функция...

а можно подробней описать или дать ссылку на эту функцию, например для этого случая:
при прохождении одного цикла я извлекаю имя  -> сохраняю в первой строке в первый столбец; после фамилию -> сохраняю в ту же строку, но уже в другой столбец. Затем проходит следующий цикл и т.д.
?
заранее спасибо!

если, функция extract используется только для извлечения данных, которые в будущем будут сохранены в файл, и ни для каких иных данных, то что мешает просто сохранить експортируемые данные

22-07-2013 14:59:05

lisiv пишет

Тоже решено, может и примитивно - но работает  Вот макрос для 10-ти строк в файле.

вообще думал, что подразумевается удалять каждое значение после того как его извлекли из файла... удалить файл - действительно проблемы не составляет в отличии от построчного удаления данных...

Выделить код

Код:

CMDLINE !DATASOURCE 123.txt
SET !DATASOURCE_COLUMNS 8
SET !DATASOURCE_LINE 8
TAG POS=7 TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

вообще говоря не вижу смысла делать так ...хм.. громоздко, не проще ли указать единожды файл, а дальше через {{!LOOP}} или просто перечислением указывать строку и {{!COL#}} вместо SET !DATASOURCE_COLUMNS 8

т.е. что-то типа:

Выделить код

Код:

CMDLINE !DATASOURCE 123.txt
SET !LOOP 1
SET !DATASOURCE_COLUMNS {{!LOOP}}
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS={{!LOOP}} TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{!COL1}}

или встроить небольшой js-script который будет генерить переменную {{!COL#}}

Выделить код

Код:

CMDLINE !DATASOURCE 123.txt
SET !LOOP 1
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}}
SET MYVARS EVAL (выполняем объединение (конкатенацию) COL и номера и получаем значение переменной, передавая его в {{MYVARS}} с помощью EVAL)
TAG POS={{!LOOP}} TYPE=INPUT:TEXT ATTR=NAME:form CONTENT={{MYVARS}}
lisiv пишет

И еще можно ли брать строки из файла .csv с их удалением? Через js может...  Поочереди брать не вариант.

занимался както этим вопросом, но так и не нашел на него ответа. гдето прочитал что мол js не работает с файлами.
у меня стоит denwer, я взял написал простенький скрипт для удаения первой строки и прикрутил его ч\з GOTO= в js , т.е. запуск этого скрипта.

InfSub пишет

вообще говоря не вижу смысла делать так ...хм.. громоздко, не проще ли указать единожды файл, а дальше через {{!LOOP}} или просто перечислением указывать строку и {{!COL#}} вместо SET !DATASOURCE_COLUMNS 8

Ну да.  Да и  с колонками я не правильно сделал, их же две только у меня. Вообщем отказался пока от полностью автоматизации, лучше вручную некоторое, так кривовато будет работать в случае ошибки. Пробовал в js  в случае ошибок действия прописывать, в if - else запутался :rolleyes:

Эм, вот сейчас в скрипт.js  дописал еще действия, и через некоторое время его не остановить кнопкой СТОП, только браузер закрывать. С чего бы это?

lisiv пишет

Эм, вот сейчас в скрипт.js  дописал еще действия, и через некоторое время его не остановить кнопкой СТОП, только браузер закрывать. С чего бы это?

глюк мозиллы, давно уже такое наблюдаю, особенно, если использовать встроенный цикл (т.к. кнопка Цикл Loop для js-скриптов не работает), да еще и памяти отжирать начинает немерянно

Последовательно если в js воспроиводить маросы то вот можно ведь? Ничего не нужно дописывать? Ошибку почему-то выдает

    SyntaxError: missing ) after argument list, line: NaN (Error code: 991)

Вот так вот пишу в макрос.js Часть кода

Выделить код

Код:

for (i=0;i<10;i++) {

iimplay(1.iim)

iimplay(2.iim)

var retcode
var find_result;
var imacros = 'CODE:';

 if (retcode < 1) {              // an error has occured
        errtext = iimGetLastError();
        iimDisplay( 'iimPlay ERROR:\n\n'+ errtext );
    }
    else {
        find_result = iimGetLastExtract(1);
    };
    
    // если текст не найден
    if (find_result == '#EANF#') {
    
iimPlay(3.iim)



iimPlay(4.iim) }

24-07-2013 10:38:53
А ну путь где макрос в ковычках ведь нужно... Теперь ошибка вот такая

SyntaxError: malformed Unicode character escape sequence, line: NaN (Error code: 991)

Заработало, путь нужно было писать c://123.iim а я писал c:/123.iim

Народ, поделитесь пожалуйста кодом, и подробнее инфой как прикрутить антигейт к макросу, можно ли для этого использовать какой нибудь бесплатный хостинг вместо денвера, если да то как?

Protey пишет

Народ, поделитесь пожалуйста кодом, и подробнее инфой как прикрутить антигейт к макросу, можно ли для этого использовать какой нибудь бесплатный хостинг вместо денвера, если да то как?

не пользовался антигейтом, но в теории указываешь путь до капчи на антигейте и все... в зависимости от того принимаются ли веб ссылки на капчи или только сами файлы - подпихиваешь ссылку или сохраняешь файл локально после чего отдаешь его антигейту

Подскажите, как можно заставить imacros работать на turboliker(сервис накрутки вк)?
на странице подписки групп в столбик идут названия групп и под ними надпись "Подписаться на ****", никак не получается заставить его кликать на эту надпись по порядку вниз. При записи выдает следующее:

Выделить код

Код:

URL GOTO=http://turboliker.ru/index.php?page=group&tab=getGroup
FRAME NAME="fXD61a43"
TAG POS=1 TYPE=DIV ATTR=ID:w_subscr_text
FRAME NAME="fXD7753a"
TAG POS=1 TYPE=DIV ATTR=ID:w_subscr_text
FRAME NAME="fXDbe734"
TAG POS=1 TYPE=DIV ATTR=ID:w_subscr_text

Не пойму, как работать с этими фреймами.. Пытался просто через

Выделить код

Код:

POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*

, ничего не выходит:(

GreatDima пишет

ничего не выходит

с турболайкером не работал, но, попробуй с опциями поиграйся, к примеру попробуй (x/y)

GreatDima пишет

никак не получается заставить его кликать на эту надпись по порядку вниз.

что мешает кликать только на верхнюю надпись после чего обновлять список?

25-07-2013 20:46:15

GreatDima пишет

Не пойму, как работать с этими фреймами.. Пытался просто через

Выделить код

Код:

POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*

, ничего не выходит:(

не верный тег - вот и не работает

GreatDima пишет

POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*

n+1 - не будет работать, надо код в JS переводить и тогда прикручивать счетчик

spy686 пишет
GreatDima пишет

POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*

n+1 - не будет работать, надо код в JS переводить и тогда прикручивать счетчик

там и без js все нормально будет работать....

25-07-2013 21:24:10
только там DIV'a  и в помине нет... еще бы оно работало =)

привет всем помогите пожалуйста как в imacros задать количество повторов? или вообще чтоб повторялся. . . .а то уже устал задавать количество повторов 20 макросам в ручнную

kolharik пишет

привет всем помогите пожалуйста как в imacros задать количество повторов? или вообще чтоб повторялся. . . .а то уже устал задавать количество повторов 20 макросам в ручнную

расшифруй, что ты имеешь ввиду... а то твой вопрос противоречит сам себе

Protey пишет

GreatDima пишет: ничего не выходитс турболайкером не работал, но, попробуй с опциями поиграйся, к примеру попробуй (x/y)
                    Отредактировано Protey (Вчера 20:41:50)

То есть использовать клики по координатам? Если так, то не вариант. Вообще я пользовался кликером раньше, вчера на сайте немного изменилась верстка и кликер стал бесполезен:)

InfSub пишет

GreatDima пишет: никак не получается заставить его кликать на эту надпись по порядку вниз.что мешает кликать только на верхнюю надпись после чего обновлять список?Добавлено Вчера 20:46:15GreatDima пишет: Не пойму, как работать с этими фреймами.. Пытался просто через Выделить кодКод:POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*, ничего не выходитне верный тег - вот и не работает
                    Отредактировано InfSub (Вчера 20:46:15)

Если обновлять каждый раз после вступления всего лишь в одну группу, то велика вероятность, что постоянно будет висеть "вы уже вступили в эту группу". Как уже сказано выше, я пользовался кликером: открывал 150 групп на странице и листая колесиком проходился кликером по им всем, вводя капчу каждые 15 заходов.
А почему тег неверный?

Выделить код

Код:

<div class="w_subscr_btn_c" id="w_subscr_text">Подписаться на <b>название группы</b> </div>
InfSub пишет

spy686 пишет: GreatDima пишет: POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*n+1 - не будет работать, надо код в JS переводить и тогда прикручивать счетчиктам и без js все нормально будет работать....Добавлено Вчера 21:24:10только там DIV'a  и в помине нет... еще бы оно работало
                    Отредактировано InfSub (Вчера 21:24:10)

Я не очень силен в html и уж точно не знаком с js, можно получить более развернутую подсказку?

div я использовал на примере addmefast.com в разделе "facebook likes", код кнопки там такой:

Выделить код

Код:

<div class="btn3">Like</div>

imacros работает отлично(жмет на кнопку с этой надписью) с такой записью:

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Like

Почему так не получается здесь не очень понимаю.

GreatDima пишет
Protey пишет

GreatDima пишет: ничего не выходитс турболайкером не работал, но, попробуй с опциями поиграйся, к примеру попробуй (x/y)
                    Отредактировано Protey (Вчера 20:41:50)

То есть использовать клики по координатам? Если так, то не вариант. Вообще я пользовался кликером раньше, вчера на сайте немного изменилась верстка и кликер стал бесполезен:)

координаты - бред, нужно только в ситуациях когда используется графическая карта или замороченные js-меню

GreatDima пишет
InfSub пишет

GreatDima пишет: никак не получается заставить его кликать на эту надпись по порядку вниз.что мешает кликать только на верхнюю надпись после чего обновлять список?Добавлено Вчера 20:46:15GreatDima пишет: Не пойму, как работать с этими фреймами.. Пытался просто через Выделить кодКод:POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*, ничего не выходитне верный тег - вот и не работает
                    Отредактировано InfSub (Вчера 20:46:15)

Если обновлять каждый раз после вступления всего лишь в одну группу, то велика вероятность, что постоянно будет висеть "вы уже вступили в эту группу". Как уже сказано выше, я пользовался кликером: открывал 150 групп на странице и листая колесиком проходился кликером по им всем, вводя капчу каждые 15 заходов.
А почему тег неверный?

Выделить код

Код:

<div class="w_subscr_btn_c" id="w_subscr_text">Подписаться на <b>название группы</b> </div>
InfSub пишет

spy686 пишет: GreatDima пишет: POS=n+1 TYPE=DIV ATTR=TXT:Подписаться<SP>на*n+1 - не будет работать, надо код в JS переводить и тогда прикручивать счетчиктам и без js все нормально будет работать....Добавлено Вчера 21:24:10только там DIV'a  и в помине нет... еще бы оно работало
                    Отредактировано InfSub (Вчера 21:24:10)

Я не очень силен в html и уж точно не знаком с js, можно получить более развернутую подсказку?

div я использовал на примере addmefast.com в разделе "facebook likes", код кнопки там такой:

Выделить код

Код:

<div class="btn3">Like</div>

imacros работает отлично(жмет на кнопку с этой надписью) с такой записью:

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Like

Почему так не получается здесь не очень понимаю.

используй кнопу ответить, а то получился такой бред при цитировании - жесть....

если ты используешь вторую ссыль - то да, код скорее всего верный, и тогда там должно быть что-то типа POS={{!LOOP}} а не POS=n+1
я просто исходил из того, чтобы код работал везде, у меня на работе вторая ссыль - работает, дома нет, в итоге делал так, чтобы работало везде, т.е. через первую ссыль с открытием окон и начатием кнопы самостоятельно

GreatDima пишет

велика вероятность, что постоянно будет висеть "вы уже вступили в эту группу".

данная вероятность точно такая же, как и при клике на все ссылки, и только потом обновления страницы, т.е. стремится к 0

GreatDima пишет

Я не очень силен в html и уж точно не знаком с js, можно получить более развернутую подсказку?

чтобы писать код на js для начала напиши рабочий код на imacros, и поверь js тебе погоды не сделает, только усложнит обработку, в данной ситуации чистый imacros - оптимальное решение

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

нашел такое:

Выделить код

Код:

01
VERSION BUILD=7401110 RECORDER=FX
02
TAB T=1
03
ONDOWNLOAD FOLDER=* FILE=image.jpg WAIT=YES
04
URL GOTO=https://my.opera.com/community/signup/
05
TAG POS=1 TYPE=IMG ATTR=HREF:*captcha* CONTENT=EVENT:SAVEPICTUREAS
06
WAIT SECONDS=5
07
TAB OPEN
08
TAB T=2
09
SET !EXTRACT_TEST_POPUP NO
10
URL GOTO=http://api.deathbycaptcha.com/decaptcher?function=picture2&amp;print_format=html
11
TAG POS=1 TYPE=INPUT ATTR=NAME:username CONTENT=<strong>deathbycaptchauser</strong>
12
TAG POS=1 TYPE=INPUT ATTR=NAME:password CONTENT=<strong>deathbycaptchapasswd</strong>
13
TAG POS=1 TYPE=INPUT ATTR=NAME:pict CONTENT=C:\Users\qaila\Documents\iMacros\Downloads\image.jpg
14
TAG POS=1 TYPE=INPUT ATTR=TYPE:submit
15
WAIT SECONDS=5
16
TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT
17
SET !VAR1 {{!EXTRACT}}
18
TAB CLOSE
19
TAB T=1
20
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:newusersignup ATTR=ID:recaptcha_response_field CONTENT={{!VAR1}}

Буду сегодня тестить:)

GreatDima пишет

Буду сегодня тестить

а для антигейта есть код под аймакрос с инструкцией как и что делать?)

Подскажите, пожалуйста, можно как нибудь в js коде

скрытый текст

Выделить код

Код:

Ret += "SET !DATASOURCE SPVK.csv"+s_n;
Ret += "SET !DATASOURCE_COLUMNS 2"+s_n;
Ret += "SET !LOOP 2"+s_n;
Ret += "SET !DATASOURCE_LINE {{!LOOP}}"+s_n;
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+s_n;


А именно, как я понимаю в строке "Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+s_n;" сделать так что бы перед или после вставки записи из файла SPVK.csv рандомно печатался какой нибудь символ или буква с пробелом <SP>?

Сделал пока что вот так

Выделить код

Код:

Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!NOW:ss}}{{!COL1}}"+s_n;

{{!NOW:ss}} - печатается с начала секунды, а потом уже текст {{!COL1}}, без пробела.

НО все же интересно как сделать что бы печатались рандомно буквы, без разницы русские или латинские

Protey
сделай массив с буквами, потом Math.floor(Math.random()*33)

скрытый текст

Выделить код

Код:

var abc = new Array ('а', 'б', 'в', 'г', 'д', ... 'ю',  'я' );
var i = Math.floor(Math.random()*33);
...
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+"<SP>"+abc[i]+s_n;


27-07-2013 22:35:43
или лучше так
скрытый текст

Выделить код

Код:

function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min + 1)) + min;
};
var i = getRandomInt(0,32);
var abc = new Array ('а', 'б', 'в', 'г', 'д', ... 'ю',  'я' );
...
Ret += "TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}"+"<SP>"+abc[i]+s_n;

InfSub
аха, ладно, спасибо, завтра по экспериментирую)

Всем привет! Возникла небольшая проблемка с созданным макросом. Макрос заходит в ОДНОКЛАССНИКИ, далее в раздел ЛЮДИ СЕЙЧАС НА САЙТЕ, меняет минимальный возраст на 15 лет, выбирает человека, открывает его главное фото, ставит оценку 5, возвращается на главную страницу и снова повторяет операцию.
Сначала я сделал сценарий так, что он открывал страницу пользователя, выбирал фото и ставил оценку, использую координаты на мониторе. Но потом заметил, что иногда сценарий не ставит оценку. Видимо, промахивается по координатам. В Record options выбрал пункт Select the best record mode automatically. Записал в этом режиме событие выставления оценки, вставил в общий сценарий. Промахиваться перестал, оценки четко выставляет. Но теперь сценарий стал останавливаться, если в аккаунте пользователя нет главного фото.  Когда работал по координатам Х и Y, сценарий просто пропускал такие аккаунты и начинал заново. Подскажите, пожалуйста, в чем здесь дело? Вот сценарий:

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://www.odnoklassniki.ru/profile/518920222680
TAG POS=1 TYPE=A ATTR=TXT:Люди<SP>сейчас<SP>на<SP>сайте
EVENT TYPE=MOUSEDOWN SELECTOR="#field_ageFrom" BUTTON=0
EVENT TYPE=MOUSEMOVE SELECTOR="#field_ageFrom" POINT="(498,202)"
EVENT TYPE=MOUSEUP POINT="(500,201)"
EVENT TYPE=CLICK SELECTOR="#field_ageFrom>OPTION:nth-of-type(2)" BUTTON=0
WAIT SECONDS=10
CLICK X=355 Y=341
CLICK X=143 Y=184
TAG POS=1 TYPE=SPAN ATTR=ONCLICK:OK.photoLayer.focusComment()&&CLASS:mark_ic<SP>mark_ic__5&&TXT:
WAIT SECONDS=20
URL GOTO=http://www.odnoklassniki.ru/profile/518920222680


Третья снизу строка выставляет оценку.

svamishivananda пишет

сценарий просто пропускал такие аккаунты и начинал заново. Подскажите, пожалуйста, в чем здесь дело?

впиши в начало сценария (после VERSION):

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

и imacros будет игнорировать ошибки (при использовании координат, ему было все равно, что в них находится, при использовании "Conventional rec. mode" - все иначе, элемент не найдет - ошибка)
и, как говорится, радуйся жизни дальше =)

Огромное спасибо! Теперь сценарий работает.

InfSub пишет
svamishivananda пишет

сценарий просто пропускал такие аккаунты и начинал заново. Подскажите, пожалуйста, в чем здесь дело?

впиши в начало сценария (после VERSION):

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

и imacros будет игнорировать ошибки (при использовании координат, ему было все равно, что в них находится, при использовании "Conventional rec. mode" - все иначе, элемент не найдет - ошибка)
и, как говорится, радуйся жизни дальше =)

Revers пишет

EVAL Эта команда позволяет... Очищать полученные данные от лишней информации, например 33 руб., "руб" можно удалить перед сохранением.

Подскажите, как EXTRACT только цифры из кода <p>Ваш новый пароль: 301947</p> , если цифры не в <strong> и уточнить через && нет возможности?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=P ATTR=TXT:Ваш<SP>новый<SP>пароль:<SP>301947 EXTRACT=TXT
'Ваш новый пароль: 301947
SAVEAS TYPE=EXTRACT FOLDER=* FILE=New_password.txt
'Нужно только
'301947


Как через EVAL задать, чтобы EXTRACT сохранял только шестизначные цифры со страницы, без текста и пробелов?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=P ATTR=TXT:Ваш<SP>новый<SP>пароль:* EXTRACT=TXT
SET NEW_PASSD_STR {{!EXTRACT}}
SET !EXTRACT NULL

SET !EXTRACT EVAL("var str = \"{{NEW_PASSD_STR}}\"; var a = Number(str.indexOf(\": \")+2); str = str.substring(a, str.lenght);")

SAVEAS TYPE=EXTRACT FOLDER=* FILE=New_password.txt

Здравствуйте, подскажите, как в этом скрипте исправить, чтоб в одноклассниках ставилась оценка 5, а не 4?

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://odnoklassniki.ru/online
'в начале скрипта устанавливается возраст людей, которым будем ставить оценки
'возраст ОТ:
SET !VAR1 22
'возраст ДО:
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=2 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=3 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=4 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=5 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=6 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=7 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=8 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=9 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=10 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=11 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=55
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=12 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=7
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=13 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=14 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=1
TAG POS=15 TYPE=IMG ATTR=SRC:http://umd*.mycdn.me/getImage?photoId=*&photoType=6
WAIT SECONDS=7
CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=3000

7annet7 пишет

как в этом скрипте исправить...

и зачем было вставлять сюда весь скрипт, если он состоит из полностью идентичных элементов?
Как я понимаю оценку ставит один из блоков CLICK X=* Y=*
предположительно последний перед закрытием элемента страницы с фото (именно предположительно, потому что у меня этот скрипт оценки не ставит вообще)
если Вы посмотрите сообщение № 709 то найдете ответ на свой вопрос

Благодарю за ответ!:) Если бы еще понять,  какие цифры надо изменить....

7annet7 пишет

скрытый текст

Выделить код

Код:

CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
CLICK X=927 Y=298
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:

на

скрытый текст

Выделить код

Код:

CLICK X=148 Y=174
WAIT SECONDS=5
CLICK X=931 Y=301
TAG POS=1 TYPE=SPAN ATTR=ONCLICK:OK.photoLayer.focusComment()&&CLASS:mark_ic<SP>mark_ic__5&&TXT:
WAIT SECONDS=5
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:


30-07-2013 20:16:56
7annet7 на каком сайте ты нашел этот скрипт? (ссылку в спойлер спряч только)

30-07-2013 20:21:48
или в личку кинь

Спасибо огромное! Мне знакомый скрипт дал) Спасибо за совет - сохраню!

Подскажите, как можно сделать проверку на появление капчи, то есть дать понять макросу, что в данный момент запрашивается капча? Допустим вступили в 15 групп ВК, появилась капча, тут макросу надо дать команду, чтобы выполнялся такой-то кусок кода.

GreatDima пишет

Подскажите, как можно сделать проверку на появление капчи, то есть дать понять макросу, что в данный момент запрашивается капча? Допустим вступили в 15 групп ВК, появилась капча, тут макросу надо дать команду, чтобы выполнялся такой-то кусок кода.

ну, например, писать js-script, который будет выполнять основной код имакроса и при добавлении в группу не появилась ли капча, если нет выполняться дальше, если появилась выполнять кусок кода предназначенный для капчи

GreatDima пишет

Допустим вступили в 15 групп ВК, появилась капча, тут макросу надо дать команду, чтобы выполнялся такой-то кусок кода.

А чего ботом не пользуешься скорее всего удобнее тебе будет? ведь для всех сервисов они есть фактически, если конечно у это сервиса нормальный онлайн... Искать вот тут http://zismo.biz/forum/41

Люди помогите пожалуйста у меня такая проблема
записываю макрос в одноклассниках, а он мне ошибку выдаёт 921

RuntimeError: element IMG specified by SRC:http://umd5.mycdn.me/getImage?photoId=509342049422&photoType=6 was not found, line: 5 (Error code: -921)

вот сам макрос

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://www.odnoklassniki.ru/profile/563548029871
TAG POS=1 TYPE=A ATTR=TXT:Люди<SP>сейчас<SP>на<SP>сайте
TAG POS=1 TYPE=IMG ATTR=SRC:http://umd5.mycdn.me/getImage?photoId=509342049422&photoType=6


я захожу к людям которые на сайте пытаюсь нажать на их профиль, чтобы они потом зашли ко мне, дабы увеличить посещаемость страницы.... а макрос просто не заходит к ним и выдаёт ошибку...

Андрей29 пишет

Люди помогите пожалуйста у меня такая проблема
записываю макрос в одноклассниках, а он мне ошибку выдаёт 921

RuntimeError: element IMG specified by SRC:http://umd5.mycdn.me/getImage?photoId=509342049422&photoType=6 was not found, line: 5 (Error code: -921)

вот сам макрос

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://www.odnoklassniki.ru/profile/563548029871
TAG POS=1 TYPE=A ATTR=TXT:Люди<SP>сейчас<SP>на<SP>сайте
TAG POS=1 TYPE=IMG ATTR=SRC:http://umd5.mycdn.me/getImage?photoId=509342049422&photoType=6


я захожу к людям которые на сайте пытаюсь нажать на их профиль, чтобы они потом зашли ко мне, дабы увеличить посещаемость страницы.... а макрос просто не заходит к ним и выдаёт ошибку...

Господа, может уже хватит проявлять свою лень?! Поиск дан для чего? Ответ есть на данной странице в посте 713, не уже ли его так сложно найти?

05-08-2013 22:24:15
:offtopic: особенно с учетом того, что в данном, конкретном случае imacros, образно говоря, уже носом ткнул в причину ошибки... осталось включить только элементарную логику

скрытый текст

Выделить код

Код:

URL GOTO=http://site.com
'REFRESH, пока не появится Добро пожаловать на портал, после продолжить выполнение *.iim
SET !REFRESH EVAL ("if text.match("Добро пожаловать "){CONTINUE};else REFRESH;")
TAG POS=1 TYPE=A ATTR=TXT:Добро<SP>пожаловать<SP>на<SP>портал*
...


EVAL только для наглядности написал. Реально, создать команду для REFRESH через EVAL или только через *.js запускать *.iim? Нужно, чтобы скрипт подождал пока придёт письмо и при появлении нужного текста, сразу продолжил работу. Как реализовать, подскажите?

Revers пишет

скрытый текст

Выделить код

Код:

URL GOTO=http://www.mailforspam.com/mail/podtverzhdenie
'REFRESH пока не появится Добро пожаловать на портал, после продолжить выполнение *.iim
SET !REFRESH EVAL ("if text.match("Добро пожаловать "){CONTINUE};else REFRESH;")
TAG POS=1 TYPE=A ATTR=TXT:Добро<SP>пожаловать<SP>на<SP>портал*
...


EVAL только для наглядности написал. Реально, создать команду для REFRESH через EVAL или только через *.js запускать *.iim? Нужно, чтобы скрипт подождал пока придёт письмо и при появлении нужного текста, сразу продолжил работу. Как реализовать, подскажите?

на сколько я знаю - на чистом имакросе пусть даже со вставками eval () это не реализовать... только через js
впрочем, может кто-то еще из форумчан подскажет, если сталкивался с подобным...

Revers пишет
InfSub пишет

на сколько я знаю - на чистом имакросе пусть даже со вставками eval () это не реализовать... только через jsвпрочем, может кто-то еще из форумчан подскажет, если сталкивался с подобным...

Нашёл кусок скрипта, который обновляет страницу, пока не пропадёт текст. Обдумываю, как сделать обратный эффект.

Большие куски кода прячем в спойлер!


Есть у меня скрипт для проверки, но его надо подгонять под твои условия - хочешь - жди... если будет время, переверстаю, ну или google тебе в помощь, там в принципе ни чего сложного нет

InfSub пишет

Большие куски кода прячем в спойлер!Есть у меня скрипт для проверки, но его надо подгонять под твои условия - хочешь - жди... если будет время, переверстаю, ну или google тебе в помощь, там в принципе ни чего сложного нет

Спрячь, если мешает!

Давай - пиши... Заказал уже одному, посмотрю, справится или нет. Гугл - это само-собой. Если будет время, перечитаю нужную информацию и вспомню несложные забытые глобальные методы.

Revers пишет

Как через EVAL задать, чтобы EXTRACT сохранял только шестизначные цифры со страницы, без текста и пробелов?

Выделить код

Код:

str.substring(25,19) // изменяя цифры, можно использовать для обрезания до и после экстрактируемого текста или цифр, с последующим сохранением. Может кому полезно будет.
Revers пишет

Спрячь, если мешает!

это правила форума

Revers пишет

Давай - пиши... Заказал уже одному

Давай без давай... заказал - значит пусть пишут =)

08-08-2013 21:20:54

Revers пишет

str.substring(25,19).... Может кому полезно будет.

если посмотришь предыдущие посты - увидишь, интересно не будет, если будет, то искать ни кто не будет, а завалят вопросами... данная комбинация помойму встречалась недавно - то ли на этой то ли на предыдущей странице

скрытый текст
В ЛС написал!

скрытый текст

InfSub пишет

это правила форума

Я подумал, что ты модератор и сам исправишь, чтобы показать как правильно. Ты часто подсказываешь - по скриптам - это very good!


скрытый текст

InfSub пишет

Давай без давай... заказал - значит пусть пишут

Тогда давай без "хочешь - жди..." и без "Давай пиши..." :lol:


скрытый текст

Revers пишет

str.substring(25,19).... Может кому полезно будет.

Это у меня такое чувство юмора.

Revers пишет

Я подумал, что ты модератор и сам исправишь, чтобы показать как правильно. Ты часто подсказываешь - по скриптам - это very good!

нет, я не модер

Revers пишет
InfSub пишет

Давай без давай... заказал - значит пусть пишут

Тогда давай без "хочешь - жди..." и без "Давай пиши..." :lol:

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

InfSub пишет

InfSub пишет:

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

Настроение у тебя хромает, а (свободное время) на самый первый мой вопрос ты быстро составил и написал. "На стороне" любят писать неделями-месяцами (не все конечно) , вот и пусть сидят без .. .. .. .. .. !

Помогите, пожалуйста, как в коде реализовать следующее:
есть раздел форума, последнее сообщение в теме "номер 1" поднимает эту тему наверх. Если появляется сообщение в теме "номер 2", тема "номер 1" уходит ниже. Как сделать, что бы при запуске макроса осуществлялась проверка, находится ли тема "номер 1" на первой позиции форума, если да, макрос останавливается и действие не требуется, если тема "номер 1" не оказывается на первой позиции, к примеру, по координатам, то происходит действие, к примеру, написание поста в теме "номер 1".

Revers
ты сообщение в ЛС прочел?

10-08-2013 14:17:11

Revers пишет

Настроение у тебя хромает

бывает, не спорю, но это уже оффтоп ))

10-08-2013 14:19:50

TuzikGrelka пишет

Помогите, пожалуйста, как в коде реализовать следующее:
есть раздел форума, последнее сообщение в теме "номер 1" поднимает эту тему наверх. Если появляется сообщение в теме "номер 2", тема "номер 1" уходит ниже. Как сделать, что бы при запуске макроса осуществлялась проверка, находится ли тема "номер 1" на первой позиции форума, если да, макрос останавливается и действие не требуется, если тема "номер 1" не оказывается на первой позиции, к примеру, по координатам, то происходит действие, к примеру, написание поста в теме "номер 1".

проверяешь управляющим java-script'ом какую позицию имеет тема, если не первую, выполняет то или иное действие, если первую, ждет энное кол-во времени и повторяет цикл заново

InfSub пишет

проверяешь управляющим java-script'ом какую позицию имеет тема, если не первую, выполняет то или иное действие, если первую, ждет энное кол-во времени и повторяет цикл заново

Спасибо, но мои познания не настолько глубоки в js, скажите, пожалуйста, как должен выглядеть код для imacros?

TuzikGrelka пишет
InfSub пишет

проверяешь управляющим java-script'ом какую позицию имеет тема, если не первую, выполняет то или иное действие, если первую, ждет энное кол-во времени и повторяет цикл заново

Спасибо, но мои познания не настолько глубоки в js, скажите, пожалуйста, как должен выглядеть код для imacros?

на чистом имакросе ты это не реализуешь
да и ответить не видя форума - не возможно

InfSub пишет

Revers ты сообщение в ЛС прочёл?

Читал.

Ребята, как вставить в HTML строки с iMacros: например мне нужно вставить код (между <script> </script>) в моей html странице, код простой вида:

Выделить код

Код:

WAIT SECONDS=1
CLICK X=1000 Y=1000

Как оптимизировать эти строки в html ? Чтобы эти команды выполнялись ?

Presto пишет

Ребята, как вставить в HTML строки с iMacros: например мне нужно вставить код (между <script> </script>) в моей html странице, код простой вида:

Выделить код

Код:

WAIT SECONDS=1
CLICK X=1000 Y=1000

Как оптимизировать эти строки в html ? Чтобы эти команды выполнялись ?

я, конечно, могу ошибаться, но по моему тебе надо для начала FAQ по iMacros'y почитать...

InfSub пишет

я, конечно, могу ошибаться, но по моему тебе надо для начала FAQ по iMacros'y почитать...

Просто код iMacros'а можно написать в JS, а JS в html. Если запускать отдельно скрипт то все работает, если же вставляю в html, то нет. Я так понимаю это невозможно сделать ? Я просто руководствуюсь логикой.

Presto пишет

Просто код iMacros'а можно написать в JS, а JS в html. Если запускать отдельно скрипт то все работает, если же вставляю в html, то нет. Я так понимаю это невозможно сделать ? Я просто руководствуюсь логикой.

js, в данном случае, просто элемент/способ/инструмент генерации imacros-скрипта, так что Вы путаете "божий дар с яичницей" и html, в данном случае, совершенно ни какого отношения, как к js, так и к imacros'y - не имеет

Вот скрипт - генератор паролей.  Как передать сгенерированный пароль аймакросу? Ну там сохранить в файл, например.  В итоге надо вставить в форму его.

скрытый текст

Выделить код

Код:

function generatePassword() {
    var length = 13,
        charset = "abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        retVal = "";
    for (var i = 0, n = charset.length; i < length; ++i) {
        retVal += charset.charAt(Math.floor(Math.random() * n));
    }
    return retVal;
}

Уважаемые !!! Скрипт 1.iim занимается поиском картинок на сайте зная их название
TAG POS=1 TYPE=IMG ATTR=SRC:http://......../157655378.png
Таких строчек куча !!!
Так вот вопрос как возможно его остановить при нахождении картинки ???
Заранее спасибо !!!

alexleg1985 пишет

Так вот вопрос как возможно его остановить при нахождении картинки ???
Заранее спасибо !!!

Посмотрите вот этот пост http://forum.mozilla-russia.org/viewtopic.php?pid=620384#p620384

Возможно вам нужно извлекать название картинки (TAG POS=1 TYPE=IMG ATTR=SRC:http://......../157655378.png EXTRACT=TXT ), если извлечется что-то, то останавливать скрипт (pause)  Ну а что вам с картинкой то нужно делать потом?

Ссылка на картинку открывает окошко приложения, следующая ссылка закрывает его мне же надо просто вовремя остановить цикл

alexleg1985 пишет

Ссылка на картинку открывает окошко приложения, следующая ссылка закрывает его мне же надо просто вовремя остановить цикл

Не совсем понял. Для чего открывает? Может открывается окошко, а в нем разные картинки появляются и вам нужно остановится на определенной?

lisiv пишет
alexleg1985 пишет

Ссылка на картинку открывает окошко приложения, следующая ссылка закрывает его мне же надо просто вовремя остановить цикл

Не совсем понял. Для чего открывает? Может открывается окошко, а в нем разные картинки появляются и вам нужно остановится на определенной?

НЕТ просто открывает нужное окошко надо его разглядеть и все, а так получается если ставишь медленный перебор -долго, а быстрый не успеваю рассмотреть.
Может в ЛС объясню подробнее - заранее спасибо !!!

alexleg1985 пишет

Может в ЛС объясню подробнее - заранее спасибо !!!

Можешь.
Т.е. эти две ссылки не всегда есть при загрузке страницы?

Если я так понял то вот. чтобы это работало надо переименовать 1.iim в 1.js


скрытый текст

Выделить код

Код:

for (i=0;i<999999;i++) {
var retcode
var find_result;
var imacros = 'CODE:';


a =  "CODE:";
a +=  "TAB CLOSEALLOTHERS" + "\n"; 
a +=  "url goto=http://site.ru"+"\n";
//извлекаем картинку открытия окна
a +=  "TAG POS=1 TYPE=IMG ATTR=SRC:http://......../157655378.png EXTRACT=TXT"+"\n";


retcode = iimPlay(a)


 if (retcode < 1) {              // an error has occured
        errtext = iimGetLastError();
        iimDisplay( 'iimPlay ERROR:\n\n'+ errtext );
    }
    else {
        find_result = iimGetLastExtract(1);
    };
    
    // если картинка открытия окна не найдена, закрываем окно
    if (find_result == '#EANF#') {
var macro;
macro =  "CODE:";
//закрываем окно (ссылка закрытия окна)
macro +=  "TAG POS=1 TYPE=IMG ATTR=SRC:http://......../157655378.png" + "\n"; 
iimPlay(macro)
 }

    else { 
    
//если найдена картинка
var b;
b =  "CODE:";
//нашли ссылку, открываем окно  
b +=  "TAG POS=1 TYPE=IMG ATTR=SRC:http://......../157655378.png"+"\n";
//пауза
b +=  "pause" + "\n"; 
iimPlay(b)
}}

alexleg1985 пишет

НЕТ просто открывает нужное окошко надо его разглядеть и все, а так получается если ставишь медленный перебор -долго, а быстрый не успеваю рассмотреть.

используй SET !REPLAYSPEED SLOW перед показом картинки
что-то типа:

скрытый текст

Выделить код

Код:

SET !REPLAYSPEED SLOW
TAG POS=1 TYPE=IMG ATTR=SRC:http://*.png
SET !REPLAYSPEED FAST


или ставь таймаут
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://*.png
WAIT SECONDS=10


14-08-2013 16:12:01
или вариант описанный lisiv


можно так же использовать способ, описанный lisiv, но встроить его в EVAL - разве что вместо паузы придется юзать WAIT SECONDS=n, где n будет равно либо 0, либо тому кол-ву времени которое тебе нужно для просмотра изображения


lisiv
что-то ты малость перемудрил со скриптом, что я тебе давал=)), зачем вот эта строка, например?

скрытый текст

Выделить код

Код:

// если картинка открытия окна не найдена
...
macro +=  "TAG POS=1 TYPE=IMG ATTR=SRC:http://......../157655378.png" + "\n";

lisiv пишет

Вот скрипт - генератор паролей.  Как передать сгенерированный пароль аймакросу? Ну там сохранить в файл, например.  В итоге надо вставить в форму его.

скрытый текст

Выделить код

Код:

function generatePassword() {
    var length = 13,
        charset = "abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        retVal = "";
    for (var i = 0, n = charset.length; i < length; ++i) {
        retVal += charset.charAt(Math.floor(Math.random() * n));
    }
    return retVal;
}

Выделить код

Код:

macro +='TAG POS=1 TYPE=INPUT FORM=ID:authorization ATTR=ID:password CONTENT='+ generatePassword() +'\n';
InfSub пишет

macro +='TAG POS=1 TYPE=INPUT FORM=ID:authorization ATTR=ID:password CONTENT='+ generatePassword() +'\n';

Спасибо :)

lisiv пишет

Спасибо :)

:offtopic:
пожалуйста :)

russya541 пишет

Всем привет! У меня такая проблема: вконтакте макрос не вставляет текст. И в одноклассниках таже проблема. Захожу к человеку, нажимаю отправить сообщения, потом пытаюсь вставить ,а оно не вставляется

скрытый текст
VERSION BUILD=8300326 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://vk.com/login.php
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:login ATTR=ID:email CONTENT=логин
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:login ATTR=ID:pass CONTENT=пороль
TAG POS=1 TYPE=BUTTON FORM=ID:login ATTR=TXT:Войти
TAG POS=1 TYPE=A ATTR=ID:head_people
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=ID:head_people
CLICK X=358 Y=540
WAIT SECONDS=2
SET !EXTRACT_TEST_POPUP NO
SET !VAR2 0
ADD !VAR2 {{!LOOP}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
TAG POS=1 TYPE=DIV ATTR=ID:mail_box_editable CONTENT=Привет,<SP>{{!VAR1}}!<BR>Данное<SP>сообщение<SP>является<SP>спамом<SP>:)<SP>
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send

вот это строчка не работает
TAG POS=1 TYPE=DIV ATTR=ID:mail_box_editable CONTENT=Привет,<SP>{{!VAR1}}!<BR>Данное<SP>сообщение<SP>является<SP>спамом<SP>:)<SP>
В чем может быть проблема?

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение
WAIT SECONDS=1
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="текст сообщения без <SP>"

Спасибо большое InfSub! Вы мне очень помогли. Все получилось. А можете еще подсказать как написать текст сообщения в одноклассниках? вставил это текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="текст сообщения без <SP>"

а он не работает в одноклассниках

15-08-2013 18:50:22
И еще вопросик.

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !VAR2 0
ADD !VAR2 {{!LOOP}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
WAIT SECONDS=1
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="Привет, {{!VAR1}}!"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send


Почему в контакте при выводе сообщения пишет не имя человека, а пишет Привет, Закрыть!
Причем тут вообще закрыть?

russya541 пишет

Спасибо большое InfSub! Вы мне очень помогли. Все получилось. А можете еще подсказать как написать текст сообщения в одноклассниках? вставил это текст

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="текст сообщения без <SP>"


а он не работает в одноклассниках

а кто сказал что он будет там работать? =))

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"

russya541 пишет

15-08-2013 18:50:22
И еще вопросик.

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !VAR2 0
ADD !VAR2 {{!LOOP}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
WAIT SECONDS=1
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="Привет, {{!VAR1}}!"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send


Почему в контакте при выводе сообщения пишет не имя человека, а пишет Привет, Закрыть!
Причем тут вообще закрыть?

то что вы извлекаете со страницы - то и вставляет, соответственно, не то извлекаете (TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT)

Спасибо большое еще раз! Как извлечь имя я так и не понял, но за одноклассники спасибо!

russya541 пишет

Спасибо большое еще раз! Как извлечь имя я так и не понял, но за одноклассники спасибо!

я и не писал как его извлечь, только указал где ошибка

я знаю что не писал, прост пробовал исправите, но ничего не получилось

15-08-2013 20:53:01
InfSub можешь дать свой скайп? хочу поговорить

russya541 пишет

я знаю что не писал, прост пробовал исправите, но ничего не получилось

15-08-2013 20:53:01
InfSub можешь дать свой скайп? хочу поговорить

отправил на почту и пм

Нород! Столкнулся с проблемой загрузки фото на стену группы вк или на стену чужой страницы. Нижеприведенный код добавляет фотки только на свою страницу .

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Здравствуйте! Скажите, пожалуйста, как сделать так, чтобы значение TAG POS= подбиралось в соответствии со значением на странице, которое постоянно меняется в случайном порядке.

Timjunm пишет

Здравствуйте! Скажите, пожалуйста, как сделать так, чтобы значение TAG POS= подбиралось в соответствии со значением на странице, которое постоянно меняется в случайном порядке.

ни как, imacros - привязывается к конкретному элементу страницы, в случае же с рандомом, может быть сможет помочь js, чтобы ответить более точно - надо видеть непосредственно саму страницу

InfSub пишет

ни как, imacros - привязывается к конкретному элементу страницы, в случае же с рандомом, может быть сможет помочь js, чтобы ответить более точно - надо видеть непосредственно саму страницу

Страницы каждый раз разные. Но код одинаковый, кроме значения POS.

Вот код:

Выделить код

Код:

TAG POS=n TYPE=SPAN ATTR=TXT:Нравится

Может быть как-то можно подставить значение POS, найдя его рядом со значением TXT по запросу: Нравится ?

19-08-2013 11:53:20

InfSub пишет

чтобы ответить более точно - надо видеть непосредственно саму страницу

Вот пример страницы:

скрытый текст
http://my.mail.ru/mail/simka5/#photo=/mail/simka5/_myphoto/12?ps=1

Timjunm пишет

...
Вот код:

Выделить код

Код:

TAG POS=n TYPE=SPAN ATTR=TXT:Нравится

Может быть как-то можно подставить значение POS, найдя его рядом со значением TXT по запросу: Нравится ?

19-08-2013 11:53:20

InfSub пишет

чтобы ответить более точно - надо видеть непосредственно саму страницу

Вот пример страницы:

скрытый текст
http://my.mail.ru/mail/simka5/#photo=/mail/simka5/_myphoto/12?ps=1

все ссылки на сторонние ресурсы прячем в спойлер

не увидел ни каких проблем в работе кода

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Нравится

работает на всех фотках данного человека и так же у 2х других людей, выбранных рандомно

InfSub пишет

не увидел ни каких проблем в работе кода

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Нравится

работает на всех фотках данного человека и так же у 2х других людей, выбранных рандомно

Вам просто повезло. Значение POS на разных страницах бывает разным. Например, у меня было  POS=2,  POS=4,  POS=6,  POS=28,  POS=3 и др.

Timjunm пишет

Вам просто повезло. Значение POS на разных страницах бывает разным. Например, у меня было  POS=2,  POS=4,  POS=6,  POS=28,  POS=3 и др.

значит пример со ссылками на страницы с

POS=2,  POS=4,  POS=6,  POS=28,  POS=3 и др.

в студию

InfSub пишет

значит пример со ссылками на страницы с

POS=2,  POS=4,  POS=6,  POS=28,  POS=3 и др.

в студию

Вот, например, страница, где POS у меня равняется 7.

скрытый текст
http://my.mail.ru/mail/soroka-andre/#photo=/mail/soroka-andre/_myphoto/3?ps=1

Timjunm

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:b-like__button-text&&TXT:Нравится*
InfSub пишет
Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:b-like__button-text&&TXT:Нравится*

Спасибо!!!

Здравствуйте! Скажите пожалуйста, а как зайти на страницы к людям вк, находящихся в "контактах" группы. Ну то есть заходишь в группу, открываешь список контактов, и как открыть эту страницу(ы)?

AntNek пишет

Здравствуйте! Скажите пожалуйста, а как зайти на страницы к людям вк, находящихся в "контактах" группы. Ну то есть заходишь в группу, открываешь список контактов, и как открыть эту страницу(ы)?

так куда конкретно вы зайти не можете? в список пользователей группы или к каждому участнику группы на страницу?

InfSub пишет

так куда конкретно вы зайти не можете? в список пользователей группы или к каждому участнику группы на страницу?

На страницу к кому-нибудь из тех людей, которые в контактах(админы, модераторы). Вообщем я захожу в группу, открываю окно "контакты" и мне надо открыть чью либо страницу, чтобы добавить его в друзья. Пробовал так, не выходит:
TAG POS=R-1 TYPE=IMG ATTR=HREF:http://*.jpg

AntNek пишет
InfSub пишет

так куда конкретно вы зайти не можете? в список пользователей группы или к каждому участнику группы на страницу?

На страницу к кому-нибудь из тех людей, которые в контактах(админы, модераторы). Вообщем я захожу в группу, открываю окно "контакты" и мне надо открыть чью либо страницу, чтобы добавить его в друзья. Пробовал так, не выходит:
TAG POS=R-1 TYPE=IMG ATTR=HREF:http://*.jpg

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=CLASS:search_item_img

не, не то. вот на фото эта страница "контакты", мне надо открыть страницу любого из этих людей и добавить в друзья.

фото
8MEu0u5d4aA.jpg

AntNek пишет

не, не то. вот на фото эта страница "контакты", мне надо открыть страницу любого из этих людей и добавить в друзья.

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Контакты
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:http*://pp.vk.me/*.jpg

24-08-2013 14:27:32

AntNek пишет

POS=R-1 TYPE=IMG

читаем FAQ по iMacros - внимательно

InfSub пишет

TAG POS=1 TYPE=DIV ATTR=TXT:Контакты
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:http*://pp.vk.me/*.jpg

все равно не получается:(

AntNek пишет
InfSub пишет

TAG POS=1 TYPE=DIV ATTR=TXT:Контакты
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:http*://pp.vk.me/*.jpg

все равно не получается:(

ссылку на группу в спойлер, в кот. не получается

ни в одной группе не получается,  вот например в этой

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

AntNek пишет

ни в одной группе не получается,  вот например в этой

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

что происходит при нажатии на изображение? переход на др. станицу, ошибка или что?

24-08-2013 15:14:09

скрытый текст

Выделить код

Код:

' в начало добавляем игнор ошибок
SET !ERRORIGNORE YES

TAG POS=1 TYPE=DIV ATTR=TXT:Контакты
' открываем 1 ссылку
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:image
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:http*.jpg
BACK
TAG POS=1 TYPE=DIV ATTR=TXT:Контакты
' открываем 2 ссылку
WAIT SECONDS=1
TAG POS=2 TYPE=DIV ATTR=CLASS:image
TAG POS=2 TYPE=IMG ATTR=SRC:http*.jpg
' и так далее

да, перекидывало, но щас все в норме:) спасибо

почему на windows 8 я не могу установить imacros? пишет на английском триал итд

kolharik пишет

почему на windows 8 я не могу установить imacros? пишет на английском триал итд

А что вы установили, это http://www.iopus.com/download/imacros/ - программу для windows - платная или http://www.iopus.com/iMacros/firefox/ приложение для фаерфокс - бесплатное.

Господа, я совсем нуб. Хочу попробовать написать, для начала, такой скрипт, который бы через определенное время отправлял сообщения во вконтакте определенному пользователю, беря текст для отправки из текстового файла (библиотеки) .

Ну вот к примеру: создал я текстовый файл с набором фраз: ( привет , как дела? что нового? чем занимаешься?...) , как мне его подключить, чтобы скрипт брал оттуда фразу сначала с первой строчки, отправлял, потом через время брал фразу со второй строчки, отправлял , и т.д ? Наведите на мысль, пожалуйста.

abbigorus
в чем именно сложность? взять данные с файла, с паузой или с чем?
о том как взять данные из файла, написано тут: http://wiki.imacros.net/!DATASOURCE, либо смотрим и  читаем форум - уже не однократно на подобные вопросы ответ был
пауза ставиться командой WAIT SECONDS=xxx , где xxx - количество секунд, которое будет ждать скрипт до следующего действия

InfSub
С задержкой все понятно, не ясно как сделать цикл и подключить текстовый файл с фразами. Вручную я сделал так :

скрытый текст
VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=https://vk.com/friends?id=XXX&section=online
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="какой-то текст1"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send
WAIT SECONDS=10
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="какой-то текст2"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send
и т.д.

То есть можно конечно каждый раз писать фрагмент кода и вставлять "какой-то текст" , но это неудобно. Проще создать список слов в текстовом файле, из которого он их будет брать за один шаг по циклу.

abbigorus пишет

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

команду {{!LOOP}} ни кто не отменял, за один проход файла будет выполняться взятие одной строки из файла и отправка ее человеку

abbigorus пишет

не ясно как сделать цикл

скрытый текст

Выделить код

Код:

SET !DATASOURCE file_name.txt
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}}
    

URL GOTO=https://vk.com/friends?id=XXX&section=online
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>сообщение
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)" CHARS="{{!COL1}}"
TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send
WAIT SECONDS=10


разве так сложно было найти что-то подобное на форуме или на http://wiki.imacros.net ?

InfSub
Спасибо, я был близок к этому коду. Теперь все  улеглось в голове:)

Доброго времени суток!!!проблемка подскажите кто может,не могу заставить вставлять текст в сообщения в одноклассники,может есть уже готовые скрипты типа ставить оценки,добавлять в друзья в группу,буду благодарен!!так у меня все выглядит дальше все перепробывал,чтот не догоняю.доходит до сообщения открывает.а текст никак не могу,(((

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение

valexm
не рекомендую использовать координаты (CLICK X=350 Y=280), не универсально, к примеру у меня ваши координаты ни куда не нажимают

как вставлять сообщения в одноклассники - уже писали недавно, воспользуйтесь поиском, хотя вряд ли это Вам поможет, кнопка отправить в одноклассниках, все равно имакросом не нажимается, есть правда способ ее обойти... но после 10 сообщений одноклассники начинают требовать ввести логин и пароль заново...

04-09-2013 13:37:24
естественно - данный комментарий основан только на моем личном опыте и знаниях, возможно, кому-то и удалось заставить данную кнопку нажиматься...

InfSub
так все у меня стабильно работает и (CLICK X=350 Y=280) тоже нее подводит,кнопка отправить нажимается я ее с записи макроса скопировал работает,как текст в окно вставить вот вопрос,пусть хоть десять сообщений все равно работы меньше,можно же прописать вход log и pass потом,ну это потом,как на этом этапе разобраться,в поиске ты прав,перерыл мама не горюй))))ничего

valexm пишет

так все у меня стабильно работает и (CLICK X=350 Y=280) тоже нее подводит,кнопка отправить нажимается я ее с записи макроса скопировал работает,как текст в окно вставить вот вопрос,пусть хоть десять сообщений все равно работы меньше,можно же прописать вход log и pass потом,ну это потом,как на этом этапе разобраться,в поиске ты прав,перерыл мама не горюй))))ничего

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

по поводу поиска - плохо искал, вот пост №752, с кодом отправки сообщения в одноклассники, нашел за 2 минуты по слову "одноклассники" ))

InfSub пишет

по поводу поиска - плохо искал, вот пост №752, с кодом отправки сообщения в одноклассники, нашел за 2 минуты по слову "одноклассники" ))

Видел я его

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"


не работает почему то,пишет

SyntaxError: unknown command: EVENT, line: 17 (Error code: -910)

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_male CONTENT=NO
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
WAIT SECONDS=10
TAG POS=1 TYPE=DIV ATTR=TXT:Отправить


поставил задержку 10 сек в этот момент напечатай что нить в окне-проверишь.

valexm пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_male CONTENT=NO
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
WAIT SECONDS=10
TAG POS=1 TYPE=DIV ATTR=TXT:Отправить


поставил задержку 10 сек в этот момент напечатай что нить в окне-проверишь.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Отправить


- пробовал этот способ и ранее - у меня он не работает, только кнопку подсвечивает и все, странно, что при этом работает у тебя... впрочем иногда такое бывает... ((

05-09-2013 00:02:31

valexm пишет

Видел я его

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"


не работает почему то,пишет

SyntaxError: unknown command: EVENT, line: 17 (Error code: -910)

приведи полностью код, с вставленным кодом отправки сообщения приведенным выше

valexm, у тебя должно было получиться вот так:

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_male CONTENT=NO
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"
TAG POS=1 TYPE=DIV ATTR=TXT:Отправить


проверь

впрочем - я, думаю, что знаю причину..

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX


версия imacros старая, она может не корректно работать с данным кодом, но видимо новая - не нажимает "отправить".....

сейчас последней версией является

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX

Приветствую, ребята

Так как здесь собрались люди знающие imacros, хочу спросить, кто может написать мне скрипт на imacros, для подачи объявлений по списку сайтов, вот ниже описание, Благорадарю,
извените, если не в этот раздел, разместил

Нужен, (Постинг в досках объявлений по недвижимости) мод для досок объявлений по недвижимости (и дальнейшая его поддержание в рабочем состоянии, чтобы пробив был 100%)
это может быть написано, на для мазилы, или других языках или программах, главное чтобы это работало

Вот доски объявлений (это не полный спискок, будет примерно еще 30-50 досок), которые нужны для размещения объявлений по недвижимости, объявления будут с фотографиями, и подробным описанием, и ссылками, телефонами и т.д.

скрытый текст
www.irr.ru
www.move.su
molotok.ru/
www.CIAN.ru
www.1RS.su
www.Avito.ru
www.domania.ru
www.dom.ru
www.mercatos.ru
www.mosr.ru
www.rentzilla.ru
www.zemax.ru
www.d-mir.ru
www.oninfo.ru
www.domalfa.ru
www.doska.us
www.doskaobyavlenii.ru
rieltorov.net/
www.cian.ru/
realty.mail.ru/
irr.ru/real-estate/
www.rosrealt.ru/
www.mirkvartir.ru/
realty.dmir.ru/
www.e1.ru/business/realty...
www.gdeetotdom.ru/
naydidom.com/
mlsn.ru/
www.restate.ru/
msk.reforum.ru/
torgdrom.ru/
www.realestate.ru/
xmetra.ru/
www.realto.ru/
www.russianrealty.ru/
realty.lenta.ru/
www.realsearch.ru/
agent.ua/top/
www.cottage.ru/
www.vseposelki.ru/
www.domzamkad.ru/
www.zamkad.ru/
www.pon.ru/
realty.biznet.ru/
www.domex.ru/
www.rosrealt.ru/
dom.mirkvartir.ru/
www.roszem.ru/r
sob.ru/
www.restate.ru/
realty.dmir.ru/
www.rodzem.ru/
www.olx.ru/

Кому интесно пишите, по стоимости сколько будет это стоить, предлагайте свою цену или пишите в личку
Андрей

InfSub
именно так и делал,попробую обновить

Андрей_НК
адреса спрячь в спойлер, если нужен скрипт - пиши в личку

05-09-2013 21:22:25

valexm пишет

именно так и делал,попробую обновить

есть изменения после обновления?

Всем привет! У меня такой вопрос - может ли один записанный макрос использовать несколько вкладок в мазиле?


Объясню6 мне нужно что 10 сатойв делали одно и тоже но открывать , сами понимаете 10 странчек мазилы тоже не дело , вот и хотелось узнать можно одним макросом задействовать все вклалдки одновременно!

Артур.Р пишет

Всем привет! У меня такой вопрос - может ли один записанный макрос использовать несколько вкладок в мазиле?


Объясню6 мне нужно что 10 сатойв делали одно и тоже но открывать , сами понимаете 10 странчек мазилы тоже не дело , вот и хотелось узнать можно одним макросом задействовать все вклалдки одновременно!

параллельно - нет, только последовательно
скрипт работает только с активной вкладкой, если требуется переключается на другую, и работает с ней, но на остальных в этот момент ни чего не делается

Помогите с проблемой !
Во время работы макроса вылазит ошибка

"TypeError: can't access dead object, line: 102 (Error code: -1001)"

Хотя макрос делал точно такую же операцию в самом начале когда. Макрос зависает и помогает только перезапуск mozilla в чем может быть проблема ?
При чем зависание происходить на выполнение операции TAB T=2 и TAB CLOSE

Leffken пишет

Помогите с проблемой !
Во время работы макроса вылазит ошибка

"TypeError: can't access dead object, line: 102 (Error code: -1001)"

Хотя макрос делал точно такую же операцию в самом начале когда. Макрос зависает и помогает только перезапуск mozilla в чем может быть проблема ?

так проверяйте что у вас в строке 102 и присутствует ли этот элемент на странице

Помогите пожалуйста со скриптом.
Как скопировать произвольный текст (в цикле, каждый раз разный) и вставит в TXT?

kurt-c пишет

Помогите пожалуйста со скриптом.
Как скопировать произвольный текст (в цикле, каждый раз разный) и вставит в TXT?

скрытый текст

Выделить код

Код:

POS= ................ EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{FILE_NAME}}.txt

Спасибо.

А быть в этом случае:

TAG POS=1 TYPE=TD ATTR=TXT:Фамилия  //*Фамилия в цикле каждый раз меняется

kurt-c пишет

Спасибо.

А быть в этом случае:

TAG POS=1 TYPE=TD ATTR=TXT:Фамилия  //*Фамилия в цикле каждый раз меняется

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=TXT:*

предполагаю следующий вопрос, берет не то, и не от туда, либо подбираем номер POS либо используем дополнительные аргументы, более подробно ответить не могу - я не телепат, я только учусь =)

Всем добрового времени суток!
Подскажите, такая проблема, программа imacros зависает в процессе работы, при воспроизведении скрипта. Раньше такого небыло, скрипт не менялся. Проблема появилась после запуска Ccleaner. Сносил и переустанавливал Firefox и imacros, не помогает.

Кто подскажет, заранее спасибо.

beslam пишет

Всем добрового времени суток!
Подскажите, такая проблема, программа imacros зависает в процессе работы, при воспроизведении скрипта. Раньше такого небыло, скрипт не менялся. Проблема появилась после запуска Ccleaner. Сносил и переустанавливал Firefox и imacros, не помогает.

Кто подскажет, заранее спасибо.

вы профиль удаляли или просто переустановили firefox? в нем все настройки и если глюк был в нем, и, соответственно, глюк, он мог остаться и после переустановки Мозиллы, но я не думаю, что СС имеет к этому отношение, подобные глюки наблюдаются после последнего обновления firefox и возможно самого imacros'a, которое вроде бы тоже недавно было... попробуйте найти и поставить более старую версию firefox в оптимале до 23 версии

так же, в CC должен быть откат изменений, хотя им давно не пользовался, точно сказать не могу, можно попробовать откатить внесенные им изменения и посмотреть, изменит ли это что-то....

в крайнем случае, воспользоваться откатом винды до состояния, когда глюков не было

Скажите позязя как с помощью этого   EVENT TYPE=CLICK SELECTOR="#     сделать экстракт???

Экстракт не делается (((

19-09-2013 14:46:42
Сразу скину кусман кода.  Нужно вытянуть контакты  из блока контактов группы. 

скрытый текст

Выделить код

Код:

iimPlay ("CODE: EVENT TYPE=CLICK SELECTOR=\"#group_contacts>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>A\" BUTTON=0 EXTRACT=TXT");
z = iimGetLastExtract();
alert (z);

Kuronokei
на сколько мне известно, event не имеет возможности извлекать текст, во всяком случае конструкция

"EVENT TYPE=CLICK"

контакты из "вконтакта" спокойно извлекаются посредством стандартных

TAG POS= .... EXTRACT=TXT

InfSub пишет

на сколько мне известно, event не имеет возможности извлекать текст, во всяком случае конструкция "EVENT TYPE=CLICK"
контакты из "вконтакта" спокойно извлекаются посредством стандартных TAG POS= .... EXTRACT=TXT

Да, но найти его таким способом сложно так как а странице много отнотипных ссылок, которые идут в разнобой.

Kuronokei пишет
InfSub пишет

на сколько мне известно, event не имеет возможности извлекать текст, во всяком случае конструкция "EVENT TYPE=CLICK"
контакты из "вконтакта" спокойно извлекаются посредством стандартных TAG POS= .... EXTRACT=TXT

Да, но найти его таким способом сложно так как а странице много отнотипных ссылок, которые идут в разнобой.

Включаем фантазию и для начала нажимаем на надпись "контакты". хотя можно и без этого, но чуть сложнее.

Всем доброго времени суток. Нужна помощь за которую готов сказать спасибо в размере пару копеек $
Значит проблема такая: Имеется скрипт в нём вот такой текст    SET !VAR1"всем привет"   Как мне вместо этого текста "всем привет" вставить картинку? Или вообще идеально добавить к этому тексту "всем привет" картинку ну например фотографию.

Gergi
в ПМ

InfSub пишет

в ПМ

не понял

Gergi пишет

не понял

PM - Personal Message - ты и так уже туда написал

Здравствуйте! У меня проблема.
Есть один сайт с объявлениями, решил написать спамер для него по комментариям этих же объявлений.
И так:
1. Есть страница на которой объявления (20 позиций)
2. Заходим на каждое объявление по очереди.
3. Написали коммент, отправили.
4. Вернулись назад, зашли на следующую позицию.
5. Проспамили все 20 позиций, перешли на вторую страницу с следующими 20-ю позициями.
Код:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
CMDLINE !DATASOURCE C:\Users\Любко\Documents\iMacros\Datasources\kz.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
TAG POS=1 TYPE=DIV ATTR=CLASS:descr
TAG POS=1 TYPE=DIV ATTR=CLASS:in
TAG POS={{!COL1}} TYPE=A ATTR=CLASS:mm<SP>fn
URL GOTO=javascript:window.scrollBy(0,20000)
WAIT SECONDS=1
TAG POS=1 TYPE=TEXTAREA FORM=ID:addCommentForm ATTR=ID:comments-text CONTENT=ТЕКСТ ДЛЯ СПАМА
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:addCommentForm ATTR=ID:comments-submit 
BACK
TAG POS=1 TYPE=A ATTR=TXT:следующая ******Т.Е. ЭТО УЖЕ СЛЕДУЮЩАЯ СТРАНИЦА С 20-ю ПОЗИЦИЯМИ.


Так вот, как мне сделать, чтоб только после 20 отправленных комментов нажималась следующая страница (TAG POS=1 TYPE=A ATTR=TXT:следующая)

P.S. в {{!COL1}} у меня вставляется значение по очереди от 1, R1...R19  это как раз мои позиции, на которые переходим.

Буду очень благодарен за помощь!

qweqwe5435 пишет

....
Так вот, как мне сделать, чтоб только после 20 отправленных комментов нажималась следующая страница (TAG POS=1 TYPE=A ATTR=TXT:следующая)

P.S. в {{!COL1}} у меня вставляется значение по очереди от 1, R1...R19  это как раз мои позиции, на которые переходим.

сделав цикл на javascript'e

InfSub пишет

сделав цикл на javascript'e

К сожалению, я в этом ноль.
Если можете помочь - отблагодарю на вебмани.

Добрый день. Скажите, кто запускает макросы из планировщика??? Сегодня попробывал через  http://run.imacros.net/?m=имя_макроса = не работает:(. Может я что то не так сделал??? Хотя месяц назад отлично работало.... Есть ли другие способы запуска макросов по расписанию????

доброго времени суток . помогите пожалуйста.я не очень силён в IMacrosе . в общем есть такая проблема. при кликании на ссылку открывается сайт в новой вкладке, потом ворачивается опять на первую вкладку и опять кликает на ссылку и открывается следующий сайт. так вот при кликании , когда открывается новый сайт  бывает что эти сайты не рабочии( типа ошибка 404 или ещё что то) и  IMacros   на этой вкладке останавливается, таймер пропадает. сразу же хочу сказать что команда SET !ERRORIGNORE YES   не помагает. что нужно сделать чтобы макрос продолжал свою работу несмотря на то что сайт не рабочий и продолжал работать дальше. может есть есть ещё какая то команда которую можно прописать в макросе для игнора ошибки. надеюсь понятно изложил свою проблему. и заранее всем спасибо за ответ. Если что мой скайп : saveliy_59

Привет! Так как я не разбираюсь в iMacros, готов заплатить за помощь в автоматизации одного процесса. 1 действие повторяется определенное количество раз, затем происходит другое действие и снова все повторяется.
Пишите на фейк вк

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Господа, всем Привет!
Я еще один далекий от ИТ, программирования и т.п. - объясните подробней :blush:
Подскажите на сколько решаема задача автоматизации платных кликов, макросом браузера?
Есть к примеру портал для кликов- http://smmka.ru/. Там очень простые задачи: открыть вкладку, нажать добавить друга/ вступить в группу, т.п.. На сколько под такую задачу сложно прописать макрос?
И подскажите пож. какие есть автоматизации платных кликов?
Спасибо!

Подскажите пожалуйста, как в некую переменную после загрузки страницы присвоить случайное число (1-3), а потом на основе полученного числа выполнить определённое действие

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:+


?

cr@nk

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("i = Math.floor(Math.random()*3)+1;")
TAG POS=1 TYPE=A ATTR=TXT:{{!VAR1}}

Здравствуйте друзья! Помогите пожалуйста решить проблемку.
Есть много тысяч фотографий и каждая открывается в отдельном окне, в котором нужно ввести данные, затем нажать кнопку скачать.
Естественно ссылка для каждой фотографии своя. Макросом я запомнил все действия для ввода данных только для одной ссылки/фотографии, как теперь сделать так, чтобы он последовательно открывал страницы и применял записанные действия для этих страниц.
Сейчас я вручную изменяю номер каждой ссылки (picture_id=1396051, picture_id=1396052, picture_id=1396053 и т.д.) в самом файле макроса, но фотографий очень много, поэтому быстро устаешь.

скрытый текст

Выделить код

Код:

URL GOTO=http://...picture_id=1396051
TAG POS=1 TYPE=SELECT FORM=NAME:register ATTR=ID:media_type_id CONTENT=%4
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:register ATTR=ID:cookie CONTENT=YES
TAG POS=1 TYPE=TEXTAREA FORM=NAME:register ATTR=ID:download_instant_usage CONTENT=For<SP>editorial<SP>use.
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:register ATTR=ID:terms CONTENT=YES
ONDOWNLOAD FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}} WAIT=YES
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:register ATTR=VALUE:Download<SP>Picture

JMC55
через extract брать ид фото и подставлять в ссылкку

InfSub пишет

через extract брать ид фото и подставлять в ссылкку

Можно немного поподробней? Только вчера установил макрос, еще не вовсем разбираюсь.

InfSub

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:{{!VAR1}}

Спасибо, но в TXT присваиваются не цифры, а символы или слова
Точнее всего 2 символа (+ или -) и одно слово (в целом слово можно исключить)
Никак не соображу, как использовать для этого EVAL

cr@nk пишет

InfSub

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:{{!VAR1}}

Спасибо, но в TXT присваиваются не цифры, а символы или слова
Точнее всего 2 символа (+ или -) и одно слово (в целом слово можно исключить)
Никак не соображу, как использовать для этого EVAL

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

03-10-2013 23:55:49

JMC55 пишет
InfSub пишет

через extract брать ид фото и подставлять в ссылкку

Можно немного поподробней? Только вчера установил макрос, еще не вовсем разбираюсь.

приведите ссылку или весь код, как я уже написал выше, экстрасенс в отпуске =)))), и из огрызков кода что-то лепить - только потеря времени, можете написать в ПМ, например

InfSub пишет

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

Если описать полностью, что я хочу, то получится примерно следующее:
1. Открываем страницу http://godville.net/ideabox/show/diary  (нужна авторизация)
thumb.png
2. В цикле рандомно отправляем одну из команд:

TAG POS=1 TYPE=A ATTR=TXT:+
TAG POS=1 TYPE=A ATTR=TXT:-
TAG POS=1 TYPE=A ATTR=TXT:боян

Соответственно происходит голосование
Т.к. количество элементов на странице неизвестно, то надо спускаться вниз до возникновения ошибки
Как только возникает ошибка (что больше нечего отправлять), то открываем другой URL (http://godville.net/ideabox/show/e_news) и повторяем действия выше


Но на данном этапе у меня затык с рандомизацией и операторами сравнения

cr@nk
вечером могу глянуть, сейчас времени нет, но в общих чертах можно сделать просчет js-скриптом, сколько элементов (а не ждать ошибку), после чего переходить к след. странице.
рандом в виде выбора +,-,боян делается по аналогии с выше описанным способом, только цифра будет выполнять роль идентификатора элемента массива с данными (+,-,боян), аналогичный способ уже описывал несколькими страницами ранее, когда требовалось вставлять рандомную букву из алфавита в текст, можете поискать по форуму или в сообщениях отправленных мной

cr@nk отписался в ПМ, хотелось бы услышать что в итоге вы решили

Доброго времени суток, возник такой вопрос, пишу макрос для сервиса по накрутке вк (лайки ставит, с поставкой лайков все ок, но вот не задача, иногда он открывает новую вкладку, где "лайкаются" фотографии, и пишет : Пока ничего нового. И соотвествено, скрипт "выплевывает" ошибку и стопорит, что надо дописать в конец, чтобы если выдало, что ничего нет, он просто закрывал вкладку, и по новой выполнял цикл.
подразумеваю, что надо как то так

скрытый текст

Выделить код

Код:

true Мне<SP>нравиться 
TAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится CONTENT=Мне<SP>нравится 
else Пока<SP>ничего<SP>нового
TAB CLOSE
TAB T=1


P.S осознаю, что код выше - бредокод:blush:

MrCrutch

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES


http://wiki.imacros.net/!ERRORIGNORE

InfSub пишет

SET !ERRORIGNORE YES

Благо дарю, буквально сегодня начал аймайкросом заниматься, просто аналогичного бота продавал за 150р школьник, подумал, что сам смогу, СПАСИБО ЕЩЕ РАЗ!)

Народ, подскажите, пожалуйста! Как из кода

скрытый текст

Выделить код

Код:

<input type="hidden" name="opencode" id="opencode" value="8866">


вытянуть значение value?

Заранее благодарен! :)

Dmitriy-66
так же, как и из всего остального, с помощью EXTRACT=TXT

Я бы попросил более полно ответить. У меня почему-то выдаёт ошибку, вместо значения. Вероятно, что-то путаю.
Напишите, пожалуйста, правильную конструкцию команды для моего случая.

Dmitriy-66 пишет

Я бы попросил более полно ответить. У меня почему-то выдаёт ошибку, вместо значения. Вероятно, что-то путаю.
Напишите, пожалуйста, правильную конструкцию команды для моего случая.

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

10-10-2013 19:13:42
в теории будет что-то типа:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:hidden FORM=ACTION:* ATTR=ID:opencode EXTRACT=TXT

Всем привет. У меня такая проблема. Скрипт iopus по очереди открывает различные сайты. Например:

скрытый текст

Выделить код

Код:

URL GOTO=https://www.google.by/search?q=%D0%B0%D0%B2%D1%82%D0%BE&ie=utf-8&oe=utf-8&rls=org.mozilla:ru:official&client=firefox-beta&gws_rd=cr&ei=O2xZUsKjOY2u4QSwy4HwDA
TAG POS=1 TYPE=A ATTR=TXT:Продажа<SP>авто<SP>в<SP>Беларуси<SP>(РБ),<SP>купить<SP>авто*

URL GOTO=https://www.google.by/search?q=%D0%B0%D0%B2%D1%82%D0%BE&ie=utf-8&oe=utf-8&rls=org.mozilla:ru:official&client=firefox-beta&gws_rd=cr&ei=O2xZUsKjOY2u4QSwy4HwDA
TAG POS=4 TYPE=EM ATTR=TXT:АВТО

URL GOTO=https://www.google.by/search?q=%D0%B0%D0%B2%D1%82%D0%BE&ie=utf-8&oe=utf-8&rls=org.mozilla:ru:official&client=firefox-beta&gws_rd=cr&ei=O2xZUsKjOY2u4QSwy4HwDA
TAG POS=1 TYPE=A ATTR=TXT:AUTO.TUT.BY<SP>|<SP>Автомобильный<SP>портал<SP>в<SP>Беларуси*


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


то  скрипт останавливается на паузу.

Друзья, никак не могу сделать, чтоб имакрос не зависал на 6 сек на 404-х страницах...
Команда SET !TIMEOUT_STEP 1  ни в начале макроса, ни перед каждым URL GOTO  эффекта не даёт - всё равно на каждой ненайденной странице тормозит по 6 секунд... Общее время работы макроса увеличивается В РАЗЫ :( , когда парсишь десятки тыщ страниц это становится муторно ...

Что делать с энтой бедой ?

здравствуйте народ. кто может написать скрипт под заказ просьба писать в личку или на почту. об оплате договоримся

donmedved
SET !TIMEOUT_STEP - используется для сокращения ожидания загрузки элементов страницы, для сокращения ожидания самой страницы - используйте SET !TIMEOUT 1


13-10-2013 23:52:26
valentin104104
только используя js для генерации имакрос-скрипта, и соответственно, проверяющий результат
сразу оговорюсь в чистый имакрос, с помощью EVAL такое действие не встроить, только в изначально написанный на js код


13-10-2013 23:56:25
Dmitriy-66, из элементарной вежливости, могли бы хоть написать помогло или нет!

Спасибо за проявленное внимание. Будем разбиратся дальше

InfSub
Выражаю огромную благодарность за написанный скрипт автоматического голосования :beer::rock:

cr@nk
)

Помогите пожалуйста написать макрос, чтобы в CONTENT= вставляло инфу из CSV файла


скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_TextBox2 CONTENT=???
TAG POS=1 TYPE=A ATTR=ID:ctl00_ContentPlaceHolder1_LinkButton1
TAG POS=1 TYPE=A ATTR=ID:ctl00_ContentPlaceHolder1_GridView1_ctl02_HyperLink4
TAG POS=1 TYPE=A ATTR=TXT:Распределение
TAG POS=1 TYPE=A ATTR=TXT:Изменить
TAG POS=1 TYPE=A ATTR=TXT:Сохранить
BACK
BACK
BACK
BACK

kurt-c пишет

Помогите пожалуйста написать макрос, чтобы в CONTENT= вставляло инфу из CSV файла


скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_TextBox2 CONTENT=???
TAG POS=1 TYPE=A ATTR=ID:ctl00_ContentPlaceHolder1_LinkButton1
TAG POS=1 TYPE=A ATTR=ID:ctl00_ContentPlaceHolder1_GridView1_ctl02_HyperLink4
TAG POS=1 TYPE=A ATTR=TXT:Распределение
TAG POS=1 TYPE=A ATTR=TXT:Изменить
TAG POS=1 TYPE=A ATTR=TXT:Сохранить
BACK
BACK
BACK
BACK

ну не уже ли, так сложно заюзать поиск? эта тема неоднократно обсуждалась...:/

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE file.csv
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
...
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_TextBox2 CONTENT={{!COL1}}
...

anti-xp пишет

Подскажите как задать что бы скрипт работал, не по циклу, а определенное время. К примеру 30 мин и останавливался

тот же цикл, только в условии сравниваем время начала работы скрипта с текущим временем

Функции jQuery в iMacros как-то можно заюзать?

partizanin пишет

Функции jQuery в iMacros как-то можно заюзать?

попробуй, расскажешь потом, мне не требовалось, не пробовал

пробовал, на $(document).ready(function(){}); вываливается ошибка:angry:
Еще такой вопрос: можно ли как то сделать что бы jscript останавливался по нажатию клавиши?  У меня несколько вложенных циклов и кнопка "стоп" не корректно работает, т.е. жмешь на нее, но скрипт не останавливается, а перескакивает на верхний цикл или на начало цикла, в итоге чтобы окончательно остановить нужно "стоп" раз 20 очень быстро нажать.

partizanin пишет

пробовал, на $(document).ready(function(){}); вываливается ошибка:angry:
Еще такой вопрос: можно ли как то сделать что бы jscript останавливался по нажатию клавиши?  У меня несколько вложенных циклов и кнопка "стоп" не корректно работает, т.е. жмешь на нее, но скрипт не останавливается, а перескакивает на верхний цикл или на начало цикла, в итоге чтобы окончательно остановить нужно "стоп" раз 20 очень быстро нажать.

думаю - это глюк имакроса, сам на некоторых машинках с этим сталкивался, хотя на других работает без проблем...

Ребята, нужна помощь, подсказка...
Написал скрипт... все работает...
Проблема такая: таблица из 20 строк... в каждой строке своя ссылка..
Строки меняются местами. Как сделать чтобы макрос брал строку 1. 2. 3. и т.д. не используя саму ссылку, а привязан был к нумерации, и ссылку брал уже по порядку...
П/с в таблице нет постоянных ссылок, каждый день могут быть разные.. но в той же таблице, в том же месте.

как решить проблему?

а примеры есть? не силен в программировании...
я бы дал вознаграждение человеку который бы мне помог :)

ValDVD пишет

а примеры есть? не силен в программировании...
я бы дал вознаграждение человеку который бы мне помог :)

пока что не когда заниматься подобным, если будет актуально еще, через недельку о себе напомни

Всем привет!
Гуру IMacrosa помогите, пожалуйста!

1-ая задача. Как задать сложное определение выборки текста? Например, на сайте имеется <div>-элементы со своим классом, под которым находится текст с <p>-элементом без класса и id
Вот пример:

скрытый текст

Выделить код

Код:

<div id="resizabletext">

    <!--    TEXTLN    -->
    <p> … </p>
    <p> … </p>
    <p> … </p>
    <p> … </p>
    <!--    TEXTLN    -->


нужно вытянуть каждый абзац под свою переменную {{!var1}} и т.д. Но как задать такое условие? делаю так:
TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt - но он полностью вытягивает весь кусок, а если задаю с типом p -
TAG POS=n TYPE=p ATTR=* EXTRACT=txt - вытягиваются лишние элементы страницы за пределами элемента <div>, что не есть хорошо.
При условии, что <p>-элементов под этим куском может быть неограниченное кол-во.

2-ая задача. Если даже при этой выборке выполнять макрос TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt Как при последующем использовании этого текста увеличить абзац(вместо одного вставить два, т.е. увеличить отступ между абзацами для визуальной красоты)?

3-яя задача. Как в Js задавать правильную формулу для CONTEN-а , например:
macros += "TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT="{{!var1}}\n\n{{!var2}}"+"\n";
если в обычном макросе все работает нормально TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT="{{!var1}}\n\n{{!var2}}"
именно, я так понял, проблема с ""
Как правильно писать?

Заранее спасибо за помощь!

bogdanov63 пишет

Всем привет!
Гуру IMacrosa помогите, пожалуйста!

1-ая задача. Как задать сложное определение выборки текста? Например, на сайте имеется <div>-элементы со своим классом, под которым находится текст с <p>-элементом без класса и id
Вот пример:

скрытый текст

Выделить код

Код:

<div id="resizabletext">

    <!--    TEXTLN    -->
    <p> … </p>
    <p> … </p>
    <p> … </p>
    <p> … </p>
    <!--    TEXTLN    -->


нужно вытянуть каждый абзац под свою переменную {{!var1}} и т.д. Но как задать такое условие? делаю так:
TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt - но он полностью вытягивает весь кусок, а если задаю с типом p -
TAG POS=n TYPE=p ATTR=* EXTRACT=txt - вытягиваются лишние элементы страницы за пределами элемента <div>, что не есть хорошо.
При условии, что <p>-элементов под этим куском может быть неограниченное кол-во.

2-ая задача. Если даже при этой выборке выполнять макрос TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt Как при последующем использовании этого текста увеличить абзац(вместо одного вставить два, т.е. увеличить отступ между абзацами для визуальной красоты)?

3-яя задача. Как в Js задавать правильную формулу для CONTEN-а , например:
macros += "TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT="{{!var1}}\n\n{{!var2}}"+"\n";
если в обычном макросе все работает нормально TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT="{{!var1}}\n\n{{!var2}}"
именно, я так понял, проблема с ""
Как правильно писать?

Заранее спасибо за помощь!

раз ты пишешь на js, так и выполняй эти задачи с помощью js, что мешает в первом примере взять весь блок div и обработать его с помощью js получив объект, либо массив данных, или несколько переменных (по желанию), можно, конечно, извратиться и с помощью имакроса, но тут чтобы советовать, нужно, как минимум видеть всю страницу, и понимать, то в ней и как может меняться..
ответ на второй вопрос кроется в первом, добавить к данным, полученным в первом примере, еще один абзац с помощью js, одна строка кода вида var br = '\\n'; str += br;
проблема третьей задачи в том, что ты забыл про то, что символ "\" экранирует идущий за ним знак, что значит \n - перенос строки в js, чтобы его передать в имакрос в виде \n его нужно экранировать еще раз т.е. нужно написать \\n

InfSub, спасибо за ответы!
Вот ссылка на новость, которую хочу обрабатывать http://news.infocar.ua/hozyain_avto_bejal_polkilometra_za_ugnannoy_inomarkoy_84468.html
Мне нужно название + весь текст по абзацам, чтобы потом вставить в другом месте в таком формате:
"...Хозяин авто бежал полкилометра за угнанной иномаркой

В Тернопольской области произошел курьезный случай. На выезде из села Старый Город Подгаецкого района инспекторы ГАИ заметили автомобиль марки «Опель Астра» без включенных фар, за которым бежал какой-то человек. ГАИшники немедленно остановили авто и спасли, как минимум, от неприятностей сразу двух человек.

Оказалось, что за машиной гнался ее владелец, а за рулем иномарки находился пьяный похититель, сообщает пресс-служба УМВД в Тернопольской области.

Угонщиком оказался 21-летний житель села Вага, который заметил на улице бесхозный «Опель» с открытой задней дверкой. Через нее он пробрался к водительскому сиденью и тронулся в путь. Когда машина с наката стала набирать скорость – появился владелец. Но остановить вора он не успел, поэтому и бросился догонять.

Бедняга пробежал почти полкилометра и не мог нарадоваться, что милиционеры вовремя остановили нетрезвого вора...."

Я не силен в Js в глубоком программировании (
Поэтому после того как вытащил блок div id:resizabletext
....
macross += "TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=TXT"+s_n;
retcodes = iimPlay(macross);
getExtract = iimGetLastExtract(1)

как мне его обработать как ты говоришь? Можешь показать пример обработки?

п.сы: по 3-ей задаче по твоему совету не работает \\n (
можешь проверить?

bogdanov63 пишет

п.сы: по 3-ей задаче по твоему совету не работает \\n (
можешь проверить?

в твоем коде:

macros += "TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT="{{!var1}}\n\n{{!var2}}"+"\n"

ошибка, вот и не работает
имакрос должен выглядеть так:

TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT="{{!var1}}\n\n{{!var2}}"

соответственно, для этого код js должен быть таким:

macros += "TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=NAME:message CONTENT=\"{{!var1}}\\n\\n{{!var2}}\""+"\n";

про экранирование спец символов, я тебе написал в предыдущем ответе, " - тоже является спецсимволом, который нужно экранировать, при использовании в имакросе
ты изначально задал практически верный вопрос про проблему с "" - я ответил на него несколько с другой стороны, т.к. проэкранировав кавычки ты бы вряд ли догадался сделать тоже самое с \n

Спасибо помогло!
А как на счет обработки, что ты советовал? Есть примеры, где можно посмотреть, т.к не могу прогуглить (
Помоги, пожалуйста!

bogdanov63 пишет

Спасибо помогло!
А как на счет обработки, что ты советовал? Есть примеры, где можно посмотреть, т.к не могу прогуглить (
Помоги, пожалуйста!

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

Хорошо, спасибо!

Еще вопрос:
как при помощи макроса прокрутить страницу вниз до упора при помощи клавиш пробел или PgDn?
как их задействовать?
пробовал через click и winclick не работает (

bogdanov63 пишет

Хорошо, спасибо!

Еще вопрос:
как при помощи макроса прокрутить страницу вниз до упора при помощи клавиш пробел или PgDn?
как их задействовать?
пробовал через click и winclick не работает (

в принципе, ни как, winclick работает только в полной версии имакроса и помойму еще в ie
можно попробовать зацепиться за какой-либо объект в низу страницы, иначе вряд ли, как-то получится
аналоги нажатия клавиш есть в теге EVENT но это экспериментальная технология, не факт, что поможет

24-10-2013 13:19:28
на счет примеров обработки, уж извини, но мне не досуг их сейчас писать, потому и посылаю в гугл, иначе получится, не пример, а написание за тебя всего функционала обработки

Я так и привязываюсь, но иногда отпадает из-за чего дальше макрос не выполняется (
Можно ли эту ошибку как-то скорректировать?

И еще иногда при выполнении макроса при переходе на следующую вкладку появляется окно "соединение сброшено" и макрос замирает, после обновления страницы возобновляется
https://docs.google.com/drawings/d/1swJ … sp=sharing
как автоматически обойти это?

bogdanov63 пишет

Я так и привязываюсь, но иногда отпадает из-за чего дальше макрос не выполняется (
Можно ли эту ошибку как-то скорректировать?

И еще иногда при выполнении макроса при переходе на следующую вкладку появляется окно "соединение сброшено" и макрос замирает, после обновления страницы возобновляется
https://docs.google.com/drawings/d/1swJ … sp=sharing
как автоматически обойти это?

первое - включить игнор ошибок в имакросе
второе - сделать, либо проверку, на выдачу на странице, скажем на наличие фразы "соединение сброшено" и при наличии - обновлять, либо обновлять всегда после перехода

bogdanov63 пишет

...
нужно вытянуть каждый абзац под свою переменную {{!var1}} и т.д. Но как задать такое условие? делаю так:
TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt - но он полностью вытягивает весь кусок, а если задаю с типом p -
TAG POS=n TYPE=p ATTR=* EXTRACT=txt - вытягиваются лишние элементы страницы за пределами элемента <div>, что не есть хорошо.
При условии, что <p>-элементов под этим куском может быть неограниченное кол-во.

2-ая задача. Если даже при этой выборке выполнять макрос TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt Как при последующем использовании этого текста увеличить абзац(вместо одного вставить два, т.е. увеличить отступ между абзацами для визуальной красоты)?
...

сейчас, посмотрел ссылку (днем было не до того, так что предыдущие ответы - чисто теоретические выкладки):

bogdanov63 пишет

... Вот ссылка на новость, которую хочу обрабатывать http://news.infocar.ua/hozyain_avto_bejal_polkilometra_za_ugnannoy_inomarkoy_84468.html ...

вообще не вижу проблемы, берем текст описанным в задаче 2 способом, после чего, заменяем перенос строки на двойной перенос строки, либо на двойной <br> (в зависимости от страницы и обработчика того сайта, куда вставляем), функцией replace() и ни каких танцев с бубном и гуглем на тему обработки строки (ну кроме функционала ф-ции replace())

24-10-2013 18:03:38
по большому счету, писать все на js даже не требуется, достаточно нескольких вставок EVAL() в скрипте имакроса, хотя не видя всего функционала вашего скрипта, могу и ошибаться

Здравствуйте! Проблема такая: скрипт выполняет несколько действий и зависает. Не сам айМакрос зависает, а скрипт. В чем дело, как лечить?

qweqwe1 пишет

Здравствуйте! Проблема такая: скрипт выполняет несколько действий и зависает. Не сам айМакрос зависает, а скрипт. В чем дело, как лечить?

ждать стабильную версию имакроса
попробовать найти более старую версию имакроса
попробовать снести полностью имакрос и мозилу вместе с профилем и поставить заново

InfSub пишет

вообще не вижу проблемы, берем текст описанным в задаче 2 способом, после чего, заменяем перенос строки на двойной перенос строки, либо на двойной <br> (в зависимости от страницы и обработчика того сайта, куда вставляем), функцией replace() и ни каких танцев с бубном и гуглем на тему обработки строки (ну кроме функционала ф-ции replace())

Добавлено Вчера 18:03:38
по большому счету, писать все на js даже не требуется, достаточно нескольких вставок EVAL() в скрипте имакроса, хотя не видя всего функционала вашего скрипта, могу и ошибаться

делаю так:
TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"\\n\",\"\\n\\n\"); s;") 

но никак не получается, вставляет как и обычный EXTRACT
в чем может быть проблема?

bogdanov63 пишет
InfSub пишет

вообще не вижу проблемы, берем текст описанным в задаче 2 способом, после чего, заменяем перенос строки на двойной перенос строки, либо на двойной <br> (в зависимости от страницы и обработчика того сайта, куда вставляем), функцией replace() и ни каких танцев с бубном и гуглем на тему обработки строки (ну кроме функционала ф-ции replace())

Добавлено Вчера 18:03:38
по большому счету, писать все на js даже не требуется, достаточно нескольких вставок EVAL() в скрипте имакроса, хотя не видя всего функционала вашего скрипта, могу и ошибаться

делаю так:
TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"\\n\",\"\\n\\n\"); s;") 

но никак не получается, вставляет как и обычный EXTRACT
в чем может быть проблема?

внимательно читаем инструкцию по функции replace() и не городим огород...  :WALL:

25-10-2013 18:14:10
... и по функции EVAL() - тоже

дам пару намеков:
s; - в конце EVAL() не выполняет ни какой роли, зачем оно там?
куда сохраняется результат действия ф-ции replace() ?
выполняемое действие в replace() у вас делается только для одного элемента, т.е. при 10 переносах строк, удвоен будет только один (первый) ... читаем про функцию RegExp() и ее аргументы в связке с replace()

в остальном, все верно

25-10-2013 19:10:41
результат правильного использования данных ф-ций:

скрытый текст
5b4907db116ef036f55aff1792ca8d61.png

Для упрощения понимания работы js-кода и тестирования функции replace () советую в начале написать небольшой js-файл, в котором будет переменная с каким-то текстом, функция replace() и функция alert() для вывода результата работы replace()
Запускать файл можно через имакрос, при этом имакрос-кода он содержать не обязан
После получения нужного результата уже стоит переносить код в iim-файл в функцию EVAL(), не забывая про экранирование спецсимволов

Здравствуйте. Скажите пожалуйста, как сделать так, чтобы когда загружалась страница, то iMacros закрывал эти страницы.
Например, есть две страницы

скрытый текст
доступ к фото запрещен - http://my.mail.ru/mail/natalja.sherban.tascha/
еще не создал свой мир - http://my.mail.ru/mailua/yurkova99/

То есть, когда выходил текст на странице "доступ к фото запрещен" или "еще не создал свой мир", то iMacros закрывал эту вкладку. Помогите, пожалуйста.

Где эту инструкцию можно почитать? тут http://wiki.imacros.net/Data_Extraction ?

если делать в js так:

s = Replace(iimGetLastExtract(), "#NEWLINE#", "#NEWLINE##NEWLINE#");
alert(s);

не работает и выдает ошибку (ReferenceError: Replace is not defined, line: 78 (Error code: 991))

и как символ переноса строки пишется?

http://www.gskinner.com/RegExr/ здесь по примеру подобрал значение RegExp: /\s\s/g и в Replace указал \n\n

а как теперь это прописать в js либо iim ?

вот тут:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=div ATTR=id:resizabletext EXTRACT=txt
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/\s/g,\"<br><br>\");")
prompt {{!VAR2}}


каждый пробел заменяет на 2 абзаца, а как заменить на \s\s либо \n  ?

27-10-2013 01:01:12
Полный Пи...
слов нет!

скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/\x0a/g,\"<br><br>\");")
prompt {{!VAR2}}

:offtopic:
InfSub
Спасибо за новость (630999), почитал)

Timjunm пишет

Здравствуйте. Скажите пожалуйста, как сделать так, чтобы когда загружалась страница, то iMacros закрывал эти страницы.
Например, есть две страницы

скрытый текст
доступ к фото запрещен - http://my.mail.ru/mail/natalja.sherban.tascha/
еще не создал свой мир - http://my.mail.ru/mailua/yurkova99/

То есть, когда выходил текст на странице "доступ к фото запрещен" или "еще не создал свой мир", то iMacros закрывал эту вкладку. Помогите, пожалуйста.

только делая изначально скрипт на js, он будет проводить проверку и в случае ошибки, делать нужное вам действие


bogdanov63, Вы меня разочаровали, сударь, я дал Вам намеки прозрачнее не бывает...
все элементарно:

скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("s=\"{{!EXTRACT}}\".replace(new RegExp(\"\\n\",\"g\"), \"\\n\\n\");")
или
SET !VAR2 EVAL("s=\"{{!EXTRACT}}\".replace(new RegExp(/\\n/g), \"\\n\\n\");")


27-10-2013 17:04:46
littleleshy, я рад=)

InfSub
ЩИТО?
Текст прикольный использован, вот и всё. Забавный он, улыбнуло. Что не так?

littleleshy пишет

InfSub
ЩИТО?
Текст прикольный использован, вот и всё. Забавный он, улыбнуло. Что не так?

все норм, не правильно понял прост, к чему данный пост

27-10-2013 17:55:31
исправил пост выше ))

InfSub, в любом случае большое спасибо за правильное направление, куда копать!
Спасибо!

bogdanov63 пишет

InfSub, в любом случае большое спасибо за правильное направление, куда копать!
Спасибо!

это уже не направление, это уже ответ на ваши мучения....

InfSub, не подскажешь еще, пожалуйста!
Часто при открытии страницы возникает "Соединение было сброшено".
Есть настройка в Firefox или дополнение, которое автоматически перезагрузит страницу?

bogdanov63 пишет

InfSub, не подскажешь еще, пожалуйста!
Часто при открытии страницы возникает "Соединение было сброшено".
Есть настройка в Firefox или дополнение, которое автоматически перезагрузит страницу?

уже отвечал на этот вопрос ранее, в посте, в чем проблема использовать после перехода команду REFRESH ?
не советую использовать одновременно дополнения для обновления страницы и имакрос

InfSub пишет

уже отвечал на этот вопрос ранее, в посте, в чем проблема использовать после перехода команду REFRESH ?
не советую использовать одновременно дополнения для обновления страницы и имакрос

в том то и проблема!
Макрос уже выполняется, доходит до нужной строки, где необходимо открыть новую вкладку и перейти на нее и произвести переход на некоторый адрес - вкладка открывается и вот тут происходит сбой "Соединение было сброшено"
и макрос зависает, пока я самостоятельно не перезагружу страницу.
После перезагрузки работа макроса продолжается.

27-10-2013 20:32:54

скрытый текст

Выделить код

Код:

macros3 = "CODE:SET !EXTRACT_TEST_POPUP no"+s_n;
macros3 += "SET !ERRORIGNORE YES"+s_n;
macros3 += "SET !ERRORCONTINUE YES"+s_n;
macros3 += "FILTER TYPE=IMAGES STATUS=on"+s_n;
macros3 += "TAB OPEN"+s_n;
macros3 += "TAB T=2"+s_n;
macros3 += "URL GOTO="+getExtract+s_n; ------ вот тут зависает 
retcode = iimPlay(macros3);

bogdanov63 пишет
InfSub пишет

уже отвечал на этот вопрос ранее, в посте, в чем проблема использовать после перехода команду REFRESH ?
не советую использовать одновременно дополнения для обновления страницы и имакрос

в том то и проблема!
Макрос уже выполняется, доходит до нужной строки, где необходимо открыть новую вкладку и перейти на нее и произвести переход на некоторый адрес - вкладка открывается и вот тут происходит сбой "Соединение было сброшено"
и макрос зависает, пока я самостоятельно не перезагружу страницу.
После перезагрузки работа макроса продолжается.

27-10-2013 20:32:54

скрытый текст

Выделить код

Код:

macros3 = "CODE:SET !EXTRACT_TEST_POPUP no"+s_n;
macros3 += "SET !ERRORIGNORE YES"+s_n;
macros3 += "SET !ERRORCONTINUE YES"+s_n;
macros3 += "FILTER TYPE=IMAGES STATUS=on"+s_n;
macros3 += "TAB OPEN"+s_n;
macros3 += "TAB T=2"+s_n;
macros3 += "URL GOTO="+getExtract+s_n; ------ вот тут зависает 
retcode = iimPlay(macros3);

я не экстрасенс, и не могу предположить, что у Вас содержит переменная "getExtract", либо приводите код макроса полностью, либо гугл в помощь

InfSub пишет

я не экстрасенс, и не могу предположить, что у Вас содержит переменная "getExtract", либо приводите код макроса полностью, либо гугл в помощь

содержится ссылка из другого предыдущего макроса:

скрытый текст

Выделить код

Код:

macros2 = "CODE:SET !EXTRACT_TEST_POPUP no"+s_n;
macros2 += "SET !ERRORIGNORE YES"+s_n;
macros2 += "SET !ERRORCONTINUE YES"+s_n;
macros2 += "TAG POS="+i+" TYPE=DIV ATTR=class:labeled<SP>name EXTRACT=txt"+s_n;
macros2 += "TAG POS=1 TYPE=a ATTR=txt:{{!EXTRACT}} EXTRACT=href"+s_n;
retcode = iimPlay(macros2);
getExtract = iimGetLastExtract(2);


и я не понимаю, какая разница какая ссылка там, макрос же тупо висит

bogdanov63 пишет
InfSub пишет

я не экстрасенс, и не могу предположить, что у Вас содержит переменная "getExtract", либо приводите код макроса полностью, либо гугл в помощь

содержится ссылка из другого предыдущего макроса:

скрытый текст

Выделить код

Код:

macros2 = "CODE:SET !EXTRACT_TEST_POPUP no"+s_n;
macros2 += "SET !ERRORIGNORE YES"+s_n;
macros2 += "SET !ERRORCONTINUE YES"+s_n;
macros2 += "TAG POS="+i+" TYPE=DIV ATTR=class:labeled<SP>name EXTRACT=txt"+s_n;
macros2 += "TAG POS=1 TYPE=a ATTR=txt:{{!EXTRACT}} EXTRACT=href"+s_n;
retcode = iimPlay(macros2);
getExtract = iimGetLastExtract(2);


и я не понимаю, какая разница какая ссылка там, макрос же тупо висит

макрос может висеть по многим причинам, как не зависящим от Вас, так и имеющим прямое отношение к коду написанному Вами, не имея возможности оттестировать Ваш код, я не берусь судить в причинах данного поведения имакроса

Добрый вечер, нужна помощь для создания скрипта кликалку букса, сразу говорю что в программировании оче плохо понимаю
вот пример кода

скрытый текст

Выделить код

Код:

VERSION BUILD=8510617 RECORDER=FX

TAB T=1
URL GOTO=http://smmok-55gnm1x.ru/offer/index
TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAG POS=1 TYPE=BUTTON ATTR=TXT:Перейти<SP>на<SP>целевую<SP>страницу (тут хочу чтоб программа искала хотя-бы одно из начений (добавить в друзья) (вступить в группу) (подписаться))
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAB CLOSE
TAB T=1
VERSION BUILD=8510617 RECORDER=FX
TAB T=1
'URL GOTO=http://smmok-55gnm1x.ru/offer/index
TAG POS=1 TYPE=BUTTON ATTR=TXT:Я<SP>выполнил<SP>задание
WAIT SECONDS=3
TAG POS=1 TYPE=BUTTON ATTR=TXT:Ok


вопрос в :
1   хочу, чтоб когда скрипт заходит на какую-то страницу вконтакте, то искал и нажимал кнопку "Добавить в друзья" или "Подписаться" или "Вступить в группу" (одну из трёх) - после того когда нашел кнопку процесс сразу же перемещался в начало скрипта на строку TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание

2 TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание    - если эту строку не нашёл , то скрипт просто останавливался перемещался на последнюю строку скрипта,  (а там я ему если что пропишу продолжение)

"вот как звучит на простом языке"
1 зашёл на сайт спонсора
2 нашёл задание
3 нажав на кнопку задание которая меня перекинула на страницу vk.com
4 на странице vk.cov нашёл нашёл кнопку "подписаться" и нажал её , закрыл страницу vk.com
5 автоматически браузер меня перекинул на страницу спонсора и тут начал искать задание
6 нашел задание
7 нажав на кнопку задание которая меня перекинула на страницу vk.com
8 на странице vk.cov нашёл нашёл кнопку "подписаться" и нажал её , закрыл страницу vk.com
9 автоматически браузер меня перекинул на страницу спонсора и тут начал искать задание
10 задание не нашёл остановился скрипт а если задание нашел то продолжает опять пункты 1-9
скрытый текст
что-то типо этого :
ИМХО Код пишешь в неправильном направлении лучше формулировать иначе:
Как сделать так, чтобы до тех пор, пока не появится та страница, которая мне нужна происходило обновление страницы
ну а коли так хочешь
Как сделать что бы при нахождении этого текста он обновлял страницу пока она не исчезнет
то пожалуйста...

Создай JS фаил следующего содержания:
Выделить код
Код:

window.content.document.location="file:///C:/Users/User/Desktop/1.htm";
iimPlay ("code: wait seconds = 2");

var Err = 'Internal Server Error';
var reg = new RegExp(Err,'gim');
body = window.content.document.body.innerHTML;
get = (body.match(reg));

if (get == Err)
    {
set = 'REFRESH';
    }
else     {
    set = 'STOP';
    }
while (set == 'REFRESH')
    {
        iimPlay("code: wait seconds = 2\n REFRESH");
       
        var reg = new RegExp(Err,'gim');
        body = window.content.document.body.innerHTML;
        get = (body.match(reg));
       
        if (get == Err)
            {
            set = 'REFRESH';
            }
        else     {
            set = 'STOP';
            }
    }
фаил "file:///C:/Users/User/Desktop/1.htm" содержит твой HTML код:
Выделить код
Код:

<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>
Таким образом пока страница содержит HTML с фразой "Internal Server Error" скрипт будет обновлять страницу, и делать это будет до посинения, вплоть до скончания веков, но как только этой фразы не будет, или свет выключат...страница обновляться перестанет.

далее разбирайся сам...умываю руки
Удачи.


kolshix пишет

Добрый вечер, нужна помощь для создания скрипта кликалку букса, сразу говорю что в программировании оче плохо понимаю
вот пример кода

скрытый текст
VERSION BUILD=8510617 RECORDER=FX

TAB T=1
URL GOTO=http://smmok-55gnm1x.ru/offer/index
TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAG POS=1 TYPE=BUTTON ATTR=TXT:Перейти<SP>на<SP>целевую<SP>страницу (тут хочу чтоб программа искала хотя-бы одно из начений (добавить в друзья) (вступить в группу) (подписаться))
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу
TAB CLOSE
TAB T=1
VERSION BUILD=8510617 RECORDER=FX
TAB T=1
'URL GOTO=http://smmok-55gnm1x.ru/offer/index
TAG POS=1 TYPE=BUTTON ATTR=TXT:Я<SP>выполнил<SP>задание
WAIT SECONDS=3
TAG POS=1 TYPE=BUTTON ATTR=TXT:Ok


вопрос в :
1   хочу, чтоб когда скрипт заходит на какую-то страницу вконтакте, то искал и нажимал кнопку "Добавить в друзья" или "Подписаться" или "Вступить в группу" (одну из трёх) - после того когда нашел кнопку процесс сразу же перемещался в начало скрипта на строку TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание

2 TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание    - если эту строку не нашёл , то скрипт просто останавливался перемещался на последнюю строку скрипта,  (а там я ему если что пропишу продолжение)

"вот как звучит на простом языке"
1 зашёл на сайт спонсора
2 нашёл задание
3 нажав на кнопку задание которая меня перекинула на страницу vk.com
4 на странице vk.cov нашёл нашёл кнопку "подписаться" и нажал её , закрыл страницу vk.com
5 автоматически браузер меня перекинул на страницу спонсора и тут начал искать задание
6 нашел задание
7 нажав на кнопку задание которая меня перекинула на страницу vk.com
8 на странице vk.cov нашёл нашёл кнопку "подписаться" и нажал её , закрыл страницу vk.com
9 автоматически браузер меня перекинул на страницу спонсора и тут начал искать задание
10 задание не нашёл остановился скрипт а если задание нашел то продолжает опять пункты 1-9
скрытый текст
что-то типо этого :
ИМХО Код пишешь в неправильном направлении лучше формулировать иначе:
Как сделать так, чтобы до тех пор, пока не появится та страница, которая мне нужна происходило обновление страницы
ну а коли так хочешь
Как сделать что бы при нахождении этого текста он обновлял страницу пока она не исчезнет
то пожалуйста...

Создай JS фаил следующего содержания:
Выделить код
Код:

window.content.document.location="file:///C:/Users/User/Desktop/1.htm";
iimPlay ("code: wait seconds = 2");

var Err = 'Internal Server Error';
var reg = new RegExp(Err,'gim');
body = window.content.document.body.innerHTML;
get = (body.match(reg));

if (get == Err)
    {
set = 'REFRESH';
    }
else     {
    set = 'STOP';
    }
while (set == 'REFRESH')
    {
        iimPlay("code: wait seconds = 2\n REFRESH");
       
        var reg = new RegExp(Err,'gim');
        body = window.content.document.body.innerHTML;
        get = (body.match(reg));
       
        if (get == Err)
            {
            set = 'REFRESH';
            }
        else     {
            set = 'STOP';
            }
    }
фаил "file:///C:/Users/User/Desktop/1.htm" содержит твой HTML код:
Выделить код
Код:

<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>
Таким образом пока страница содержит HTML с фразой "Internal Server Error" скрипт будет обновлять страницу, и делать это будет до посинения, вплоть до скончания веков, но как только этой фразы не будет, или свет выключат...страница обновляться перестанет.

далее разбирайся сам...умываю руки
Удачи.


по моему ты все усложняешь, писал когда-то знакомому скрипты под:

скрытый текст
VPrka.com, VKtarget.ru и TurboLiker.ru

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

писал выше продолжаю - хочу вот так

скрытый текст
41344a3f14e1.png

можно было не рисовать, предыдущий пост подразумевает именно такое действие

можешь  скинуть макро? я посмотрю и сделаю по аналогии . Вот недавно начитался , хочу сделать Вложенные циклы.
Так как для меня ещё язык программирования тугой - эта статья сильно помогла. Кого интересует понятие цикла в програмировании - почитайте, написано очень доступным языком - напишите в википедии "Цикл (программирование)"

kolshix пишет

можешь  скинуть макро? я посмотрю и сделаю по аналогии . Вот недавно начитался , хочу сделать Вложенные циклы.
Так как для меня ещё язык программирования тугой - эта статья сильно помогла. Кого интересует понятие цикла в програмировании - почитайте, написано очень доступным языком - напишите в википедии "Цикл (программирование)"

спасибо, конечно, за совет, но я вам и без всяких статей любой цикл напишу
по поводу сделать по аналогии - не получится, так как уже вам сказал, что в моем скрипте все работает на чистом имакросе без всяких языков программирования, в т.ч. и javascript'a ... только чистый имакрос

30-10-2013 00:38:37
причину, почему там все на имакросе может и скупо, но тоже описал.... там не требуется язык программирования для выполнения каких либо действий, вполне хватает функционала имакроса

ввиду того, что для вас еще очень далеко само понятие программирование, вам пока что сложно это понять и хочется образно выражаясь, по-воображать и по-напридумывать всяких лишних действий, которые там совершенно ненужны и неуместны

30-10-2013 00:44:00
также могу добавить, что не смотря на то, что я ни разу не был на выше обозначенном сайте (http://sm........x.ru/)
судя по приведенному несколькими постами выше кода имакроса, практически достаточно для выполнения требуемых вам действий, просто поймите как действует имакрос с включенным игнором ошибок, который у вас, как-раз таки включен, и вы решите вашу задачу за 5 минут не придумывая велосипед

аймакрос умеет работать циклами? покажи макрос пожалуйста, а если у меня что-то не будет получатся, я сразу напишу.
Кстати сейчас у меня работает аймакрос без циклов, просто некорректно вписывать 10 (или сколько потребует сайт) раз одно задание, да и частенько выбивают моменты где нужно нажать не OK, а отмену и удалить задание вручную, был бы цыкл и услови (да, нет, если), было бы намного проще. Вот такая вот загвоздочка.

kolshix пишет

аймакрос умеет работать циклами?

нет не умеет
но при этом он написан для цикличного выполнения действий (для автоматизации рутинных/однообразных процессов), т.е. количество циклов ты задаешь в самом имакросе, а то что он выполнит за 1н цикл написано у тебя в скрипте (*.iim)
если данных действий, не достаточно, пишется макрос на javascript'e который своими действиями создает имакрос-скрипт, и в таком варианте уже возможна работа с циклами и условиями и с многими другими возможностями

30-10-2013 02:07:13

kolshix пишет

частенько выбивают моменты где нужно нажать не OK, а отмену и удалить задание вручную, был бы цыкл и услови (да, нет, если), было бы намного проще. Вот такая вот загвоздочка.

в данном случае уже необходимо писать скрипт на js - он позволит тебе выполнить данные условия в зависимости от ситуации

30-10-2013 02:11:07

kolshix пишет

просто некорректно вписывать 10 (или сколько потребует сайт) раз одно задание

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

30-10-2013 02:13:59
повторюсь, ты не понимаешь, что такое программирование, не понимаешь где на определенные вещи можно просто забить, не всегда нужно обрабатывать все варианты событий, если их можно просто проигнорировать

30-10-2013 02:18:43
прежде чем задавать кучу ненужных вопросов, посиди и проштудируй эту ветвь форума, тут есть ответы практически на все вопросы, к тому же данные неоднократно и разными людьми, в том числе и мной
погугли, есть много статей по имакросу, хотя и во многом друг друга дублирующих, но если не дружишь с инглишем, то тебе они помогут, вики и форум по имакросу, при знании инглиша или виртуозном владении переводчиком, помогут тоже

Я снова вернулся. вот что-то типо js кода цикла

скрытый текст
for??????? ( i = 1; i <= 2; i++) {
    iimDisplay("loop "+i);
    retcode = iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Ok");
    if (?????????retcode >0 ) {          // an error has occured

    retcode = iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Close")
    retcode = iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Delete")
}

}
Финиш


Смысл вот в чём:
Всплывает окно - макрос ждёт слово OK (видно на скрипте), потом не находит его, повторяет ещё раз поиск, если не нашел  нажимает закрыть  и удалить (видно на скрипте) , а вот ели нашел OK - выполняет OK и продолжает работу. Не пойму в тегах отмечу курсивом и вопросами.
Не нужно мне рекомендовать пропуск ошибок или прописать два раза поиск OK - такие советы отрицательны по времени, объясняю Два раза поиск ок 6 сек + 6 сек =12 сек на отмену, а так ели Ок нашел скрипт будет тратить ещё 6 сек. - Короче на протяжении скрипта повторами я могу  набрать секунд 30-50 - это оч много

kolshix пишет

Я снова вернулся...

рад за Вас

kolshix пишет

Не пойму ...

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

31-10-2013 01:52:46
про то, что в данном монологе, я не вижу ни одного вопроса, упоминать стоит?

31-10-2013 01:57:29

kolshix пишет

Не нужно мне рекомендовать пропуск ошибок ... - такие советы отрицательны по времени

неумение или нежелание пользоваться вики и хелпом по имакросу, поиском по данной ветви форума - не означает, что тот или иной совет не верен и не подходит под те или иные задачи, в том числе и озвученные Вами ранее

скрытый текст
подмарофетил

Выделить код

Код:

1 for (;;) {
2 for (;;) {
3      retcode = iimPlay("CODE: TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание");
4      if (retcode >0 ) {   // an error has occured
5       break;
6                 }
7
8   }
9    retcode = iimPlay("Удалось");
10    retcode = iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Ok");
11 }
12
13
?14   retcode = iimPlay("CODE:TAG POS=1 TYPE=SPAN ATTR=TXT:close")


попробую сформулировать так: если действие в строке 10 ложно (не удалось выполнить) то повторить его ещё один раз, если и последующий раз действие ложно (меня интересует только 2 повтора) то перейти к заданию строки 14, но если деиствие строки 10 удалось выполнить (истина) скрипт просто перейдёт в начало

кстати скрипт работает, вот только загвостка с кнопкой OK, периодически вылетает что задание уже выполнено или нужно повторить проверку и тд. (4 или 3 ветви) чтоб не замарачиваться, я просто добавлю кнопку удолить

скрытый текст
ну вот что-то типо конечного только во  в конце цикл храмает буду искать решение

Выделить код

Код:

/* How to do looping ( i = 1; i <= 2; i+0)*/

for (;;) {
for (;;) {
       iimPlay("случаеное нажатие по времени.iim")
       retcode = iimPlay("CODE: TAG POS=1 TYPE=A ATTR=TXT:Посмотреть<SP>задание");
   if (retcode >0 ) {          // an error has occured
        break;
   }

}
    retcode = iimPlay("Удалось");
     
    for (i=1;;) { /// [b]осталось тут подшаманить и поставить нужный тег[/b]
        i = iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Ok");
            if (i <0 ) {          // an error has occured
                iimPlay("CODE:TAG POS=1 TYPE=SPAN ATTR=TXT:close");
                iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Список<SP>заданий","CODE:TAGWAIT SECONDS=3");
                iimPlay("CODE:TAG POS=3 TYPE=A ATTR=HREF:javascript:");
                break;
            if (i>1) {
        break;
        }
}
}
}


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

kolshix пишет

подмарофетил
.....

повторюсь:

в данном монологе, я не вижу ни одного вопроса

31-10-2013 15:38:11
и даже не могу догадаться, где он подразумевается

Вот возникли 2 вопороса
есть код iim

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAG POS=1 TYPE=BUTTON ATTR=TXT:Перейти<SP>на<SP>целевую<SP>страницу
TAB T=2
FRAME F=0
TAG POS=1 TYPE=BUTTON ATTR=TXT:Подписаться \\ один 
TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу \\ два 
TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья \\ три
TAB CLOSE
VERSION BUILD=8510617 RECORDER=FX
'URL GOTO=http://smmok-55gnm1x.ru/offer/index
TAG POS=1 TYPE=BUTTON ATTR=TXT:Я<SP>выполнил<SP>задание
WAIT SECONDS=3


на сайте вконтакте кнопки могут изменяться, меня интересует 3штуки (Добавить в друзья, Подписаться, Вступить в группу) - на скрипте видно - вопрос Можно ли сделать так чтоб imacros одновременно в период 6 сек искал все три,  и если нашёл какую-то одну,  то другие либо пропускал, либо не обращал внимание.      У меня сейчас макрос работает в этом промежутке 13 секунд - сначала ищет  (смотреть скрипт) один, потом два, потом три не зависимо от истинного или ложного результата я его хочу сократить до 2-6 секунд
конечно теги

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

помагают , ну а если кнопки варьироваться будут от 1до10 я тогда 1мин ждать буду
вопрос 2
Нужна имитация нажатия клавиш вот сайт и пример

скрытый текст
de1e45cdb2327893d992599c6b1a03ec.jpg

kolshix пишет

конечно теги

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

помагают , ну а если кнопки варьироваться будут от 1до10 я тогда 1мин ждать буду

писал уже, подробнее почитайте о имакросе, есть команда

SET !TIMEOUT 1

по умолчанию равная 6 секундам, 1 - в данном примере = 1 секунде ожидания нахождения того или иного элемента на странице

Выделить код

Код:

писал уже, подробнее почитайте о имакросе, есть команда
    SET !TIMEOUT 1

спасибо, помогло, правда немного не понятно с тегом, но я его в отдельный файл загнал , чтоб он на весь скрипт не действовал.

Кстати я думал что данный тег влияет только на ожидание загрузки страницы - вот почему я его пропустил

СПАСИБО!!!

в данной ситуации SET !TIMEOUT 1 правильней использовать чем SET !TIMEOUT_STEP 1 хотя именно 2й влияет на скорость поиска элементов, а первый на скорость загрузки страницы (проверено на собственном опыте, хотя и не всегда это верно)

Спасибо, теперь мой скрипт работает намного быстрее

По поводу нажатий клавиш клавиатуры не подскажите?

kolshix пишет

По поводу нажатий клавиш клавиатуры не подскажите?

каких клавиш, и зачем это нужно?

Вот писал
Нужна имитация нажатия клавиш вот сайт и пример

скрытый текст
de1e45cdb2327893d992599c6b1a03ec.jpg

все это делается имакросом без всяких нажатий клавиш

01-11-2013 00:32:48
данное описание дано для ускорения ручного ввода, но эмуляция нажатий клавиш тут совершенно не нужна при работе имакроса

я так понимаю с тегом   !EXTRACT нужно работать?

kolshix пишет

я так понимаю с тегом   !EXTRACT нужно работать?

в том числе

нужно нажать на это место

Выделить код

Код:

TAG POS=1 TYPE=B ATTR=TXT:текст постоянно меняется

после TXT; текст постоянно меняется как можно сделать чтоб imacroc реагировал на место нажатия не зависимо от слов (что-то типо *)

2 не могу определить положение отмечено красным

скрытый текст
de1e45cdb2327893d992599c6b1a03ec.jpg

так и сделать вместо

TAG POS=1 TYPE=B ATTR=TXT:текст

написать

TAG POS=1 TYPE=B ATTR=TXT:*

FAQ читать когда-нибудь будем?

InfSub пишет

так и сделать вместо

TAG POS=1 TYPE=B ATTR=TXT:текст

написать

TAG POS=1 TYPE=B ATTR=TXT:*

FAQ читать когда-нибудь будем?

TAG POS=1 TYPE=B ATTR=TXT:* не срабатывает
ЕЩЁ ВОПРОС

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:text_add_url EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}

TAB OPEN
TAB T=2
URL GOTO= как сюда вставить информацию из EXTRACT ? - где-то видел , не могу вспомнить.


сам спроси , сам решил - нужно вставить {{!VAR1}}

kolshix пишет

скрытый текст

InfSub пишет

так и сделать вместо

TAG POS=1 TYPE=B ATTR=TXT:текст

написать

TAG POS=1 TYPE=B ATTR=TXT:*

FAQ читать когда-нибудь будем?


TAG POS=1 TYPE=B ATTR=TXT:* не срабатывает

потому что нужно читать мануал, он срабатывает только не на нужный вам элемент

01-11-2013 18:08:05

kolshix пишет

ЕЩЁ ВОПРОС

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:text_add_url EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}

TAB OPEN
TAB T=2
URL GOTO= как сюда вставить информацию из EXTRACT ? - где-то видел , не могу вспомнить.


сам спроси , сам решил - нужно вставить {{!VAR1}}

не проще ли сразу написать URL GOTO={{!EXTRACT}}

Выделить код

Код:

не проще ли сразу написать URL GOTO={{!EXTRACT}}

Для подобных советов , как раз и лазаю по форумам,

ладно ещё почитаю, поищу как клацать ссылку у которой название постоянно меняется

Вот только что установил макрос на хром и обратил внимание что хром не работает с js, как в хроме запустить js?

kolshix пишет
Выделить код

Код:

не проще ли сразу написать URL GOTO={{!EXTRACT}}

Для подобных советов , как раз и лазаю по форумам,

ладно ещё почитаю, поищу как клацать ссылку у которой название постоянно меняется

Вот только что установил макрос на хром и обратил внимание что хром не работает с js, как в хроме запустить js?

ни как

а если через iim вызвать js?
Кстати, есть ли возможность запустить imacros в 2 раза (что-то типо 2 раза открыть браузер) Я пробовал не получается, имею ввиду через мазила портабл

kolshix пишет

а если через iim вызвать js?

RTFM

kolshix пишет

Кстати, есть ли возможность запустить imacros в 2 раза (что-то типо 2 раза открыть браузер) Я пробовал не получается, имею ввиду через мазила портабл

есть

скрытый текст

Выделить код

Код:

1   for (i=1;i<=1;i++) {
2            i = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Закрыть");
3     if (i>1) {  
4        iimPlay("TAG POS=1 TYPE=A ATTR=TXT:x");
5        iimPlay("TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю");
6        break;}
7


НЕ могу осилить. Строка два должна повториться 1 раз. Хочу чтоб скрипт если нашел строчку 2 (кнопку закрыть) выполнил строки 4-6 , если кнопку не нашел то просто продолжил действия и перешёл на строку 7

я бы сделал так

скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Закрыть  EXTRACT=TXT");
zak=iimGetLastExtract();
if (zak == 'Закрыть' ) {
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:x");
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю");
        }


но вначале надо проверить что берет extract, командой в .iim

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Закрыть  EXTRACT=TXT

и этот текст и будет в

Выделить код

Код:

zak == 'Закрыть'

ну или так:

скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Закрыть  EXTRACT=TXT");
zak=iimGetLastExtract();

        var word = 'Закрыть';
        var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');    
        zak=zak.replace(myRegExp,"zakrit");

if (zak == 'zakrit' ) {
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:x");
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю");
        }


скорее всего можно проще, но я делаю так.

spy686 пишет

я бы сделал так


скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Закрыть  EXTRACT=TXT");
zak=iimGetLastExtract();

        var word = 'Закрыть';
        var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');    
        zak=zak.replace(myRegExp,"zakrit");

if (zak == 'zakrit' ) {
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:x");
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю"); }


скорее всего можно проще, но я делаю так.

попробыва - что-то не так - скрипт выполняет поиск слова закрыть

скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Закрыть  EXTRACT=TXT");


и независимо от того удачен или неудачен поиск выполняет
скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:x");
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю"); }


меня интересует чтоб выполнялись строки
скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:x");
Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю"); }


только во время присутствия
скрытый текст

Выделить код

Код:

Code = iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Закрыть


я так понял это место не хочет работать   if (zak == 'Закрыть')  ведь если слово "закрыть" не нашлось какого х... оно срабатывает?

нашел жесткое западло . этот код
TAG POS=1 TYPE=A ATTR=TXT:Закрыть
реагирует на верхний уголок страницы, даже если на странице нет записи "закрыть", а также он реагирует на нужное мне окно div на котором  есть слово закрыть .
Можно ли как-то заставить программу реагировать на внешний html

Выделить код

Код:

<a onclick="Closewin(); return false;">Закрыть</a>

может мне дать ссылку на страницу чтоб вы посмотрели как  реагирует код TAG POS=1 TYPE=A ATTR=TXT:Закрыть

kolshix пишет

может мне дать ссылку на страницу чтоб вы посмотрели как  реагирует код TAG POS=1 TYPE=A ATTR=TXT:Закрыть

ссылку встудию

spy686 пишет
kolshix пишет

может мне дать ссылку на страницу чтоб вы посмотрели как  реагирует код TAG POS=1 TYPE=A ATTR=TXT:Закрыть

ссылку встудию

)))))) Улыбнуло
http://smmka.ru/
Зайдите через вконтакте
выберите любое задание подождите 15 сек
нажмите подтвердить
выскочит   окно <--- оно то и нужно

kolshix пишет
spy686 пишет
kolshix пишет

может мне дать ссылку на страницу чтоб вы посмотрели как  реагирует код TAG POS=1 TYPE=A ATTR=TXT:Закрыть

ссылку встудию

)))))) Улыбнуло
http://smmka.ru/
Зайдите через вконтакте
выберите любое задание подождите 15 сек
нажмите подтвердить
выскочит   окно <--- оно то и нужно

ябы отталкивался от этого:
еогда последнее окошко всплывает, запусти

TAG POS=1 TYPE=DIV ATTR=ID:win_text EXTRACT=TXT

Скажите пожалуйста, можно ли выводить всплывающее окно c выбором значений (не как в команде PROMPT, где нужно вводить значение)? Как прописать в команде PROMPT несколько значений сразу ( !VAR1, !VAR2 и !VAR3 )

kurt-c пишет

Скажите пожалуйста, можно ли выводить всплывающее окно c выбором значений (не как в команде PROMPT, где нужно вводить значение)? Как прописать в команде PROMPT несколько значений сразу ( !VAR1, !VAR2 и !VAR3 )

PROMPT !VAR1<SP>!VAR2<SP>....

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

02-11-2013 10:59:02

InfSub пишет
kurt-c пишет

Скажите пожалуйста, можно ли выводить всплывающее окно c выбором значений (не как в команде PROMPT, где нужно вводить значение)? Как прописать в команде PROMPT несколько значений сразу ( !VAR1, !VAR2 и !VAR3 )

PROMPT !VAR1<SP>!VAR2<SP>....

Пишет  SyntaxError: wrong format of PROMPT

kurt-c пишет

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

02-11-2013 10:59:02

InfSub пишет
kurt-c пишет

Скажите пожалуйста, можно ли выводить всплывающее окно c выбором значений (не как в команде PROMPT, где нужно вводить значение)? Как прописать в команде PROMPT несколько значений сразу ( !VAR1, !VAR2 и !VAR3 )

PROMPT !VAR1<SP>!VAR2<SP>....

Пишет  SyntaxError: wrong format of PROMPT

да, я опечатался (забыл про скобки):

PROMPT {{!VAR1}}<SP>{{!VAR2}}<SP>....

либо проще

PROMPT "{{!VAR1}} {{!VAR2}} ...."

Не так выразился.
Есть команда:

PROMPT "вопрос"   !VAR1
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_TextBox2 CONTENT={{!VAR1}}


!VAR1 - значение, которое ввожу в сплывающем окне,  а в определенную строку {{!VAR1}} - вставляет это значение.


А вопрос в том как сделать так, чтобы в одном всплывающем окне можно было самостоятельно ввести два разных значения?

kurt-c пишет

А вопрос в том как сделать так, чтобы в одном всплывающем окне можно было самостоятельно ввести два разных значения?

честно говоря не совсем понял о чем Вы...
если подразумевается, всплывающее окно на самом сайте, и в нем есть 2 поля куда вводить ... то тегами...

02-11-2013 11:30:05

kurt-c пишет

Есть команда:
PROMPT "вопрос"   !VAR1

Все понял о чем речь, не сталкивался просто с такой вариацией использования PROMPT'a в чистом имакросе
Думаю, что ни как, так как в данном случае используется стандартный js-диалог, а он не подразумевает несколько полей ввода, либо, как альтернативу использовать какой либо разделитель в тексте, а потом через eval разбивать строку по данному разделителю, но опять же из-за специфики имакроса, придется сначала брать левую часть текста (до разделителя), потом правую ( отдельной строкой кода )
т.е.

скрытый текст

Выделить код

Код:

PROMPT "вопрос" !VAR1
SET !VAR2 EVAL (получаем значение до разделителя из {{!VAR1}} )
SET !VAR3 EVAL (получаем значение после разделителя из {{!VAR1}} )

Это всплывающее окно выводится сразу после исполнения команды PROMPT

Вот пример imacros:

скрытый текст

Выделить код

Код:

VERSION BUILD=6060703 RECORDER=CR
URL GOTO=https://www.google.by/
PROMPT "Запрос"  !VAR1
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:gbqf ATTR=ID:gbqfq CONTENT={{!VAR1}}
TAG POS=1 TYPE=BUTTON FORM=ID:gbqf ATTR=ID:gbqfb


Попробуйте и поймете о чем я. Только хотелось бы  вводить ответы на разные запросы в одном окне (!VAR1 и !VAR2)

02-11-2013 11:35:32
Спасибо

02-11-2013 11:42:52

скрытый текст

Выделить код

Код:

PROMPT "вопрос" !VAR1
SET !VAR2 EVAL (получаем значение до разделителя из {{!VAR1}} )
SET !VAR3 EVAL (получаем значение после разделителя из {{!VAR1}} )


Можно какой-нибудь пример?

kurt-c пишет

...
02-11-2013 11:42:52

скрытый текст

Выделить код

Код:

PROMPT "вопрос" !VAR1
SET !VAR2 EVAL (получаем значение до разделителя из {{!VAR1}} )
SET !VAR3 EVAL (получаем значение после разделителя из {{!VAR1}} )


Можно какой-нибудь пример?

пример:

скрытый текст

Выделить код

Код:

' для примера разделителем является вертикальная черта |
PROMPT "Запрос" !VAR1
SET !VAR2 EVAL("var res = \"\"; var b = \"{{!VAR1}}\".indexOf(\"|\"); res = \"{{!VAR1}}\".substring(0, b);")
SET !VAR3 EVAL("var res = \"\"; var a = \"{{!VAR1}}\".indexOf(\"|\")+1; var b = \"{{!VAR1}}\".length; res = \"{{!VAR1}}\".substring(a, b);")

' результат:
PROMPT "{{!VAR1}}\n{{!VAR2}}\n{{!VAR3}}"

spy686 пишет

TAG POS=1 TYPE=DIV ATTR=ID:win_text EXTRACT=TXT

тоже не срабатывает - находит положение в верхней части экрана не зависимо есть ли всплывающая таблица или нет даже не знаю как быть ;(

kolshix пишет
spy686 пишет

TAG POS=1 TYPE=DIV ATTR=ID:win_text EXTRACT=TXT

тоже не срабатывает - находит положение в верхней части экрана не зависимо есть ли всплывающая таблица или нет даже не знаю как быть ;(

приложи скрин окошка о котором говоришь, в спойлер, ибо у меня ни чего не всплывает, если следовать твоему описанию

скрытый текст
19a4fa11bed6d54156ecdca64240ce73.jpg
6cac13816b8e5327917a23b9d5406846.jpg

как я понимаю, речь именно об этом сообщении (см. спойлер):

kolshix пишет

скрытый текст
6cac13816b8e5327917a23b9d5406846.jpg

странно, но у меня оно не появляется в отличие от первого....

т.е. вы не выполняете задание и спойлер не появляется?

kolshix пишет

т.е. вы не выполняете задание и спойлер не появляется?

нет

нашел полурешени, оно конечно работает хоть и правильно, но придётся вставлять разные варианты, а там посмотрим, вот код  (я считаю что данное решение не корректно для программирования но пусть будет "на войне для победы все средства хороши" )

скрытый текст

Выделить код

Код:

for (i=1;i <=1;i++){
    i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:Вы<sp>не<sp>вступили<sp>в<sp>группу");
    if (i<0 ) {
    break;
      } 
    if (i=2){
        iimPlay("code:TAG POS=1 TYPE=A ATTR=TXT:Закрыть");
        iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:x");
    iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Подтверждаю");
      }
      }


i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT: extract txt")  то он какого-то хрена срабатывает в ненужном мне месте.

так приходиться непосредственное и точное  условие указывать, хоть и накладно но пусть будет
i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:Вы<sp>не<sp>вступили<sp>в<sp>группу"); бывает там написано задание уже выполн и т.д. и т.п. Тут мне поможет великая сатанинская " * "

kolshix пишет

i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT: extract txt")  то он какого-то хрена срабатывает в ненужном мне месте.

так приходиться непосредственное и точное  условие указывать, хоть и накладно но пусть будет
i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:Вы<sp>не<sp>вступили<sp>в<sp>группу"); бывает там написано задание уже выполн и т.д. и т.п. Тут мне поможет великая сатанинская " * "

i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*  EXTRACT=TXT");

spy686 пишет
kolshix пишет

i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT: extract txt")  то он какого-то хрена срабатывает в ненужном мне месте.

так приходиться непосредственное и точное  условие указывать, хоть и накладно но пусть будет
i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:Вы<sp>не<sp>вступили<sp>в<sp>группу"); бывает там написано задание уже выполн и т.д. и т.п. Тут мне поможет великая сатанинская " * "

i= iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*  EXTRACT=TXT");

Я ужевидел Ваше сообщение ,  оно очень полезно, я им буду пользоваться в дальнейшем но к данному сайту не подходит - на этом сайте, мать бы его, два места на которые реагирует этот код, и придётся пользоваться условием и звёздачкой

Спасибо за ответ который ниже, ранее я и спрашивал как бить по селектору . Вот теперь увидел и запомнил и использовал и получилось. Супер!!!

kolshix, команда - закрывает конкретно Ваше окно и не реагирует на что-либо еще:

EVENT TYPE=CLICK SELECTOR="#cl_btn>A" BUTTON=0

в будущем просьба задавать конкретные вопросы, а не разводить здесь флуд, большие куски кода прячем в спойлер, так же как ссылки и картинки

Все знают о репосте вконтакте, но у меня не получается вот код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=I ATTR=ID:*like_icon* 
TAG POS=1 TYPE=SPAN ATTR=TXT:Рассказать<SP>друзьям //

но чтоб выскочил span нужно удерживать положение мыши на сердечке, но скрипт просто нажимает на сердечко, но не задерживается, я так понял можно нажать через команду EVENT TYPE=CLICK SELECTOR=
Ещё не шарю что нужно извлекать из кода  я так понял вот это
<span class="like_publish_label">Рассказать друзьям</span> - но что конкретно сократить  ещё не шарю


скрытый текст
7df139ce4412fbc12d90e62148f47f07.jpg

незнаю как ситуацияна vk сейчас, но юзал такую команду (сложно, но что есть)

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Ответить<SP>на<SP>своей<SP>странице
WAIT SECONDS=1
TAG POS=1 TYPE=SPAN ATTR=class:rel_date*
WAIT SECONDS=5
TAG POS=1 TYPE=A ATTR=TXT:Поделиться
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON ATTR=ID:*_share_*
WAIT SECONDS=1
TAG POS=1 TYPE=SPAN ATTR=TXT:Отправить<SP>другу
WAIT SECONDS=1
TAG POS=1 TYPE=span ATTR=TXT:Друзья<SP>и<SP>подписчики
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=ID:like_share_send
WAIT SECONDS=1

kolshix пишет

Все знают о репосте вконтакте, но у меня не получается вот код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=I ATTR=ID:*like_icon* 
TAG POS=1 TYPE=SPAN ATTR=TXT:Рассказать<SP>друзьям //

но чтоб выскочил span нужно удерживать положение мыши на сердечке, но скрипт просто нажимает на сердечко, но не задерживается, я так понял можно нажать через команду EVENT TYPE=CLICK SELECTOR=
Ещё не шарю что нужно извлекать из кода  я так понял вот это
<span class="like_publish_label">Рассказать друзьям</span> - но что конкретно сократить  ещё не шарю


Советую забить на данный вариант вовсе, ибо нажать можно действительно только event'ом, но чтобы "привязать" event к этой надписи вам придется учесть слишком много условий

я так понял про репост можно забыть.?

kolshix пишет

я так понял про репост можно забыть.?

думаю, что да, в event, привязка идет к стилям (в данном случае), а они меняются в зависимости от типа поста и номер у них уникальный... в общем, не вижу смысла на них заморачиваться, не стоит того

подобный вопрос уже был. Пройдет ли тут такой фокус

скрытый текст
c2283acc7ded684ab7ac493dcb001378.jpg

либо только через координаты X / Y  ?

все зависит от html-кода фрагмента

03-11-2013 03:14:58
X/Y - самый худший способ, т.к. при разных разрешениях мониторов и т.д. код будет не совместим
к тому же ссылка должна быть всегда в одном и том же месте

Выделить код

Код:

X/Y - самый худший способ

- это я знаю, а Вам не сложно будет проверить html-код фрагмента?

hgsdfss234 пишет

...
сколько будет стоить ?

просьба подобные вопросы задавать либо в ПМ, либо, как минимум скрывать в спойлер, т.к. подобные вопросы не имеют ни какого отношения к тебе данной ветви форума

Подскажите, пожалуйста, как в скрипте выполнить другой скрипт по достижению определенного условия?
например:

скрытый текст

Выделить код

Код:

if (j==10) {
                retcode = iimPlay("test.js");
             }

делаю так, но почему-то выдается ошибка

А с макросом все нормально проходит:
if (j==10) {
                retcode = iimPlay("test.iim");
             }


В чем проблема может быть?

bogdanov63 пишет

Подскажите, пожалуйста, как в скрипте выполнить другой скрипт по достижению определенного условия?
например:

скрытый текст

Выделить код

Код:

if (j==10) {
                retcode = iimPlay("test.js");
             }

делаю так, но почему-то выдается ошибка

А с макросом все нормально проходит:
if (j==10) {
                retcode = iimPlay("test.iim");
             }


В чем проблема может быть?

ни как, все должно быть в одном файле, внешними файлами могут быть только *.iim скрипты

А можно сделать как-нибудь наоборот, например макрос в котором выполняются последовательно скрипты test1.js, test2.js и т.д. ?

Есть идея по поводу репостов вконтакте!!!

"вот что я хочу "
Сразу предупредупреждаю, что задумка мне нужна для букса
1 - заходим  на сайт букс
2 - там кнопка с названием "перейти"
(эти два этапа скрипт выполняет легко по кнопке "запись")
3 - далее TAB T=2
4 - вот тут то и мне нужна помощь  - к примеру мы перешли сюда http://vk.com/wall-60366997_51
5 - хочу чтоб скрипт скопировал адрес http://vk.com/wall-60366997_51
6 - в скопированый адрес в начало добавил символы "m."
7 - теперь адрес выглядит так http://m.vk.com/wall-60366997_51 - а эта мобильная версия и тут уже легко через iim назначить кнопку "мне нравиться" и рассказать всем

"Вот примерный код, но нужна помощь"
VERSION BUILD=8530828 RECORDER=FX
TAB T=1
SET !EXTRACTADD {{!URLCURRENT}}
SET !VAR1 {{!URLCURRENT}}
TAB OPEN
TAB T=2
WAIT SECONDS=1
URL GOTO=m.{{!VAR1}}

но если так сделать получится заглюченная ссылка - Меня интересует как её отредактироватть
То, что получилось  m.http://vk.com/wall-60366997_51
То, что нужно          http://m.vk.com/wall-60366997_51

kolshix пишет

но если так сделать получится заглюченная ссылка - Меня интересует как её отредактироватть
То, что получилось  m.http://vk.com/wall-60366997_51
То, что нужно          http://m.vk.com/wall-60366997_51

через js функцию replace()

можно ли при помощи imacrosa закрыть браузер?

bogdanov63 пишет

можно ли при помощи imacrosa закрыть браузер?

можно:

TAB CLOSEALLOTHERS
TAB CLOSE

Благодарю!

InfSub пишет
kolshix пишет

но если так сделать получится заглюченная ссылка - Меня интересует как её отредактироватть
То, что получилось  m.http://vk.com/wall-60366997_51
То, что нужно          http://m.vk.com/wall-60366997_51

через js функцию replace()

"что-то не выходит"
VERSION BUILD=8530828 RECORDER=FX
TAB T=1
SET !EXTRACTADD {{!URLCURRENT}}
SET !VAR1 EVAL("str=\"{{!URLCURRENT}}\"; str.replace("http"g,"m.")")
TAB OPEN
TAB T=2
WAIT SECONDS=1
URL GOTO= {{!VAR1}}

'SyntaxError: wrong format of SET command, line: 4 (Error code: -910)

kolshix пишет

SET !EXTRACTADD {{!URLCURRENT}}

Зачем это? в приведенном примере оно ни какого функционала не выполняет

kolshix пишет

SET !VAR1 EVAL("str=\"{{!URLCURRENT}}\"; str.replace("http"g,"m.")")

'SyntaxError: wrong format of SET command, line: 4 (Error code: -910)

естественно ошибка... экранировать " кто будет? да и g у вас, что? переменная? либо в кавычки тоже, либо запись должна иметь вид регулярного выражения, тогда кавычки не нужны
да и что на что вы меняете? http на m. ??? и что получится? m.://domain.name/ ??

07-11-2013 00:18:42
и не проще ли сразу написать:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(....)")

чем объявлять переменную, а потом с ней работать, зачем лишнее действие?

Вам нужно сделать репост в контакте ПОЖАЛУЙСТА!
(InfSub - если Вас будут спрашивать о репосте, шлите всех сюда )

"макрос.iim"
Как работает
скрытый текст
Для того чтоб сделать репост нужно навести мышь на сердечко (like) и подождать пока выскочит другая табличка - Такой способ конечно классный - и если Вы хорошо разбираетесь в программировании  то удачи в создании скрипта
Мой способ прост и примитивен - Нужно заставить макрос немного поменять адрес страницы на мобильную версию, а там уже все кнопки однотипные и Вы сможете узнать их координаты с помощью функции imacros "Запись"

код (писался под БУКС)
скрытый текст

Выделить код

Код:

VERSION BUILD=8530828 RECORDER=FX
'Prcr - репост
TAB T=1
TAG POS=1 TYPE=A ATTR=ID:task_*_button_perform
TAB T=2
' Всё что выше,  будет шапкой, которая сделается с помощью кнопки "запись" 
SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace("vk.","m.vk.")")
WAIT SECONDS=1
URL GOTO={{!VAR1}} 
TAG POS=1 TYPE=A ATTR=TXT:Мне<SP>нравится
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=TXT:Рассказать<SP>друзьям
' Всё что ниже писалось под особенности букса, в основном Вам понадобиться середина
WAIT SECONDS=1
TAB CLOSE
TAG POS=1 TYPE=A ATTR=ID:task_*_bar
WAIT SECONDS=3
TAG POS=1 TYPE=A ATTR=ID:_project_cat_vk_share

Небольшое описание команд
[spoiler]{{!URLCURRENT}} - копирует информацию с адресной строки (аналог команды !EXTRACT)
.replace("vk.","m.vk.") - способ замены - меняет компьютерную версию на мобильную.  Иначе  Replace - команда замены - Читать статьи


kolshix, хотя подобный код и работает:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace("vk.","m.vk.")")

но это ошибочный вариант, сейчас он работает, после следующего обновления - возможно, что - нет
повторяюсь, прочтите про экранирование спец. символов, это избавит Вас от большинства ошибок и лишних вопросов
За решение через мобильный контакт +1, были аналогичные решения под одноклассники, но под контакт, я не видел.

07-11-2013 04:02:04
как должно быть:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(\"vk.\",\"m.vk.\")")

или как аналог регулярного выражения:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(/vk./g,\"m.vk.\")")

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

подскажите, не могу вспомнить, как через iim открыть js

kolshix пишет

подскажите, не могу вспомнить, как через iim открыть js

вспомнить???=))))))))) да, Вам, сударь, в разработчики имакроса надо идти, а то они даже такого и не предполагали сделать в своем продукте

09-11-2013 02:35:44
максимально, что Вы можете сделать из *.iim - выполнить через EVAL() какие-либо операции на js, но не запуск *.js-файла

09-11-2013 02:41:04

скрытый текст
kolshix, прежде чем спрашивать, научитесь, наконец-то, гуглить!!! или хотя бы пользоваться поиском по данной ветке форума, на 90% заданных вами вопросов - уже были ответы на этом форуме!

каким образом можно запустить несколько копий imacros browser, чтобы можно было работать с несколькими аккаунтами?

макрос написанный в imacros browser некорректно исполняется через фаерфокс (а через мозиллу не могу написать такой же), поэтому способ с запуском нескольких профилей фаерфокса не актуальный. кто-то может помочь?

Ostap пишет

каким образом можно запустить несколько копий imacros browser, чтобы можно было работать с несколькими аккаунтами?макрос написанный в imacros browser некорректно исполняется через фаерфокс (а через мозиллу не могу написать такой же), поэтому способ с запуском нескольких профилей фаерфокса не актуальный. кто-то может помочь?

А если сделать копию папки  imacros browser и запустить ее?

spy686 пишет

А если сделать копию папки  imacros browser и запустить ее?

spy686, пробовал. не помогло, у всех браузерах авторизация с одного аккаунта. даже архивировал эти папки и запускал с архивов.
может есть еще какие-то предложения?

Ostap пишет
spy686 пишет

А если сделать копию папки  imacros browser и запустить ее?

spy686, пробовал. не помогло, у всех браузерах авторизация с одного аккаунта. даже архивировал эти папки и запускал с архивов.
может есть еще какие-то предложения?

создайте на компьютере нескольких пользователей и запускайте из под них

Народ. Посоветуйте хотя бы один рабочий пример)
Зайдя на сайт
URL GOTO=http://web-site.ru/
В исходном коде странице попадаются строки вида:
<div id="post-16986287_31169" class="post all own" onmouseover="wall.postOver('-16986287_31169')" onmouseout="wall.postOut('-16986287_31169')" onclick="wall.postClick('-16986287_31169', event)">
Как мне из первой попавшейся строки в переменную VAR1 закинуть 16986287_31169,
что лежит в
onmouseover="wall.postOver('-16986287_31169')" 
наверняка придётся подрубать EVAL c обрезкой остатков.

neokill пишет

Народ. Посоветуйте хотя бы один рабочий пример)
Зайдя на сайт
URL GOTO=http://web-site.ru/
В исходном коде странице попадаются строки вида:
<div id="post-16986287_31169" class="post all own" onmouseover="wall.postOver('-16986287_31169')" onmouseout="wall.postOut('-16986287_31169')" onclick="wall.postClick('-16986287_31169', event)">
Как мне из первой попавшейся строки в переменную VAR1 закинуть 16986287_31169,
что лежит в
onmouseover="wall.postOver('-16986287_31169')" 
наверняка придётся подрубать EVAL c обрезкой остатков.

через EXTRACT=HTM
потом EVAL()
как с помощью EVAL вытащить определенный кусок строки только недавно постил на страницах данного форума, поиск вам в помощь

InfSub пишет

через EXTRACT=HTM
потом EVAL()
как с помощью EVAL вытащить определенный кусок строки только недавно постил на страницах данного форума, поиск вам в помощь

Спасибо дружище. С остальным разберусь :music:

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

скрытый текст

Выделить код

Код:

VERSION BUILD=8530828 RECORDER=FX
TAB T=1
SET !EXTRACT_TEST_POPUP NO
SET !VAR2 0
ADD !VAR2 {{!LOOP}}
TAB T=1
TAG POS={{!VAR2}} TYPE=A ATTR=TXT:Увеличить
TAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится
TAG POS={{!VAR2}} TYPE=A ATTR=TXT:Закрыть


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

IvanKazakovtsev пишет

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

скрытый текст

Выделить код

Код:

VERSION BUILD=8530828 RECORDER=FX
TAB T=1
SET !EXTRACT_TEST_POPUP NO
SET !VAR2 0
ADD !VAR2 {{!LOOP}}
TAB T=1
TAG POS={{!VAR2}} TYPE=A ATTR=TXT:Увеличить
TAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится
TAG POS={{!VAR2}} TYPE=A ATTR=TXT:Закрыть


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

Скажу честно... все не правильно!
Хотите разобраться? Если да, то, пожалуйста, прокомментируйте каждую строку Вашего кода, что она делает и почему именно такой параметр выбран
Если нет, пишите в личку, что-нибудь придумаем=)

У меня тоже вопрос по поводу ВК. Недавно начал осваивать аймакрос. С помощью многоуважаемого пользователя InfSub написали макрос, который ставит лайки.
Но иногда на сервисе попадает капча, а вводить ее вручную очень не хочеться :| особенно если они часто попадаються.
хочется включить макрос и пойти гулять, а не сидеть и ждать ее :D

может есть способы как привязать исполняемый макрос к сервисам разгадывания капч (antigate, deathbycaptcha и др.)

Ostap пишет

У меня тоже вопрос по поводу ВК. Недавно начал осваивать аймакрос. С помощью многоуважаемого пользователя InfSub написали макрос, который ставит лайки.
Но иногда на сервисе попадает капча, а вводить ее вручную очень не хочеться :| особенно если они часто попадаються.
хочется включить макрос и пойти гулять, а не сидеть и ждать ее :D

может есть способы как привязать исполняемый макрос к сервисам разгадывания капч (antigate, deathbycaptcha и др.)

можно, почему бы и нет, в свое время, сам думал даже написать скрипт под капчу, но мне в итоге, оказалось без надобности

Парни. Выручайте!

скрытый текст

Выделить код

Код:

Есть группа в контакте
URL GOTO=http://vk.com/club9926532
Добавляю пост 
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Текст_поста
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


Но фотографию прикрепить не могу. Открывается только окно выбора фотки, но ничего не грузится. Как же это реализовать?

neokill пишет

Парни. Выручайте!
Есть группа в контакте

скрытый текст

Выделить код

Код:

URL GOTO=http://vk.com/club9926532
Добавляю пост 
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Текст_поста
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


Но фотографию прикрепить не могу. Открывается только окно выбора фотки, но ничего не грузится. Как же это реализовать?

мне не удалось заставить имакрос добавлять картинку в группу напрямую, попробуй обходные пути, например добавить ссылку на картинку, предварительно выложив ее на какой-нибудь ресурс типа фастпика

За совет спасибо. Но ситуация тоже интересная. Если в ручную ставлю ссылку на картинку, ранее закаченную на fastpic, то добавляется картинка как надо, а если на imacros'e то скидывается одна ссылка на картинку.

neokill пишет

За совет спасибо. Но ситуация тоже интересная. Если в ручную ставлю ссылку на картинку, ранее закаченную на fastpic, то добавляется картинка как надо, а если на imacros'e то скидывается одна ссылка на картинку.

используйте EVENT для ввода текста и адреса картинки

neokill пишет

Пытался через document.write вставлять, что-то не выходит

InfSub пишет
neokill пишет

За совет спасибо. Но ситуация тоже интересная. Если в ручную ставлю ссылку на картинку, ранее закаченную на fastpic, то добавляется картинка как надо, а если на imacros'e то скидывается одна ссылка на картинку.

используйте EVENT для ввода текста и адреса картинки

при чем тут document.write? я для чего Вам про EVENT написал?

скрытый текст

Выделить код

Код:

TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="http://i59.fastpic.ru/big/2013/1115/d0/e60d6d674e84cc81ba444f2ff6a61cd0.jpg"
EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="your text"
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Спасибо дружище, что не кидаешь. Приходится писать скрипт на лету, так что не удивляйся)))

neokill пишет

Спасибо дружище, что не кидаешь. Приходится писать скрипт на лету, так что не удивляйся)))

как говорится, "не во что"=)))))

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

скрытый текст

Выделить код

Код:

if (condition)
   statement1

[else

   statement2]


Как вшить это в imacros?

Odysseus пишет

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

скрытый текст

Выделить код

Код:

if (condition)
   statement1

[else

   statement2]


Как вшить это в imacros?

написать код на js

Odysseus пишет

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

скрытый текст

Выделить код

Код:

if (condition)
   statement1

[else

   statement2]


Как вшить это в imacros?

сам в программировании понимаю не много, вот мой "козлячий" пример. ("козлячий"- работает по магическим причинам)

скрытый текст
1 . через что Вы работаете?если через расширение в мазили - то создайте файл js (к примеру через блокнот) . если через iopus - то там по-мойму js нет
2 . тут уже создаём код js
[spoiler]

Выделить код

Код:

for (i=1;i <=1;i++){
    i= iimPlay("тут название вашего iim файла или команда- у Вас тут будет условие капчи");
    if (i<0 ) {
     break;
      } 
    if (i=2){
       
      тут пишем то, что выполняется в случае обнаружения капчи 

      }
      }


iimPlay    -  команда запуска макросов, команд  (файлов iim)
break; - команда которая выбрасывает с цыкла

вот как звучит:  если я МАКРОС не  нашёл капчу то выхожу с цыкла,  но если вдруг я найду капчу то выполню условие "if" и только потом выйду из цыкла

вот пример команды паузы на несколько секунд в js

Выделить код

Код:

iimPlay("CODE:WAIT SECONDS=5");

[/spoiler]

Привет. Снова поклонник вконта пишет) Есть код, кот. по слову находит группы и заходит в первую открытую.

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://vk.com/search?c[q]=TVM&c[section]=communities
SET !LOOP 1
TAG POS={{!loop}} TYPE=DIV ATTR=CLASS:labeled<SP>&&TXT:Открытая<SP>группа
TAG POS=R-1 TYPE=IMG ATTR=HREF:http://*.jpg
WAIT SECONDS=3


Зайдя остаётся в ней и сидит)
А как можно зациклить его так, что бы он по страничкам всех найденных групп прогулялся? Спасибо за помощь ;)

neokill пишет

Привет. Снова поклонник вконта пишет) Есть код, кот. по слову находит группы и заходит в первую открытую.

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://vk.com/search?c[q]=TVM&c[section]=communities
SET !LOOP 1
TAG POS={{!loop}} TYPE=DIV ATTR=CLASS:labeled<SP>&&TXT:Открытая<SP>группа
TAG POS=R-1 TYPE=IMG ATTR=HREF:http://*.jpg
WAIT SECONDS=3


Зайдя остаётся в ней и сидит)
А как можно зациклить его так, что бы он по страничкам всех найденных групп прогулялся? Спасибо за помощь ;)

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

a3ee7ef4d7c10ca97e7cde18234c8e11.png

Я пробовал, но ранее цикла не было) . Ты мне помог в посты ставить картинки (во многом в общем). огромный респект тебе. но что бы такой же трюк провернуть с комментариями я уже не знаю что делать!
Как следующий макрос можно преобразить, что бы он и в комментарии через EVENT вставлял ссылку на картинку? reply_field и reply_button я извлечь смог и закинул их в VAR2

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=DIV ATTR=TXT:Комментировать..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:reply_field-{{!VAR2}} CONTENT=супееерски)
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-{{!VAR2}}

neokill пишет

Я пробовал, но ранее цикла не было) . Ты мне помог в посты ставить картинки (во многом в общем). огромный респект тебе. но что бы такой же трюк провернуть с комментариями я уже не знаю что делать!
Как следующий макрос можно преобразить, что бы он и в комментарии через EVENT вставлял ссылку на картинку? reply_field и reply_button я извлечь смог и закинул их в VAR2
TAG POS=2 TYPE=DIV ATTR=TXT:Комментировать..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:reply_field-{{!VAR2}} CONTENT=супееерски)
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-{{!VAR2}}

Ваш комментарий достаточно путанный, суть понял, но с каким скриптом, куда ... в общем, опишите подробнее что Вы хотите

Хочется добавить картинку в комментарий. Ранее вы мне помогли это реализовать через EVENT ->

скрытый текст

Выделить код

Код:

TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="http://i59.fastpic.ru/big/2013/1115/d0/e60d6d674e84cc81ba444f2ff6a61cd0.jpg"
EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="your text"
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


Как то же самое сделать с комментариями?

neokill пишет

TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..

дайте в спойлере или в личку - ссыль на страницу, где была записана эта команда
в моем случае команда выглядит так:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение

Здравствуйте! Подскажите, пожалуйста, как использовать эту формулу из макроса

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"+\",\"\");")
в скрипте macros += "SET !VAR1 EVAL(\"var s="{{!EXTRACT}}"; s.replace("+","");\")"+s_n;


А то уже запутался, где экранировать "", постоянно выдает синтаксические ошибки
Помогите, пожалуйста!

bogdanov63 пишет

Здравствуйте! Подскажите, пожалуйста, как использовать эту формулу из макроса

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"+\",\"\");")
в скрипте macros += "SET !VAR1 EVAL(\"var s="{{!EXTRACT}}"; s.replace("+","");\")"+s_n;


А то уже запутался, где экранировать "", постоянно выдает синтаксические ошибки
Помогите, пожалуйста!

вы удалили слеши зачем-то, а их нужно удваивать

Люди, выручайте.
Есть код, но он не работоспособен :blush:

скрытый текст

Выделить код

Код:

VERSION BUILD=9052613
TAB T=1
TAB CLOSEALLOTHERS
URL GOTO=http://cheat-master.ru/forum/96-0-82 // Сайт
IMAGECLICK POS=1 IMAGE=C:\Users\Стриж\Documents\iMacros\Datasources\db.png CONFIDENCE=95 // Это идет поиск определенной картинки на сайте выше
ONDIALOG POS=1 BUTTON=YES  // По идее он должен жмякать Enter


Я так думаю он промахивается :mad:
Помогите, что не так?

Стриж пишет

Люди, выручайте.

скрытый текст
Есть код, но он не работоспособен :blush:

Выделить код

Код:

VERSION BUILD=9052613
TAB T=1
TAB CLOSEALLOTHERS
URL GOTO=http://cheat-master.ru/forum/96-0-82 // Сайт
IMAGECLICK POS=1 IMAGE=C:\Users\Стриж\Documents\iMacros\Datasources\db.png CONFIDENCE=95 // Это идет поиск определенной картинки на сайте выше
ONDIALOG POS=1 BUTTON=YES  // По идее он должен жмякать Enter

Я так думаю он промахивается :mad:
Помогите, что не так?

попробуй записать скрипт вот этими способами. Может что-то и получиться

скрытый текст
682f603e4bec638a9ab920a3fa90fe7e.jpg

InfSub пишет
bogdanov63 пишет

Здравствуйте! Подскажите, пожалуйста, как использовать эту формулу из макроса

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"+\",\"\");")
в скрипте macros += "SET !VAR1 EVAL(\"var s="{{!EXTRACT}}"; s.replace("+","");\")"+s_n;


А то уже запутался, где экранировать "", постоянно выдает синтаксические ошибки
Помогите, пожалуйста!

вы удалили слеши зачем-то, а их нужно удваивать

Выделить код

Код:

macros2 += "SET !VAR1 EVAL("var s=\\"{{!EXTRACT}}\\"; s.replace(\\" *\\",\\"\\");")"+s_n;

увы но так тоже не работает

и так тоже

Выделить код

Код:

macros2 += "SET !VAR1 EVAL(\"var s=\\"{{!EXTRACT}}\\"; s.replace(\\" *\\",\\"\\");\")"+s_n;

:/
Беда пришла, крутились у меня скрипты, прошло время сейчас опять хочу запустить скрипты но  не пашут они не запускается  файл макроса через http://run.imacros.net

делал через автоит

скрытый текст

Выделить код

Код:

$command = @ProgramFilesDir & "\Mozilla Firefox\firefox.exe -new-tab "
$url = "http://run.imacros.net/?m=R_onliner_REF.iim"
Run($command & $url, "", @SW_MAXIMIZE)
Run($command & $url, "", @SW_MAXIMIZE)

;~ Задержка 5 минут чтобы аймакрос успел скрипт отработать

Sleep ( 300000 )

;~ Закрываем все окна броузера

While 1
    Sleep(100)
    If ProcessExists("firefox.exe") Then
        ProcessClose("firefox.exe")
    Else
        ExitLoop
    EndIf  
WEnd


пробовал через батник тоже амое

Выделить код

Код:

start firefox "C:\Program Files\Mozilla Firefox\firefox.exe" http://run.imacros.net/?m=#Current.iim.

пробовал на 2-х компах тупо не запускает в firefox файл макроса.
Если руками запустить файл макроса то все нормально firefox бегает.

У меня стояло расписание что и когда делать ... и файлики стартер запускал по графику

Какие варианты возможны при вставки картинки в комментарий вк?
Если вместо текста ставить ссылку на изображение, то скидывается только ссылка, а изображения нет.
Каким образом надо расставить EVENT'ы, что бы происходила вставка изображения?
Вот код для обычной вставки, как его поправить?

скрытый текст

Выделить код

Код:

TAG POS=8 TYPE=DIV ATTR=TXT:Комментировать..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:reply_field-26759523_163898 CONTENT=ссылка_на_картинку
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-26759523_163898

bogdanov63 пишет
InfSub пишет
bogdanov63 пишет

Здравствуйте! Подскажите, пожалуйста, как использовать эту формулу из макроса

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(\"+\",\"\");")
в скрипте macros += "SET !VAR1 EVAL(\"var s="{{!EXTRACT}}"; s.replace("+","");\")"+s_n;


А то уже запутался, где экранировать "", постоянно выдает синтаксические ошибки
Помогите, пожалуйста!

вы удалили слеши зачем-то, а их нужно удваивать

Выделить код

Код:

macros2 += "SET !VAR1 EVAL("var s=\\"{{!EXTRACT}}\\"; s.replace(\\" *\\",\\"\\");")"+s_n;

увы но так тоже не работает

и так тоже

Выделить код

Код:

macros2 += "SET !VAR1 EVAL(\"var s=\\"{{!EXTRACT}}\\"; s.replace(\\" *\\",\\"\\");\")"+s_n;

в вашем случае нужно 3 слеша, а не 2 т.к. вы используете двойные кавычки в самом js

Обращаюсь к InfSub, т.к. он единственный кто вроде тут шарит)
У меня скрипт по сути готов, но осталось только картинки в коммент добавить. Дружище, не бросай в беде 8)
Не буду очередной раз писать и выкидывать пример. Он чуть выше. 09:37:44

подскажите как и кто стартует нужные скрипты по времени ?

стояла у меня свежая винда, поставил файрфокс  и через start firefox "C:\Program Files\Mozilla Firefox\firefox.exe" http://run.imacros.net/?m=#Current.iim.    подвисает и не запускает нужный скрипт.

подскажите может другую альтернативу  как планировщиков запускть нужный скрип макроса

Здравствуйте, помогите новичку.
Прописал задачу:
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
1)    обновить страницу
2)    поиск кнопки (ок) и нажатие на нее, если она есть
а как поставить на паузу(5мин)  действие, если  не было ошибки и было нажатие(ок)

roman99 пишет

Здравствуйте, помогите новичку.

ответ
REFRESH - обновить (но иногда лучше не обновлять, а ставить URL GOTO= АДРЕС СТРАНИЦЫ)
WAIT SECONDS=300 - ожидание 5мин.
TAG POS=1 TYPE=BUTTON ATTR=TXT:Ok - приблизительно так будет выглядить команда OK - чтоб было точнее сделайте запись макроса и там уже выделите и скопируете правильную-нужную OK


я бы вам посоветовал зайти сюда через гугл хром (написано всё по английский-гугхром переведет)
http://wiki.imacros.net/Command_Reference

roman99 пишет

Здравствуйте, помогите новичку.
Прописал задачу:
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
1)    обновить страницу
2)    поиск кнопки (ок) и нажатие на нее, если она есть
а как поставить на паузу(5мин)  действие, если  не было ошибки и было нажатие(ок)

ответ на первый и, частично, на третий вопросы (обновить страницу и поставить на паузу (5мин)) вы легко найдете самостоятельно:
wiki.imacros.net
google.com
вверху справа - кнопка "поиск по форуму"

2)    поиск кнопки (ок) и нажатие на нее, если она есть

если нужно выполнение условий вида "если - то" (if ... else ...), то вам нужно писать управляющий js-скрипт, генерирующий, либо запускающий отдельные imacros-скрипты, в зависимости от срабатывания того или иного правила (в данном случае, появление окна с требованием нажать OK)
нажатие на OK, скорее всего будет выглядеть так:

ONDIALOG POS=1 BUTTON=OK CONTENT=

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

InfSub пишет

kolshix, в спойлер прячем оффтоп и большие куски кода, а не свои ответыда, молодец, что ты знаешь как это сделать, но если человек будет спрашивать элементарные вещи, даже не пытаясь воспользоваться поиском, то в итоге форум превратится в помойку
                    Отредактировано InfSub (Сегодня 18:16:08)

я извиняюсь(наверное я не правильно выразил мысль) 1и2 действие я прописал

roman99 пишет

я извиняюсь(наверное я не правильно выразил мысль) 1и2 действие я прописал

я уже частично ответил на этот вопрос:

InfSub пишет

если нужно выполнение условий вида "если - то" (if ... else ...), то вам нужно писать управляющий js-скрипт, генерирующий, либо запускающий отдельные imacros-скрипты, в зависимости от срабатывания того или иного правила (в данном случае, появление окна с требованием нажать OK)

подробнее, не видя, где и что Вы делаете, ответить проблематично, могу привести только что-то типа схемы..., хотя, аналогичную схему, в несколько специфичном виденьи kolshix'a, вы можете найти сами на последних 2х страницах форума

19-11-2013 18:56:53
пост №990

19-11-2013 19:16:09

neokill пишет

Какие варианты возможны при вставки картинки в комментарий вк?
Если вместо текста ставить ссылку на изображение, то скидывается только ссылка, а изображения нет.
Каким образом надо расставить EVENT'ы, что бы происходила вставка изображения?
Вот код для обычной вставки, как его поправить?
TAG POS=8 TYPE=DIV ATTR=TXT:Комментировать..
TAG POS=1 TYPE=TEXTAREA ATTR=ID:reply_field-26759523_163898 CONTENT=ссылка_на_картинку
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-26759523_163898

neokill пишет

Обращаюсь к InfSub, т.к. он единственный кто вроде тут шарит)
У меня скрипт по сути готов, но осталось только картинки в коммент добавить. Дружище, не бросай в беде 8)
Не буду очередной раз писать и выкидывать пример. Он чуть выше. 09:37:44

думаю вас сможет навести на нужную мысль, пост 965

InfSub пишет

подробнее, не видя,

скрытый текст

Выделить код

Код:

VERSION BUILD=8530828 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://........
TAG POS=1 TYPE=DIV ATTR=CLASS:reload&&TXT:
REFRESH
TAG POS=1 TYPE=I ATTR=CLASS:icon-ok&&TXT:
TAB T=2
TAG POS=1 TYPE=BUTTON ATTR=ID:post_button
TAB T=1

roman99 пишет
InfSub пишет

подробнее, не видя,

URL GOTO=http://........

ну, в таком случае, в папке Demo-Firefox есть 4 примера на js, к которых, есть все необходимое для написания вашего скрипта

19-11-2013 19:41:24

offtop
мне, извините, лень писать код наобум, догадываясь, что вернет та или иная команда при обработке вашей кнопки

19-11-2013 19:44:15
да и поиск по форуму ни кто не отменял =)

Здравствуйте. Помогите пожалуйста.
Есть макрос

скрытый текст

Выделить код

Код:

VERSION BUILD=7601015 RECORDER=FX
TAB T={{!LOOP}}
CMDLINE !DATASOURCE file.csv
SET !DATASOURCE_COLUMNS 10
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:text_desc CONTENT={{!COL1}}


У меня в каждой строчке количество столбцов разное (просто по несколько предложений с запятыми) Есть ли возможность чтоб iMacros воспринимал ВСЮ строку как одну колонку, т.е. чтобы не разбивал запятыми на колонки. У меня это получилось только если в тексте присутствует знак " , но для меня это не выход т.к. не во всех предложениях есть кавычки.

alex_alex пишет

Здравствуйте. Помогите пожалуйста.
Есть макрос

скрытый текст

Выделить код

Код:

VERSION BUILD=7601015 RECORDER=FX
TAB T={{!LOOP}}
CMDLINE !DATASOURCE file.csv
SET !DATASOURCE_COLUMNS 10
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:text_desc CONTENT={{!COL1}}


У меня в каждой строчке количество столбцов разное (просто по несколько предложений с запятыми) Есть ли возможность чтоб iMacros воспринимал ВСЮ строку как одну колонку, т.е. чтобы не разбивал запятыми на колонки. У меня это получилось только если в тексте присутствует знак " , но для меня это не выход т.к. не во всех предложениях есть кавычки.

http://wiki.imacros.net/!DATASOURCE_DELIMITER

InfSub Спасибо большое!

Здравствуйте! Подскажите, пожалуйста, как правильно через макрос настроить прокси соединение?
Делаю так:
PROXY ADDRESS=87.244.ххх.ххх:8080
но не функционирует должным образом - сильно долго тормозит + скорость низкая, а когда делаю через плагин FoxyProxy работает гораздо быстрее
В чем может быть проблема?

Всем доброго дня!
Есть строчка в макросе:
SET !VAR4 EVAL("inf = \"\"; if (\"{{!VAR2}}\") {inf = 'День';} else {inf ='Ночь';}")
Дело в том, что мне вместо того, чтобы задавать значение переменной inf надо выполнять 2 разных макроса. If (!VAR2) {iimplay(macros1.iim);} else {iimplay(macros2.iim);}
Если VAR2 не пуста, то "1 набор команд макроса" или "2 набор команд макроса"
Как можно в зависимости от условия запускать разные макросы?
Спасибо за помощь.

neokill пишет

Всем доброго дня!
Есть строчка в макросе:
SET !VAR4 EVAL("inf = \"\"; if (\"{{!VAR2}}\") {inf = 'День';} else {inf ='Ночь';}")
Дело в том, что мне вместо того, чтобы задавать значение переменной inf надо выполнять 2 разных макроса. If (!VAR2) {iimplay(macros1.iim);} else {iimplay(macros2.iim);}
Если VAR2 не пуста, то "1 набор команд макроса" или "2 набор команд макроса"
Как можно в зависимости от условия запускать разные макросы?
Спасибо за помощь.

написать управляющий js-скрипт, с условием, а не вставлять условие в EVAL() и из него запускать iimplay(macros1/2.iim); в зависимости от срабатывания if...

InfSub пишет
neokill пишет

Всем доброго дня!
Есть строчка в макросе:
SET !VAR4 EVAL("inf = \"\"; if (\"{{!VAR2}}\") {inf = 'День';} else {inf ='Ночь';}")
Дело в том, что мне вместо того, чтобы задавать значение переменной inf надо выполнять 2 разных макроса. If (!VAR2) {iimplay(macros1.iim);} else {iimplay(macros2.iim);}
Если VAR2 не пуста, то "1 набор команд макроса" или "2 набор команд макроса"
Как можно в зависимости от условия запускать разные макросы?
Спасибо за помощь.

написать управляющий js-скрипт, с условием, а не вставлять условие в EVAL() и из него запускать iimplay(macros1/2.iim); в зависимости от срабатывания if...

Объясните на пальцах пж. Вот кратенько:

скрытый текст
1) Закидываю команды макроса в переменную macro
2) закидываю содержимое html тега в VAR3, а после в status
3) Закидываю команды в macros2 и macros3
4) Сравниваю: если status не пуст, а содержит html то выполняем macros2 иначе macros 3

Выделить код

Код:

var macro;
macro = "CODE:";
macro += "SET !EXTRACT_TEST_POPUP NO"+ "\n";
macro += "др команды"+ "\n";
macro += "др команды"+ "\n";
macro += "др команды"+ "\n";
' извлекаю html
var prov;
prov += 'SET !VAR3 EVAL("var res = \"\"; var a = \"{{!VAR2}}\".indexOf(\">\")+1; var c = \"{{!VAR2}}\".indexOf(\"</span>\"); res = \"{{!VAR2}}\".substring(a ,c);")' + '\n';
iimPlay(macro);
status = iimPlay(prov);

var macros2;
macros2 = "CODE:";
macros2 += "др команды"+ "\n";

var macros3;
macros3 = "CODE:";
macros3 += "др команды"+ "\n";

' если status вернул ответ (иначе говоря не пустой), 
if (status) {iimplay(macros2);} else {immplay(macros3);}


Такое впечатление, что те макросы, что я скинул в переменные даже не выполняются! Подскажите пожалуйста, какие я мог допустить ошибки?
Заранее Вам благодарен)

neokill пишет
InfSub пишет
neokill пишет

Всем доброго дня!
Есть строчка в макросе:
SET !VAR4 EVAL("inf = \"\"; if (\"{{!VAR2}}\") {inf = 'День';} else {inf ='Ночь';}")
Дело в том, что мне вместо того, чтобы задавать значение переменной inf надо выполнять 2 разных макроса. If (!VAR2) {iimplay(macros1.iim);} else {iimplay(macros2.iim);}
Если VAR2 не пуста, то "1 набор команд макроса" или "2 набор команд макроса"
Как можно в зависимости от условия запускать разные макросы?
Спасибо за помощь.

написать управляющий js-скрипт, с условием, а не вставлять условие в EVAL() и из него запускать iimplay(macros1/2.iim); в зависимости от срабатывания if...

Объясните на пальцах пж. Вот кратенько:

скрытый текст
1) Закидываю команды макроса в переменную macro
2) закидываю содержимое html тега в VAR3, а после в status
3) Закидываю команды в macros2 и macros3
4) Сравниваю: если status не пуст, а содержит html то выполняем macros2 иначе macros 3

Выделить код

Код:

var macro;
macro = "CODE:";
macro += "SET !EXTRACT_TEST_POPUP NO"+ "\n";
macro += "др команды"+ "\n";
macro += "др команды"+ "\n";
macro += "др команды"+ "\n";
' извлекаю html
var prov;
prov += 'SET !VAR3 EVAL("var res = \"\"; var a = \"{{!VAR2}}\".indexOf(\">\")+1; var c = \"{{!VAR2}}\".indexOf(\"</span>\"); res = \"{{!VAR2}}\".substring(a ,c);")' + '\n';
iimPlay(macro);
status = iimPlay(prov);

var macros2;
macros2 = "CODE:";
macros2 += "др команды"+ "\n";

var macros3;
macros3 = "CODE:";
macros3 += "др команды"+ "\n";

' если status вернул ответ (иначе говоря не пустой), 
if (status) {iimplay(macros2);} else {immplay(macros3);}


Такое впечатление, что те макросы, что я скинул в переменные даже не выполняются! Подскажите пожалуйста, какие я мог допустить ошибки?
Заранее Вам благодарен)

лучше бы был код, а не "др. команды"... было бы понятней...
в общем если в кратце, то, зачем юзать eval() если вы все равно собираетесь запускать различные варианты имакрос-скриптов с помощью js
используйте вывод данных из имакрос с помощью !EXTRACT
и потом уже if... else... без eval()

ошибки (мелочь):
1)

macro += "SET !EXTRACT_TEST_POPUP NO"+ "\n";

излишне, у вас и так не будет всплывающих окон
2)

var macros2;
macros2 = "CODE:";
macros2 += "др команды"+ "\n";

такая запись хоть и правильная, но долгочитаемая имакросом (на каждую строку 0.2-1 секунда) наиболее быстро работает код записанный в одну строку, где это возможно, не проще ли написать var macro2 = "CODE:др команды"+ "\n" + "др команды"+ "\n";
ошибки (серьезные):
1)

prov += 'SET !VAR3 EVAL("var res = \"\"; var a = \"{{!VAR2}}\".indexOf(\">\")+1; var c = \"{{!VAR2}}\".indexOf(\"</span>\"); res = \"{{!VAR2}}\".substring(a ,c);")' + '\n';

читаем посты выше про удвоение слешей при использовании eval() из js-скрипта


в общем приведите весь код, можно скинуть в личку... потому что может вы где-то что-то просто не написали, чтобы сократить пост, а может этих елементов просто нету...
например:

status = iimPlay(prov);
...
if (status) {iimplay(macros2);} else {immplay(macros3);}

почти всегда будет срабатывать первое условие, если только вы не обрабатываете где-то в промежутке значение переменной status

var prov;
prov += '...';

логическая ошибка, т.к. prov - хоть и объявлена, но значения у нее нет, соответственно в первой строке кода должно быть не '+=' а '=' либо, во время поста сообщения, вы просто удалили строку prov = 'CODE:';

в общем, как говорится, без стакана не разобраться... потому и говорю, что нужно видеть весь код

InfSub пишет

в общем, как говорится, без стакана не разобраться... потому и говорю, что нужно видеть весь код

Огромнейшее спасибо за поправки. Где-то сам сомневался, но не хватает чуть ума довести до полной кондиции. Поправлю код по Вашему совету и скину всё в личку ;)

neokill пишет

....
Где-то сам сомневался, но не хватает чуть ума довести до полной кондиции. Поправлю код по Вашему совету и скину всё в личку

neokill пишет

if (status) {iimplay(macros2);} else {immplay(macros3);}

еще кое что в глаза бросилось:

iimPlay()

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

InfSub пишет
neokill пишет

....
Где-то сам сомневался, но не хватает чуть ума довести до полной кондиции. Поправлю код по Вашему совету и скину всё в личку

neokill пишет

if (status) {iimplay(macros2);} else {immplay(macros3);}

еще кое что в глаза бросилось:

iimPlay()

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

Скинул Вам в личку полный код скрипта.

neokill пишет

...
Скинул Вам в личку полный код скрипта.

что-то не наблюдаю его там... :/ - попробуйте отправить еще раз, проверьте, что при отправке не было ни каких ошибок

InfSub пишет
neokill пишет

...
Скинул Вам в личку полный код скрипта.

что-то не наблюдаю его там... :/ - попробуйте отправить еще раз, проверьте, что при отправке не было ни каких ошибок

Проверьте пожалуйста свою почту. По непонятным причинам сообщение не уходят :/
Пожалуйста сообщите, дошло ли вам письмо!

Подскажите пожалуйста.
Хочу скрипт привязать к времени суток. Ток команды не знаю, не нашол.
Чтоб было типа wait=(2:00 ночи). Или как мне делать данный блок программы.
Жду ответа желательно с примером.
Заранее спасиба.

inkoteb пишет

Подскажите пожалуйста.
Хочу скрипт привязать к времени суток. Ток команды не знаю, не нашол.
Чтоб было типа wait=(2:00 ночи). Или как мне делать данный блок программы.
Жду ответа желательно с примером.
Заранее спасиба.

вар. 1
написать код на js проверяющий через n-секунд/минут наступило ли 2 часа
вар. 2
использовать планировщик и запускать им фаерфокс со скриптом

примеров - у меня нет, не использовал ни тот, ни другой метод

inkoteb пишет

Подскажите пожалуйста.
Хочу скрипт привязать к времени суток. Ток команды не знаю, не нашол.
Чтоб было типа wait=(2:00 ночи). Или как мне делать данный блок программы.
Жду ответа желательно с примером.
Заранее спасиба.

есть относительно нормальная программа "Mouserobot" - там много заморочек типо imacros-а только вот саму программу в трей загнать нельзя (нажатие идёт с передвижением мыши), но у неё в трее есть планировщик задач по времени (по вашему 2ч. ночи), да и макросы самой программы можно записывать в файл '.exe потом в нужное время запускать

программа по-мойму есть на рутрекере

сама программа
fa852f3408f15cbd720aca4b0c388f65.jpg

Havchik пишет

подскажите как и кто стартует нужные скрипты по времени ?стояла у меня свежая винда, поставил файрфокс  и через start firefox "C:\Program Files\Mozilla Firefox\firefox.exe" http://run.imacros.net/?m=#Current.iim.    подвисает и не запускает нужный скрипт.подскажите может другую альтернативу  как планировщиков запускть нужный скрип макроса

Да помогите кто нить не динамте уже и старые версии ставил, все равно ГЛУХО !

Havchik пишет
Havchik пишет

подскажите как и кто стартует нужные скрипты по времени ?стояла у меня свежая винда, поставил файрфокс  и через start firefox "C:\Program Files\Mozilla Firefox\firefox.exe" http://run.imacros.net/?m=#Current.iim.    подвисает и не запускает нужный скрипт.подскажите может другую альтернативу  как планировщиков запускть нужный скрип макроса

Да помогите кто нить не динамте уже и старые версии ставил, все равно ГЛУХО !

старые версии чего?
пробуй старые версии imacros и firefox.
я автозапуск не юзаю, но на новых версиях я тоже встретил траблы.
юзаю imacros 7.6.0.2 + Firefox 17

kolshix пишет

inkoteb пишет: Подскажите пожалуйста. Хочу скрипт привязать к времени суток. Ток команды не знаю, не нашол.Чтоб было типа wait=(2:00 ночи). Или как мне делать данный блок программы.Жду ответа желательно с примером.Заранее спасиба.есть относительно нормальная программа "Mouserobot" - там много заморочек типо imacros-а только вот саму программу в трей загнать нельзя (нажатие идёт с передвижением мыши), но у неё в трее есть планировщик задач по времени (по вашему 2ч. ночи), да и макросы самой программы можно записывать в файл '.exe потом в нужное время запускатьпрограмма по-мойму есть на рутрекересама программа

планировщиков много а как прописывать в exe запуск конкретного скрипта imacros   ?

24-11-2013 22:43:17

spy686 пишет

Havchik пишет: Havchik пишет: подскажите как и кто стартует нужные скрипты по времени ?стояла у меня свежая винда, поставил файрфокс  и через start firefox "C:\Program Files\Mozilla Firefox\firefox.exe" http://run.imacros.net/?m=#Current.iim.    подвисает и не запускает нужный скрипт.подскажите может другую альтернативу  как планировщиков запускть нужный скрип макросаДа помогите кто нить не динамте уже и старые версии ставил, все равно ГЛУХО !старые версии чего?пробуй старые версии imacros и firefox.я автозапуск не юзаю, но на новых версиях я тоже встретил траблы.юзаю imacros 7.6.0.2 + Firefox 17

ставил 19-й файрфокс imacros ставил тот который давал поиск дополнений.
Глухо, хотя раньше на похдней версии все было замечательно

кашел косяк, васялся сервак у мен на болконе, на нем тоже все стояло, я его достал  паротль забыл, но был сохранен в терминальном клиенте, в общем все завелось !!!

Радости полные штаны, а потом окошко  выберите папку для демо скриптов и тут меня клюнуло, он подлец обновился !
И все все колом !

спасибо spy686 что прописал версию макроса  благодаря этому я додумался что дело не в версии файр фокса а дело в версии макроса.

тепрь главный вопрос

КАК запретить ему обновляться ?

Havchik пишет

тепрь главный вопрос

КАК запретить ему обновляться ?

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

по поводу вопроса: все элементарно, заходите в "Дополнения" и нажимаете "Подробнее..." могли бы и сами догадаться, я нашел этот пункт секунд за 15 совершенно не зная где он

25-11-2013 02:13:30

Havchik пишет

Да помогите кто нить не динамте уже и старые версии ставил, все равно ГЛУХО !

Вас ни кто не динамит, но если данная проблема коснулась не всех, т.к. данная опция нужна не такому уж большому кругу людей, посещающих данную ветку форума, то соответственно, ответить что-то конкретное, мы не можем, разве что - подтвердить наличие проблемы, связанной скорее всего с тем, что последние 2 релиза imacros'a имеют статус beta

InfSub пишет

Вас ни кто не динамит, но если данная проблема коснулась не всех, т.к. данная опция нужна не такому уж большому кругу людей, посещающих данную ветку форума, то соответственно, ответить что-то конкретное, мы не можем, разве что - подтвердить наличие проблемы, связанной скорее всего с тем, что последние 2 релиза imacros'a имеют статус beta

прочитал изменения в версиях  оказалось, это специальное изменение.

Ждал хоть каких то идей которые подкинул spy686

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение


можно в этом скрипте как то сделать чтобы город можно было менять

Jon пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение


можно в этом скрипте как то сделать чтобы город можно было менять

да, это возможно

скрытый текст

Выделить код

Код:

VERSION BUILD=6240709 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_PAGE 15
TAB T=1
URL GOTO=http://odnoklassniki.ru/online#/online
SET !VAR1 25
SET !VAR2 50
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=* ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
WAIT SECONDS=2
CLICK X=350 Y=280
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение


можно в этом скрипте как то сделать чтобы город можно было менять
если не трудно можно выложить я  в этом деле пока плохо шарю

Jon пишет

...
можно в этом скрипте как то сделать чтобы город можно было менять
если не трудно можно выложить я  в этом деле пока плохо шарю

offtop
доработкой скриптов пусть занимаются те люди, которые их вам продали

Всем привет, помогите с js скриптом
Есть рабочий код

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
FRAME NAME="fXD*"
TAG POS=1 TYPE=B ATTR=CLASS:feeder_money<SP>inlineb<SP>mb-10&&TXT:
TAB T=2
FRAME F=0

В POS= (45 шт.)

Выделить код

Код:

TAG POS=1....45


Надо в js прописать так чтоб в TAG POS=1, 1 заменялось на 2, 3, 4 и так до 45

как пример цикл for (i=1;i<45;i++)

Так вот, как правильно прописать, а то я вообще нуль в js?:(

Можно ли в тексте iim открыть файл iim ? примерно анологичное в js iimPlay, Если да то напишите пример пожалуйста.

Protey пишет

Надо в js прописать так чтоб в TAG POS=1, 1 заменялось на 2, 3, 4 и так до 45

как пример цикл for (i=1;i<45;i++)

Так вот, как правильно прописать, а то я вообще нуль в js?:(

Вот так:

скрытый текст

Выделить код

Код:

macro='CODE:';
for(i=1; i<=45; i++){
    macro+='TAB T=1'+'\n';
    macro+='FRAME NAME="fXD*"'+'\n';
    macro+='TAG POS='+i+' TYPE=B ATTR=CLASS:feeder_money<SP>inlineb<SP>mb-10&&TXT:'+'\n';
    macro+='TAB T=2'+'\n';
    macro+='FRAME F=0'+'\n';
};

kolshix пишет

Можно ли в тексте iim открыть файл iim ? примерно анологичное в js iimPlay

нет, нельзя

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://www.yandex.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT= "Бесплатная CMS для интернет магазина Moguta"
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:form ATTR=VALUE:Найти


почему в этом скрипте в последней строчке не нажимает кнопку "найти"

Jon пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://www.yandex.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT= "Бесплатная CMS для интернет магазина Moguta"
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:form ATTR=VALUE:Найти

попробуй вот так, должно работать

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX
TAB T=1
URL GOTO=http://www.yandex.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://yandex.ru/yandsearch ATTR=ID:text CONTENT= "Бесплатная CMS для интернет магазина Moguta"
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>FORM>TABLE>TBODY>TR>TD:nth-of-type(2)>SPAN>INPUT" BUTTON=0


Пробуй разные опции макроса "Record options"

10-12-2013 20:33:19

InfSub пишет

Вот так

спасибо, за помощь

Доброго времени суток. Также есть некоторый вопрос, заранее спасибо за ответ

есть строчка типа

TAG POS=1 TYPE=IMG ATTR=HREF:http://*.jpg EXTRACT=TXT

которая вытягивает url фотки http://cs320718.vk.me/v320712125/aaa0/ASGdAoB6h_0.jpg и дальше используя SAVEAS сохраняю в файл. Можно ли вытягивать только имя файла( должно получиться только 'ASGdAoB6h_0.jpg')?

bysteps пишет

Доброго времени суток. Также есть некоторый вопрос, заранее спасибо за ответ

есть строчка типа

TAG POS=1 TYPE=IMG ATTR=HREF:http://*.jpg EXTRACT=TXT

которая вытягивает url фотки http://cs320718.vk.me/v320712125/aaa0/ASGdAoB6h_0.jpg и дальше используя SAVEAS сохраняю в файл. Можно ли вытягивать только имя файла( должно получиться только 'ASGdAoB6h_0.jpg')?

используйте EVAL() для обработки строки из {{!EXTRACT}} и получения нужной Вам подстроки

Здравствуйте
есть код который поидее должен оставлять сообщения в групах фейсбука ноо не работает может кто сможет помочь разобраться с этим или может есть у кого пример перехода по групам  {{!LOOP}}

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES 
SET !ERRORCONTINUE YES
SET !VAR1 EVAL("var contentent = 'text';")
SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !VAR3 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !VAR4 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !VAR5 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !VAR6 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !VAR7 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !VAR8 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
URL GOTO=https://www.facebook.com/bookmarks/groups
SET !REPLAYSPEED FAST
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:https://www.facebook.com/bookmarks/groups#
WAIT SECONDS={{!VAR3}}
TAG POS=1 TYPE=TEXTAREA ATTR=ACTION:/ajax/updatestatus.php ATTR=ID:* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}}
 TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/ajax/profile/composer/ ATTR=ID:* CONTENT={{!VAR1}} 
WAIT SECONDS={{!VAR5}}
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:ACTION:https://upload.facebook.com/media/upload/photos/composer/ ATTR=NAME:file1 CONTENT=C:\Users\ABC\Desktop\CMM\{{!VAR2}}.JPG
WAIT SECONDS={{!VAR6}}
TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:https://upload.facebook.com/media/upload/photos/composer/ ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://upload.facebook.com/media/upload/photos/composer/ ATTR=NAME:file1 CONTENT=C:\Users\ABC\Desktop\CMM\{{!VAR2}}.JPG
WAIT SECONDS={{!VAR8}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Публикация
BACK


скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
 SET !ERRORIGNORE YES
 SET !ERRORCONTINUE YES
 TAB T=1
 SET !TIMEOUT_STEP3 
 SET !DATASOURCE C:\Users\ABC\Desktop\CMM\adres.csv
 SET !DATASOURCE_COLUMNS 1
 SET !DATASOURCE_LINE {{!LOOP}}
 SET !LOOP 2
 SET !REPLAYSPEED FAST
 SET !EXTRACT_TEST_POPUP NO
 SET !TIMEOUT_TAG 3
SET !DATASOURCE_LINE {{!LOOP}} 
 SET !VAR1 "Ваш<SP>статус<SP>не<SP>содержит<SP>информации"
 SET !VAR2 EVAL ("var randomNumber=Math.floor(Math.random()*3 + 1); randomNumber;")
 SET !VAR3 "C:\Users\ABC\Desktop\CMM\{{!VAR2}}.JPG"
 URL GOTO={{!COL1}}
 SET !VAR4 EVAL ("Math.floor(Math.random()*5 + 1);")
 WAIT SECONDS={{!VAR4}}
 
 TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/ajax/updatestatus.php ATTR=ID:* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}} 
 TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/ajax/updatestatus.php ATTR=ID:* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}}
 TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/ajax/profile/composer/ ATTR=ID:* CONTENT={{!VAR1}}  
WAIT SECONDS={{!VAR4}}
 TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:/ajax/updatestatus.php ATTR=ID:js_* CONTENT={{!VAR2}} 
 TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://upload.facebook.com/media/upload/photos/composer/ ATTR=ID:js CONTENT={{!VAR5}}

WAIT SECONDS={{!VAR4}}
 TAG POS=1 TYPE=BUTTON ATTR=TXT:Опубликовать
 TAG POS=2 TYPE=BUTTON ATTR=TXT:Опубликовать
 TAG POS=3 TYPE=BUTTON ATTR=TIPE:submit&&CLASS:*&&TXT:OK
 TAG POS=2 TYPE=BUTTON ATTR=TXT:Опубликовать
 TAG POS=4 TYPE=BUTTON ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR4}} 
 
 TAG POS=1 TYPE=BUTTON ATTR=NAME:ok&&VALUE:OK
 URL GOTO={{!COL1}}
 ONDIALOG POS=1 BUTTON=OK CONTENT=
 REFRESH

bridun пишет

Здравствуйте
есть код который поидее должен оставлять сообщения в групах фейсбука ноо не работает может кто сможет помочь разобраться с этим или может есть у кого пример перехода по групам  {{!LOOP}}

этот код, морально устарел, в нем не работает 90% действий и часть действий отсутствует

offtop
если Вам его продали - я бы советовал потребовать денег назад

чтобы Вам помочь, нужно написать весь код с нуля

так во и прошу чтоб помогли в отсувствии кода или исправлении

и с колько будит стоять это и почему устарело

bridun пишет

так во и прошу чтоб помогли в отсувствии кода или исправлении

и с колько будит стоять это и почему устарело

возможно, про устарел - я погорячился, т.к. писал ответ в 5 утра, но то что в нем не работает 90% всего кода, это действительно так

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

одну вещ не могу врубить как работает {{!LOOP}} или как переходит по групам

bridun пишет

одну вещ не могу врубить как работает {{!LOOP}} или как переходит по групам

{{!LOOP}} это замена цикла в имакросе каждый проход +1
в вашем скрипте - ни как не переходит... о чем я и говорил, что там код, почти весь, не рабочий
нету перехода, нажатия на добавить не работают, добавить фото - тоже не работает

Как сделать что бы после окончания скрипта...запускался другой скрипт? подскажите пожалуйста что нужно сделать

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://www.domen.ru/2000/07/24/8888
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>рецензию
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT=замечательно
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/cgi-bin/form.pl ATTR=ID:butt


........
здравствуйте. подскажите пожалуйста что нужно добавить в скрипт, чтобы число 8888 в ссылке уменьшалось на 1 с каждым новым запуском скрипта.
и чтобы вместо текста "замечательно" по очереди брался текст из файла и вставлялся.

mark83 пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://www.domen.ru/2000/07/24/8888
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>рецензию
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT=замечательно
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/cgi-bin/form.pl ATTR=ID:butt


........
здравствуйте. подскажите пожалуйста что нужно добавить в скрипт, чтобы число 8888 в ссылке уменьшалось на 1 с каждым новым запуском скрипта.
и чтобы вместо текста "замечательно" по очереди брался текст из файла и вставлялся.

а на оборот нельзя от 1 к 8888 ?

15-12-2013 22:16:17

anti-xp пишет

Как сделать что бы после окончания скрипта...запускался другой скрипт? подскажите пожалуйста что нужно сделать

например, посмотреть подобную реализацию в "...\iMacros\Macros\Demo-Firefox\Self-Test.js"

15-12-2013 22:21:14

mark83 пишет

что нужно добавить в скрипт, чтобы число 8888 в ссылке уменьшалось на 1 с каждым новым запуском скрипта

при запуске в цикле, это будет выглядеть так:

скрытый текст

Выделить код

Код:

SET !VAR1 8888
SET !LOOP 0
ADD !VAR1 -{{!LOOP}}
URL GOTO=http://www.domen.ru/2000/07/24/{{!VAR1}}

InfSub пишет

при запуске в цикле, это будет выглядеть так:
SET !VAR1 8888
SET !LOOP 0
ADD !VAR1 -{{!LOOP}}
URL GOTO=http://www.domen.ru/2000/07/24/{{!VAR1}}

спасибо, все работает)
только когда он переходит по ссылке которой не существует(удалена) он не может выполнить

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>рецензию
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT=замечательно
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/cgi-bin/form.pl ATTR=ID:butt


и останавливается . как сделать чтобы скрипт продолжал работать и переходить по следующей ссылке?
..
дошло))сам решил проблему вставил
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

игнор ошибок

в начле скрипта

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 0

mark83 пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://www.domen.ru/2000/07/24/8888
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>рецензию
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT=замечательно
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/cgi-bin/form.pl ATTR=ID:butt


........
здравствуйте. подскажите пожалуйста что нужно добавить в скрипт, чтобы число 8888 в ссылке уменьшалось на 1 с каждым новым запуском скрипта.
и чтобы вместо текста "замечательно" по очереди брался текст из файла и вставлялся.

...
с первым помогли..огромное спасибо(сам месяц бы провозился)...вот как бы теперь сделать так чтобы скрипт брал из файла текст и вставлял бы его по очереди

Что нужно что бы скрипт начинал работать с четвертой строки,а не с первой ?:

anti-xp пишет

Что нужно что бы скрипт начинал работать с четвертой строки,а не с первой ?:

с четвертой строки чего? файла?

SET !DATASOURCE_LINE 4

16-12-2013 04:36:25

mark83 пишет
mark83 пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://www.domen.ru/2000/07/24/8888
TAG POS=1 TYPE=A ATTR=TXT:Написать<SP>рецензию
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT=замечательно
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/cgi-bin/form.pl ATTR=ID:butt


........
здравствуйте. подскажите пожалуйста что нужно добавить в скрипт, чтобы число 8888 в ссылке уменьшалось на 1 с каждым новым запуском скрипта.
и чтобы вместо текста "замечательно" по очереди брался текст из файла и вставлялся.

...
с первым помогли..огромное спасибо(сам месяц бы провозился)...вот как бы теперь сделать так чтобы скрипт брал из файла текст и вставлял бы его по очереди

скрытый текст

Выделить код

Код:

SET !DATASOURCE file_name
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}}
...
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT={{!COL1}}


если в контексте предыдущего примера, то:
скрытый текст

Выделить код

Код:

SET !VAR2 {{LOOP}}
ADD !VAR2 1
SET !DATASOURCE file_name
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!VAR2}}
...
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT={{!COL1}}

Нет.
Вот к примеру

скрытый текст

Выделить код

Код:

VERSION BUILD=8510617 RECORDER=FX
TAB T=1
REFRESH


3 строки, что нужно что бы сразу прыгнуло на 4 ?

anti-xp пишет

Нет.
Вот к примеру

скрытый текст

Выделить код

Код:

VERSION BUILD=8510617 RECORDER=FX
TAB T=1
REFRESH


3 строки, что нужно что бы сразу прыгнуло на 4 ?

удалить первые 3

anti-xp пишет

code

Выделить код

Код:

1.SET !ERRORIGNORE YES
2.SET !TIMEOUT_STEP 0
3.SET !VAR1 0
4.SET !LOOP 1
5.ADD !VAR1 {{!LOOP}}
6.EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(7)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(5)>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>UL>LI>DIV>SELECT" BUTTON=0
7.EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(7)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(5)>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>UL>LI>DIV>SELECT>OPTION:nth-of-type(18)" BUTTON=0
8.EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(7)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(5)>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(10)>UL>LI>INPUT" BUTTON=0
9.TAG POS={{!VAR1}} TYPE=SPAN ATTR=TXT:Дружить
10.EVENT TYPE=CLICK SELECTOR="#hook_FormButton_button_save_rlshp" BUTTON=0


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

в чем тогда проблема сделать те действия, что не требуются позднее - вручную, а далее - запустить макрос (для тех действий, что повторяются), содержащий строку 9 и далее?

16-12-2013 19:09:46
кста, какой смысл в:

3.SET !VAR1 0
4.SET !LOOP 1
5.ADD !VAR1 {{!LOOP}}

???
судя по вашему коду, тут вообще достаточно изменить строку 9, удалив строки 3-5:

9.TAG POS={{!LOOP}} TYPE=SPAN ATTR=TXT:Дружить

16-12-2013 19:24:21

anti-xp пишет

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

Вы, судя по всему, не понимаете, что есть imacros
это система автоматизации однообразных действий, так сказать - одно и тоже зацикленное действие, с небольшим функционалом, позволяющее менять, к примеру, порядковый номер позиции при выполнении цикла, но в самом имакросе НЕТ операторов ветвления типа if...else... или операторов безусловного перехода типа goto т.к. имакрос - не язык программирования, а инструмент, с помощью которого, в браузере, выполняются определенные действия!
Приведу аналогию: если вы знакомы с веб программированием, то имакрос выполняет роль html (языка разметки гипертекста), но не роль php (языка программирования, позволяющего собирать страницы из кусков html в одну страницу, в зависимости от запроса пользователя)

InfSub пишет

скрытый текст

Выделить код

Код:

SET !VAR2 {{LOOP}}
ADD !VAR2 1
SET !DATASOURCE file_name
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!VAR2}}
...
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/cgi-bin/form.pl ATTR=ID:recform CONTENT={{!COL1}}

...
спасибо огромное..все работает))

InfSub пишет

Не подскажешь, есть в макросе способ спарсить ID своих друзей ВКонтакте?

Мысль была сделать так...открываешь из списка, друга во второй вкладке, копируешь ссылку и сохраняешь ссылку в txt, закрываешь вторую вкладку, и так по циклу...но блин как заставить что бы макрос делал так по очередности с верху вниз на каждом друге в списке, не могу понять :( :sick:

Protey пишет
InfSub пишет

Не подскажешь, есть в макросе способ спарсить ID своих друзей ВКонтакте?

Мысль была сделать так...открываешь из списка, друга во второй вкладке, копируешь ссылку и сохраняешь ссылку в txt, закрываешь вторую вкладку, и так по циклу...но блин как заставить что бы макрос делал так по очередности с верху вниз на каждом друге в списке, не могу понять :( :sick:

есть какие-то наработки?, а то с нуля писать... как-то не айс, если уже что-то есть... =)

InfSub пишет

есть какие-то наработки?, а то с нуля писать... как-то не айс, если уже что-то есть...

) наработки есть, но не рабочие
с опциями по игрался, первого в списке в легкую открывает, а вот следующего в списке не как не смог заставить открыть

Тут, при открытии второго в списке меняется только (Имя)<SP>(фамилия) (то что выделено)

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=https://vk.com/friends
TAG POS=1 TYPE=B ATTR=TXT:[b](тут Имя пользователя прописывается)<SP>(а тут фамилия)[/b]

а тут меняется только user_blockID пользователя (то что выделено)

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=https://vk.com/friends
EVENT TYPE=CLICK SELECTOR="#user_block(тут прописывается ID пользователя)>DIV:nth-of-type(2)>DIV>A>B" BUTTON=0 MODIFIERS="ctrl"

вот и не могу понять как заставить открывать с верху вниз по очередно в списке

Protey пишет
InfSub пишет

есть какие-то наработки?, а то с нуля писать... как-то не айс, если уже что-то есть...

) наработки есть, но не рабочие
с опциями по игрался, первого в списке в легкую открывает, а вот следующего в списке не как не смог заставить открыть
нло прилетело....))
вот и не могу понять как заставить открывать с верху вниз по очередно в списке

я, честно не понял, что ты пытался сделать... если брать в пример последний пост... в общем, то что ты просил в предыдущем посте отправлю в личку..

Как в макросе сделать так, чтобы при нажатии на ссылку, ссылка открывалась во второй вкладке?

Если перед ссылкой указать TAB T=2
то открывает вторую вкладку без нажатия на ссылку.

Алим пишет

Как в макросе сделать так, чтобы при нажатии на ссылку, ссылка открывалась во второй вкладке?Если перед ссылкой указать TAB T=2то открывает вторую вкладку без нажатия на ссылку.

сам с таким сталкивался, я думаю, если сайтом не предусмотрено открытия страницы/ссылки в новом окне/вкладке, то не как

Protey пишет
Алим пишет

Как в макросе сделать так, чтобы при нажатии на ссылку, ссылка открывалась во второй вкладке?Если перед ссылкой указать TAB T=2то открывает вторую вкладку без нажатия на ссылку.

сам с таким сталкивался, я думаю, если сайтом не предусмотрено открытия страницы/ссылки в новом окне/вкладке, то не как

мне кажется это надо в настройке браузера сделать так, чтобы при нажатии на любую ссылку открывалась новая вкладка.

Если не получается перейти по ссылке, так чтобы она открылась в новой вкладке.
Можно было скопировать ссылку в буфер обмен, потом открыть новую вкладку,
вставить ссылку и перейти.

Или сохранить ссылку в текстовом файле, а затем открывать эту ссылку в новой вкладке.
Но пока в этом разберёшься.

Алим пишет

Если не получается перейти по ссылке, так чтобы она открылась в новой вкладке.
Можно было скопировать ссылку в буфер обмен, потом открыть новую вкладку,
вставить ссылку и перейти.

Или сохранить ссылку в текстовом файле, а затем открывать эту ссылку в новой вкладке.
Но пока в этом разберёшься.

извлеките ссылку, перейдите на вторую вкладку, перейдите по извлеченному адресу

InfSub пишет
Алим пишет

Если не получается перейти по ссылке, так чтобы она открылась в новой вкладке.
Можно было скопировать ссылку в буфер обмен, потом открыть новую вкладку,
вставить ссылку и перейти.

Или сохранить ссылку в текстовом файле, а затем открывать эту ссылку в новой вкладке.
Но пока в этом разберёшься.

извлеките ссылку, перейдите на вторую вкладку, перейдите по извлеченному адресу

Как это сделать? Напиши в ЛС
Как извлечь ссылку, куда извлечётся ссылка, как потом по ней перейти?

20-12-2013 19:14:54
Для того, чтобы извлечь ссылку, а затем перейти по ней, так чтобы она открылась в новой вкладке в браузере.

EXTRACT - она извлекает

Что то вроде этого

скрытый текст

Выделить код

Код:

SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=IMG ATTR=ID:MainContent_loginForm_robotValidate_imgAntiRobot EXTRACT=HREF
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL
TAB T=2
URL GOTO={{!VAR2}}


но здесь фото, а мне ссылку надо извлечь.
Как правильно сделать?

Алим пишет

Для того, чтобы извлечь ссылку, а затем перейти по ней, так чтобы она открылась в новой вкладке в браузере.

EXTRACT - она извлекает

Что то вроде этого

скрытый текст

Выделить код

Код:

SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=IMG ATTR=ID:MainContent_loginForm_robotValidate_imgAntiRobot EXTRACT=HREF
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL
TAB T=2
URL GOTO={{!VAR2}}


но здесь фото, а мне ссылку надо извлечь.
Как правильно сделать?

извлекать соответственно ссылку из тега A а не из IMG

20-12-2013 19:25:15
вы логически все описали правильно, разве что не обязательно передавать из {{!EXTRACT}} данные в {{!VAR2}}, можно перейти и по {{!EXTRACT}}

URL GOTO={{!EXTRACT}}

(если он не используется для извлечения еще каких-то данных между извлечением ссылки и переходом по ней)

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

InfSub пишет
Алим пишет

Для того, чтобы извлечь ссылку, а затем перейти по ней, так чтобы она открылась в новой вкладке в браузере.

EXTRACT - она извлекает

Что то вроде этого

скрытый текст

Выделить код

Код:

SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=IMG ATTR=ID:MainContent_loginForm_robotValidate_imgAntiRobot EXTRACT=HREF
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL
TAB T=2
URL GOTO={{!VAR2}}


но здесь фото, а мне ссылку надо извлечь.
Как правильно сделать?

извлекать соответственно ссылку из тега A а не из IMG

20-12-2013 19:25:15
вы логически все описали правильно, разве что не обязательно передавать из {{!EXTRACT}} данные в {{!VAR2}}, можно перейти и по {{!EXTRACT}}

URL GOTO={{!EXTRACT}}

(если он не используется для извлечения еще каких-то данных между извлечением ссылки и переходом по ней)

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

страница это одноклассники.ру поиск - люди
имя и фамилия - ссылку извлечь.

20-12-2013 23:22:59
Всё уже сам разобрался. Работает
вот код

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:v1_gs_result_i_t_name* EXTRACT=HREF
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL
TAB T=2
URL GOTO={{!VAR2}}


скопировал ссылку, открыл новую вкладку, и открылась страничка этой ссылки.
Супер.

Как сделать, так, чтобы при первом воспроизведении макроса, (в цикле) он прочитал от начала до конца, как обычно, а при 2, 3 и т.д. повторе, макрос пропускал несколько первых строк и начинал с определённой строки.

Действии происходят на странице одноклассники.ру - поиск - люди.
Первые строчки макроса, нажимает "Показать ещё", для того, чтобы страница раскрылась полностью.
Дальше макрос открывает профиля пользователей ставит класс на фото и возвращается обратно в в поиск.
И чтобы каждый раз макрос не нажимал "Показать ещё", как сделать, так, чтобы он пропускал эти строки.

Да я могу сделать отдельно макрос "Показать ещё", и затем запускать второй макрос.
Но хотелось бы это сделать одним макросом.

Алим пишет

Как сделать, так, чтобы при первом воспроизведении макроса, (в цикле) он прочитал от начала до конца, как обычно, а при 2, 3 и т.д. повторе, макрос пропускал несколько первых строк и начинал с определённой строки.

Действии происходят на странице одноклассники.ру - поиск - люди.
Первые строчки макроса, нажимает "Показать ещё", для того, чтобы страница раскрылась полностью.
Дальше макрос открывает профиля пользователей ставит класс на фото и возвращается обратно в в поиск.
И чтобы каждый раз макрос не нажимал "Показать ещё", как сделать, так, чтобы он пропускал эти строки.

Да я могу сделать отдельно макрос "Показать ещё", и затем запускать второй макрос.
Но хотелось бы это сделать одним макросом.

Видимо поиск придумали не для Вас? Пост 1061 прочтите (2ю половину)

Добавлю только одно, для целей, описанных вами, требуется написать управляющий js-скрипт

Ладно, пусть будут 2 макроса

Как вот допустим в поисковик гугл вставить текст, который макрос возьмёт с папки Datasources ?
Например создам текстовый документ res.txt
в текстовом документе напишу одной строчкой - интернет магазин
И что теперь в макросе какой код писать?

Примерно так.

CMDLINE !DATASOURCE res.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
CONTENT={{!COL1}}

Как вот сделать, чтобы он брал и вставлял из текстового файла res.txt первую строчку в поисковик гугл?

записать макрос, который будет вставлять значение из {{!COL1}} в строку поиска гугла...

есть ли  возможность js открыть js файл.? если да то какая команда ?

kolshix пишет

есть ли  возможность js открыть js файл.? если да то какая команда ?

нет

Всем привет. Может кто видел здесь скрипт макрос для "вступления в группу в Facebook". То есть должен брать ссылки груп из файла , переходить по ним и нажимать "Вступить в группу" Если здесь есть, подскажите на какой странице искать. Заранее благодарен.

cop999 пишет

Всем привет. Может кто видел здесь скрипт макрос для "вступления в группу в Facebook". То есть должен брать ссылки груп из файла , переходить по ним и нажимать "Вступить в группу" Если здесь есть, подскажите на какой странице искать. Заранее благодарен.

скорее мы тут каждый день видим людей, которые подобные скрипты у нас просят

InfSub пишет
cop999 пишет

Всем привет. Может кто видел здесь скрипт макрос для "вступления в группу в Facebook". То есть должен брать ссылки груп из файла , переходить по ним и нажимать "Вступить в группу" Если здесь есть, подскажите на какой странице искать. Заранее благодарен.

скорее мы тут каждый день видим людей, которые подобные скрипты у нас просят

Я в принципе так и предполагал.

cop999 пишет
InfSub пишет
cop999 пишет

Всем привет. Может кто видел здесь скрипт макрос для "вступления в группу в Facebook". То есть должен брать ссылки груп из файла , переходить по ним и нажимать "Вступить в группу" Если здесь есть, подскажите на какой странице искать. Заранее благодарен.

скорее мы тут каждый день видим людей, которые подобные скрипты у нас просят

Я в принципе так и предполагал.

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

InfSub пишет
cop999 пишет
InfSub пишет

скорее мы тут каждый день видим людей, которые подобные скрипты у нас просят

Я в принципе так и предполагал.

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

А какой сейчас пишется скрипт, с каким функционалом? Как будет распространяться?

cop999 пишет
InfSub пишет
cop999 пишет

Я в принципе так и предполагал.

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

А какой сейчас пишется скрипт, с каким функционалом? Как будет распространяться?

пишется - с проходом по уже имеющемся группам с добалением картинки (или нескольких) и возможностью чередовать сообщения...

А можно ли с помощью макроса.
Например в поиске в одноклассниках начать просматривать анкеты с определённого пользователя, а затем дальше чтобы продолжал по порядку, а не с самого начала ?

Алим пишет

А можно ли с помощью макроса.
Например в поиске в одноклассниках начать просматривать анкеты с определённого пользователя, а затем дальше чтобы продолжал по порядку, а не с самого начала ?

при желании - можно все
если вы используете конструкцию с {{!LOOP}} задайте ей начальное значение не равное единице

InfSub пишет
Алим пишет

А можно ли с помощью макроса.
Например в поиске в одноклассниках начать просматривать анкеты с определённого пользователя, а затем дальше чтобы продолжал по порядку, а не с самого начала ?

при желании - можно все
если вы используете конструкцию с {{!LOOP}} задайте ей начальное значение не равное единице

можете показать пример.
Как {{!LOOP}} задать число.

Вот строчка начинается так
TAG POS={{!LOOP}}

Как задать число?
Так что ли
TAG POS={{!LOOP}}=2

28-12-2013 11:16:03
нашёл решении, всё спасибо

Алим пишет
InfSub пишет
Алим пишет

А можно ли с помощью макроса.
Например в поиске в одноклассниках начать просматривать анкеты с определённого пользователя, а затем дальше чтобы продолжал по порядку, а не с самого начала ?

при желании - можно все
если вы используете конструкцию с {{!LOOP}} задайте ей начальное значение не равное единице

можете показать пример.
Как {{!LOOP}} задать число.

Вот строчка начинается так
TAG POS={{!LOOP}}

Как задать число?
Так что ли
TAG POS={{!LOOP}}=2

28-12-2013 11:16:03
нашёл решении, всё спасибо

посмотрите собственное сообщение несколькими постами выше, вы сами же писали пример, где задается первоначальное значение {{!LOOP}}

Друзья, у меня такой вопрос, как сделать чтобы Макрос открывал группы на фейсбуке по очереди? буду очень благодарен за ответ. если не сложно напишите мне в вк https://vk.com/id154294493

Здравствуйте! Столкнулся с проблемой изменения адреса
1 вот оригинальный адрес поста
http://vk.com/dressexpress?w=wall-10284876_32019    (удалить нужно dressexpress?w= ,но проблема в том что значение всегда разное)
2 мне нужно из него сделать  такой
http://m.vk.com/wall-10284876_32019     

скрытый текст
Эти манипуляции нужны для автоматизации репоста на VK.
знаю о таких командах и ранее ими пользовался
1 способ

Выделить код

Код:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(\"vk.\",\"m.vk.\")")
URL GOTO={{!VAR1}}

но нашёл проблему: такой  способ №1 переносит на мобильную страницу-стену автора и тут подвох в том, что репостов много, а imacros выполняет первый попавшийся (хотя на некоторых страницах пост один и программа срабатывает как надо)

пытался так

Выделить код

Код:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(\"vk.com/*wall\",\"m.vk./wall\")")
URL GOTO={{!VAR1}}

но знаний не хватает и макрос не работает/ Напишите пожалуйста правельный вариант

kolshix пишет

Здравствуйте! Столкнулся с проблемой изменения адреса
1 вот оригинальный адрес поста
http://vk.com/dressexpress?w=wall-10284876_32019    (удалить нужно dressexpress?w= ,но проблема в том что значение всегда разное)
2 мне нужно из него сделать  такой
http://m.vk.com/wall-10284876_32019     

скрытый текст
Эти манипуляции нужны для автоматизации репоста на VK.
знаю о таких командах и ранее ими пользовался
1 способ

Выделить код

Код:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(\"vk.\",\"m.vk.\")")
URL GOTO={{!VAR1}}

но нашёл проблему: такой  способ №1 переносит на мобильную страницу-стену автора и тут подвох в том, что репостов много, а imacros выполняет первый попавшийся (хотя на некоторых страницах пост один и программа срабатывает как надо)

пытался так

Выделить код

Код:

SET !VAR1 EVAL("\"{{!URLCURRENT}}\".replace(\"vk.com/*wall\",\"m.vk./wall\")")
URL GOTO={{!VAR1}}

но знаний не хватает и макрос не работает/ Напишите пожалуйста правельный вариант

ответил в ПМ

InfSub - Спасибо за код!


Интересует меня вопрос по поводу разгадки капчи! кодов я видел много, в основном все однотипные, копировать картинку и вставить на сайт. Но загвостка в подходящем сайте, первый в поисковике - антигейт.ком - можно ли както к нему привязать капчу?
  Меня интресуют сайты  с ценой до 1,5 дол за 1000. Нашол один подходящий сайт - там сразу код для imacros есть, но минималка 10 долларов .

скрытый текст
конкретно интересуют сайты с вот такими страницами (проверьте и сразу поймёте в чём смысл)
http://beatcaptchas.com/captcha.php
всё хорошо  в сайте? кроме цены - от 7 долларов - это чересчур дорого !
или вот ещё пример
http://api.deathbycaptcha.com/decaptcher?function=picture2&amp;print_format=html    (мин 10$)

kolshix пишет

InfSub - Спасибо за код!

не во что)))

kolshix пишет

Интересует меня вопрос по поводу разгадки капчи!

ни чего конкретного сказать не могу, предложения написать подобный код - были, но в тот момент не было времени ими заниматься

Пример кода капчи вот:
http://www.beatcaptchas.com/imacroscode.html
вот видео с примером работы
https://www.youtube.com/watch?v=s9hKStChcLY
Да вот только на видео ссылка на сайт в ролике не действует
(там написано что-то типа antigate.local/ )

Меня интересует никто не знает ли дешевого сайта с вот такими  вот страницами?
http://beatcaptchas.com/captcha.php

Приветствую! Подскажите мне, пожалуйста, как сделать, чтобы, когда новая открытая вкладка выдаёт ошибку 404, iMacros не прерывался с сообщением "RuntimeError: Error loading page http://gainer.su/waitt.php (HTTP status code 404), line 5 (Error code: -933)", а закрывал эту вкладку и просто начинал выполнять все действия сначала

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

ни кто не отменял

Ordovic пишет

не, не помогло

спрячьте код в спойлер
сейчас нет времени посмотреть ваш код, если ни кто не поможет - гляну вечером

не, не помогло

скрытый текст
VERSION BUILD=8510617 RECORDER=FX
TAB T=1
WAIT SECONDS=3
URL GOTO=http://gainer.su/elike.php
CLICK X=673 Y=555
TAB T=2
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
WAIT SECONDS=4
CLICK X=825 Y=674
WAIT SECONDS=6
TAB CLOSE

и вот так тоже пробовал:

скрытый текст
VERSION BUILD=8510617 RECORDER=FX
TAB T=1
WAIT SECONDS=3
URL GOTO=http://gainer.su/elike.php
CLICK X=673 Y=555
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=2
WAIT SECONDS=4
CLICK X=825 Y=674
WAIT SECONDS=6
TAB CLOSE

Есть пару вопросов к знатокам.
1. Как вы решаете вопрос с визуальной работой со ссылками? Например есть 20 ссылок, которые должны по очереди открываться и периодически нужно одни убирать, другие добавлять, в соседнем поле дописывать личный комментарий. Очень удобно это делать через гугл док, там подобие excel, но у меня никак не получается работать с ячейками через макрос. Можно использовать csv файл, но это слишком неудобно, комментарии не оставишь, переносить не получится..

2. Как реализовать проверку, например Если есть на странице кнопка ВОЙТИ выполнить какие-то действия, else ..

if (??)
{
}
else
{
}

Ordovic пишет

не, не помогло

использование click не лучшее решение, у меня к примеру не работающее...
да и судя по вашему предыдущему посту

Ordovic пишет

"RuntimeError: Error loading page http://gainer.su/waitt.php (HTTP status code 404), line 5 (Error code: -933)"

ошибка в строке 5, и соответственно экранировать нужно ее

InfSub пишет
Ordovic пишет

не, не помогло

использование click не лучшее решение, у меня к примеру не работающее...
да и судя по вашему предыдущему посту

Ordovic пишет

"RuntimeError: Error loading page http://gainer.su/waitt.php (HTTP status code 404), line 5 (Error code: -933)"

ошибка в строке 5, и соответственно экранировать нужно ее

дело вовсе не в строке, он  там всегда разную выдает. просто так всегда бывает, что браузер может не открыть страницу. соединение прервалось, или ещё чего. сервер, может, не доступен. а в задании аймакроса он обязан открыть эту страницу. и если не открывает, то аймакрос прекращает свою работу. так вот хочется, чтобы если во второй вкладке сайт не открывается, аймакрос не заканчивал свою работу, а просто закрывал эту вкладку и начинал всё заново

Здравствуйте. Помогите сделать скрипт. Цель проста: продавец выкладывает на торговую площадку раз в несколько дней товар. Товара очень мало и много людей пытается купить первыми.
Мне нужно скрипт, который быстро повторил бы покупки. В целом записью макроса все без проблем получилось, но возникли вопросы: как сделать заполнение определенного поля случайными данными?
У меня почта на моем домене, поэтому хотелось бы чтобы ящики вводились случайное_слово@mydomain.com. Если использовать один ящик, то не дает много продаж зарезервировать.

Пример нужного мне продукта http://is.gd/jz57Yq
Если не сложно пример можете приложить на любом товаре на данной площадке. Или даже, как я вижу, саму площадку можно не включать в скрипт, а сразу вставлять прямую ссылку на страницу оплаты сайта oplata.info

TemaZosin пишет

заполнение определенного поля случайными данными?

создайте файл с адресами эл. почты и настройте скрипт на его считывание и подстановку данных, поиск по форуму в помощь, обсуждалось не однократно

InfSub пишет

TemaZosin пишет: заполнение определенного поля случайными данными?создайте файл с адресами эл. почты и настройте скрипт на его считывание и подстановку данных, поиск по форуму в помощь, обсуждалось не однократно
                    Отредактировано InfSub (Сегодня 00:14:04)

Ну как бы мой запрос в гугле выдает результат на мой же запрос выше

скрытый текст
11935648596_86a12392bf_o.png

Я пробовал !now, но не могу разобраться, как его настроить, чтобы данные (в данном случае дата) добавлялись к концу имени, но перед собакой и без пробелов?

Выделить код

Код:

TAG POS=1 TYPE=INPUT:EMAIL FORM=NAME:NoFormName ATTR=ID:Email CONTENT=name"!NOW:ddmmyy_hhnnss"@domain.com

Настроил через "SET !VAR1 EVAL("Math.floor(Math.random()*5 + 1);")"

TemaZosin пишет
InfSub пишет

TemaZosin пишет: заполнение определенного поля случайными данными?создайте файл с адресами эл. почты и настройте скрипт на его считывание и подстановку данных, поиск по форуму в помощь, обсуждалось не однократно
                    Отредактировано InfSub (Сегодня 00:14:04)

Ну как бы мой запрос в гугле выдает результат на мой же запрос выше


Я пробовал !now, но не могу разобраться, как его настроить, чтобы данные (в данном случае дата) добавлялись к концу имени, но перед собакой и без пробелов?

Выделить код

Код:

TAG POS=1 TYPE=INPUT:EMAIL FORM=NAME:NoFormName ATTR=ID:Email CONTENT=name"!NOW:ddmmyy_hhnnss"@domain.com

Настроил через "SET !VAR1 EVAL("Math.floor(Math.random()*5 + 1);")"

это скорее костыль, хотя и такой вариант использовать можно
поиск есть встроенный, без google

скрытый текст
Конечно, как забавно вместо того, чтобы вставить строчку кода писать о том, что где-то есть решение. Подобные идиотские преподаватели сейчас в институтах, сидят делами своими занимаются, а студенты по методичкам сами изучают. Есть же решение, зачем спрашивать? Ну раз вы не хотите отвечать, зачем на форум заходите? Пусть люди сами ищут. Логика неясна в целом, т.к. я решение в итоге сам себе делаю из разных результатов разных людей. Смысл подобных постов - ноль.

Я спросил готовое решение, если бы я хотел сам сидеть ковыряться - не писал бы.


Как мне зациклить мой скрипт? Я делаю луп-повторение, но при любой ошибки (страница не прогрузилась, ссылка пропала) - скрипт отваливается с ошибкой. Как настроить так, чтобы при ошибке, он просто делал goto:начало скрипта и работал так зацикленно, пока я сам не отключу?
скрытый текст
Не нужно мне писать, что это есть где-то там бла-бла-бла. Просто напишите мне готовую строчку, применимую к моему вопросу. Иначе можете не отвечать - толку от такого поста будет ноль.

TemaZosin пишет

скрытый текст
Конечно, как забавно вместо того, чтобы вставить строчку кода писать о том, что где-то есть решение. Подобные идиотские преподаватели сейчас в институтах, сидят делами своими занимаются, а студенты по методичкам сами изучают. Есть же решение, зачем спрашивать? Ну раз вы не хотите отвечать, зачем на форум заходите? Пусть люди сами ищут. Логика неясна в целом, т.к. я решение в итоге сам себе делаю из разных результатов разных людей. Смысл подобных постов - ноль.

Я спросил готовое решение, если бы я хотел сам сидеть ковыряться - не писал бы.


Как мне зациклить мой скрипт? Я делаю луп-повторение, но при любой ошибки (страница не прогрузилась, ссылка пропала) - скрипт отваливается с ошибкой. Как настроить так, чтобы при ошибке, он просто делал goto:начало скрипта и работал так зацикленно, пока я сам не отключу?
скрытый текст
Не нужно мне писать, что это есть где-то там бла-бла-бла. Просто напишите мне готовую строчку, применимую к моему вопросу. Иначе можете не отвечать - толку от такого поста будет ноль.

Уважаемый, знаете сколько здесь таких, ищущих готовое, но не готовых хоть пальцем пошевелить ради того, чтобы то, что они делают заработало, считаете это бла-бла с моей стороны, да ради бога, с какой стати, я должен включать свои мозги ради Вашего скрипта, или чьего либо еще? Для чего форум Вы спрашиваете.. да для того, что когда-то эти вопросы уже были заданы и на них ответили, и не один раз! ответили, но есть Вы и подобные Вам, которым лень воспользоваться поиском, которые считают что за них на кнопку поиска должны нажать другие или выдать им готовое решение... и не важно, сколько эти гуру, сидящие здесь потратили в свое время - времени, на поиск этого решения... Вам - не важно, а вот нам, извините важно! И сидим ты тут, ради решения тех задач, которые еще не озвучивались, а не ради Вас, которому вынь да полож!

Приветствую Вас знатоки IMACROSa!
Помогите мне пожалуйста!
Ниже представлен скрипт для постинга в группы фейсбука, скрипт работает, сообщение рассылает в каждую группу, но в скрипте почему то не работает задержка времени перед публикацией следующего поста, тоесть скрипт постит одно сообщение за другим, а должен делать паузу в две минуты 30+30+30+30=120 сек. он попросту пропускает эти блоки!
Помогите пожалуйста исправить данную ошибку, заранее всем спасибо.
_______________________

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !VAR1 "Текст сообщения"
SET !VAR2 EVAL("var random=Math.floor(Math.random()*30 + 1; random;")
SET !VAR3 EVAL("var random=Math.floor(Math.random()*30 + 1; random;")
SET !VAR4 EVAL("var random=Math.floor(Math.random()*30 + 1; random;")
SET !VAR5 EVAL("var random=Math.floor(Math.random()*30 + 1; random;")
URL GOTO=https://www.facebook.com/bookmarks/groups
'SET !REPLAYSPEED MEDIUM
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/groups/*
WAIT SECONDS={{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message
WAIT SECONDS={{!VAR3}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}}
TAG POS=1 TYPE=BUTTON FORM=ID:* ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR5}}

vidinfo
исправьте

скрытый текст

Выделить код

Код:

EVAL("var random=Math.floor(Math.random()*30 + 1; random;")


на
скрытый текст

Выделить код

Код:

EVAL("Math.floor(Math.random()*30 + 1);")

Большое Вам спасибо за помощь.
Если Вас не затруднит, помогите мне пожалуйста по возможности, еще в нескольких вопросах.

1). Возможно ли сделать так, чтобы скрипт по поочередно отправлял разные сообщения по группам?

SET !ERRORIGNORE YES
SET !VAR1 "Текст сообщения 1"
SET !VAR2 "Текст сообщения 2"
SET !VAR3 "Текст сообщения 3"
и так далее. 
Когда список сообщений закончился, он снова начинает отправлять с SET !VAR1 "Текст сообщения 1"

2). На данный момент в скрипте можно прописать паузы между действиями, в данном случае, значение между действиями указанно по 30 сек. конечно можно указать разное время для каждого действия, к примеру 25, 27, 33, 17. но общее время каждого поста остается неизменным 102 секунды, каждый пост. Подскажите пожалуйста, как выставить время между каждым действием, к примеру   1. (Math.random()*ОТ 25 ДО 35 + 1);"), 2. (Math.random()*ОТ 7 ДО 11 + 1);") и так далее.

3). Скажите, пожалуйста, сработает ли в данном скрипте рандомизация текста, тоесть "авто подмена слов " к примеру: SET !VAR1 "Оставьте Ваше {{сообщения|послание}} {{здесь|в этом поле}} "

Не судите меня строго за мои вопросы, я только вчера установил imacros, и пытаюсь разобраться, пока что в непонятных для меня значениях, но с Вашей помощью, я надеюсь, начальный уровень освою быстро:)

Заранее благодарен за то что уделяете мне свое время, и таким же новичкам как я.
С Уважением Александр.

vidinfo пишет

1). Возможно ли сделать так, чтобы скрипт по поочередно отправлял разные сообщения по группам?

можно, но скорее всего придется полностью переписывать скрипт

vidinfo пишет

2). как выставить время между каждым действием, к примеру   1. (Math.random()*ОТ 25 ДО 35 + 1);"), 2. (Math.random()*ОТ 7 ДО 11 + 1);") и так далее.

EVAL("var min=25; var max=35; var res=0; res=Math.floor(Math.random()*(max-min+1))+min;")

где: min - минимальное значение, max - максимальное

vidinfo пишет

3). Скажите, пожалуйста, сработает ли в данном скрипте рандомизация текста, тоесть "авто подмена слов " к примеру: SET !VAR1 "Оставьте Ваше {{сообщения|послание}} {{здесь|в этом поле}} "

да

Спасибо за помощь , пойду экспериментировать :)

Подскажите как вызвать js файл из другого js файла?
Пытался
loadscript (test.js);
но пишет
ReferenceError: loadscript is not defined, line: 2 (Error code: 991)

Не приходилось сталкиваться с какой-то визуализацией? Например ссылки, которые я открываю нужно периодически менять местами - одни убирать, другие добавлять, доставать из csv файла не удобно и не понятно визуально, использую google doc - там обычная екселевская таблица, но вот тегов там нет, чтобы к ним привязаться. Как решаете подобную задачу?

Warped пишет

Подскажите как вызвать js файл из другого js файла?

в имакросе нельзя подгрузить из одного js другой

Warped пишет

Не приходилось сталкиваться с какой-то визуализацией? Например ссылки, которые я открываю нужно периодически менять местами - одни убирать, другие добавлять, доставать из csv файла не удобно и не понятно визуально, использую google doc - там обычная екселевская таблица, но вот тегов там нет, чтобы к ним привязаться. Как решаете подобную задачу?

написать обработчик на js
вам нужна визуализация или работа реальная скрипта? по-моему второе предпочтительней

Здравствуйте, помогите пожалуйста, не работает рандомизация текста, я написал в скрипте так: SET !VAR1 "Оставьте Ваше {{сообщения|послание}} в этом поле"
А после размещения моего сообщения, текст выглядит так:  Оставьте Ваше __undefined__ в этом поле
Помогите пожалуйста исправить данную ошибку.
Спасибо.

vidinfo пишет

Здравствуйте, помогите пожалуйста, не работает рандомизация текста, я написал в скрипте так: SET !VAR1 "Оставьте Ваше {{сообщения|послание}} в этом поле"
А после размещения моего сообщения, текст выглядит так:  Оставьте Ваше __undefined__ в этом поле
Помогите пожалуйста исправить данную ошибку.
Спасибо.

в предыдущем моем ответе вам, подразумевалось, что ее можно сделать, но не говорилось что предложенный вами метод правильный (прежде всего приведенный вами пример рассматривался как аналогия)

каким способом ее сделать - решать вам, писать за вас - ваш скрипт - не буду, форум посвящен не написанию за кого-то скриптов, а указанию на ошибки в скриптах
на мой взгляд вам придется делать что-то на подобии примера со временем, только вместо того чтобы в результате получать кол-во секунд, вам нужно сделать вывод того или иного слова

Хорошо спасибо, буду пытаться искать решение!

vidinfo пишет

Хорошо спасибо, буду пытаться искать решение!

решение уже было на форуме, хотя и не совсем в том виде, что нужно вам

Возможно запустить несколько аймакросов одновременно? Если да, то как?

sergey37 пишет

Возможно запустить несколько аймакросов одновременно? Если да, то как?

открыть несколько окон браузера и в каждом запустить по 1 скрипту

InfSub Спасибо, будем пробовать

Sergey2014 пишет

Как мне зациклить мой скрипт? ....... при любой ошибки (страница не прогрузилась, ссылка пропала) - скрипт отваливается с ошибкой.
Как настроить так, чтобы при ошибке, он просто делал goto:начало скрипта и работал так зацикленно, пока я сам не отключу?

Я вот тоже, не нашёл ответ на этот вопрос, если страничка не загрузилась, то iMacros продолжает выполнение. Как сделать, если в случаи ошибки загрузки странички, скрипт начал выполнение заново.

Пост 1061 прочтите (2ю половину)

19-01-2014 01:32:53

Sergey2014 пишет

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

а он и будет продолжать выполнение заложенных в него функций до тех пор пока не закончится цикл или не произойдет ошибка (если не включен игнор ошибок)
если у вас не успевает загрузиться страница - увеличте таймаут ожидания загрузки

Sergey2014 пишет

' Далее следует 3 километра скрипта, ждать когда iMacros дойдёт до конца, ну ооочень долго.
' Как сделать если страничка не загрузилась за 30 секунд, началось всё заново?
' Вот что я имел ввиду.

вы внимательно прочли мой предыдущий пост?
повторюсь, на чистом имакросе - это не возможно, для того чтобы сделать что-то подобное нужно делать управляющий скрипт анализирующий работу имакроса

Повторяю в 3 и последний раз - читаем внимательно пост 1061 (особенно 2ю половину)

19-01-2014 12:58:29
iMacros - не кликер, и файлы Вам не запустит, вы ошиблись, как минимум в выборе программного обеспечения

У меня 2 проблемки:
Как осуществить клик по координатам в определенном фрейме средствами imacros?
Как получить исходный код фрейма на встроенном JS?

extender пишет

Как осуществить клик по координатам в определенном фрейме средствами imacros?

при клике по координатам - без разницы в каком фрейме они находятся

extender пишет

Как получить исходный код фрейма на встроенном JS?

EXTRACT=HTM

InfSub пишет
extender пишет

Как получить исходный код фрейма на встроенном JS?

EXTRACT=HTM

Выделить код

Код:

FRAME F=2
TAG POS=1 TYPE=HTML ATTR=HTM:* EXTRACT=HTM

Как можно сделать то же самое по имени фрейма а не по номеру?
Как передать это переменной на JS?
Исполняется очень долго(30 секунд фриз на браузере) хотя исходник не такой уж и большой... можно ли что-то сделать?

extender пишет

Как можно сделать то же самое по имени фрейма а не по номеру?

в чем проблема подставить имя вместо номера?

extender пишет

Как передать это переменной на JS?

открыть любой пример на js и посмотреть как это делается

extender пишет

Исполняется очень долго(30 секунд фриз на браузере) хотя исходник не такой уж и большой... можно ли что-то сделать?

написать разработчикам имакроса, с вопросом - "че за фигня?" :)

InfSub пишет
extender пишет

Исполняется очень долго(30 секунд фриз на браузере) хотя исходник не такой уж и большой... можно ли что-то сделать?

написать разработчикам имакроса, с вопросом - "че за фигня?" :)

А чисто на встроенном JS такое можно сделать?

extender пишет
InfSub пишет
extender пишет

Исполняется очень долго(30 секунд фриз на браузере) хотя исходник не такой уж и большой... можно ли что-то сделать?

написать разработчикам имакроса, с вопросом - "че за фигня?" :)

А чисто на встроенном JS такое можно сделать?

попробуйте

Парни!
Кто-нибудь пытался сделать бота для регистрации на мыло,ру...у них там поля полей автогенерация каждый раз. Кто-нибудь пытался обойти?

lostandleft1 пишет

Парни!
Кто-нибудь пытался сделать бота для регистрации на мыло,ру...у них там поля полей автогенерация каждый раз. Кто-нибудь пытался обойти?

Капча? Только руками(или через сервисы).

Выделить код

Код:

var macros;
var retcode;
var nn = "\n";
var getExtract;
var macros = "CODE:SET !EXTRACT_TEST_POPUP NO\nFRAME NAME=\"main\"\nTAG POS=1 TYPE=HTML ATTR=HTM:* EXTRACT=HTM\n";
retcode = iimPlay(macros);
getExtract = iimGetLastExtract(1);
iimDisplay(getExtract);
alert(getExtract);

Сделал таки экстракт из фрейма через яву :P

lostandleft1 пишет

Парни!
Кто-нибудь пытался сделать бота для регистрации на мыло,ру...у них там поля полей автогенерация каждый раз. Кто-нибудь пытался обойти?

все просто "как 2 перста оросить" (с) :D
у тебя в ПМ

20-01-2014 21:57:45

extender пишет

Сделал таки экстракт из фрейма через яву :P

молодца=)

lostandleft1 пишет

Парни!Кто-нибудь пытался сделать бота для регистрации на мыло,ру...у них там поля полей автогенерация каждый раз. Кто-нибудь пытался обойти?

Попробуй выбрать другой мод записи в настройках записи, который не зависит от "генерации полей"

Как при помощи imacros или javascript сохранить данные из переменной в файл? при чем нужно дописывать данные в конец файла а не перезатерать его весь.

В аймакрос есть только команда saveas только в csv, но пока не получилось правильно рализовать. В java хорошо бы использовать какие-то классы типа streamreader, но подключить и через java записывать у меня не получилось(

Если есть, киньте какой-то свой пример как спавляетесь с такой задачей. Спасибо.

Warped пишет

Как при помощи imacros или javascript сохранить данные из переменной в файл? при чем нужно дописывать данные в конец файла а не перезатерать его весь.

В аймакрос есть только команда saveas только в csv, но пока не получилось правильно рализовать. В java хорошо бы использовать какие-то классы типа streamreader, но подключить и через java записывать у меня не получилось(

Если есть, киньте какой-то свой пример как спавляетесь с такой задачей. Спасибо.

вообще-то при сохранении данных, имакрос не перезаписывает данные а пишет их в конец файла, читайте внимательней мат. часть

вконтакте раскрыл весь список людей из поиска и запустил макрос

SET !ERRORIGNORE YES
TAG POS={{!LOOP}} TYPE=SPAN ATTR=TXT:Увеличить
TAG POS=1 TYPE=A ATTR=TXT:Закрыть

доходит до 6го и перестаёт, почему не знаю.
Помогите.

и ещё вопрос.
видел на видео выделяет фото человека из поиска в категории люди вконтакте, переходит на его страницу возвращется обратно в поиск и выделяет второе фото синим цветом, но при это остаётся выделенным 1го фото к которому макрос заходил. Как это сделать, чтобы выделенное, макрос не убирал при работе макроса?

Алим пишет

вконтакте раскрыл весь список людей из поиска и запустил макрос

SET !ERRORIGNORE YES
TAG POS={{!LOOP}} TYPE=SPAN ATTR=TXT:Увеличить
TAG POS=1 TYPE=A ATTR=TXT:Закрыть

доходит до 6го и перестаёт, почему не знаю.

отключите игнор ошибок - узнаете

Алим пишет

видел на видео выделяет фото человека из поиска в категории люди вконтакте, переходит на его страницу возвращется обратно в поиск и выделяет второе фото синим цветом, но при это остаётся выделенным 1го фото к которому макрос заходил. Как это сделать, чтобы выделенное, макрос не убирал при работе макроса?

в настройках имакроса - галочку поставьте "подсвечивать объект"

Вконтакте на своей странице на стене добавлет фото из папки, но вот на других стенах других пользователей не добавляет и на стене групп.

работает на своей стене вконтакте

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


а как сделать в группе на открытой стене?

ведь в группе тот же код post_field
но не добавляет. Весь день менял, разные методы пробывал не получается.

23-01-2014 17:46:02
а при выборе макросом фотографии из альбома он фото просто открывает, но не добавляет на стену.
а если в ручную, то добавляет

Алим пишет

Вконтакте на своей странице на стене добавлет фото из папки, но вот на других стенах других пользователей не добавляет и на стене групп.

работает на своей стене вконтакте

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


а как сделать в группе на открытой стене?

ведь в группе тот же код post_field
но не добавляет. Весь день менял, разные методы пробывал не получается.

23-01-2014 17:46:02
а при выборе макросом фотографии из альбома он фото просто открывает, но не добавляет на стену.
а если в ручную, то добавляет

ни как, на своей стене используется тот метод, которого нет ни в группах, ни на чужих стенах
если только искать какое-либо обходное решение

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

Как нажать так, чтобы прикреплялась фото, а не просто открывалась отдельно на странице?

Алим пишет

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

Как нажать так, чтобы прикреплялась фото, а не просто открывалась отдельно на странице?

перечитайте еще раз предыдущий комментарий!!!
Этим скриптом, да и любым др. известным мне, можно прикрепить картинку ТОЛЬКО к себе на стену, более ни куда!!!
На чужих стенах и в группах - нет того способа прикрепления фото, который используется в данном скрипте, так сделали разработчики "ВКонтакте".
Способ, которым вы прикрепляете фото руками на чужую стену, имакрос - выполнить не может, возникают ошибки, фото не прикреляется.

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

скрытый текст
параметр скорости воспроизведения - максимальный

код является концовкой файла iim входящего в js -  в начале iim выполняет работу на станице вкотакте, и проверяет в конце наличие капчи - и если капчи нет макрос переходит к следующему составному файлу js

условия открытия вкладок подстраивайте под себя

URL GOTO=http://antigate.com/panel.php?action=testcaptcha - указан 2 раза так как у меня в исходном коде присутствует команда "clear" - если нет необходимости в такой команде - то коды авторизации можно удалить

Выделить код

Код:

' Капча
SET !ERRORIGNORE NO
SET !TIMEOUT_STEP 1
TAG POS=2 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки
ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\Captcha FILE=Captcha.jpg 
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php* CONTENT=EVENT:SAVEPICTUREAS
TAB OPEN
TAB T=3
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1
URL GOTO=http://antigate.com/panel.php?action=testcaptcha
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/panel.php ATTR=NAME:en_login CONTENT=  <логин>  
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://antigate.com/panel.php ATTR=NAME:password CONTENT=<пароль>
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/panel.php ATTR=*
URL GOTO=http://antigate.com/panel.php?action=testcaptcha
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:panel.php ATTR=NAME:testfile CONTENT=C:\Users\user\Documents\iMacros\Macros\Captcha\Captcha.jpg
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=*
WAIT SECONDS=6
SET !TIMEOUT_STEP 9
TAG POS=1 TYPE=B ATTR=TXT:* EXTRACT=TXT
TAB T=2
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT= {{!EXTRACT}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=1

Всем привет!
Подскажите, вот кусок кода.

Выделить код

Код:

WAIT SECONDS=6
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=6
TAG POS=1 TYPE=SPAN ATTR=CLASS:tico<SP>tico__12&&ONCLICK:OK.photoLayer.focusComment()

Нужно что бы если при выполнении этой команды:

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0

он не находит нужный элемент на странице, то выполняет задачу заново по циклу.

setapca пишет

Всем привет!
Подскажите, вот кусок кода.

Выделить код

Код:

WAIT SECONDS=6
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=6
TAG POS=1 TYPE=SPAN ATTR=CLASS:tico<SP>tico__12&&ONCLICK:OK.photoLayer.focusComment()

Нужно что бы если при выполнении этой команды:

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0

он не находит нужный элемент на странице, то выполняет задачу заново по циклу.

Советую сразу потехоньку переходить на java - чем больше пользуюсь, тем больше убеждаюсь что одними iim файлами не обойтись, нужно комбинировать возможности imacros

вот небольшой пример решения (сделанный на скорую руку)

скрытый текст
создаём файл js

Выделить код

Код:

var с      // переменная цыклов
с=5     // количество цыклов(повторов)
for (d=0;d<с;){
      d++
      iimPlay("название файла  iim содержащего ваш код")
}

С js будет происходить такая ситуация: макрос доходит до Вашего кода iim и если не находит нужной команды (первой строчки) останавливает работу iim кода (ко второй строчке не переходит), потом возвращается в js код и выполняет установленное количество повторов

kolshix
Спасибо

InfSub пишет

sergey37 пишет: Возможно запустить несколько аймакросов одновременно? Если да, то как?открыть несколько окон браузера и в каждом запустить по 1 скрипту

не получается, всё равно выскакивает окно работающего макроса :(

sergey37 пишет
InfSub пишет

sergey37 пишет: Возможно запустить несколько аймакросов одновременно? Если да, то как?открыть несколько окон браузера и в каждом запустить по 1 скрипту

не получается, всё равно выскакивает окно работающего макроса :(

простите, а как согласуются между собой "выскакивает окно работающего скрипта" и "запуск нескольких скриптов одновременно"?

inkoteb пишет

Подскажите пожалуйста. Хочу скрипт привязать к времени суток. Ток команды не знаю, не нашол.Чтоб было типа wait=(2:00 ночи). Или как мне делать данный блок программы.Жду ответа желательно с примером

1. Создаете *.bat для запуска Firefox  с примерно таким содержимым "C:\Program Files\Mozilla Firefox\firefox.exe"

2. Создаем макрос и сохраняем его предположим под названием мой_сохраненный_макрос.iim

3. Настраиваем домашнюю страницу Firefox, стартовой страницей будет строка  imacros://run/?m=мой_сохраненный_макрос.iim

4. Если в линукс - cron, в виндовс - Назначение задач. Делаете задание по запуску *.bat файла по времени

Если что то непонятно, пишите в личку. Дам ссылку на статью.

Здравствуйте!
Подскажите как убрать "окно работающего макроса" когда он запускается из закладок? пример http://shot.qip.ru/00bHl3-5n037PsfP/

pozitivnick пишет

Здравствуйте!
Подскажите как убрать "окно работающего макроса" когда он запускается из закладок? пример http://shot.qip.ru/00bHl3-5n037PsfP/

могу ошибаться, но на сколько мне известно - ни как

И еще вопрос, Есть к примеру папка в ней файл .js
папка/имя_файло.js
Как его подключить к imm файлу для выполнения

spy686 пишет

Flynn пишет: Здравствуйте. Помогите разрешить задачу - имеется такой алгоритм действий, который будет повторяться много раз:1) кликаем на ссылку-картинку (она каждый раз в одном и том же месте страницы - наверху, вероятно, можно задать координаты) и переходим тем самым на страницу.2) на странице кликаем на другую картинку (в центре страницы, думаю, тоже нужна возможность добавить координаты клика), открывается увеличенная версия в слайдбоксе, правой кнопкой на нем и сохраняем на винт, закрываем слайдбокс крестиком.Проблема в том, что при записи действий ничего не выходит - при записи в скрипте прописывается URL, по которому надо кликнуть, а они каждый раз разные (в 1 и 2 пункте). Заранее спасибо.установи firebug и индифицируй по какому нить тегу

А можно примерчик инициации клика по тегу?

25-01-2014 23:35:33

svamishivananda пишет

Всем привет! Возникла небольшая проблемка с созданным макросом. Макрос заходит в ОДНОКЛАССНИКИ, далее в раздел ЛЮДИ СЕЙЧАС НА САЙТЕ, меняет минимальный возраст на 15 лет, выбирает человека, открывает его главное фото, ставит оценку 5, возвращается на главную страницу и снова повторяет операцию.Сначала я сделал сценарий так, что он открывал страницу пользователя, выбирал фото и ставил оценку, использую координаты на мониторе. Но потом заметил, что иногда сценарий не ставит оценку. Видимо, промахивается по координатам. В Record options выбрал пункт Select the best record mode automatically. Записал в этом режиме событие выставления оценки, вставил в общий сценарий. Промахиваться перестал, оценки четко выставляет. Но теперь сценарий стал останавливаться, если в аккаунте пользователя нет главного фото.  Когда работал по координатам Х и Y, сценарий просто пропускал такие аккаунты и начинал заново. Подскажите, пожалуйста, в чем здесь дело? Вот сценарий:VERSION BUILD=8300326 RECORDER=FXTAB T=1URL GOTO=http://www.odnoklassniki.ru/profile/518920222680TAG POS=1 TYPE=A ATTR=TXT:Люди<SP>сейчас<SP>на<SP>сайтеEVENT TYPE=MOUSEDOWN SELECTOR="#field_ageFrom" BUTTON=0EVENT TYPE=MOUSEMOVE SELECTOR="#field_ageFrom" POINT="(498,202)"EVENT TYPE=MOUSEUP POINT="(500,201)"EVENT TYPE=CLICK SELECTOR="#field_ageFrom>OPTION:nth-of-type(2)" BUTTON=0WAIT SECONDS=10CLICK X=355 Y=341CLICK X=143 Y=184TAG POS=1 TYPE=SPAN ATTR=ONCLICK:OK.photoLayer.focusComment()&&CLASS:mark_ic<SP>mark_ic__5&&TXT:WAIT SECONDS=20URL GOTO=http://www.odnoklassniki.ru/profile/518920222680Третья снизу строка выставляет оценку.

Protey пишет

по координатам Х и Y

Подскажите как определить координаты кнопки (картинки) для клика.
Возможно есть возможность визуализации клика во время выполнения сценария?

setapca пишет

И еще вопрос, Есть к примеру папка в ней файл .jsпапка/имя_файло.jsКак его подключить к imm файлу для выполнения

Сам разобрался, подключил в js

vazik пишет

А можно примерчик инициации клика по тегу?

TAG POS=1 TYPE=A ATTR=TXT:Люди<SP>сейчас<SP>на<SP>сайте

vazik пишет

Подскажите как определить координаты кнопки (картинки) для клика.
Возможно есть возможность визуализации клика во время выполнения сценария?

записать имакрос с параметрами записи "Use X/Y position", либо использовать сторонний софт.

Появился ещё вопрос :)

Как сделать так чтобы открывался сайт и происходил клик по форме, чтобы я сразу смог в неё писать?

Привожу пример:
http://beta.2gis.ru/novosibirsk/center/82.908626,55.059514/zoom/16?utm_source=online3&utm_medium=promo&utm_campaign=beta       ---- сайт загрузился и я сразу пишу в поле поиска

http://www.avito.ru/novosibirsk  ----- сайт загрузился и приходится совершать одно лишнее телодвижение)))

***

записал макрос и когда открыта панель - при нажатии F8(http://shot.qip.ru/009lO0-6Myy9Dzx0/) тогда он работает, а когда выносишь в закладки то при воспроизведении макроса вылазиет окошко(http://shot.qip.ru/00bHl3-5n037PsfP/) которое информирует(сколько времени длился макрос и т.д.) и тогда не работает, как будто после завершения макроса, внимание переключается на окошко. Как можно решить этот вопрос?

Вот код макроса:
URL GOTO=http://www.avito.ru/rossiya
CLICK X=387 Y=73

InfSub пишет

sergey37 пишет: InfSub пишет: sergey37 пишет: Возможно запустить несколько аймакросов одновременно? Если да, то как?открыть несколько окон браузера и в каждом запустить по 1 скриптуне получается, всё равно выскакивает окно работающего макроса простите, а как согласуются между собой "выскакивает окно работающего скрипта" и "запуск нескольких скриптов одновременно"?
                    Отредактировано InfSub (Вчера 16:51:52)

Возможно я неправильно сформулировал, в окне запускаю макрос. Открываю новое окно, но возможности запустить второй макрос не вижу, т.к. в новом окне всё тот же уже работающий макрос

svamishivananda пишет

Всем привет! Возникла небольшая проблемка с созданным макросом. Макрос заходит в ОДНОКЛАССНИКИ, далее в раздел ЛЮДИ СЕЙЧАС НА САЙТЕ, меняет минимальный возраст на 15 лет, выбирает человека, открывает его главное фото, ставит оценку 5, возвращается на главную страницу и снова повторяет операцию.Сначала я сделал сценарий так, что он открывал страницу пользователя, выбирал фото и ставил оценку, использую координаты на мониторе. Но потом заметил, что иногда сценарий не ставит оценку. Видимо, промахивается по координатам. В Record options выбрал пункт Select the best record mode automatically. Записал в этом режиме событие выставления оценки, вставил в общий сценарий. Промахиваться перестал, оценки четко выставляет. Но теперь сценарий стал останавливаться, если в аккаунте пользователя нет главного фото.  Когда работал по координатам Х и Y, сценарий просто пропускал такие аккаунты и начинал заново. Подскажите, пожалуйста, в чем здесь дело? Вот сценарий:VERSION BUILD=8300326 RECORDER=FXTAB T=1URL GOTO=http://www.odnoklassniki.ru/profile/518920222680TAG POS=1 TYPE=A ATTR=TXT:Люди<SP>сейчас<SP>на<SP>сайтеEVENT TYPE=MOUSEDOWN SELECTOR="#field_ageFrom" BUTTON=0EVENT TYPE=MOUSEMOVE SELECTOR="#field_ageFrom" POINT="(498,202)"EVENT TYPE=MOUSEUP POINT="(500,201)"EVENT TYPE=CLICK SELECTOR="#field_ageFrom>OPTION:nth-of-type(2)" BUTTON=0WAIT SECONDS=10CLICK X=355 Y=341CLICK X=143 Y=184TAG POS=1 TYPE=SPAN ATTR=ONCLICK:OK.photoLayer.focusComment()&&CLASS:mark_ic<SP>mark_ic__5&&TXT:WAIT SECONDS=20URL GOTO=http://www.odnoklassniki.ru/profile/518920222680Третья снизу строка выставляет оценку.

Protey пишет

по координатам Х и Y

Возможно есть возможность визуализации клика во время выполнения сценария?
Хотелось бы видеть, в каком месте кликает мой макрос.

26-01-2014 12:14:46

InfSub пишет

vazik пишет:записать имакрос с параметрами записи "Use X/Y position", либо использовать сторонний софт.

Если не секрет, подскажите каким сторонним софтом можно воспользоваться?

pozitivnick пишет

записал макрос и когда открыта панель - при нажатии F8(http://shot.qip.ru/009lO0-6Myy9Dzx0/) тогда он работает, а когда выносишь в закладки то при воспроизведении макроса вылазиет окошко(http://shot.qip.ru/00bHl3-5n037PsfP/) которое информирует(сколько времени длился макрос и т.д.) и тогда не работает, как будто после завершения макроса, внимание переключается на окошко. Как можно решить этот вопрос?

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

26-01-2014 15:58:02

sergey37 пишет

Возможно я неправильно сформулировал, в окне запускаю макрос. Открываю новое окно, но возможности запустить второй макрос не вижу, т.к. в новом окне всё тот же уже работающий макрос

скрин 2х окон расположенных рядом друг с другом выложите в спойлер или ссылку на скрин...


на будущее, при ответе, нажимайте на ответить, и там уже правьте цитату, если нажимать цитировать - то ответ очень убого отображается, и трудно читать то, что вы пытались процитировать

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

Вопрос решился: я выбрал другой метод выбора при записи макроса и тогда всё получилось как я хотел :)

pozitivnick пишет

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

Вопрос решился: я выбрал другой метод выбора при записи макроса и тогда всё получилось как я хотел :)

не совсем понял, о каком методе речь, если можно пример, и что именно это исправило

Подскажите пожалуйста.

Какую функцию выполняет это строчка
TAB CLOSEALLOTHERS

и это
SET !ERRORCONTINUE YES

Есть на странице ссылка. Начало у нее известно, к примеру jones.com/news/id/
Моя задача при открытых куче вкладок со страницами вытащить оттуда данные ссылки. Т.е. они везде одинаковые, меняется только концовка.
Меня лишь интересует кусок кода, который будет на открытой странице искать jones.com/news/id/ и копировать со страницы всю ссылку целиком, например jones.com/news/id/1272, а после записывать в файл.
В итоге я хочу, чтобы после того как выполнится весь скрипт, то я видел файл, где в каждой строчке новая ссылка.

Мне не нужен весь скрипт, а именно кусок "поиск куска заданной ссылки - копирование полностью - запись в тестовик"

27-01-2014 00:07:08

Алим пишет

Подскажите пожалуйста.

Какую функцию выполняет это строчка
TAB CLOSEALLOTHERS

и это
SET !ERRORCONTINUE YES

Первая закрывает все кладки кроме активной, вторая отключает вывод ошибок, чтобы скрипт не останавливался, а продолжал работать. Я лично вторую всегда использую, у меня 6 секунд ожидает еще (мало ли страница не прогрузилась) и после к следующему шагу переходит.

Использую обычно в связке

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

Написал небольшой макрос, но возникла проблема: как зациклить этот макрос в теле макроса и не весь макрос, а начиная со строчки 11 и заканчивая строкой 23 ?

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

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://cfqn.ru/login
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:login_field CONTENT=sergey37
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=ID:pass_field CONTENT=080174
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=ID:remember CONTENT=NO
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:login_btn
'C:\Users\Пользователь\Documents\iMacros\Macros\ssilki.txt  список ссылок на юзеров 1ссылка-1строка без запятой
CMDLINE !DATASOURCE C:\Users\Пользователь\Documents\iMacros\Macros\ssilki.txt
SET !DATASOURCE_COLUMNS 20
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
'URL GOTO=http://cfqn.ru/users/DikyiPrapor
URL GOTO={{!COL1}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Написать<SP>на<SP>стене
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>
ONDIALOG POS=1 BUTTON=OK CONTENT=http:seo-bytik.ru
ONDIALOG POS=2 BUTTON=OK CONTENT=imacros
TAG POS=1 TYPE=IMG ATTR=SRC:http://1allhairs.ru/includes/bbcode/images/url.png
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>купить<SP><SP>[url=http:seo-bytik.ru]imacros[/url]<SP>шаблон
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:popup_ok
TAG POS=1 TYPE=A ATTR=TXT:Выход


Надо зациклить вот эти строки
скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE C:\Users\Пользователь\Documents\iMacros\Macros\ssilki.txt
SET !DATASOURCE_COLUMNS 20
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
'URL GOTO=http://cfqn.ru/users/DikyiPrapor
URL GOTO={{!COL1}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Написать<SP>на<SP>стене
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>
ONDIALOG POS=1 BUTTON=OK CONTENT=http:seo-bytik.ru
ONDIALOG POS=2 BUTTON=OK CONTENT=imacros
TAG POS=1 TYPE=IMG ATTR=SRC:http://сайтru/includes/bbcode/images/url.png
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>купить<SP><SP>[url=http:seo-bytik.ru]imacros[/url]<SP>шаблон
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:popup_ok

Всем доброго дня. Подскажите пожалуйста я недавно только начал оваивать Imacros у меня есть код:

Выделить код

Код:

VERSION BUILD=8021970
SET !ERRORIGNORE YES
URL GOTO=http://m.odnoklassniki.ru/dk?st.cmd=usersOnline&_prevCmd=userMain&tkn=2719
TAG POS=1 TYPE=SPAN ATTR=CLASS:usr

мне нужно нажать на аватарку и поставить оценку 5, можно ли это сделать как то не через "CLICK X=Y=". Подскажите пожалуйста, заранее благодарен!

скрытый текст

sergey37 пишет

Написал небольшой макрос, но возникла проблема: как зациклить этот макрос в теле макроса и не весь макрос, а начиная со строчки 11 и заканчивая строкой 23 ?Пользоваться стандартной функцией неудобно, получается слишком много телодвижений, авторизация и выход будут постоянно повторятьсяскрытый текстВыделить кодКод:VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://cfqn.ru/login
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:login_field CONTENT=sergey37
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=ID:pass_field CONTENT=080174
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=ID:remember CONTENT=NO
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:login_btn
'C:\Users\Пользователь\Documents\iMacros\Macros\ssilki.txt  список ссылок на юзеров 1ссылка-1строка без запятой
CMDLINE !DATASOURCE C:\Users\Пользователь\Documents\iMacros\Macros\ssilki.txt
SET !DATASOURCE_COLUMNS 20
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
'URL GOTO=http://cfqn.ru/users/DikyiPrapor
URL GOTO={{!COL1}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Написать<SP>на<SP>стене
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>
ONDIALOG POS=1 BUTTON=OK CONTENT=http:seo-bytik.ru
ONDIALOG POS=2 BUTTON=OK CONTENT=imacros
TAG POS=1 TYPE=IMG ATTR=SRC:http://1allhairs.ru/includes/bbcode/images/url.png
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>купить<SP><SP>imacros<SP>шаблон
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:popup_ok
TAG POS=1 TYPE=A ATTR=TXT:Выход
Надо зациклить вот эти строкискрытый текстВыделить кодКод:CMDLINE !DATASOURCE C:\Users\Пользователь\Documents\iMacros\Macros\ssilki.txt
SET !DATASOURCE_COLUMNS 20
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
'URL GOTO=http://cfqn.ru/users/DikyiPrapor
URL GOTO={{!COL1}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Написать<SP>на<SP>стене
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>
ONDIALOG POS=1 BUTTON=OK CONTENT=http:seo-bytik.ru
ONDIALOG POS=2 BUTTON=OK CONTENT=imacros
TAG POS=1 TYPE=IMG ATTR=SRC:http://сайтru/includes/bbcode/images/url.png
TAG POS=1 TYPE=TEXTAREA FORM=ID:add_wall_form ATTR=ID:message CONTENT=Здесь<SP>мы<SP>пишем<SP>рекламное<SP>сообшение<SP>и<SP>втыкаем<SP>свою<SP>ссылку<SP>купить<SP><SP>imacros<SP>шаблон
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:popup_ok

                    Отредактировано sergey37 (Сегодня 16:39:17)


Нашёл небольшой выход, но он получается уж очень длинный.
Надо размножить эти строчки

скрытый текст

Выделить код

Код:

URL GOTO={{!COL1}}
'URL GOTO=http://1allhairs.ru/photos/photo66.html
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>комментарий
TAG POS=1 TYPE=TEXTAREA FORM=ID:msgform ATTR=ID:content CONTENT=В<SP>нашем<SP>магазине<SP>можно<SP>[url=http://allhairs.ru/shop/]купить<SP>шампунь[/url]<SP>изображённый<SP>на<SP>фотографии.
TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:msgform ATTR=ID:submit_cmm
TAG POS=2 TYPE=A ATTR=TXT:Фото


Только в URL GOTO={{!COL1}} менять цифру на 2-3-4.... по количеству урл. Но тогда макрос получается слишком длинный :(. В какую сторону ещё можно подумать что бы зациклить переходы?

sergey37 пишет

Написал небольшой макрос, но возникла проблема: как зациклить этот макрос в теле макроса и не весь макрос, а начиная со строчки 11 и заканчивая строкой 23 ?

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

Помогите если кому не трудно!!
На Майл ру
Когда вставляю оценки на фото Заходит одному и то му же Как зделать чтоб выбирала случайностью
TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>друзья
TAG POS=1 TYPE=A ATTR=TXT:Наталья) Вот скрипт заходит только к Наталью Что надо написать чтоб выберала вход случайностью???

ilias89053 пишет

Помогите если кому не трудно!!
На Майл ру
Когда вставляю оценки на фото Заходит одному и то му же Как зделать чтоб выбирала случайностью
TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>друзья
TAG POS=1 TYPE=A ATTR=TXT:Наталья) Вот скрипт заходит только к Наталью Что надо написать чтоб выберала вход случайностью???

если написано

TAG POS=1 TYPE=A ATTR=TXT:Наталья

он и будет заходить к Наталье, поставьте как минимум звездочку вместо имени

TAG POS=1 TYPE=A ATTR=TXT:*

Я пробовал поставить * выполнение останавливается или кидает в главную страницу??

ilias89053 пишет

Я пробовал поставить * выполнение останавливается или кидает в главную страницу??

скрытый текст

TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=CLASS:*friends*&&TXT:*

Спасибо большое работает!! Только вот еще одна проблема Скрипт выбирает первого в списке А как зделать чтоб он выбирал случайным обзором Пример В друзьях у меня В первом строчке Эльвира Когда включаешь цыкл скрипт заходит только к Эльвире А другим не заходит

ilias89053 пишет

Спасибо большое работает!! Только вот еще одна проблема Скрипт выбирает первого в списке А как зделать чтоб он выбирал случайным обзором Пример В друзьях у меня В первом строчке Эльвира Когда включаешь цыкл скрипт заходит только к Эльвире А другим не заходит

он работает так, как было предложено в том варианте, что вы постили ранее, нужен переход вместо POS=1 поставьте POS={{!LOOP}}

Получилось так Ну она все равно заходит в первую акк в друзьях

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS={{!LOOP}} TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:*friends*&&TXT:*
TAG POS={{!LOOP}} TYPE=A ATTR=ID:MainPageLoadNewFirstAvatar
TAG POS={{!LOOP}} TYPE=SPAN ATTR=CLASS:b-photo__marks-item-5&&DATA-CLNS:d713143&&DATA-VOTE-MARK:5&&TYPE:addvote&&TXT:
TAG POS={{!LOOP}} TYPE=SPAN ATTR=ID:b-photo-close

ilias89053 пишет

Получилось так Ну она все равно заходит в первую акк в друзьях

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS={{!LOOP}} TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:*friends*&&TXT:*
TAG POS={{!LOOP}} TYPE=A ATTR=ID:MainPageLoadNewFirstAvatar
TAG POS={{!LOOP}} TYPE=SPAN ATTR=CLASS:b-photo__marks-item-5&&DATA-CLNS:d713143&&DATA-VOTE-MARK:5&&TYPE:addvote&&TXT:
TAG POS={{!LOOP}} TYPE=SPAN ATTR=ID:b-photo-close

зачем {{!LOOP}} в каждой строке то?... ><

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:*friends*&&TXT:*
TAG POS=1 TYPE=A ATTR=ID:MainPageLoadNewFirstAvatar
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-photo__marks-item-5&&DATA-CLNS:d713143&&DATA-VOTE-MARK:5&&TYPE:addvote&&TXT:
TAG POS=1 TYPE=SPAN ATTR=ID:b-photo-close

когда дошёл до SET !VAR10 выдаёт ошибку.
Больше чем до SET !VAR9 не идёт.

Есть другой вариант замены?
может так надо сделать

SET myDelay 10

видел в вики.

значит надо сделать так:
CHARS={{!myDelay12}}

Алим пишет

когда дошёл до SET !VAR10 выдаёт ошибку.
Больше чем до SET !VAR9 не идёт.

{{!VAR10}} не существует

SET VAR10 ...
и в итоге
CHARS={{VAR10}}
данный вариант работает только в мозилле, в хроме - работать не будет

InfSub пишет
ilias89053 пишет

Получилось так Ну она все равно заходит в первую акк в друзьях

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS={{!LOOP}} TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:*friends*&&TXT:*
TAG POS={{!LOOP}} TYPE=A ATTR=ID:MainPageLoadNewFirstAvatar
TAG POS={{!LOOP}} TYPE=SPAN ATTR=CLASS:b-photo__marks-item-5&&DATA-CLNS:d713143&&DATA-VOTE-MARK:5&&TYPE:addvote&&TXT:
TAG POS={{!LOOP}} TYPE=SPAN ATTR=ID:b-photo-close

зачем {{!LOOP}} в каждой строке то?... ><

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:*friends*&&TXT:*
TAG POS=1 TYPE=A ATTR=ID:MainPageLoadNewFirstAvatar
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-photo__marks-item-5&&DATA-CLNS:d713143&&DATA-VOTE-MARK:5&&TYPE:addvote&&TXT:
TAG POS=1 TYPE=SPAN ATTR=ID:b-photo-close

28-01-2014 23:24:31
Раза 20 прошел с цыклом Не меняется все равно заходит одному и то-муже ????

ilias89053 пишет

Раза 20 прошел с цыклом Не меняется все равно заходит одному и то-муже ????

вот так попробуйте:

скрытый текст

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS=1 TYPE=A ATTR=TXT:Мои<SP>друзья
WAIT SECONDS=2
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:*friends-item-name*&&TXT:*
TAG POS=1 TYPE=A ATTR=ID:MainPageLoadNewFirstAvatar
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-photo__marks-item-5&&DATA-CLNS:d713143&&DATA-VOTE-MARK:5&&TYPE:addvote&&TXT:
TAG POS=1 TYPE=SPAN ATTR=ID:b-photo-close

Спасибо!! Все работает И маленький вопрос Когда скрипт заходит в акк другому чтоб поставить оценку на фото В большинстве акк нет фоток и программа не находит кнопку отценка и останавливается на этом акк А как сделать чтоб если нет кнопки оценки Чтоб скрипт не завис на этом акк ???

ilias89053 пишет

Спасибо!! Все работает И маленький вопрос Когда скрипт заходит в акк другому чтоб поставить оценку на фото В большинстве акк нет фоток и программа не находит кнопку отценка и останавливается на этом акк А как сделать чтоб если нет кнопки оценки Чтоб скрипт не завис на этом акк ???

вставить в начало скрипта игнор ошибок

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

А при добавление друзей что надо вписывать
TAG POS=1 TYPE=A ATTR=ID:yahaand367@mail.ru_Name   Только заходит одному yahaand367@mail.ru_Name

ilias89053 пишет

А при добавление друзей что надо вписывать
TAG POS=1 TYPE=A ATTR=ID:yahaand367@mail.ru_Name   Только заходит одному yahaand367@mail.ru_Name

Вы сюда с какой целью пришли? научиться работать с имакросом или чтобы вам написали скрипт? если втрое, пишем в ПМ к старожилам, помогут
в данной же теме, обсуждаются проблемы при работе с самим имакросом

ПМ к сторожилам А кто они такие и как с ними связаться??

ilias89053 пишет

ПМ к сторожилам А кто они такие и как с ними связаться??

старожилы - постоянные участники форума, посмотрите данную тему, в основном те, кто отвечает на вопросы, а не задает их
PM - personal mail (личное сообщение) - есть у каждого участника под аватарой

Подскажите как вы решаете вопрос сохранения данных?

Например я командой saveas сохраняю нужные мне данные в csv файл. Данные дописываются в один столбик т.е. новой строкой. Вопрос в том, как сохранить данные в csv файл в нужную мне строку и столбец (напр. 3 строка 4 свободный столбец)?

Warped пишет

Подскажите как вы решаете вопрос сохранения данных?

Например я командой saveas сохраняю нужные мне данные в csv файл. Данные дописываются в один столбик т.е. новой строкой. Вопрос в том, как сохранить данные в csv файл в нужную мне строку и столбец (напр. 3 строка 4 свободный столбец)?

запись нескольких столбцов возможна через ADD !EXTRACT

скрытый текст

'запись первой строки в файл
SET !EXTRACT col1
ADD !EXTRACT col2
ADD !EXTRACT col3
SET !VAR1 my_file

SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.csv

'запись второй строки в файл
SET !EXTRACT col1
ADD !EXTRACT col2
ADD !EXTRACT col3
SET !VAR1 my_file

SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.csv

29-01-2014 02:30:18
если вы подразумеваете запись в конкретную строку, конкретного столбца, то это не возможно

Помогите Пожалуйста!!  Нужный мне файл находится в нижнем части сайта Как прокручивать сайт в каждом цикле???

vazikДоброго времени суток!
Подскажите, можно ли организовать заход на сайты из списка со случайным выбором сайта. Если да, то как?
Спасибо.

Какой код отвечает за вытаскивание слова/слов из строчки между заданными словами?


Например есть предложение (без знаков препинания, чтобы проще): Здравствуйте Петр ваша заявка принята.
мне нужно, чтобы мне вытаскивалось то, что стоит между "здравствуйте" и "ваша".

Там может быть не одно слово, например: здравствуйте алексей иванович моржов ваша заявка принята.



Замечу, что пробелы после "здравствуйте" и перед "ваша" не нужны. Т.е. чтобы мне не " Петр " сохраняло, а "Петр", и не " алексей иванович моржов ", а "алексей иванович моржов"

vazik пишет

vazikДоброго времени суток!
Подскажите, можно ли организовать заход на сайты из списка со случайным выбором сайта. Если да, то как?
Спасибо.

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

30-01-2014 00:31:29

imnoobie пишет

Какой код отвечает за вытаскивание слова/слов из строчки между заданными словами?

ни какой не отвечает, вытаскиваете !EXTRACT'ом, потом обрабатываете с помощью EVAL()

когда то я писал: "есть ли  возможность js открыть js файл.? если да то какая команда ?" - поступил ответ нет - но возможность есть!
Командой это сильно не назовёшь, я бы сказал - это манёвр

скрытый текст
в макросе .iim

Выделить код

Код:

URL GOTO=imacros://run/?m=имя_файла.js

или в js

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=имя_файла.js")  или 
iimPlay("CODE:URL GOTO=imacros://run/?m=имя_файла.js")


Моё мнение
Мне такой способ позволяет разбить большой код js на 2 и более маленьких, и при воспроизведении первой часть, я сразу могу отредактировать недостатки второй. А так же мне это помогает уменьшить размер кода. А также можно стоить различного рода планы/последовательность.

ВАЖНО: после того как закончил работу встроенный/внутренний (не знаю правильной формулировки) js - imacros возвращается к продолжению работы главного js.

InfSub пишет

ни какой не отвечает, вытаскиваете !EXTRACT'ом, потом обрабатываете с помощью EVAL()

Не получается

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Здравствуйте
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.split('Здравствуйте '); ")
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.split(' ваша заявка принята'); ")
SET !EXTRACT {{!VAR1}}
imnoobie пишет
InfSub пишет

ни какой не отвечает, вытаскиваете !EXTRACT'ом, потом обрабатываете с помощью EVAL()

Не получается

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Здравствуйте
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.split('Здравствуйте '); ")
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.split(' ваша заявка принята'); ")
SET !EXTRACT {{!VAR1}}

а где вы передали данные самой переменной !EXTRACT ?
если судить по вашему коду, вы работаете с пустой переменной, добавьте извлечение данных в первую строку своего кода
строку 2 и 3 объедините, либо в 3 обрабатывайте переменную {{!VAR2}} а не {{!EXTRACT}}
.split() на мой взгляд, не лучшее решение

InfSub пишет

запись нескольких столбцов возможна через ADD !EXTRACT

Спасибо. Убого, но можно попробовать так реализовать.

В код добавил делемитер ;

Небольшой вопрос: как сделать так, чтобы он не прописывал запятые и кавычки?
Получается такой результат:

Выделить код

Код:

SET !DATASOURCE_DELIMITER ;

SET !EXTRACT "колонка 1"
ADD !EXTRACT ;
ADD !EXTRACT "колонка2"
ADD !EXTRACT ;
ADD !EXTRACT "колонка3"
SET !VAR1 my_file

SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.csv

'запись второй строки в файл
SET !EXTRACT col1
ADD !EXTRACT ;
ADD !EXTRACT col2
ADD !EXTRACT ;
ADD !EXTRACT col3
ADD !EXTRACT ;
SET !VAR1 my_file

SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.csv

колонка 1,"    ,колонка2","    ,колонка3"
col1,"    ,col2","    ,col3","

откуда появляются запятые и кавычки?

Warped пишет

Небольшой вопрос: как сделать так, чтобы он не прописывал запятые и кавычки?
...
откуда появляются запятые и кавычки?

ни как, это стандарт csv

Когда берёт макрос текст из файла .txt, он берёт первую строчку, до запятой и дальше не берёт.
Как сделать, чтобы вместе с запятыми брал текст?

InfSub пишет

.split() на мой взгляд, не лучшее решение

а что предложите? можете написать свой вариант?

Как должен быть структурирован текстовый файл .txt который лежит в папке Datasources. так, чтобы макрос мог читать не только первую строчку но и остальные?

Первую читает, а второе уже вставляет
undefined

у меня текст в файле выглядит так:

Первые два слова<br>вторые два слова,
Мой текст обычный текст,
Продолжение текста

в макросе всё верно прописано.

Алим пишет

Как должен быть структурирован текстовый файл .txt который лежит в папке Datasources. так, чтобы макрос мог читать не только первую строчку но и остальные?

Первую читает, а второе уже вставляет
undefined

у меня текст в файле выглядит так:

Первые два слова<br>вторые два слова,
Мой текст обычный текст,
Продолжение текста

в макросе всё верно прописано.

если undefined - соответственно, в макросе не верно написано, иначе при первом проходе будет первая строка, при 2м - вторая и т.д. ищите ошибку в своем скрипте

31-01-2014 00:02:46

imnoobie пишет
InfSub пишет

.split() на мой взгляд, не лучшее решение

а что предложите? можете написать свой вариант?

могу, но данная тема на форуме не посвящена js, соответственно - гуглим =)
как уже сказал, это хоть и не лучший вариант, но рабочий, так что в данной ситуации он выполнит ту работу, которую вы на него возлагаете, что исправить - я вам написал, должно все работать

InfSub пишет

могу, но данная тема на форуме не посвящена js

iMacros подразумевает js, т.к. использует этот язык, разве нет? Или тут тема, как расширение установить? Не думаю.

InfSub пишет

что исправить - я вам написал, должно все работать

Что-то не выходит.

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Здравствуйте* EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.split('Здравствуйте '); ")
SET !VAR2 EVAL("var s=\"{{!VAR1}}\"; s.split(' ваша заявка принята'); ")
SET !EXTRACT {{!VAR2}}

Если не сложно, напишите ваш вариант кода с другим видением. Я понимаю, погонять приятно, но я пришел сюда за решением, а не на курсы. Хотелось бы как-то решить задачу, а не изучать весь язык программирования.

imnoobie пишет
InfSub пишет

могу, но данная тема на форуме не посвящена js

iMacros подразумевает js, т.к. использует этот язык, разве нет? Или тут тема, как расширение установить? Не думаю.

js не является элементом imacros, а включен за счет конструкции eval(), так же как и в любом др. языке программирования можно за счет eval() включить элемент другого языка программирования в свой код (Eval)
повторюсь, здесь не форум по обучению работе с js, что вам в данной формулировке не понятно?

imnoobie пишет
InfSub пишет

что исправить - я вам написал, должно все работать

Что-то не выходит.

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Здравствуйте* EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.split('Здравствуйте '); ")
SET !VAR2 EVAL("var s=\"{{!VAR1}}\"; s.split(' ваша заявка принята'); ")
SET !EXTRACT {{!VAR2}}

Если не сложно, напишите ваш вариант кода с другим видением. Я понимаю, погонять приятно, но я пришел сюда за решением, а не на курсы. Хотелось бы как-то решить задачу, а не изучать весь язык программирования.

вижу только одно изменение из описанных мной (добавлен EXTRACT=TXT), потрудитесь хотя бы сделать то, что я описал - полностью, а потом уже говорите, что что-то не выходит

offtop

imnoobie пишет

Я понимаю, погонять приятно, но я пришел сюда за решением, а не на курсы.

а кто сказал, что здесь курсы?
Если вы пришли сюда разобраться и научиться?, то вам дали направление для решения данной проблемы!
Но если Вам, простите, лень им воспользоваться, вам нужно готовое решение, то готовые решения, продаются за деньги и в других местах! Есть куча фрилансеров готовых за вас выполнить эту работу, но халявы нет ни где, в том числе и тут.

нужен простенький макрос с распознаванием капчи antigate.com - подробности в личке

monwill пишет

нужен простенький макрос с распознаванием капчи antigate.com - подробности в личке

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

Здравствуйте.
Вопрос.
Есть готовый макрос, выполняющий простые дейставия лайки вступления.
Переодически задания кончаются и выдается сообщение что заданий нет.
Итак сам вопрос: Как сделать так что бы макрос при появлении этого сообщение пропускал этот пункт действия и приступал к другому.
Спасибо заранее. Если кто поможет с проблемой.

fevrik пишет

Здравствуйте.
Вопрос.
Есть готовый макрос, выполняющий простые дейставия лайки вступления.
Переодически задания кончаются и выдается сообщение что заданий нет.
Итак сам вопрос: Как сделать так что бы макрос при появлении этого сообщение пропускал этот пункт действия и приступал к другому.
Спасибо заранее. Если кто поможет с проблемой.

Переходи на js - примерный ответ в сообщении 1150 - создаёшь js в нём несколько макросов с условием - если нужное условие выполняется выполнить одни действия если не выполняется то пропустить \ повторить \ и тд .

Не могу вообще разобраться :(:(
в общем есть 2macros-a

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX

SET !ERRORIGNORE YES
TAB T=1
URL GOTO=https://socialssap.com/work
TAG POS=1 TYPE=IMG ATTR=SRC:https://socialssap.com/Content/images/img-yt.png
TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать
TAB T=2
WAIT SECONDS=8
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-like 
WAIT SECONDS=4

TAB T=1
TAB CLOSEALLOTHERS
WAIT SECONDS=25


скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=SPAN ATTR=TXT:
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:myForm ATTR=ID:Dislike
TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать
TAB T=2
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-dislike
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
WAIT SECONDS=30


Основаны на подписках и лайхках ютуба.
Заания не бесконечные и заканчиваются.
И выдается такого выражение:
скрытый текст
52ef7c4c2d623e0c2f032d77

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

Выделить код

Код:

http://screeny.ru/52ef7f132d623e0c2f032ef2


Дайте совета пожалуйста новенький, только осваиваю.
Спасибо еще раз.

Один из вариантов на вопрос выше  (fevrik)

так делаю я

бесконечный js

Выделить код

Код:

for(;;){
    for(;;){
        i=iimplay("<ваш макрос>")   это условие которое выполняется когда есть задания (в макросе должна быть команда SET !ERRORIGNORE NO  и в таком случае если у вас, выдаст на странице что-то другое и макрос не найдёт нужного условия, то js остановит условие и перейдёт к другому, т. е. к условию ниже  которое выполняется только лишь при ошибке) 
        if (i<0){                
           break      такая команд выкинет выполнение   цыкла на уровень выше      
       }
   }
iimplay("<тут ещё какие то макросы>")
}

команды учи тут  http://wiki.imacros.net/Command_Reference

kolshix пишет

Один из вариантов на вопрос выше  (fevrik)

так делаю я

бесконечный js

Выделить код

Код:

for(;;){
    for(;;){
        i=iimplay("<ваш макрос>")   это условие которое выполняется когда есть задания (в макросе должна быть команда SET !ERRORIGNORE NO  и в таком случае если у вас, выдаст на странице что-то другое и макрос не найдёт нужного условия, то js остановит условие и перейдёт к другому, т. е. к условию ниже  которое выполняется только лишь при ошибке) 
        if (i<0){                
           break      такая команд выкинет выполнение   цыкла на уровень выше      
       }
   }
iimplay("<тут ещё какие то макросы>")
}

команды учи тут  http://wiki.imacros.net/Command_Reference

Cпасибо буду учить Wiki!

Обращаюсь к InfSub - Помогите пожалуйста сделать замену. Не могу осилить

вот как есть
http://vk.com/lubov_club?z=photo-19899031_321327467%2Falbum-19899031_00%2Frev

вот хочу чтоб так было
http://m.vk.com/photo-19899031_321327467


19899031_321327467 - вот эти символы постоянно меняются

kolshix пишет

Один из вариантов на вопрос выше  (fevrik)так делаю я бесконечный js Выделить кодКод:for(;;){
    for(;;){
        i=iimplay("<ваш макрос>")   это условие которое выполняется когда есть задания (в макросе должна быть команда SET !ERRORIGNORE NO  и в таком случае если у вас, выдаст на странице что-то другое и макрос не найдёт нужного условия, то js остановит условие и перейдёт к другому, т. е. к условию ниже  которое выполняется только лишь при ошибке)
        if (i<0){               
           break      такая команд выкинет выполнение   цыкла на уровень выше     
       }
   }
iimplay("<тут ещё какие то макросы>")
}
команды учи тут  http://wiki.imacros.net/Command_Reference
                    Отредактировано kolshix (Сегодня 02:05:39)

Спасибо за совет, но при Break
iimplay("<тут ещё какие то макросы>") - повторяется только 1 раз.
А как сделать так что бы и эти макросы повторялись до бесконечности.
1 марос выполняется до бесконечности. ОШИБКА break запускаем макрос 2
2 макрос работает до бесконечности Ошибка бреак запускаем М3
и т.д. до 7-8 макросов.
Как такое реализовать, уже бошку себе сломал  а найти информации так и не могу(

kolshix, огромное вам спасибо, разобрался наконец.
Спасибо что дали материал для изучения + не плохой пример.
Удачи вам:D

всем привет.
подскажите пож-та,
сделал скрипт, макрос берет ссылку из файла 1111.txt
переходит по ней, и нажимает на кнопку ОК
если ссылка битая, то макрос останавливает работу,
подскажите как заставить макрос идти дальше по ссылкам, если ему не удалось нажать на эту ОК изза не работающей ссылки...

спасибо

читай страницы 47,48,49  там написаны правила js,   с использованием только iim это не реализовать

monwill пишет

нужен простенький макрос с распознаванием капчи antigate.com - подробности в личке

"посмотреть" не предлагать, я далек от программирования
или денежки не нужны? (в личку)

Привет корифеям! Подскажите, как сделать, чтобы скрипт шел последовательно по группам, а не рандомно как в данном варианте...Бывает, что по несколько раз заходит в одну группу.

URL GOTO=https://www.facebook.com/bookmarks/groups
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/groups/*

нужна помощь с записью в csv - такую функцию осваиваю в первые.
вот смысл

скрытый текст
YzUOSUQ7.jpg

вот что должно содержаться csv  (данные постоянно будут меняться)

login,password,

код считывания я нашел, нежен теперь код записи

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE 22.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:menu_auth ATTR=NAME:login CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:menu_auth ATTR=NAME:password CONTENT={{!COL2}}
kolshix пишет

нежен теперь код записи

на вики посмотри тег SAVEAS

SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv

InfSub пишет
kolshix пишет

нежен теперь код записи

на вики посмотри тег SAVEAS

SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv

Загвоздка у меня вот в чем

все коды пишут вот так

Выделить код

Код:

TAG POS=1 TYPE=TABLE ATTR=CLASS:table_dati EXTRACT=TXT   -  вот эта команда копирует информацию с html страницы и вгоняет в csv 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv

а я хочу  чтоб

Выделить код

Код:

iim файл уже имеет вписанную мной информацию- в данном случае это логин  "ddppkk@yandex.ru" и вот этот логин вгонялся 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv

я вот думаю может каким-то образом присвоить EXTRACT = ddppkk@yandex.ru?

kolshix пишет

iim файл уже имеет вписанную мной информацию- в данном случае это логин  "ddppkk@yandex.ru" и вот этот логин вгонялся
я вот думаю может каким-то образом присвоить EXTRACT = ddppkk@yandex.ru?

в чем проблема обработать данные из {{!EXTRACT}} и передать их обратно в него же с помощью:
SET !EXTRACT ....

то что я хотел , немного решил, осталась последняя проблема, вот мой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX


SET !EXTRACT "ddppkk@yandex.ru"
ADD !EXTRACT "111222333"


SAVEAS TYPE=EXTRACT FOLDER=C:\Users\user\Documents\iMacros\Datasources\ FILE=Log&Pass.csv


SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE Log&Pass.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
url goto=prcr.org

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:menu_auth ATTR=NAME:login CONTENT={{!COL1}}

SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:menu_auth ATTR=NAME:password CONTENT={{!COL2}}

вот что поступает в файл ксв

"ddppkk@yandex.ru","111222333"
"ddppkk@yandex.ru","111222333"
"ddppkk@yandex.ru","111222333"
"ddppkk@yandex.ru","111222333"
"ddppkk@yandex.ru","111222333"

как сделать чтобы просто перезаписывалась первая строчка?
одно решение я  знаю через код

Выделить код

Код:

FILEDELETE NAME=C:\Users\user\Documents\iMacros\Datasources\Log&Pass.csv

но хотелось бы чтоб макрос перезаписывал, а не добовлял

kolshix пишет

то что я хотел , немного решил, осталась последняя проблема, вот мой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX


SET !EXTRACT "ddppkk@yandex.ru"
ADD !EXTRACT "111222"


SAVEAS TYPE=EXTRACT FOLDER=C:\Users\user\Documents\iMacros\Datasources\ FILE=Log&Pass.csv


SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE Log&Pass.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
url goto=prcr.org

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:menu_auth ATTR=NAME:login CONTENT={{!COL1}}

SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:menu_auth ATTR=NAME:password CONTENT={{!COL2}}

вот что поступает в файл ксв

"ddppkk@yandex.ru","111222"
"ddppkk@yandex.ru","111222"
"ddppkk@yandex.ru","111222"
"ddppkk@yandex.ru","111222"
"ddppkk@yandex.ru","111222"

как сделать чтобы просто перезаписывалась первая строчка?
одно решение я  знаю через код

Выделить код

Код:

FILEDELETE NAME=C:\Users\user\Documents\iMacros\Datasources\Log&Pass.csv

но хотелось бы чтоб макрос перезаписывал, а не добовлял

либо я не совсем понимаю что требуется... либо вы сами ответили на вопрос... удалить файл, и потом сохранить новый

FILEDELETE ...
SAVEAS ...

либо я не совсем понимаю что требуется... либо вы сами ответили на вопрос... удалить файл, и потом сохранить новый
FILEDELETE ...
SAVEAS ...

наверное буду пользоваться удалением.    Мне было прост интересно возможна ли перезапись csv файла вместо удаления.?

kolshix пишет

либо я не совсем понимаю что требуется... либо вы сами ответили на вопрос... удалить файл, и потом сохранить новый
FILEDELETE ...
SAVEAS ...

наверное буду пользоваться удалением.    Мне было прост интересно возможна ли перезапись csv файла вместо удаления.?

SAVEAS - только дописывает данные в файл, перезаписать - нельзя
недавно уже задавался подобный вопрос, но в другом контексте: "как записать данные в определенную ячейку" - соответственно ни как, так как imacros не работает с файлом, как с таблицей, только умеет сохранять данные определенным образом (по правилам хранения данных в csv - файлах), и пишет он их в конец файла, что соответственно подразумевает невозможность перезаписи данных, уже в него сохраненных, только удаление вместе с файлом

Ребята здравствуйте проблема у меня.
Есть макрос:

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
TAG POS=2 TYPE=SPAN ATTR=TXT:
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:myForm ATTR=ID:Dislike
TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать
TAB T=2
WAIT SECONDS=10
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-dislike
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
WAIT SECONDS=30


На теге:
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-like
Выдается ошибка:
Runtime error: Error load page " ЗДЕСЬ БОЛЬШОЙ БОЛЬШОЙ url" (error code-933) line 6 Тобишь тег выше
Помогите пожалуйста как исправить можно это?

На теге:
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-like
Выдается ошибка:
Runtime error: Error load page " ЗДЕСЬ БОЛЬШОЙ БОЛЬШОЙ url" (error code-933) line 6 Тобишь тег выше
Помогите пожалуйста как исправить можно это?

У меня тоже такие случаи бывают, решаю их дублированием команды

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !TIMEOUT_PAGE 20
....
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-like
SET !TIMEOUT_PAGE 40
TAG POS=1 TYPE=BUTTON ATTR=ID:watch-like
....


не факт , что поможет, но иногда помогает.

я ещё предполагаю, что подвисание страницы происходит на команде

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать

kolshix пишет

читай страницы 47,48,49  там написаны правила js,   с использованием только iim это не реализовать

спасибо что ткнули, разобрался без JS :)

Теперь возник ещё вопрос. Как реализовать данную схему?

Сейчас имею скрипт который ходит по ссылкам и с рандомной задержкой тыкает на кнопку "ОК"

Нужно
-Переход на сайт по ссылке из списка
-Если есть текст на странице слово "Женщина"
-Скрипт нажимает ОК
-Если нету данного слова, функция заканчивается, и переходит по сл.ссылке из списка..


Что-то похожее я так понял это скрипт с капчей, если она есть то работаем, если её нет идём дальше..

Но т.к я новичек что-то похожее нашел, но как реализовать не знаю..

Помогите пож-та или ткните в нужный пример.

Спасибо!

Воспроизвожу макрос и сворачиваю окно браузера на пе панель задач.
Окно браузера разворачивается, когда работает макрос.
Что надо сделать, чтобы не разворачивалось окно браузера?

kolshix пишет

TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать

Нет проблема втом что.
После этого тека, проиходит перенаправление на ютуб.
Но блин заметил 2 ввида
http://youtube.com/url video И  http://youtube.com/url video "ВОТ ЭТО ИНТЕРИСУЕТ"&feature=youtu.be ????????????? Что это, изза этого макрос не может ставить лайки.
И сл вопрос.
Можно ли реализовать так.
Вырезать определенный промежуток в ссылке. И потом вставлять остаток ссылки, или на оборот.
Тобишь
http://www.youtube.com/?feature=youtu.be ссылка
Хочу обрезать ?feature=youtu.be
И что бы макрос скопировал http://www.youtube.com
И перешел на этот адрес.

Алим пишет

Воспроизвожу макрос и сворачиваю окно браузера на пе панель задач.
Окно браузера разворачивается, когда работает макрос.
Что надо сделать, чтобы не разворачивалось окно браузера?

у меня тоже такая проблема. Пользуюсь мозила 18 , в этой версии реже выскакивает, чем в последней

kolshix пишет
Алим пишет

Воспроизвожу макрос и сворачиваю окно браузера на пе панель задач.
Окно браузера разворачивается, когда работает макрос.
Что надо сделать, чтобы не разворачивалось окно браузера?

у меня тоже такая проблема. Пользуюсь мозила 18 , в этой версии реже выскакивает, чем в последней

господа, вы меня удивляете, поиск для кого сделан? проблема уже обсуждалась и изжила свое, обновите имакрос до 8.6.0

InfSub пишет
kolshix пишет
Алим пишет

Воспроизвожу макрос и сворачиваю окно браузера на пе панель задач.
Окно браузера разворачивается, когда работает макрос.
Что надо сделать, чтобы не разворачивалось окно браузера?

у меня тоже такая проблема. Пользуюсь мозила 18 , в этой версии реже выскакивает, чем в последней

господа, вы меня удивляете, поиск для кого сделан? проблема уже обсуждалась и изжила свое, обновите имакрос до 8.6.0

у меня 8.6.0 стоит, но как я говорил ранее на mozila 24, выскакивал браузер из панели задач довольно часто, скачал с рутрекера портативную 18 - в ней ещё присутствует функция, в простых настройках, "не загружать изображения" - выскакивания прекратились на 90% . Кстати лазил по сложным настройкам в 24 версии и отключал загрузку изображений  - функция не срабатывает, установил дополнение imglikeopera - дак это дополнение конфликтует с imacros (это так, информация для ускорения работы imacros) . Короче каждый должен найти для себя наиболее подходящую версию.

У меня возник такой вопрос: "Есть ли возможность прятать mazilla в значки области уведомления?".


Кстати, сейчас протестирую дополнение "MinimizeToTray" - сворачивание мазила в трей, может быть приемлем и такой способ.

kolshix пишет

у меня 8.6.0 стоит, но как я говорил ранее на mozila 24, выскакивал браузер из панели задач довольно часто, скачал с рутрекера портативную 18...

не ставил на м24 им8.6.0, но с более поздними у всех работало, во всяком случае с версиями 25, 26 и 27 этот глюк у имакроса не проявляется

kolshix пишет

Кстати лазил по сложным настройкам в 24 версии и отключал загрузку изображений  - функция не срабатывает, установил дополнение imglikeopera - дак это дополнение конфликтует с imacros

как вариант, плагин imageblock вполне корректно работает с имакросом, imglikeopera - мне больше понравился, но он действительно конфликтует с имакросом

kolshix пишет

У меня возник такой вопрос: "Есть ли возможность прятать mazilla в значки области уведомления?".

спрятать - думаю можно - сторонним софтом

пользуюсь уже сутки MinimizeToTray - расширение для сворачивания браузера mozilla в трей  -  конфликтов  с imacros не замечено

Доброго времени суток!
Сайт постоянно меняет расположение управляющих элементов. Достать их просто получается экспериментальным методом. Но в этом методе отрабатывает клик по объекту в лоб, а надо создать клик в рандомную точку и с рандомной задержкой.
Как получить координаты объекта  после
EVENT TYPE=MOUSEDOWN SELECTOR="#page_content>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>A" BUTTON=0
Облазил все что мог, стандартных методов не нашел...

Seducer пишет

Доброго времени суток!
Сайт постоянно меняет расположение управляющих элементов. Достать их просто получается экспериментальным методом. Но в этом методе отрабатывает клик по объекту в лоб, а надо создать клик в рандомную точку и с рандомной задержкой.
Как получить координаты объекта  после
EVENT TYPE=MOUSEDOWN SELECTOR="#page_content>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>A" BUTTON=0
Облазил все что мог, стандартных методов не нашел...

ну как минимум надо видеть то, о чем вы говорите, и смотреть можно ли привязаться к чему либо на сайте... что-то более конкретно, мне сейчас вам ответить сложно

InfSub пишет
Seducer пишет

Доброго времени суток!
Сайт постоянно меняет расположение управляющих элементов. Достать их просто получается экспериментальным методом. Но в этом методе отрабатывает клик по объекту в лоб, а надо создать клик в рандомную точку и с рандомной задержкой.
Как получить координаты объекта  после
EVENT TYPE=MOUSEDOWN SELECTOR="#page_content>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>A" BUTTON=0
Облазил все что мог, стандартных методов не нашел...

ну как минимум надо видеть то, о чем вы говорите, и смотреть можно ли привязаться к чему либо на сайте... что-то более конкретно, мне сейчас вам ответить сложно

Есть кнопка. Она постоянно в разном месте. Описанным методом выше она всегда нажимается нормально. Но хотелось бы обработать сам процесс нажатия. Очеловечить что ли :) Для этого нужно знать координаты кнопки. Я не нашел, как их получить по вышеописанному методу.

Если подразумевается, что скрипт должен сам определить координаты, а потом сделать клик именно по этим координатам, то вы очень сильно переоцениваете возможности imacros

InfSub пишет

Если подразумевается, что скрипт должен сам определить координаты, а потом сделать клик именно по этим координатам, то вы очень сильно переоцениваете возможности imacros

Нет. Хотелось бы реализацию определения координат выделенного объекта. Т.к. по этому методу Imacros tab'ом спускается по объектам к нужному. То имея координаты последнего клик правильный сделать не проблема. Но как получить координаты выделенного объекта?

Здравствуйте, вопрос?
Есть макрос:
URL GOTO=***
FRAME NAME="fXD85129" Интерисует эта часть,
Нащел откуда береться этот фрейм.

52f8f32efe9933ae250023d1

Но, при перезагрузки сраницы этот фрэйм меняется.
Сам вопрос.
Как сделать так что бы, с поля name="ЭТО КОПИРОВАЛОСЬ"
и FRAME NAME="вставлялось сюда".
Понимаю что как то надо через Extract, но только как реализовать это не могу понять.
Ну или хотябы попытаться сделать что бы это поле name="Вот этот кусок" появлялся в диалоговом окне.
Как поступить помогите пожалуйста.

Seducer пишет
InfSub пишет

Если подразумевается, что скрипт должен сам определить координаты, а потом сделать клик именно по этим координатам, то вы очень сильно переоцениваете возможности imacros

Нет. Хотелось бы реализацию определения координат выделенного объекта. Т.к. по этому методу Imacros tab'ом спускается по объектам к нужному. То имея координаты последнего клик правильный сделать не проблема. Но как получить координаты выделенного объекта?

повторюсь, вы переоцениваете возможности imacros'a
для своей работы он использует несколько вариантов работы с html-кодом, либо нажатие на определенные координаты, записанные вами с помощью приложения/плагина, но самостоятельного определения координат в функциональных возможностях языка - нет

11-02-2014 01:40:09

fevrik пишет

Здравствуйте, вопрос?...

здравствуйте, в поиск

InfSub пишет
Seducer пишет
InfSub пишет

Если подразумевается, что скрипт должен сам определить координаты, а потом сделать клик именно по этим координатам, то вы очень сильно переоцениваете возможности imacros

Нет. Хотелось бы реализацию определения координат выделенного объекта. Т.к. по этому методу Imacros tab'ом спускается по объектам к нужному. То имея координаты последнего клик правильный сделать не проблема. Но как получить координаты выделенного объекта?

повторюсь, вы переоцениваете возможности imacros'a
для своей работы он использует несколько вариантов работы с html-кодом, либо нажатие на определенные координаты, записанные вами с помощью приложения/плагина, но самостоятельного определения координат в функциональных возможностях языка - нет

11-02-2014 01:40:09

fevrik пишет

Здравствуйте, вопрос?...

здравствуйте, в поиск

Намек понял, спасибо пошел юзать)

можно ли извлекать фото с помощью EXTRACT ?

11-02-2014 14:46:25
Как скопировать ссылку с фото с помощью imacros?
Как в одноклассниках в группе при создании новой темы загрузить изображение?

11-02-2014 14:54:53

как получить координаты выделенного объекта?

нажать кнопку запись, затем нажать на объект.
Записывать при включённой опции для координат.
Затем в макросе вы увидите координаты данного объекта.

Здравствуйте! У меня такая проблема.
Imacros вставляет сообщение на стену группы вк и отправляет его. Но он как бы не делает окно ввода активным и ссылка не прикрепляется(((
Если вручную вставлять это же сообщение то ссылка прикрепляется. Как можно сделать чтоб ссылка прикреплялась?
Спасибо за помощь!

qweqwe5435 пишет

Здравствуйте! У меня такая проблема.
Imacros вставляет сообщение на стену группы вк и отправляет его. Но он как бы не делает окно ввода активным и ссылка не прикрепляется(((
Если вручную вставлять это же сообщение то ссылка прикрепляется. Как можно сделать чтоб ссылка прикреплялась?
Спасибо за помощь!

попробуй напиши сценарий imacros для мобильной версии vk, сам не пробовал, но может поможет

fevrik пишет

Здравствуйте, вопрос?
Есть макрос:
URL GOTO=***
FRAME NAME="fXD85129" Интерисует эта часть,
Нащел откуда береться этот фрейм.

http://screeny.ru/52f8f32efe9933ae250023d1

Но, при перезагрузки сраницы этот фрэйм меняется.
Сам вопрос.
Как сделать так что бы, с поля name="ЭТО КОПИРОВАЛОСЬ"
и FRAME NAME="вставлялось сюда".
Понимаю что как то надо через Extract, но только как реализовать это не могу понять.
Ну или хотябы попытаться сделать что бы это поле name="Вот этот кусок" появлялся в диалоговом окне.
Как поступить помогите пожалуйста.

Написал в PM

Ребята, подскажите можно ли привязываться к атрибуту style="" ?
Есть несколько div и они одинаковые, и содержат одинаковые ссылки. Разница только в том, что из 10 дивов у одного такой style=display: block;" у устальных такой style=display: none;". Тоесть один див видно, остальные скрыты. Как мне словить ссылку только в том DIVе который сейчас видно?

zplinter пишет

Ребята, подскажите можно ли привязываться к атрибуту style="" ?
Есть несколько div и они одинаковые, и содержат одинаковые ссылки. Разница только в том, что из 10 дивов у одного такой style=display: block;" у устальных такой style=display: none;". Тоесть один див видно, остальные скрыты. Как мне словить ссылку только в том DIVе который сейчас видно?

используйте дополнения которые определяют код на веб странице

Всем привет!
Подскажите возможно ли реализовать такое:
Сделать скрипт чтобы делал следущее:

-Исполнял 250 циклов - 1.iim
-после исполнения 1 цикл - 2.imm
-после, 50 циклов - 3.imm
-и в конце 1 цикл 4.imm

Вроде можно по 1 разу запускать скрипт, а вот по несколько циклов?
Поделитесь пож-та кодом.
Спасибо!

ответ для vjapan

Создаём сценарий на javascript

это приблизительно так делается

Выделить код

Код:

for (i=1;i<249;){
      i++
      iimplay("1.iim ")
    }

for (i=1;i<0;){
      i++
      iimplay("2.iim ")
    }

for (i=1;i<2;){
      i++
      iimplay("3.iim ")
    }

for (i=1;i<3;){
      i++
      iimplay("4.iim ")
    }


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

Друзья привет, подскажите пож.та,на данный момент вставляю текст из  списка данным способом, но как
сделать чтобы взятые в тхт или csv файле строчки, удалялись (или  обнунялись)

мой код
CMDLINE !DATASOURCE text_test.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

Подскажите плз можно ли как-то вызвать контекстное меню правой кнопки с помощью тегов, либо по координатам??

extender пишет

Подскажите плз можно ли как-то вызвать контекстное меню правой кнопки с помощью тегов, либо по координатам??

нет, на сколько я знаю.
Но с помощью координат, точно нет.

В начале кода макроса у меня установлена

SET !ERRORIGNORE YES

для того, чтбы игнорировать ошибки.

К примеру макрос открыл страницу и должен нажать на определённую ссылку. Но ссылки нет на данной странице. Макрос игнорирует данную ошибку и продолжает свои действия дальше.

Дальше стоит строчка

WAIT SECONDS=10

макрос отсчитывает 10 секунд и продолжает дальше.

Как можно сделать, так, чтобы макрос пропускал  все стоящие далее в коде макроса - WAIT SECONDS=10 и начинал заново цикл? Чтобы не отчитывал секунды. Есть такая команда?

Алим пишет

Как можно сделать, так, чтобы макрос пропускал  все стоящие далее в коде макроса - WAIT SECONDS=10 и начинал заново цикл? Чтобы не отчитывал секунды. Есть такая команда?

создавай javascript сценарий  и  смотри последние 7-8 страниц там всё описано (цыклы и пропуски)

kolshix пишет
Алим пишет

Как можно сделать, так, чтобы макрос пропускал  все стоящие далее в коде макроса - WAIT SECONDS=10 и начинал заново цикл? Чтобы не отчитывал секунды. Есть такая команда?

создавай javascript сценарий  и  смотри последние 7-8 страниц там всё описано (цыклы и пропуски)

ок буду javascript пробовать.

возможно ли воспроизвести макрос с помощью другого макроса без javascript ?

Алим пишет

возможно ли воспроизвести макрос с помощью другого макроса без javascript ?

да
URL GOTO=imacros://run/?m=macros.iim (точно не помню, но имя макросов должно быть без пробелов)

с помощью такой функции + запись и считывание информации с файлов csv можно создать цикл аналогичный javas. - вот только геморроя больше и управлять будет туго - подойдёт для примитивных и маленьких задач

kolshix пишет

for (i=1;i<249;){
      i++
      iimplay("1.iim ")
    }

for (i=1;i<0;){
      i++
      iimplay("2.iim ")
    }

for (i=1;i<2;){
      i++
      iimplay("3.iim ")
    }

for (i=1;i<3;){
      i++
      iimplay("4.iim ")
    }

А подскажите пож-та, начал сегодня экспериментировать, и понял что это немного не то что мне нужно.
Этот сценарий просто перезапускает макрос 250 раз, т.е тут нет цикла, а мне именно нужен цикл, т.к мой код (Парсера) идёт по циклу, и берет ссылку из TXT файла.. Но в Вашем варианте он постоянно берет только 1ю ссылку :(

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

vjapan пишет
kolshix пишет

for (i=1;i<249;){
      i++
      iimplay("1.iim ")
    }

for (i=1;i<0;){
      i++
      iimplay("2.iim ")
    }

for (i=1;i<2;){
      i++
      iimplay("3.iim ")
    }

for (i=1;i<3;){
      i++
      iimplay("4.iim ")
    }

А подскажите пож-та, начал сегодня экспериментировать, и понял что это немного не то что мне нужно.
Этот сценарий просто перезапускает макрос 250 раз, т.е тут нет цикла, а мне именно нужен цикл, т.к мой код (Парсера) идёт по циклу, и берет ссылку из TXT файла.. Но в Вашем варианте он постоянно берет только 1ю ссылку :(

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

for (i=1;i<=10;i++){
iimPlay("1.iim",60);
}
for (i=1;i<=70;i++){
iimPlay("2.iim",60);
}

10 и 70 это количество циклов

Алим пишет
vjapan пишет
kolshix пишет

for (i=1;i<249;){
      i++
      iimplay("1.iim ")
    }

for (i=1;i<0;){
      i++
      iimplay("2.iim ")
    }

for (i=1;i<2;){
      i++
      iimplay("3.iim ")
    }

for (i=1;i<3;){
      i++
      iimplay("4.iim ")
    }

А подскажите пож-та, начал сегодня экспериментировать, и понял что это немного не то что мне нужно.
Этот сценарий просто перезапускает макрос 250 раз, т.е тут нет цикла, а мне именно нужен цикл, т.к мой код (Парсера) идёт по циклу, и берет ссылку из TXT файла.. Но в Вашем варианте он постоянно берет только 1ю ссылку :(

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

for (i=1;i<=10;i++){
iimPlay("1.iim",60);
}
for (i=1;i<=70;i++){
iimPlay("2.iim",60);
}

10 и 70 это количество циклов

спасибо за скрипт, но опять та же история =) гоняет 1.iim по кругу, и никаких +1 не происходит :( использую FF 27, и макрос 8.8.1

1.iim


Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES


VERSION BUILD=8601111 RECORDER=FX
TAB T=1


TAB CLOSEALLOTHERS


CMDLINE !DATASOURCE wa.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

Вот скрипт

for (i=1;i<=2;i++){
iimPlay("1.iim",60);
}
for (i=1;i<=3;i++){
iimPlay("2.iim",60);
}

когда через него воспроизвожу макрос, то при 2-ом 3-ем и т.д. цикле нажимает постоянно первую ссылку,
то есть TAG POS={{!LOOP}} не действует.

А если отдельно макрос воспроизводить, то TAG POS={{!LOOP}}
действует и поочерёдно нажимает ссылки. В чём дело ?

В скрипт надо, что то добавить да?

Как можно в одноклассниках в своей группе, при создании новой темы, загрузить фотографию из папки Downloads ?

Там нужен какой то код, типа

скрытый текст
TAG POS=1 TYPE=OBJECT FORM=NAME:01foto.png ATTR=ID:ful_group_posting_form_btn.green

не получается.

название фотографии в папке Downloads
01foto.png

Кто сможет разобрать?
кто поможет 50 руб на счёт скину сразу.

Алим пишет

Вот скрипт

for (i=1;i<=2;i++){
iimPlay("1.iim",60);
}
for (i=1;i<=3;i++){
iimPlay("2.iim",60);
}

когда через него воспроизвожу макрос, то при 2-ом 3-ем и т.д. цикле нажимает постоянно первую ссылку,
то есть TAG POS={{!LOOP}} не действует.

А если отдельно макрос воспроизводить, то TAG POS={{!LOOP}}
действует и поочерёдно нажимает ссылки. В чём дело ?

В скрипт надо, что то добавить да?

По поводу данного вопроса, есть небольшая идея , необходимо создать файл txt или csv к которому будет обращаться макрос и вот что получиться

javascript код

Выделить код

Код:

1 - считывание макросом файла txt в котором вписана "1"
2 - теперь в EXTRACTприсутствует "1" к нему добавляем ещё "1"
3 - делаем команду TAG POS={{!EXTRACT}} 
4 - команда удаляющая файл txt 
5 - команда создающая новый файл txt и отправляющая в него данные EXTRACT т.е. "2"

при повторном проигрывании кода в файле txt уже будет содержаться 2 а значит TAG POS=2+1 (что-то подобное команде LOOP )

Вот примерный корявый но рабочий LOOP для js
Самое главное не забыть создать файл 1.csv  и поставить в нём циферку 1 (ну или нужную вам начальную позицию)

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO


SET !DATASOURCE 1.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

TAB T=1
TAG POS={{!COL1}} TYPE=IMG ATTR=SRC:*

FILEDELETE NAME=1.csv

SET !VAR1 {{!COL1}}
ADD !VAR1 1
SET !EXTRACT {{!VAR1}}


SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv

Данный код работает, проверял его на группах в контакте - макрос поочерёдности открывает страницы. Остальные команды добавите сами.

Хитро придумано, буду пробовать

http://forum.mozilla-russia.org/viewtop … 77#p643077
Решил проблему сам =) пару часов сёрфинга и экспериментов, и все получилось..

Выделить код

Код:

var macro;
    macro =  "CODE:";
    macro +=  "SET !ERRORIGNORE YES" + "\n"; 
    macro +=  "SET !ERRORCONTINUE YES" + "\n"; 
    macro +=  "VERSION BUILD=8601111 RECORDER=FX" + "\n"; 
    macro +=  "TAB T=1" + "\n"; 
    macro +=  "TAB CLOSEALLOTHERS" + "\n"; 
    macro +=  "CMDLINE !DATASOURCE 11.txt" + "\n"; 
    macro +=  "SET !LOOP {{i}}" + "\n"; 
    macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
    macro +=  "URL GOTO={{!COL1}}" + "\n"; 
for (var i=1;i<5;i++)
{

iimSet("i",i)
iimPlay(macro)
}


var macro;
    macro =  "CODE:";
    macro +=  "SET !ERRORIGNORE YES" + "\n"; 
    macro +=  "SET !ERRORCONTINUE YES" + "\n"; 
    macro +=  "VERSION BUILD=8601111 RECORDER=FX" + "\n"; 
    macro +=  "TAB T=1" + "\n"; 
    macro +=  "TAB CLOSEALLOTHERS" + "\n"; 
    macro +=  "CMDLINE !DATASOURCE 22.txt" + "\n"; 
    macro +=  "SET !LOOP {{i}}" + "\n"; 
    macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
    macro +=  "URL GOTO={{!COL1}}" + "\n"; 
for (var i=1;i<5;i++)
{

iimSet("i",i)
iimPlay(macro)
}
vjapan пишет

http://forum.mozilla-russia.org/viewtop … 77#p643077
Решил проблему сам =) пару часов сёрфинга и экспериментов, и все получилось..

Выделить код

Код:

var macro;
    macro =  "CODE:";
    macro +=  "SET !ERRORIGNORE YES" + "\n"; 
    macro +=  "SET !ERRORCONTINUE YES" + "\n"; 
    macro +=  "VERSION BUILD=8601111 RECORDER=FX" + "\n"; 
    macro +=  "TAB T=1" + "\n"; 
    macro +=  "TAB CLOSEALLOTHERS" + "\n"; 
    macro +=  "CMDLINE !DATASOURCE 11.txt" + "\n"; 
    macro +=  "SET !LOOP {{i}}" + "\n"; 
    macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
    macro +=  "URL GOTO={{!COL1}}" + "\n"; 
for (var i=1;i<5;i++)
{

iimSet("i",i)
iimPlay(macro)
}


var macro;
    macro =  "CODE:";
    macro +=  "SET !ERRORIGNORE YES" + "\n"; 
    macro +=  "SET !ERRORCONTINUE YES" + "\n"; 
    macro +=  "VERSION BUILD=8601111 RECORDER=FX" + "\n"; 
    macro +=  "TAB T=1" + "\n"; 
    macro +=  "TAB CLOSEALLOTHERS" + "\n"; 
    macro +=  "CMDLINE !DATASOURCE 22.txt" + "\n"; 
    macro +=  "SET !LOOP {{i}}" + "\n"; 
    macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
    macro +=  "URL GOTO={{!COL1}}" + "\n"; 
for (var i=1;i<5;i++)
{

iimSet("i",i)
iimPlay(macro)
}

Теперь {{!LOOP}} будет работать?
Скопировать код, сохранить в джаваскрипт.
Нужно создавать текстовый файл и что должно быть в нём?

Что такое - iimSet("i",i)
В этом коде (macro) нужно заменить на свой макрос - iimPlay(macro)
То есть сделать так - iimPlay("1.iim",60);

Ещё такой вопрос.
Макрос берёт текст из файла.
Текст в один столбик.
5 строчек.
Как сделать так, чтобы когда после 5го цикла,
макрос начинал заново с первой строчки юзать текст из файла? (6 цикл)

День добрый.
Ломаю голову 2 день. Прошу вашей помощи.
Модальное окно, подгружаюся данны при скролинге вниз. Как автоматически осуществить скролинг в скрипте. Варианты window.scrollBy и через DS CMD=MOVETO X Y не дают ни какого эффекта. Подскажите как решить задачку?

shadowrun пишет

День добрый.
Ломаю голову 2 день. Прошу вашей помощи.
Модальное окно, подгружаюся данны при скролинге вниз. Как автоматически осуществить скролинг в скрипте. Варианты window.scrollBy и через DS CMD=MOVETO X Y не дают ни какого эффекта. Подскажите как решить задачку?

1 В настройках imacros есть функция скролить и выделять совершаемую команду imacros-ом. 2. - как вариант.  Посмотри сколько информации подгружается при первом скролинге и добавь команду  extract на  последнюю подгружаемую позицию, окно прокрутиться прогрузиться информация, можно продублировать или подождать прогрузки и обнулить команду extract - Другого придумать не могу.

скрытый текст
0db37d5351f6af6103c992e3a013459b.jpg

Спасибо за быстрый ответ. Но проблема актуальна.
Опишу суть задачи. Может есть проще решение?
Скрипт анализа участников группы в контакте, с записью в файл.
Алгоритм.
Модальное окно. Участники сообщества, количество динамически изменяется . Производим обход каждого, по порядку. Все работает до того момента, пока макрос не достигает  конца видимого списка. Чтобы подгрузить новых участников, требуется сместить скролл вниз, программно. Вроде просто но... как?

PS:вариант 2 интересен, пока изучаю. Но пока все печально =(

shadowrun пишет

Спасибо за быстрый ответ. Но проблема актуальна.

скрытый текст
Опишу суть задачи. Может есть проще решение?
Скрипт анализа участников группы в контакте, с записью в файл.
Алгоритм.
Модальное окно. Участники сообщества, количество динамически изменяется . Производим обход каждого, по порядку. Все работает до того момента, пока макрос не достигает  конца видимого списка. Чтобы подгрузить новых участников, требуется сместить скролл вниз, программно. Вроде просто но... как?

PS:вариант 2 интересен, пока изучаю. Но пока все печально =(

Перейдите в мобильную версию и попробуйте пошаманить там, может что-то получиться

Еще раз спасибо за совет. Ответ очень интересен. Буду пробовать. :D

При воспроизведении макроса через JS можно сделать, так чтобы определённый макрос совершал несколько циклов.
А вот когда воспроизводишь макрос через макрос
URL GOTO=imacros://run/?m=name.iim
как сделать, чтобы определённый макрос воспроизводил несколько циклов ?

Ребята, какой тег написать, чтобы макрос делал действия такие: нажал на картинку (зашел на профиль), нажал на первую фотку в профиле, оставил комент, потом два раза назад, и теперь должен нажать на следующую картинку, и сделать тоже самое. И так по очереди. Не могу подобрать так теги. Нужен тег который бы нажимал на следующий профиль, либо тег который ориентируется на цвета, и нажимает в облать рядом с цветом. Заранее Благодарю!
Вот сайт на котором нужно это сделать

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Алим пишет

При воспроизведении макроса через JS можно сделать, так чтобы определённый макрос совершал несколько циклов.
А вот когда воспроизводишь макрос через макрос
URL GOTO=imacros://run/?m=name.iim
как сделать, чтобы определённый макрос воспроизводил несколько циклов ?

пока-что не встречал такой возможности, не морочь себе голову, пиши на js

Вроде задача не сложная но не могу найти решения...

Нужно чтобы при нахождении определенных слов на странице выполнялся один макрос, а если не было найдено то другой... хелп ми плиз.

:/:/:/:/:/:/:/:/:/:/

kanabiozzz пишет

Вроде задача не сложная но не могу найти решения...

Нужно чтобы при нахождении определенных слов на странице выполнялся один макрос, а если не было найдено то другой... хелп ми плиз.

:/:/:/:/:/:/:/:/:/:/

js

скрытый текст

Выделить код

Код:

iimPlay("макрос с командой extract нужного слова")
 i=iimGetLastExtract();

 if (i== 'нужное слово' ){ 
 чёто тут делается
 }

 if (i!== 'нужное слово' ){ 
 чёто тут делается
 }


Второй способ
Если Нужное Вам слово не активная ссылка то можно и так
js
скрытый текст

Выделить код

Код:

i= iimPlayCode("TAG POS = Ваше Слово")
 if (i>0 ){ //нашло слово
 чёто тут делается
 }

 if (i<0 ){// не нашло слово 
 чёто тут делается
 }


Я пользуюсь как и первым , так и вторым способами

kolos007 пишет

Ребята, какой тег написать, чтобы макрос делал действия такие: нажал на картинку (зашел на профиль), нажал на первую фотку в профиле, оставил комент, потом два раза назад, и теперь должен нажать на следующую картинку, и сделать тоже самое. И так по очереди. Не могу подобрать так теги. Нужен тег который бы нажимал на следующий профиль, либо тег который ориентируется на цвета, и нажимает в облать рядом с цветом. Заранее Благодарю!
Вот сайт на котором нужно это сделать

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Написал тебе личное сообщение

kolshix пишет
kanabiozzz пишет

Вроде задача не сложная но не могу найти решения...

Нужно чтобы при нахождении определенных слов на странице выполнялся один макрос, а если не было найдено то другой... хелп ми плиз.

:/:/:/:/:/:/:/:/:/:/

js

скрытый текст

Выделить код

Код:

iimPlay("макрос с командой extract нужного слова")
 i=iimGetLastExtract();

 if (i== 'нужное слово' ){ 
 чёто тут делается
 }

 if (i!== 'нужное слово' ){ 
 чёто тут делается
 }


Второй способ
Если Нужное Вам слово не активная ссылка то можно и так
js
скрытый текст

Выделить код

Код:

i= iimPlayCode("TAG POS = Ваше Слово")
 if (i>0 ){ //нашло слово
 чёто тут делается
 }

 if (i<0 ){// не нашло слово 
 чёто тут делается
 }


Я пользуюсь как и первым , так и вторым способами

Спасибо большое за ответ. Правда почему то зависает при выполнении одного из макросов, хотя по отдельности все работает. А так просто виснет при загрузке файла(макрос загружает картинки)...  Буду экспериментировать.

kanabiozzz пишет

Спасибо большое за ответ. Правда почему то зависает при выполнении одного из макросов, хотя по отдельности все работает. А так просто виснет при загрузке файла(макрос загружает картинки)...  Буду экспериментировать.

я пользуюсь портативной версией мазилы, там ещё присутствует в настройках функция отключения изображение (не нужно рыскать по глубоким настройкам) , и дополнений и расширений у меня стоит только 5 штуки, (flash, imacros, трей и ещё что-то там  ) и это улучшает работу и уменьшает конфликты между программами.

Умеет ли imacros работать с ячейками exel  ? встречал какое-то описание но ничего не понял

Подскажите пож-та возможно ли сделать такое:

Настроил скрипт чтобы парсил таблицу со страницы, но т.к текст в этой таблице генерится с помощью скрипта на сайте, выдернуть чисто текст не получается... Поэтому подскажите если выдергиваю таблицу, сгенерированный скриптом текст цепляется, но цепляется и все остальное со страницы из таблицы.. можно ли как то из того что копируется в таблице, выдернуть тот нужный текст например (Я_СЕГОДНЯ_Я) ...



скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
VERSION BUILD=8601111 RECORDER=FX
TAB T=1
TAB CLOSEALLOTHERS
CMDLINE !DATASOURCE ru.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

URL GOTO={{!COL1}}
WAIT SECONDS=1

TAG POS=2 TYPE=SPAN ATTR=TXT:показать<SP>текст

TAG POS=2 TYPE=TABLE ATTR=CLASS:vvvvvffff EXTRACT=TXT

SAVEAS TYPE=EXTRACT FOLDER=* FILE=texttt.txt

Подскажите команду для макроса который ждёт пока не появится ссылка (кнопка) на странице.
Но при этом в коде стоит игнор. ошибок.

Макрос на странице нажимает на ссылку и появится окно на этой же веб странице и
затем в этом окне нажимает на кнопку "отправить"

Бывает так, что после нажатия на ссылку, это окно появляется сразу а иногда через 1 - 7 секунд.
И чтобы не быть экстрасенсом и не ставить каждый раз задержку 7 секунд,
необходима команда (переменная), которая ждёт пока не появиться это окно с кнопкой "Отправить".

Алим пишет

Бывает так, что после нажатия на ссылку, это окно появляется сразу а иногда через 1 - 7 секунд.
И чтобы не быть экстрасенсом и не ставить каждый раз задержку 7 секунд,
необходима команда (переменная), которая ждёт пока не появиться это окно с кнопкой "Отправить".

я ставлю задержку шага

Выделить код

Код:

SET !TIMEOUT_STEP 10

тоже такая проблема как у Вас была, но эта команда всё решила. У меня бывает задерживается проверка и эта команда помогает.

kolshix пишет
Алим пишет

Бывает так, что после нажатия на ссылку, это окно появляется сразу а иногда через 1 - 7 секунд.
И чтобы не быть экстрасенсом и не ставить каждый раз задержку 7 секунд,
необходима команда (переменная), которая ждёт пока не появиться это окно с кнопкой "Отправить".

я ставлю задержку шага

Выделить код

Код:

SET !TIMEOUT_STEP 10

тоже такая проблема как у Вас была, но эта команда всё решила. У меня бывает задерживается проверка и эта команда помогает.

Спасибо! Полезная штука.

Какой код нужно прописать к JS для циклов
Делаю такой, что выделено жирным.

скрытый текст

for (i=1;i<=6;i++)

for (i=1;i<=2;i++){
iimPlay("1.iim",60);
}
for (i=1;i<=1;i++){
iimPlay("2.iim",60);
}


постоянно воспроизводит первый макрос, не переходит ко  второму.
А мне надо чтобы, можно было указать количество циклов для всего JS
И по возможности, если нажать на кнопку стоп, чтобы скрипт останавливался.

Алим пишет

Какой код нужно прописать к JS для циклов
Делаю такой, что выделено жирным.

скрытый текст
for (i=1;i<=6;i++)

for (i=1;i<=2;i++){
iimPlay("1.iim",60);
}
for (i=1;i<=1;i++){
iimPlay("2.iim",60);
}


постоянно воспроизводит первый макрос, не переходит ко  второму.
А мне надо чтобы, можно было указать количество циклов для всего JS
И по возможности, если нажать на кнопку стоп, чтобы скрипт останавливался.

Всё нашёл, сделал, получилось.

оффтоп
да уж... давно меня тут не было... почитал... офигел... Алим, kolshix ... изучайте вики... вы вроде бы не 1й день на форуме, а вопросы и решения... мягко говоря - топорные...

Я пользуюсь поиском. В вики про JS не написано. Если ты имеешь в веду imacros вики по русски.

InfSub пишет

оффтоп
да уж... давно меня тут не было... почитал... офигел... Алим, kolshix ... изучайте вики... вы вроде бы не 1й день на форуме, а вопросы и решения... мягко говоря - топорные...

Вопросы возникают по мере использования и появления новых идей, к тому же нет смысла осваивать всё полностью и целиком (не было у меня нормального наставника, да и друзей нет которые могли бы помочь в решении начального программирования {их уровень пользования компьютером заканчивается на использовании флеш накопителей и прослушивания музыки} ). Короче чем глубже в лес тем больше дров.
P.s. Некоторые решения через поисковики приходилось искать и осваивать более 5 часов, но на форуме это занимало не более 5 минут, да и все понятно написано и по этому как Вы говорите "опросы и решения... мягко говоря - топорные"

Алим пишет

Я пользуюсь поиском. В вики про JS не написано. Если ты имеешь в веду imacros вики по русски.

не тем ты пользуешься, там не более 0.2% возможностей описано.

Алим пишет

Как раз таки, последнее свое решение, я нашёл через поисковик. Искал здесь не нашёл.
На англоязычных форумах и блогах, сайтах об imacros с примерами написано больше, чем на русском языке.

Английскую википедию полистай про imacros - там не то что много информации, - там её до***, аж зачитаешься. Скорее всего у тебя такая же проблема как и у меня - это незнание терминологии и основ и из-за этого много информации ненужной приходиться перечитывать.

не тем ты пользуешься, там не более 0.2% возможностей описано

Как раз таки, последнее свое решение, я нашёл через поисковик. Искал здесь не нашёл.
На англоязычных форумах и блогах, сайтах об imacros с примерами написано больше, чем на русском языке.

Если задача, брать текст из файла, то указываем мы такую команду
SET !LOOP {{!LOOP}} или такую SET !DATASOURCE_LINE {{!LOOP}}
разницы нет. Также ?

kolshix пишет
Алим пишет

Как раз таки, последнее свое решение, я нашёл через поисковик. Искал здесь не нашёл.
На англоязычных форумах и блогах, сайтах об imacros с примерами написано больше, чем на русском языке.

Английскую википедию полистай про imacros - там не то что много информации, - там её до***, аж зачитаешься. Скорее всего у тебя такая же проблема как и у меня - это незнание терминологии и основ и из-за этого много информации ненужной приходиться перечитывать.

ее там больше, и решения на которые не были найдены ответы или были даны топорные решения на последних 4-5 страницах форума, там есть (кроме js, по понятным причинам)
kolshix, если даешь советы, как минимум проверяй их правильность... я вообще не сторонник публикации решений на js - тут, но если публикуешь не допускай банальных ошибок:
вопрос:

-Исполнял 250 циклов - 1.iim

ответ:

kolshix пишет

for (i=1;i<249;){
      i++
      iimplay("1.iim ")
    }

и сколько же в твоем ответе будет циклов? 250? а по-моему 248 и там весь ответ с такими багами....

06-03-2014 20:28:27

Алим пишет

Если задача, брать текст из файла, то указываем мы такую команду
SET !LOOP {{!LOOP}} или такую SET !DATASOURCE_LINE {{!LOOP}}
разницы нет. Также ?

какой смысл в этой команде?:

SET !LOOP {{!LOOP}}

разберись для начала что такое {{!LOOP}} и как работает

SET !DATASOURCE_LINE {{!LOOP}}

будет брать при каждом проходе следующую строку

На сколько я знаю {{!LOOP}} в коде макроса, имеет смысл указывать, если использовать циклы.

Баги в imacros.

1 баг.

Нажимаю - опции, делаю изменения и нажимаю Apply.
Окно "Опции" не убирается, но изменения сохраняются.
Закрываю окно кнопкой отмена.

2 баг.

Когда скидываю в папку Macros макросы или скрипты,
то иногда, код в них исчезает, приходится копировать и вставлять код.

Версия мазилы 27.0.1
Версия imacros 8.8.1

Алим пишет

На сколько я знаю {{!LOOP}} в коде макроса, имеет смысл указывать, если использовать циклы.

именно, но тогда объясни мне смысл команды и какое отношение она имеет к файлу данных:

SET !LOOP {{!LOOP}}

?

07-03-2014 16:06:48

Алим пишет

Баги в imacros.

1 баг.

Нажимаю - опции, делаю изменения и нажимаю Apply.
Окно "Опции" не убирается, но изменения сохраняются.
Закрываю окно кнопкой отмена.

да, есть такой баг, исправят в след. версии

07-03-2014 16:07:25

Алим пишет

2 баг.

Когда скидываю в папку Macros макросы или скрипты,
то иногда, код в них исчезает, приходится копировать и вставлять код.

не замечал такого

Привет ! )
есть идеи на счет удаления первой строчки из txt файла?

spy686 пишет

Привет ! )
есть идеи на счет удаления первой строчки из txt файла?

а зачем? не проще ли ее пропустить?

при перезапуске опять будет повторяться, а этого не надо делать. Это постинг.

spy686 пишет

при перезапуске опять будет повторяться, а этого не надо делать. Это постинг.

сделай 2 файла, один с постингом, второй с номером строки на которой остановился, при каждом проходе, берешь из 2го номер строки удаляешь файл и записываешь новый с номером след. строки

InfSub пишет

spy686 пишет: при перезапуске опять будет повторяться, а этого не надо делать. Это постинг. сделай 2 файла, один с постингом, второй с номером строки на которой остановился, при каждом проходе, берешь из 2го номер строки удаляешь файл и записываешь новый с номером след. строки
                    Отредактировано InfSub (Сегодня 16:49:46)

это вручную. марока. юзаю Denwer с php-скриптом ). думал можно избавится, но не тут то было. JS же вроде не может удалять строки ?

spy686 пишет
InfSub пишет

spy686 пишет: при перезапуске опять будет повторяться, а этого не надо делать. Это постинг. сделай 2 файла, один с постингом, второй с номером строки на которой остановился, при каждом проходе, берешь из 2го номер строки удаляешь файл и записываешь новый с номером след. строки
                    Отредактировано InfSub (Сегодня 16:49:46)

это вручную. марока. юзаю Denwer с php-скриптом ). думал можно избавится, но не тут то было. JS же вроде не может удалять строки ?

php - может, js - из соображений безопасности, не может работать с локальными файлами

07-03-2014 18:38:52
там не требуется в ручную, просто нужно описать процесс, в кратце я тебе написал как - выше, если не понятно, могу описать подробнее

SET !LOOP {{!LOOP}} да он значение не имеет.
Это если SET !LOOP 1 и т.д.
Указывает с какой строчки начинать брать текст из текстового файла.

Алим пишет

SET !LOOP {{!LOOP}} да он значение не имеет.
Это если SET !LOOP 1 и т.д.
Указывает с какой строчки начинать брать текст из текстового файла.

все верно, если ты это понимаешь, тогда твой постинг выше непонятен, про SET !LOOP {{!LOOP}}

Привет народ, скажите есть способ скопировать командой EXTRACT текст с ссылкой?
К примеру вот такой текст с ссылкой Википедия, надо скопировать именно текст Википедия
Как это сделать подскажите?
Хотел так сделать TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT, но блин в сохраненный файл вместо текста сохраняется какие-то две кавычки :(

Protey пишет

Привет народ, скажите есть способ скопировать командой EXTRACT текст с ссылкой?
К примеру вот такой текст с ссылкой Википедия, надо скопировать именно текст Википедия
Как это сделать подскажите?
Хотел так сделать TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT, но блин в сохраненный файл вместо текста сохраняется какие-то две кавычки :(

если в экстракте кавычки, значит ты не то экстрактишь
проверяй свой код

InfSub пишет

проверяй свой код

Если бы я знал как еще...)
В общем мне надо скопировать и сохранить имя пользователя фейсбук
к примеру:

код

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
URL GOTO=https://www.facebook.com/ivanovpetrov
WAIT SECONDS=5
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT (звездочка потому что ссылок на анкеты много, а так при нажатии на имя получаю код TAG POS=1 TYPE=A ATTR=TXT:ivanov<SP>petrov)
WAIT SECONDS=3
SAVEAS TYPE=EXTRACT FOLDER=C:\Facebook FILE=FBIDSAVE.csv


как еще можно с экстрактить, подскажи, а то я уже не знаю как попробовать :(

Protey пишет

как еще можно с экстрактить, подскажи, а то я уже не знаю как попробовать

Установи Imacros программу, там есть правила/способы EXTRACT. Выбери нужный способ , нажми "add command" после сможешь увидеть какая команда в файле записи по умолчанию  "#Current.iim"

скрытый текст
512a307ca613cb58a0bdec154c602542.png

Protey пишет
InfSub пишет

проверяй свой код

Если бы я знал как еще...)
В общем мне надо скопировать и сохранить имя пользователя фейсбук
к примеру:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
URL GOTO=https://www.facebook.com/ivanovpetrov
WAIT SECONDS=5
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT (звездочка потому что ссылок на анкеты много, а так при нажатии на имя получаю код TAG POS=1 TYPE=A ATTR=TXT:ivanov<SP>petrov)
WAIT SECONDS=3
SAVEAS TYPE=EXTRACT FOLDER=C:\Facebook FILE=FBIDSAVE.csv


как еще можно с экстрактить, подскажи, а то я уже не знаю как попробовать :(

прячем код в спойлер
думаю ты добивался этого:

скрытый текст

TAG POS=16 TYPE=A ATTR=TXT:* EXTRACT=TXT

08-03-2014 01:25:15

kolshix пишет

Установи Imacros программу...

оффтоп
тема посвящена не полноценной версии имакроса, а плагину для мозилы, хотя совет в чем-то хорош, если не учитывать цену данного продукта, мы же не продвигаем пиратство в массы

InfSub пишет

тема посвящена не полноценной версии имакроса, а плагину для мозилы, хотя совет в чем-то хорош, если не учитывать цену данного продукта, мы же не продвигаем пиратство в массы

Я использую imacros как минимум в 4-х вариациях: мазила, яндекс, хром, iopus к то муже установил дополнительный софт чтоб использовать дополнения на 2-х открытых мазилах, ошибочка, на 3-х мозилах 27 полноценная , 18 портативная без картинок и 18 портативная с картинками, причём все работают независимо друг от друга, даже задумывался кликер настроить под imacros.  Главным из всего этого для работы % так 95 занимает imacros дополнение, а эти 5% только дополняют работу imacros и в некоторых случаях облегчают работу мне.

Всем спасибо, разобрался сам с помощью вот такого кода

код

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !ERRORIGNORE YES
TAG POS=1 TYPE=A ATTR=HREF:{{!EXTRACT}} EXTRACT=TXT

Protey пишет

Всем спасибо, разобрался сам с помощью вот такого кода

код

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !ERRORIGNORE YES
TAG POS=1 TYPE=A ATTR=HREF:{{!EXTRACT}} EXTRACT=TXT

Интересный вариант надо запомнить )

Люди добрые, можно ли с помощью iMacros решить такую задачу:
Имеется Tor Browser + iMacros
Нужно открыть страницу, послать данные и выбрать новую личность (так называется пункт меню в этом браузере)

cr@nk пишет

Люди добрые, можно ли с помощью iMacros решить такую задачу:
Имеется Tor Browser + iMacros
Нужно открыть страницу, послать данные и выбрать новую личность (так называется пункт меню в этом браузере)

на сколько мне известно - нет

Всем привет нужна помощь: нужно залить картинку вот скрипт, в чем ошибка подскажите пожалуйста

TAB T=1
URL GOTO=http://vk.com/club62232679
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=TXT:Загрузить<SP>фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Users\Misha\Documents\iMacros\Datasources\odnoklassniki-awards[1].png
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить

Artvirus пишет

Всем привет нужна помощь: нужно залить картинку вот скрипт, в чем ошибка подскажите пожалуйста

TAB T=1
URL GOTO=http://vk.com/club62232679
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=TXT:Загрузить<SP>фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Users\Misha\Documents\iMacros\Datasources\odnoklassniki-awards[1].png
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить

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

кто мне научить пользоваться iMacros. Мне надо накрутит голоса в сайте spaces.ru у менея много акаунта с этого сайта. Ручную лень.

Алим пишет
Artvirus пишет

Всем привет нужна помощь: нужно залить картинку вот скрипт, в чем ошибка подскажите пожалуйста

TAB T=1
URL GOTO=http://vk.com/club62232679
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=SPAN ATTR=TXT:Загрузить<SP>фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Users\Misha\Documents\iMacros\Datasources\odnoklassniki-awards[1].png
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить

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

Спасибо

Всем привет, нужна помощь. Можно ли извлечь текст со страницы - всего на странице может быть 5 необходимых полей для извлечения, дак вот можно ли извлекать эту информацию в файл в разные столбцы?

Alex2014 пишет

Всем привет, нужна помощь. Можно ли извлечь текст со страницы - всего на странице может быть 5 необходимых полей для извлечения, дак вот можно ли извлекать эту информацию в файл в разные столбцы?

Конечно можно, делайте!

Alex2014 пишет

Всем привет, нужна помощь. Можно ли извлечь текст со страницы - всего на странице может быть 5 необходимых полей для извлечения, дак вот можно ли извлекать эту информацию в файл в разные столбцы?

в поиск, уже не единожды отвечали на этот вопрос

Добрый день, подскажите как реализовать такую функцию в скрипте, чтоб из файла csv выполнилось задание по 20 строка, сделалась пуза на 30 минут, потом опять проход по 20 строка. пауза и так до конца списка. Заранее спасибо.

Artvirus пишет

Добрый день, подскажите как реализовать такую функцию в скрипте, чтоб из файла csv выполнилось задание по 20 строка, сделалась пуза на 30 минут, потом опять проход по 20 строка. пауза и так до конца списка. Заранее спасибо.

Выделить код

Код:

чтение строки 1
действие

чтение строки 2
действие

...

чтение строки 20
действие

пауза на 30 минут
InfSub пишет
Artvirus пишет

Добрый день, подскажите как реализовать такую функцию в скрипте, чтоб из файла csv выполнилось задание по 20 строка, сделалась пуза на 30 минут, потом опять проход по 20 строка. пауза и так до конца списка. Заранее спасибо.

Выделить код

Код:

чтение строки 1
действие

чтение строки 2
действие

...

чтение строки 20
действие

пауза на 30 минут

Логически это я понимаю, а вот как правильно код прописать я еще не сильно силен

Artvirus пишет
InfSub пишет
Artvirus пишет

Добрый день, подскажите как реализовать такую функцию в скрипте, чтоб из файла csv выполнилось задание по 20 строка, сделалась пуза на 30 минут, потом опять проход по 20 строка. пауза и так до конца списка. Заранее спасибо.

скрытый текст

Выделить код

Код:

чтение строки 1
действие

чтение строки 2
действие

...

чтение строки 20
действие

пауза на 30 минут

Логически это я понимаю, а вот как правильно код прописать я еще не сильно силен

так же как и если бы брали одну строку, только с изменением номера строки в каждом из участков кода

Ребята, помогите настроить макрос, я не программист, и пока еще команда мне сложно понять.

скрытый текст
VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=http://mysite.com
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:text CONTENT=galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:search
TAG POS=1 TYPE=A ATTR=TXT:Чехол<SP>для<SP>Galaxy<SP>S3<SP>Elago<SP>G5<SP>Breathe<SP>Ca*
TAG POS=1 TYPE=A ATTR=TXT:SEO
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:search_keywords CONTENT=чехол<SP>для<SP>galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:edit-product-seo
TAG POS=1 TYPE=A ATTR=TXT:Товары
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:text CONTENT=galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:search
TAG POS=2 TYPE=A ATTR=TXT:Чехол<SP>для<SP>Galaxy<SP>S3<SP>Elago<SP>G5<SP>Breathe<SP>Ca*
TAG POS=1 TYPE=A ATTR=TXT:SEO
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:search_keywords CONTENT=чехол<SP>для<SP>galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:edit-product-seo
TAG POS=1 TYPE=A ATTR=TXT:Товары

Вопрос, как мне сделать так, чтобы не спрашивало каждый раз, отдельное наименование товара ( например вот это TXT:Чехол<SP>для<SP>Galaxy<SP>S3<SP>Elago<SP>G5<SP>Breathe<SP>Ca*) а сделать, так чтобы на странице все товары обрабатывало?
Благодарю за ответ

androffka пишет

Вопрос, как мне сделать так, ...
ответ

воспользоваться поиском по теме, как минимум

androffka пишет

Ребята, помогите настроить макрос, я не программист, и пока еще команда мне сложно понять.

скрытый текст
VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=http://mysite.com
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:text CONTENT=galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:search
TAG POS=1 TYPE=A ATTR=TXT:Чехол<SP>для<SP>Galaxy<SP>S3<SP>Elago<SP>G5<SP>Breathe<SP>Ca*
TAG POS=1 TYPE=A ATTR=TXT:SEO
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:search_keywords CONTENT=чехол<SP>для<SP>galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:edit-product-seo
TAG POS=1 TYPE=A ATTR=TXT:Товары
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:text CONTENT=galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:search
TAG POS=2 TYPE=A ATTR=TXT:Чехол<SP>для<SP>Galaxy<SP>S3<SP>Elago<SP>G5<SP>Breathe<SP>Ca*
TAG POS=1 TYPE=A ATTR=TXT:SEO
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:search_keywords CONTENT=чехол<SP>для<SP>galaxy<SP>s3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:edit-product-seo
TAG POS=1 TYPE=A ATTR=TXT:Товары

Вопрос, как мне сделать так, чтобы не спрашивало каждый раз, отдельное наименование товара ( например вот это TXT:Чехол<SP>для<SP>Galaxy<SP>S3<SP>Elago<SP>G5<SP>Breathe<SP>Ca*) а сделать, так чтобы на странице все товары обрабатывало?
Благодарю за ответ

работай с html, ищи чем все эти элементы уникальны от других, т.е. ищи тег или class или еще какую нить уникальность и бери их позиции (TAG POS=1..., TAG POS=2..., TAG POS=3...)

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

16-03-2014 18:46:38
Может есть вариант быстрой замены прокси? в системе или FF ?

пробую в FF, а о прокси не совсем ясен вопрос.
Ну, допустим я нашел уникальность, а как мне это зациклить чтобы не прописывать каждый отдельный товар?
Да, и еще вопрос, в какой настройке лучше всего вести записи, там есть 4 варианта, этот вариант с опцией "автовыбор"

Здравствуйте.:)Скажите как сделать скрипт чтоб он из списка всегда выбирал с самого конца списка, но этот список постоянно увеличивается.Это реально так сделать?
Или же просто чтоб выбирал произвольно.

spy686 пишет

16-03-2014 18:46:38
Может есть вариант быстрой замены прокси? в системе или FF ?

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

16-03-2014 19:16:23

marselkasml пишет

Здравствуйте.:)Скажите как сделать скрипт чтоб он из списка всегда выбирал с самого конца списка, но этот список постоянно увеличивается.Это реально так сделать?
Или же просто чтоб выбирал произвольно.

вы сами понимаете, что именно хотите? по-моему - нет, логику включите и подумайте, как идти с конца списка в начало, если к концу списка постоянно прибавляются новые элементы... в принципе это возможно, если не учитывать новые элементы, но этого ли вы хотите?

16-03-2014 19:20:15

androffka пишет

пробую в FF, а о прокси не совсем ясен вопрос.

это не ответ на ваш вопрос, раз уж вы не поняли, а отдельный вопрос

androffka пишет

Ну, допустим я нашел уникальность, а как мне это зациклить чтобы не прописывать каждый отдельный товар?

использовать {{!LOOP}}

androffka пишет

Да, и еще вопрос, в какой настройке лучше всего вести записи, там есть 4 варианта, этот вариант с опцией "автовыбор"

оставьте как есть, вам этого вполне хватит

Здравствуйте.
Перерыл весь Рунет, не могу найти ответа на казалось бы актуальный вопрос:
Мне нужно дописать скрипт, который будет писать заранее заданное сообщение в Одноклассники.
Открываю людей-онлайн, выбираю возраст, выбираю человека, захожу к нему на страницу, нажимаю "Написать сообщение"...а дальше не могу никак понять, как вставить текст в поле.
Те варианты, которые обсуждали здесь, почему то не работают, хотя iMacros я обновил.
Помогите пожалуйста.


Еще есть вопрос как поставить "Класс". Судя по всему работает аналогично параметру проставления оценки "5", но заменяю переменные на "*", скрипт просто пропускает строку и ничего не происходит. Если у кого то есть строка параметра TAG для Одноклассников, буду признателен и за нее.

Dark-Mare пишет

Здравствуйте.
Перерыл весь Рунет, не могу найти ответа на казалось бы актуальный вопрос:
Мне нужно дописать скрипт, который будет писать заранее заданное сообщение в Одноклассники.
Открываю людей-онлайн, выбираю возраст, выбираю человека, захожу к нему на страницу, нажимаю "Написать сообщение"...а дальше не могу никак понять, как вставить текст в поле.
Те варианты, которые обсуждали здесь, почему то не работают, хотя iMacros я обновил.
Помогите пожалуйста.


Еще есть вопрос как поставить "Класс". Судя по всему работает аналогично параметру проставления оценки "5", но заменяю переменные на "*", скрипт просто пропускает строку и ничего не происходит. Если у кого то есть строка параметра TAG для Одноклассников, буду признателен и за нее.

Отправил личное сообщение

16-03-2014 21:50:07
Подскажите пожалуйста
Вот это строка в JS
window.parent.scrollTo(0,50000);

Какую функцию она несёт ?

Когда список увеличивается то они попадают в НАЧАЛА списка. Речь идёт о списке групп в одноклассниках. Когда вступаешь в группу то эта группа автоматом становится в начала списка, , а мне нужно чтобы макрос выбирал именно С КОНЦА! ТЕПЕРЬ ПОНИМАЕТЕ?

InfSub пишет
spy686 пишет

16-03-2014 18:46:38
Может есть вариант быстрой замены прокси? в системе или FF ?

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

16-03-2014 19:16:23

marselkasml пишет

Здравствуйте.:)Скажите как сделать скрипт чтоб он из списка всегда выбирал с самого конца списка, но этот список постоянно увеличивается.Это реально так сделать?
Или же просто чтоб выбирал произвольно.

вы сами понимаете, что именно хотите? по-моему - нет, логику включите и подумайте, как идти с конца списка в начало, если к концу списка постоянно прибавляются новые элементы... в принципе это возможно, если не учитывать новые элементы, но этого ли вы хотите?

16-03-2014 19:20:15

androffka пишет

пробую в FF, а о прокси не совсем ясен вопрос.

это не ответ на ваш вопрос, раз уж вы не поняли, а отдельный вопрос

androffka пишет

Ну, допустим я нашел уникальность, а как мне это зациклить чтобы не прописывать каждый отдельный товар?

использовать {{!LOOP}}

androffka пишет

Да, и еще вопрос, в какой настройке лучше всего вести записи, там есть 4 варианта, этот вариант с опцией "автовыбор"

оставьте как есть, вам этого вполне хватит

Недавно столкнулся с такой ситуацией, :
Работаю в js
запускаю через iim настройку прокси, когда сценарий iim закачивается imacros возвращается в js и настройки прокси пропадают.
Вопрос: Можно ли зафиксировать настройки прокси, которые оставались бы независимо от того  начал ли работать iim, приостановился, остановился или же вернулся в js. Или же это специально так сделано что при остановке iim все прокси настройки сделанные iim отключаются или же это у меня баг?

kolshix пишет

Недавно столкнулся с такой ситуацией, :
Работаю в js
запускаю через iim настройку прокси, когда сценарий iim закачивается imacros возвращается в js и настройки прокси пропадают.
Вопрос: Можно ли зафиксировать настройки прокси, которые оставались бы независимо от того  начал ли работать iim, приостановился, остановился или же вернулся в js. Или же это специально так сделано что при остановке iim все прокси настройки сделанные iim отключаются или же это у меня баг?

тут уже где-то об этом писали (проблема по моему не решаема). А можете скинуть в ЛС (или в тему) рабочий код изменения прокси. И может встречали для proxy с логином и паролем?

spy686 пишет

тут уже где-то об этом писали (проблема по моему не решаема). А можете скинуть в ЛС (или в тему) рабочий код изменения прокси. И может встречали для proxy с логином и паролем?

http://forum.iopus.com/viewtopic.php?t=12440#wrap

да вот нашел что-то, но коды не срабатывают. Один раз код каким то образом сработал и перестал, вот шаманю, если что-то нашаманю отпишусь

Я использую коды по ссылке выше,  на 18 и 27 портативных версиях, может у кого-то на полной получится?  у меня на портативных не срабатывают коды.

Самое интересное , что в чистом js через shift + f4  такая команда легко изменяет параметры

Выделить код

Код:

javascript:gPrefBranch.setIntPref("network.proxy.type",0);

наверно слабенький iim (или что то с js) который экспортирует данные в js т.к. команда
URL GOTO=javascript:window.scrollBy(0,20000)  - работает , а

URL GOTO=about:config
URL GOTO=javascript:gPrefBranch.setIntPref("network.proxy.type",0);  - ни вкакую не хочет работать

marselkasml пишет

Когда список увеличивается то они попадают в НАЧАЛА списка. Речь идёт о списке групп в одноклассниках. Когда вступаешь в группу то эта группа автоматом становится в начала списка, , а мне нужно чтобы макрос выбирал именно С КОНЦА! ТЕПЕРЬ ПОНИМАЕТЕ?

без капса в общении!

повторюсь, логику задачи сами себе обрисуйте... и подумайте, можно ли идти с конца чисто математически когда в начало добавляется рандомное число
пример: есть 100 баранов, считаем: 100-99-98- добавилось 10 баранов в начало -97-96-95-94... еще 3 барана в начало..

как вы их посчитаете? сколько реально баранов получилось? 94 в момент остановки или 107? ответьте себе на этот вопрос и у вас будет логика, как должен действовать скрипт

17-03-2014 02:41:10

kolshix пишет

Недавно столкнулся с такой ситуацией, :
Работаю в js
запускаю через iim настройку прокси, когда сценарий iim закачивается imacros возвращается в js и настройки прокси пропадают.
Вопрос: Можно ли зафиксировать настройки прокси, которые оставались бы независимо от того  начал ли работать iim, приостановился, остановился или же вернулся в js. Или же это специально так сделано что при остановке iim все прокси настройки сделанные iim отключаются или же это у меня баг?

функция прокси распространяется только локально на то действие которое выполняется в конкретном iim скрипте, если вы запускаете данное действие из управляющего скрипта на js - прокси будет работать только в том скрипте в котором прописан

Алим пишет

Dark-Mare пишет:

    Здравствуйте.
    Перерыл весь Рунет, не могу найти ответа на казалось бы актуальный вопрос:
    Мне нужно дописать скрипт, который будет писать заранее заданное сообщение в Одноклассники.
    Открываю людей-онлайн, выбираю возраст, выбираю человека, захожу к нему на страницу, нажимаю "Написать сообщение"...а дальше не могу никак понять, как вставить текст в поле.
    Те варианты, которые обсуждали здесь, почему то не работают, хотя iMacros я обновил.
    Помогите пожалуйста.


    Еще есть вопрос как поставить "Класс". Судя по всему работает аналогично параметру проставления оценки "5", но заменяю переменные на "*", скрипт просто пропускает строку и ничего не происходит. Если у кого то есть строка параметра TAG для Одноклассников, буду признателен и за нее.

Отправил личное сообщение

Зачем мне личное сообщение с адресом покупки макросов для одноклассники.
Если, возможно, кто нибудь подскажите ответ на вопрос, пожалуйста.

Dark-Mare пишет

Зачем мне личное сообщение с адресом покупки макросов для одноклассники.
Если, возможно, кто нибудь подскажите ответ на вопрос, пожалуйста.

читаем форум и учимся

InfSub пишет
Dark-Mare пишет

Зачем мне личное сообщение с адресом покупки макросов для одноклассники.
Если, возможно, кто нибудь подскажите ответ на вопрос, пожалуйста.

читаем форум и учимся

Почитал, поучился, просто не могу разобраться какие параметры доставать именно из одноклассников именно в этом случае.
Как поставить оценку "5" я разобрался. Как пригласить в друзья, в группу, поставить "Класс" тоже сделал, (правда "класс" пока только через координаты), как выбирать элементы из выпадающего списка и т.д.
Я же не прошу за меня написать макрос. Нужные макросы я написал, но в одном месте немного "воткнулся".
Там одноклассниках в скрипте динамические данные есть для каждого перехода или пользователя и их нужно как то заменять. "*" не помогает, как в случае с оценкой "5".
Для этого наверное же и есть форум, чтобы посоветоваться...если это конечно не рыночный форум для продажи готовых скриптов =)

класс в одноклассниках     
TAG POS=1 TYPE=SPAN ATTR=CLASS:tico<SP>tico__12&&ONCLICK:OK.photoLayer.focusComment()


Dark-Mare пишет
InfSub пишет
Dark-Mare пишет

Зачем мне личное сообщение с адресом покупки макросов для одноклассники.
Если, возможно, кто нибудь подскажите ответ на вопрос, пожалуйста.

читаем форум и учимся

=)
Почитал, поучился, просто не могу разобраться какие параметры доставать именно из одноклассников.
Я же не прошу за меня написать макрос. Нужные макросы я написал, но в одном месте немного "воткнулся".
Для этого наверное же и есть форум, чтобы посоветоваться...

marselkasml пишет

класс в одноклассниках     
TAG POS=1 TYPE=SPAN ATTR=CLASS:tico<SP>tico__12&&ONCLICK:OK.photoLayer.focusComment()

Спасибо огромное!
Пытался так реализовать, но забыл про <SP>. Просто пробел ставил =)

17-03-2014 22:10:46

InfSub пишет

а кто сказал что он будет там работать? =))
Выделить код
Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"

Не работает оно. Никак не работает :(
Видимо "читать форум и учиться" не всегда помогает.

Dark-Mare пишет
InfSub пишет

а кто сказал что он будет там работать? =))
Выделить код
Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"

Не работает оно. Никак не работает :(
Видимо "читать форум и учиться" не всегда помогает.

ок.ру не стоит на месте, все меняется, экспериментируйте

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-m" CHARS="текст сообщения"


Dark-Mare пишет
marselkasml пишет

класс в одноклассниках     
TAG POS=1 TYPE=SPAN ATTR=CLASS:tico<SP>tico__12&&ONCLICK:OK.photoLayer.focusComment()

Спасибо огромное!
Пытался так реализовать, но забыл про <SP>. Просто пробел ставил =)

17-03-2014 22:10:46

InfSub пишет

а кто сказал что он будет там работать? =))
Выделить код
Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
FRAME F=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="текст сообщения без <SP>"

Не работает оно. Никак не работает :(
Видимо "читать форум и учиться" не всегда помогает.

marselkasml пишет

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-m" CHARS="текст сообщения"

Спасибо. Все отлично работает =)

Доброго времени суток. Очень нужна помощь. Не могу ни как извлечь (EXTRACT) вот этот текст "/profile/558939590471" из кода

<a class="o" href="/profile/558939590471?st.cmd=friendMain&st.friendId=nncxxpynqhwfetoogng0qcvosyhqrcvpuhqhyh" onmouseout="OK.il.f(event, 1);" onmouseover="OK.il.f(event, 1);" "="" uid="goToUser"></a>

заткнулся в вопросительный знак и все, как только не пробовал не идет (там где вместо вопросительного знака стоят вторые кавычки - все работает, а с ? хоть убей)

anber121 пишет

Доброго времени суток. Очень нужна помощь. Не могу ни как извлечь (EXTRACT) вот этот текст "/profile/558939590471" из кода

<a class="o" href="/profile/558939590471?st.cmd=friendMain&st.friendId=nncxxpynqhwfetoogng0qcvosyhqrcvpuhqhyh" onmouseout="OK.il.f(event, 1);" onmouseover="OK.il.f(event, 1);" "="" uid="goToUser"></a>

заткнулся в вопросительный знак и все, как только не пробовал не идет (там где вместо вопросительного знака стоят вторые кавычки - все работает, а с ? хоть убей)

(?<=\ href=").*(?=\?st\.cmd=friend)

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

spy686 пишет

(?<=\ href=").*(?=\?st\.cmd=friend)

to spy686 - оффтоп
spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

InfSub пишет
spy686 пишет

(?<=\ href=").*(?=\?st\.cmd=friend)

to spy686 - оффтоп
spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

в  ZennoPoster 5 примочку прикрутили - конструктор рег.выражений. )

spy686 пишет
InfSub пишет
spy686 пишет

(?<=\ href=").*(?=\?st\.cmd=friend)

to spy686 - оффтоп
spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

в  ZennoPoster 5 примочку прикрутили - конструктор рег.выражений. )

Я с imacros себе мозги вынес , нашёл аналог ubot, теперь мне показали ещё ZennoPoster 5(хвастаются новизной, но в Ubot уже всё это было, правда у uBot интерфейс похуже), Башка кипит - но небольшие знания imacros помогут, я думаю,  мне в работе ZennoPoster 5 (как нибудь займусь). Посмотрел видео про ZennoPoster 5 тот же смысл что Imacros но немного повеселее .  А теперь главный вопрос:

скрытый текст
Где взять крякнутую версию ZennoPoster 5?

зенопост - мощная штука , но в imacrose тоже потоки есть - скачал и установил себе трейланчи - запускаю два профиля - каждый работает в своём напровлении, и в этот же момент произвожу отладку на 3 профиле .  (Вот только с изменение прокси проблемы и досих пор никто не решил+капча код разгадки никто нормальный не сделал, ну или морозиться)

InfSub пишет

spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

Помнится в универе у нас такие были. "Я учил, а ты пришел списать. Нееет поди поучи, помучайся и разберись сам".
Дай списать троечнику и, возможно, когда то он возьмет тебя на работу.
Уважаемый, некоторым просто некогда заниматься подробным изучением iMacros. Если у тебя есть на это время, +1 тебе к харизме, ну или к ловкости. Не надо быть таким скупердяем :)

spy686 пишет
anber121 пишет

Доброго времени суток. Очень нужна помощь. Не могу ни как извлечь (EXTRACT) вот этот текст "/profile/558939590471" из кода

<a class="o" href="/profile/558939590471?st.cmd=friendMain&st.friendId=nncxxpynqhwfetoogng0qcvosyhqrcvpuhqhyh" onmouseout="OK.il.f(event, 1);" onmouseover="OK.il.f(event, 1);" "="" uid="goToUser"></a>

заткнулся в вопросительный знак и все, как только не пробовал не идет (там где вместо вопросительного знака стоят вторые кавычки - все работает, а с ? хоть убей)

(?<=\ href=").*(?=\?st\.cmd=friend)

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

Огромное спасибо, сейчас буду проверять.

Dark-Mare пишет
InfSub пишет

spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

Помнится в универе у нас такие были. "Я учил, а ты пришел списать. Нееет поди поучи, помучайся и разберись сам".
Дай списать троечнику и, возможно, когда то он возьмет тебя на работу.
Уважаемый, некоторым просто некогда заниматься подробным изучением iMacros. Если у тебя есть на это время, +1 тебе к харизме, ну или к ловкости. Не надо быть таким скупердяем :)

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

Dark-Mare пишет
InfSub пишет

spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

Помнится в универе у нас такие были. "Я учил, а ты пришел списать. Нееет поди поучи, помучайся и разберись сам".
Дай списать троечнику и, возможно, когда то он возьмет тебя на работу.
Уважаемый, некоторым просто некогда заниматься подробным изучением iMacros. Если у тебя есть на это время, +1 тебе к харизме, ну или к ловкости. Не надо быть таким скупердяем :)

Благодарю за понимание. Успехов вам.:)

InfSub пишет
Dark-Mare пишет
InfSub пишет

spy686, если б мы были на уроке, то за само выражение 5+ =)
но за ответ 4, ты даешь ответ человеку, который не посмотрел примеры, не почитал wiki, не гуглил и не читал форум, он не понимает как заставить имакрос искать нужное ему средствами имакроса, а использование js да еще с применением рег. выражений.. это для него, как самолет для астралопитека

Помнится в универе у нас такие были. "Я учил, а ты пришел списать. Нееет поди поучи, помучайся и разберись сам".
Дай списать троечнику и, возможно, когда то он возьмет тебя на работу.
Уважаемый, некоторым просто некогда заниматься подробным изучением iMacros. Если у тебя есть на это время, +1 тебе к харизме, ну или к ловкости. Не надо быть таким скупердяем :)

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

Я много на что потратил бессонные ночи, но при этом с удовольствием делюсь опытом на специализированных форумах. Иначе зачем мне туда заходить? Поумничать? Чтоб сказали "А вон та аватарка тут самая умная, вишь как говорит "Иди учись", "юзай поиск"... "?.
Я уважаю, Ваши знания и терпение. Но, кому надо - тот найдет ответ. А кому надо - купит макрос. Всем хватит =)

Dark-Mare пишет

Я уважаю, Ваши знания и терпение. Но, кому надо - тот найдет ответ. А кому надо - купит макрос. Всем хватит =)

если человек приходит на форум задать вопрос, поиск ответа на который займет 10 минут, на том же форуме, я не вижу смысла в 100-тый раз отвечать на него
хотя бы потому что, этот человек в большинстве случаев все равно уйдет отсюда, а если и не уйдет, то завалит кучей вопросов, ответы на которые элементарно находятся в форуме
по большому счету, есть смысл отвечать только тем, кто действительно что-то делает, а не натырил где-то скрипт и хочет его чуть доработать под себя, но при этом ему кто-то его должен доработать, сам он это сделать не хочет

InfSub пишет
Dark-Mare пишет

Я уважаю, Ваши знания и терпение. Но, кому надо - тот найдет ответ. А кому надо - купит макрос. Всем хватит =)

если человек приходит на форум задать вопрос, поиск ответа на который займет 10 минут, на том же форуме, я не вижу смысла в 100-тый раз отвечать на него
хотя бы потому что, этот человек в большинстве случаев все равно уйдет отсюда, а если и не уйдет, то завалит кучей вопросов, ответы на которые элементарно находятся в форуме
по большому счету, есть смысл отвечать только тем, кто действительно что-то делает, а не натырил где-то скрипт и хочет его чуть доработать под себя, но при этом ему кто-то его должен доработать, сам он это сделать не хочет

Ну тогда лучшим будет проигнорировать просьбу и промолчать, а не пижонить и советовать элементарные вещи :)

Мне сайт помог реализовать 8 действий в одноклассниках, а вопрос я задал один лишь раз.

Ищу вот на сайте "Не повторяется цикл" получаю пустое окно. Читать ли мне его или сканировать? ))

На самом деле в разделе "Повторить макрос" устанавливая значение "Макс" = 3...10 получаю однократное повторение цикла.
Все работает, ошибок нет. К кому еще обратиться, как не к камрадам, загонявшим этот цикл не один раз? Обращаюсь вот.

Dark-Mare пишет

Ищу вот на сайте "Не повторяется цикл" получаю пустое окно. Читать ли мне его или сканировать? ))

На самом деле в разделе "Повторить макрос" устанавливая значение "Макс" = 3...10 получаю однократное повторение цикла.
Все работает, ошибок нет. К кому еще обратиться, как не к камрадам, загонявшим этот цикл не один раз? Обращаюсь вот.

как минимум скрипт в спойлере в студию, иначе ответ будет аналогичен предыдущим т.е. "ищите ошибку в скрипте"

Кто нибудь пробовал в одноклассниках скрипт создать чтоб  писал сообщения цветным текстом?Получилось?

InfSub пишет
Dark-Mare пишет

Ищу вот на сайте "Не повторяется цикл" получаю пустое окно. Читать ли мне его или сканировать? ))

На самом деле в разделе "Повторить макрос" устанавливая значение "Макс" = 3...10 получаю однократное повторение цикла.
Все работает, ошибок нет. К кому еще обратиться, как не к камрадам, загонявшим этот цикл не один раз? Обращаюсь вот.

как минимум скрипт в спойлере в студию, иначе ответ будет аналогичен предыдущим т.е. "ищите ошибку в скрипте"

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

Народ, помогите, что в этом коде не так, а то уже матерится хочется? :sick:

код

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
SET !TIMEOUT 5
SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://сайт.ру
TAB OPEN
TAB T=2
SET !TIMEOUT 5
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE link.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
URL GOTO={{!COL1}}
SET !TIMEOUT 5
SET !ERRORIGNORE YES
TAB T=1


До TAB T=2 все нормально, а вот уже после, в никакую не хочет брать ссылку из файла link.csv, что бы открыть страницу на TAB T=2 :mad:
Файл link.csv находится в папке макрос, в папке Datasources, ссылка в файле link.csv одна и всегда будет одна

Protey пишет

Народ, помогите, что в этом коде не так, а то уже матерится хочется? :sick:

код

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
SET !TIMEOUT 5
SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://сайт.ру
TAB OPEN
TAB T=2
SET !TIMEOUT 5
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE link.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
URL GOTO={{!COL1}}
SET !TIMEOUT 5
SET !ERRORIGNORE YES
TAB T=1


До TAB T=2 все нормально, а вот уже после, в никакую не хочет брать ссылку из файла link.csv, что бы открыть страницу на TAB T=2 :mad:
Файл link.csv находится в папке макрос, в папке Datasources, ссылка в файле link.csv одна и всегда будет одна

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

InfSub пишет

ни каких проблем (кроме недоработки с вкладками) не вижу

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

Protey пишет
InfSub пишет

ни каких проблем (кроме недоработки с вкладками) не вижу

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

при одной и той же ссылке в файле то работает то нет или ссылки меняются?

21-03-2014 02:59:19
по стабильности у всех разное мнение, кто-то сидит на старой версии фокса и имакроса, я предпочитаю последние версии, в них хоть и появляются новые баги, но при этом исправляются старые, хоть и не все

Protey пишет
InfSub пишет

ни каких проблем (кроме недоработки с вкладками) не вижу

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

У меня такая проблема возникала когда отредактирую файл CSV в ручную (или чего то добавлю)  -  imacros  в тупую проскакивает в коде - это связано лично у меня было с кодировкой и русским текстом (хотя лично пользуюсь txt и кириллицей и латиницей , но с такими проблемами сталкивался и в csv). Чтоб долго не мучится я просто создавал его чистым по новой через команду SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv - туда вносил частями информацию и проверял работоспособность iim кода(типо вашего) - тем самым проверял корректность текста. У расширения csv и txt есть несколько разновидностей (узнать о разновидностях  можно открыв exel и нажав там "сохранить как") да и кодировка и прочее, мне проще было создать новый файл csv чтоб не мучиться с кодировками.

kolshix пишет
Protey пишет
InfSub пишет

ни каких проблем (кроме недоработки с вкладками) не вижу

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

У меня такая проблема возникала когда отредактирую файл CSV в ручную (или чего то добавлю)  -  imacros  в тупую проскакивает в коде - это связано лично у меня было с кодировкой и русским текстом (хотя лично пользуюсь txt и кириллицей и латиницей , но с такими проблемами сталкивался и в csv). Чтоб долго не мучится я просто создавал его чистым по новой через команду SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv - туда вносил частями информацию и проверял работоспособность iim кода(типо вашего) - тем самым проверял корректность текста. У расширения csv и txt есть несколько разновидностей (проверить можно открыв exel и нажав там "сохранить как") да и кодировка и прочее, мне проще было создать новый файл csv чтоб не мучиться с кодировками.

по-моему с кодировкой уже давно решены проблемы в 99% текстовых редакторов, так что вопрос "как сохранить" - не актуален
для всех *.iim файлов, а так же для всех считываемых imacros'ом - кодировка едина - UTF-8 иначе - будут глюки и сбои

21-03-2014 03:27:27
даже стандартный виндовый notepad.exe умеет работать с уникодом, так что все 100% редакторов на данный момент без проблем читают и сохраняют данные в этой кодировке

InfSub пишет

ни каких проблем (кроме недоработки с вкладками) не вижу

по-моему с кодировкой уже давно решены проблемы в 99% текстовых редакторов, так что вопрос "как сохранить" - не актуален
для всех *.iim файлов, а так же для всех считываемых imacros'ом - кодировка едина - UTF-8 иначе - будут глюки и сбои

К примеру я не знал о UTF-8, теперь буду знать. Может тот кто писал тоже не знал?

Я лично себе для большего удобства, сохранял файл "txt с разделителями табуляции" , но как только начинал манипуляции с добавлением русского текста сразу глюки ( английским текстом пользовался 2 месяца вообще никаких проблем не было). Когда сохраняешь txt "txt с разделителями табуляции" - его анализировать и редактировать в exel ну очень удобно - сортировка, анализ и прочее

Добрый день, подскажите как реализовать чтобы imacros начинал свои действия  в определенное время например в 12:00.
Спасибо кто откликнется.

рррр пишет

в определенное время например в 12:00

на сколько я знаю это можно сделать только если браузер будет запущен и выставить команду WAIT SECONDS= (тут в секундах, команда ждет определенное время перед выполнением следующей команды) к примеру 3600 секунд, это 1 час

рррр пишет

Добрый день, подскажите как реализовать чтобы imacros начинал свои действия  в определенное время например в 12:00.
Спасибо кто откликнется.

добавить задание в планировщик заданий виндоус

InfSub пишет

рррр пишет: Добрый день, подскажите как реализовать чтобы imacros начинал свои действия  в определенное время например в 12:00.Спасибо кто откликнется.добавить задание в планировщик заданий виндоус
                    Отредактировано InfSub (Сегодня 16:53:30)

через планировщик не пойдет, надо на открытой мозиле.

Protey пишет

рррр пишет: в определенное время например в 12:00на сколько я знаю это можно сделать только если браузер будет запущен и выставить команду WAIT SECONDS= (тут в секундах, команда ждет определенное время перед выполнением следующей команды) к примеру 3600 секунд, это 1 час

так пользуюсь но не удобно, надо чтобы  ровно 12:00:00 макрос начал свои действия.

рррр пишет
InfSub пишет

рррр пишет: Добрый день, подскажите как реализовать чтобы imacros начинал свои действия  в определенное время например в 12:00.Спасибо кто откликнется.добавить задание в планировщик заданий виндоус
                    Отредактировано InfSub (Сегодня 16:53:30)

через планировщик не пойдет, надо на открытой мозиле.

Protey пишет

рррр пишет: в определенное время например в 12:00на сколько я знаю это можно сделать только если браузер будет запущен и выставить команду WAIT SECONDS= (тут в секундах, команда ждет определенное время перед выполнением следующей команды) к примеру 3600 секунд, это 1 час

так пользуюсь но не удобно, надо чтобы  ровно 12:00:00 макрос начал свои действия.

без вариантов, либо WAIT SECONDS либо задание планировщика

рррр пишет

надо чтобы  ровно 12:00:00 макрос начал свои действия.

ну так какие проблемы, сделайте расчет, и выставьте рассчитанное время до 12:00
ну или воспользуйтесь программкой

скрытый текст
MacroRecorderSetup

InfSub пишет

без вариантов, либо WAIT SECONDS либо задание планировщика

а с js никак не получиться???

рррр пишет
InfSub пишет

без вариантов, либо WAIT SECONDS либо задание планировщика

а с js никак не получиться???

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

InfSub пишет

рррр пишет: InfSub пишет: без вариантов, либо WAIT SECONDS либо задание планировщикаа с js никак не получиться???получится, но если вы будете использовать подобное решение для запуска один раз в день определенного сценария, то просто зря потратите ресурсы компа, к тому же возможны учетки памяти и подвисания лиса

понятно, спасибо.

Мне нужен код который откроет произвольно группу  из моего списка групп в одноклассниках
Я знаю должно быть что то в этом роде .....
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 4);")
TAG POS={{!VAR1}}
но я с переменными не дружу:(разобраться никак не могу...помогите пожалуйста:blush: !

marselkasml пишет

Мне нужен код который откроет произвольно группу  из моего списка групп в одноклассниках
Я знаю должно быть что то в этом роде .....
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 4);")
TAG POS={{!VAR1}}
но я с переменными не дружу:(разобраться никак не могу...помогите пожалуйста:blush: !

вы сами ответили на свой вопрос, что именно вы хотите, чтобы вам еще ответили?

но он у меня не открывает(никак вообще не реагирует на группы.Почему?Может я что то не дописала?

InfSub пишет
marselkasml пишет

Мне нужен код который откроет произвольно группу  из моего списка групп в одноклассниках
Я знаю должно быть что то в этом роде .....
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 4);")
TAG POS={{!VAR1}}
но я с переменными не дружу:(разобраться никак не могу...помогите пожалуйста:blush: !

вы сами ответили на свой вопрос, что именно вы хотите, чтобы вам еще ответили?

marselkasml пишет

но он у меня не открывает(никак вообще не реагирует на группы.Почему?Может я что то не дописала?

возможно.., как вы хотите получить ответ, процитировав только кусок кода генерирующий случайный номер позиции, но не показав, как вы пытаетесь открыть группу со сгенерированным номером?

InfSub
Привет, можешь помочь с JS, а то я в нем вообще полный 0?
Надо вот эти команды запилить в js

код

Выделить код

Код:

TAB T=1
TAG POS=10 TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES
TAG POS=3 TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM
EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0


Надо, в TAG POS=10 цикл начать с 10 и т.д. к примеру до 20, а в TAG POS=3 начать с 3 ну и до 13

Пробовал сам, так методом тыка :), по примеру из уже рабочих, но видимо что-то не то сделал)

то что сам попробовал сделать

Выделить код

Код:

macro='CODE:';
for(i=10; i<=20; i++){
    macro+='TAB T=1'+'\n';
    macro+='TAG POS='+i+' TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT'+'\n';
    macro+='SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv'+'\n';
    macro+='WAIT SECONDS=2'+'\n';
};
for(i=3; i<=13; i++){
    macro+='ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES'+'\n';
    macro+='TAG POS='+i+' TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM'+'\n';
    macro+='EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0'+'\n';
};

Protey пишет

InfSub
Привет, можешь помочь с JS, а то я в нем вообще полный 0?
Надо вот эти команды запилить в js

код

Выделить код

Код:

TAB T=1
TAG POS=10 TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES
TAG POS=3 TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM
EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0


Надо, в TAG POS=10 цикл начать с 10 и т.д. к примеру до 20, а в TAG POS=3 начать с 3 ну и до 13

Пробовал сам, так методом тыка :), по примеру из уже рабочих, но видимо что-то не то сделал)

то что сам попробовал сделать

Выделить код

Код:

macro='CODE:';
for(i=10; i<=20; i++){
    macro+='TAB T=1'+'\n';
    macro+='TAG POS='+i+' TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT'+'\n';
    macro+='SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv'+'\n';
    macro+='WAIT SECONDS=2'+'\n';
};
for(i=3; i<=13; i++){
    macro+='ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES'+'\n';
    macro+='TAG POS='+i+' TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM'+'\n';
    macro+='EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0'+'\n';
};

если я правильно понял твой код, то должно получиться так:

скрытый текст

Выделить код

Код:

var macro = ''; // переменная задана где-то ранее цикла
...
for(var i=10,j=3;i<=20;i++,j++){
    macro += 'TAB T=1'+'\n';
    macro += 'TAG POS='+i+' TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT'+'\n';
    macro += 'SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv'+'\n';
    macro += 'WAIT SECONDS=2'+'\n';
    macro += 'ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES'+'\n';
    macro += 'TAG POS='+j+' TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM'+'\n';
    macro += 'EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0'+'\n';
};

InfSub пишет

скрытый текст

Выделить код

Код:

var macro = ''; // переменная задана где-то ранее цикла
...
for(var i=10,j=3;i<=20;i++,j++){
    macro += 'TAB T=1'+'\n';
    macro += 'TAG POS='+i+' TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT'+'\n';
    macro += 'SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv'+'\n';
    macro += 'WAIT SECONDS=2'+'\n';
    macro += 'ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES'+'\n';
    macro += 'TAG POS='+j+' TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM'+'\n';
    macro += 'EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0'+'\n';
};

Что-то он не рабочий

А в js важны команды?:
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO

Но во все равно, не работает, т.е. не сохраняет текст и фото :(

скрытый текст
В общем этот код iim сохраняет текст и фото открытого (т.е. когда на пост нажимаешь открывается как бы отдельно, по верх страницы) поста в группе ВК и лестает дальше командой EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0

TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=10 TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros FILE=txt.csv
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\jpg FILE=* WAIT=YES
TAG POS=3 TYPE=IMG ATTR=HREF:"*" CONTENT=EVENT:SAVEITEM
EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0

Так как TAG POS= меняется у текста и фото после команды EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0, мне надо чтоб и в TAG POS= менялось последовательно

Protey, пришли более полный кусок кода в личку, посмотрю

24-03-2014 09:11:28

Protey пишет

Так как TAG POS= меняется у текста и фото после команды EVENT TYPE=CLICK SELECTOR="#wk_right_arrow_bg>DIV" BUTTON=0, мне надо чтоб и в TAG POS= менялось последовательно

я так и написал, чтобы значения POS менялись одномоментно в обоих частях кода
потому и говорю, пришли более полный кусок, посмотрю сам код, скорее у тебя где-то ошибка в имакрос-коде

24-03-2014 09:12:50

SET !TIMEOUT 30
SET !ERRORIGNORE YES

эти 2 да - важны

24-03-2014 09:15:34

Protey пишет

В общем этот код......

хотя, может и этого куска хватит, чуть позже отвечу, сейчас ухожу

спасибо, разобралась нашла ошибочку :D

InfSub пишет
marselkasml пишет

но он у меня не открывает(никак вообще не реагирует на группы.Почему?Может я что то не дописала?

возможно.., как вы хотите получить ответ, процитировав только кусок кода генерирующий случайный номер позиции, но не показав, как вы пытаетесь открыть группу со сгенерированным номером?

InfSub пишет

пришли более полный кусок

это полный код, изменено только путь адреса папок куда копируется текст и сохраняется фото
Только вот не как не пойму меняется POS или нет....отправил в ЛС ссылку на пост, как пример с него берется текст и сохраняется картинка

хотел еще так реализовать, сохраняю в txt файл адрес картинки, а потом через команды из txt файла вставляю ссылку в код

скрытый текст

Выделить код

Код:

TAG POS=3 TYPE=IMG ATTR=HREF:"(сюда ссылку)" CONTENT=EVENT:SAVEITEM


Попробовал, так вообще не понятка какая-то, то несколько раз POS=19, потом несколько раз POS=21, иногда вообще проскакивает POS=1 :sick:

Protey пишет
InfSub пишет

пришли более полный кусок

я имел ввиду тот код, который ты запостил в начале

Protey пишет

это полный код, изменено только путь адреса папок куда копируется текст и сохраняется фото
Только вот не как не пойму меняется POS или нет....отправил в ЛС ссылку на пост, как пример с него берется текст и сохраняется картинка

проверил код, сохраняет явно не ту картинку, если вообще сохраняет

Protey пишет

хотел реализовать так, сохраняю в txt адрес картинки, а потом через команды вставляю ссылку в код

определись что именно тебе нужно, сохранить картинку или урл

Protey, в общем проблема не в js, проверяй свой имакрокод - он не верен

InfSub пишет

проверяй свой имакрокод

Иногда поражаюсь своей фантазией)))
решил проблему со своим макросом, отправил в ЛС, мож пригодится)

Теперь надо решить как полученную инфу и файлы запостить в группу одноклассники, самое главное разобраться как загрузить фото)
Народ, ни у кого случаем такого кода нет, чтоб загрузить фото в пост группы одноклассники?

24-03-2014 22:04:57

marselkasml пишет

Мне нужен код

Привет, у тебя случайно нет отрывка кода который грузит фото в группу одноклассники?

InfSub
Можешь еще раз помочь?
А то уже мозг взрывается, не могу понять как заставить загрузить фото при постинге в группе на сайте одноклассники :sick:

скрытый текст
ссылка на группу
_http://odnoklassniki.ru/group/54672919756831

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:posting_form_text_field_labeled CONTENT=Создать<SP>новую<SP>тему
TAG POS=1 TYPE=TEXTAREA ATTR=ID:posting_form_text_field CONTENT=fdgdgdsgdsgd 
TAG POS=1 TYPE=OBJECT FORM=ID:ACTION:upFr ATTR=NAME:ful_group_posting_form_btn.green CONTENT=C:\\_FRE1biLlxs.jpg
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:ACTION:upFr ATTR=ID:*


Я понимаю что в этой команде TAG POS=1 TYPE=OBJECT FORM=ID:ACTION:upFr ATTR=NAME:ful_group_posting_form_btn.green CONTENT=C:\\_FRE1biLlxs.jpg что-то не правильно, или полностью не правильная команда, уже пол дня не могу понять как правильно сделать

Protey пишет

InfSub
Можешь еще раз помочь?
А то уже мозг взрывается, не могу понять как заставить загрузить фото при постинге в группе на сайте одноклассники :sick:

используй не локальную картинку а web-ссылку на картинку

InfSub пишет

web-ссылку на картинку

Понятно, т.е. как не крути с помощью макроса локальную картинку не загрузить, а если денвер использовать?
Ладно, пофигу, в социате все это применил, у них там есть запланированный постинг в одноклассники)

InfSub
А можно как-то заставить макрос, когда он сохраняет текст в txt или cvs файл, что бы он проставлял <BR> и <SP>?
А то мне кажется он какой-то ленивый стал, вроде такого раньше не было :)

И еще, есть стандартная, как пример js команда которая меняет по очередности TAG POS?

Protey пишет

InfSub
А можно как-то заставить макрос, когда он сохраняет текст в txt или cvs файл, что бы он проставлял <BR> и <SP>?
А то мне кажется он какой-то ленивый стал, вроде такого раньше не было :)

imacros сохраняет текстовые данные в файл в формате CSV (не важно какое расширение при этом у файла)
данный формат не подразумевает наличие тегов <SP> и <BR>, если они там нужны (хотя наличие <SP> там совершенно не нужно), то обрабатывай строку через eval() до того как сохраняешь ее в файл

Protey пишет

И еще, есть стандартная, как пример js команда которая меняет по очередности TAG POS?

есть стандартный {{!LOOP}} работающий без всякого js

У меня вопрос. Можно ли через JS сделать так:
Когда выскакивает капча, JS передаёт команду на выполнение другому маросу и этот макрос, его через антигейт разгадывает.
А когда не появляется капча, выполняет дальше свои действия без разгадывания капчи.

Алим пишет

У меня вопрос. Можно ли через JS сделать так:
Когда выскакивает капча, JS передаёт команду на выполнение другому маросу и этот макрос, его через антигейт разгадывает.
А когда не появляется капча, выполняет дальше свои действия без разгадывания капчи.

да, это возможно

InfSub пишет

eval()

А можешь пример показать, что бы хотя бы <BR> прописывалось?
Там надо рассчитывать сколько символов, сколько слов...?
К примеру мне надо сохранить текст:

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.

Тут две строки, надо что бы так в файл и сохранилось хотя бы с <BR>, а потом чтоб при размещении так и напечаталось

Protey пишет

К примеру мне надо сохранить текст:

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.

Тут две строки, надо что бы так в файл и сохранилось хотя бы с <BR>, а потом чтоб при размещении так и напечаталось

у тебя извлечение идет не 2я строками, при извлечении в переменной {{!EXTRACT}} уже одна строка, соответственно для начала тебе нужно изменить тип получаемых данных, а потом их обрабатывать с помощью eval()

InfSub пишет
Protey пишет

К примеру мне надо сохранить текст:

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.

Тут две строки, надо что бы так в файл и сохранилось хотя бы с <BR>, а потом чтоб при размещении так и напечаталось

у тебя извлечение идет не 2я строками, при извлечении в переменной {{!EXTRACT}} уже одна строка, соответственно для начала тебе нужно изменить тип получаемых данных, а потом их обрабатывать с помощью eval()

К чему сложности нагружать iMacros. мне кажеться что лучше по максимуму все делать в js.

spy686 пишет
InfSub пишет
Protey пишет

К примеру мне надо сохранить текст:

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.

Тут две строки, надо что бы так в файл и сохранилось хотя бы с <BR>, а потом чтоб при размещении так и напечаталось

у тебя извлечение идет не 2я строками, при извлечении в переменной {{!EXTRACT}} уже одна строка, соответственно для начала тебе нужно изменить тип получаемых данных, а потом их обрабатывать с помощью eval()

К чему сложности нагружать iMacros. мне кажеться что лучше по максимуму все делать в js.

в js пишут не все
тема посвящена не js
извлечь нужные данные не всегда можно одним лишь js
в данном случае, проще извлечь кусок html, и обработать его replace'ом с регуляркой

InfSub пишет
spy686 пишет
InfSub пишет

у тебя извлечение идет не 2я строками, при извлечении в переменной {{!EXTRACT}} уже одна строка, соответственно для начала тебе нужно изменить тип получаемых данных, а потом их обрабатывать с помощью eval()

К чему сложности нагружать iMacros. мне кажеться что лучше по максимуму все делать в js.

в js пишут не все
тема посвящена не js
извлечь нужные данные не всегда можно одним лишь js
в данном случае, проще извлечь кусок html, и обработать его replace'ом с регуляркой

Это походу будет выдираться со страницы по шаблону походу.

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.
spy686 пишет

Это походу будет выдираться со страницы по шаблону походу.

нет, там стандартный имакроскрипт, тупо выдирающий из группы вк.ком текст через EXTRACT=TXT
в результате переносы строк игнорируются

InfSub пишет

нужно изменить тип получаемых данных

:) так, ладно, это само собой понятно что с начала делается одно, а потом из полученного получаем уже готовое, только вот как именно это сделать, получить данные так что бы потом выдать так же как и получили?
Я по этому и попросил пример показать на тексте:

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.

или на посте в вк
http://vk.com/haha_tunchik?w=wall-17761489_17282

Protey пишет

скрытый текст

InfSub пишет

нужно изменить тип получаемых данных

:) так, ладно, это само собой понятно что с начала делается одно, а потом из полученного получаем уже готовое, только вот как именно это сделать, получить данные так что бы потом выдать так же как и получили?
Я по этому и попросил пример показать на тексте:

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.

или на посте в вк
http://vk.com/haha_tunchik?w=wall-17761489_17282

чтобы показать пример нужно чтобы данные были в виде:

ожидаемые данные

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?
- 58 рублей.


а твой код, содержащий строку EXTRACT=TXT извлекает их в виде:
реально полученные данные

Выделить код

Код:

- А какая надпись на пачке сигарет тебе показалась настолько страшной, что ты бросил курить?- 58 рублей.


... или хочешь сказать, что это не так?

Protey пишет

или на посте в вк
http://vk.com/haha_tunchik?w=wall-17761489_17282

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

InfSub пишет

... или хочешь сказать, что это не так?

нет, я ни хочу сказать что это не так, я как раз таки и говорю что у меня идет запись в txt  именно так, а хотелось бы что бы хотя бы с <BR> было, так как сам заметил что <SP> там не требуется.

InfSub пишет

т.к. это всего-лишь div находящийся выше других слоев

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

Речь о том что меня очень интересует как записать так что бы проставлялся <BR> там где нужно с новой строчке записанного в файл текста)

Protey пишет
InfSub пишет

... или хочешь сказать, что это не так?

нет, я ни хочу сказать что это не так, я как раз таки и говорю что у меня идет запись в txt  именно так, а хотелось бы что бы хотя бы с <BR> было, так как сам заметил что <SP> там не требуется.

я тебе уже писал, извлекай HTML-код и с помощью eval(replace()) удаляй лишние html-теги, кроме <br>

InfSub пишет

я тебе уже писал...

Ну так я и ответил, можешь в примере показать как это делается, если я знал как это сделать, не спрашивал бы? :)
Ладно, вижу тебе это не очень то хочется, понимаю, т.к. ты мне ни чем не обязан :)

Protey пишет
InfSub пишет

я тебе уже писал...

Ну так я и ответил, можешь в примере показать как это делается, если я знал как это сделать, не спрашивал бы? :)
Ладно, вижу тебе это не очень то хочется, понимаю, т.к. ты мне ни чем не обязан :)

приведи код который будет извлечен через {{!EXTRACT}}=HTM или сне за тебя всю работу сделать?)))

InfSub пишет

приведи код который будет извлечен через {{!EXTRACT}}=HTM

Привожу код

скрытый текст

Выделить код

Код:

VERSION BUILD=9052613
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=2 TYPE=DIV ATTR=TXT:#ХахА_ТунЧик<SP>#лол<SP>#прикол<SP>#анекдот<SP>#юморВ<SP>переполненном<SP>автобусе:Девушка:<SP>-<SP>Мол* EXTRACT=HTM
SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\test\\Documents\\iMacros\\Macros\\test FILE=test.txt


Получаю в файле txt вот такое
скрытый текст

Выделить код

Код:

"<div style=""outline: 1px solid blue;"" class=""wall_post_text""><a href=""/feed?section=search&amp;q=%23%D0%A5%D0%B0%D1%85%D0%90_%D0%A2%D1%83%D0%BD%D0%A7%D0%B8%D0%BA"">#ХахА_ТунЧик</a> <a href=""/feed?section=search&amp;q=%23%D0%BB%D0%BE%D0%BB"">#лол</a> <a href=""/feed?section=search&amp;q=%23%D0%BF%D1%80%D0%B8%D0%BA%D0%BE%D0%BB"">#прикол</a> <a href=""/feed?section=search&amp;q=%23%D0%B0%D0%BD%D0%B5%D0%BA%D0%B4%D0%BE%D1%82"">#анекдот</a> <a href=""/feed?section=search&amp;q=%23%D1%8E%D0%BC%D0%BE%D1%80"">#юмор</a><br>В переполненном автобусе:<br>Девушка: - Молодой человек, что вы об меня трётесь, вы что, меня хотите?<br>- Нет.<br>- Ну тогда отойдите, может другие хотят!</div>"


Как мне теперь избавиться от лишнего, т.е. от <div>...</div> и <a>...</a>?

Protey пишет

Как мне теперь избавиться от лишнего, т.е. от <div>...</div> и <a>...</a>?

в PM

Народ, подскажите, что не так

КОД

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
DS CMD=CLICK X=490 Y=593   
DS CMD=KEY CONTENT={BACKSPACE}#ХахА_ТунЧик<SP>#лол<SP>#прикол<SP>#анекдот<SP>#юмор


текст

Выделить код

Код:

#ХахА_ТунЧик #лол #прикол #анекдот #юмор
Французы говорят: "При хорошем настроении выпивают бутылку вина. При плохом - две".
Это какое настроение у меня вчера было...?


Надо удалить #ХахА_ТунЧик #лол #прикол #анекдот #юмор
Объясните, пожалуйста, как...., нужен ли SIZE и как его рассчитать, нужен ли DS CMD=CLICK и нужен ли DS CMD=KEY CONTENT=, не могу найти в гугле инфу как правильно сделать клик в определенном месте и использовать команду {BACKSPACE} что бы удалять символы :(

Protey пишет

Народ, подскажите, что не такКОДВыделить кодКод:VERSION BUILD=8810214 RECORDER=FX

скрытый текст
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
DS CMD=CLICK X=490 Y=593   
DS CMD=KEY CONTENT={BACKSPACE}#ХахА_ТунЧик<SP>#лол<SP>#прикол<SP>#анекдот<SP>#юмор
текстВыделить кодКод:#ХахА_ТунЧик #лол #прикол #анекдот #юмор
Французы говорят: "При хорошем настроении выпивают бутылку вина. При плохом - две".
Это какое настроение у меня вчера было...?
Надо удалить #ХахА_ТунЧик #лол #прикол #анекдот #юморОбъясните, пожалуйста, как...., нужен ли SIZE и как его рассчитать, нужен ли DS CMD=CLICK и нужен ли DS CMD=KEY CONTENT=, не могу найти в гугле инфу как правильно сделать клик в определенном месте и использовать команду {BACKSPACE} что бы удалять символы
                    Отредактировано Protey (Сегодня 05:18:49)

Всем спасибо хоть и не за что, разобрался сам с помощью EVENT (опции макроса)

Мне надо, чтобы через 1 перескакивал ссылку

скрытый текст
Зашёл на 1 ссылку
вернулся
зашёл на 3 ссылку
вернулся
зашёл на 5 ссылку

TAG POS={{!LOOP}} - не перескакивает, подряд идёт.

Я думаю здесь надо задействовать типа этого

SET !VAR1 0
ADD !VAR1 2

и потом так делаю

TAG POS={{!VAR1}}

но, что-то не работает.

Можно ли вообще так делать ?
TAG POS={{!VAR1}}

Алим примерно так

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*3 + 13);")
TAG POS={{!VAR1}} TYPE=A ATTR=........................:/* EXTRACT=href
TAB OPEN
TAB T=2
URL GOTO={{!EXTRACT}
TAB CLOSE
SET !EXTRACT NULL

marselkasml пишет

примерно так

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*3 + 13);")
TAG POS={{!VAR1}} TYPE=A ATTR=........................:/* EXTRACT=href
TAB OPEN
TAB T=2
URL GOTO={{!EXTRACT}
TAB CLOSE
SET !EXTRACT NULL

не то

Алим пишет

Можно ли вообще так делать ?

можно, но не так, вспоминаем математику

marselkasml пишет

примерно так

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*3 + 13);")
TAG POS={{!VAR1}} TYPE=A ATTR=........................:/* EXTRACT=href

вообще не в тему
уточню, инструмент верный, но пример - совершенно не в тему

30-03-2014 23:25:20
marselkasml, при цитировании большого текста, пожалуйста, прячьте его в спойлер

скрытый текст

Выделить код

Код:

SET !VAR1 0
ADD !VAR1 2


они не работают в цикле, смысла тогда нет их использовать.
С циклом работает {{!LOOP}} он запоминает.

Мне кажется здесь нужно как то связать {{!LOOP}} вместе с 

скрытый текст

Выделить код

Код:

SET !VAR1
ADD !VAR1

Алим пишет

здесь нужно как то связать {{!LOOP}} вместе с SET !VAR1

ты уже на половину ответил на свой вопрос, далее - вспоминаем математику

InfSub пишет

Алим пишет: здесь нужно как то связать {{!LOOP}} вместе с SET !VAR1ты уже на половину ответил на свой вопрос, далее - вспоминаем математику

:) нашёл решение через поиск, на англоязычном ресурсе.

Всем привет после обновления Mozilla на новую версию перестал работать imacros, код проходит как будто его нет, перед этим все работало.

скрытый текст

CMDLINE !DATASOURCE ?????.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO= https://www.?????/{{!COL1}}

Алим пишет
InfSub пишет

Алим пишет: здесь нужно как то связать {{!LOOP}} вместе с SET !VAR1ты уже на половину ответил на свой вопрос, далее - вспоминаем математику

:) нашёл решение через поиск, на англоязычном ресурсе.

решение проблемы - 1 строка кода, если не сложно отправь в личку, что нашел, интересно аналогичное ли решение или что-то иное

Artvirus пишет

Всем привет после обновления Mozilla на новую версию перестал работать imacros, код проходит как будто его нет, перед этим все работало.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE ?????.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO= https://www.?????/{{!COL1}}

С утра столкнулся с такой же проблемой. Оказалось, теперь, imacros не не читает файлы в кодировке UTF-8 без BOM. Смените кодировку на UTF-8, и сохраните. Макрос заработает.
Зато теперь появиться друга проблема:imacros сохраняет все в кодировке  UTF-8 без BOM, но как мы знаем, теперь он ее не читает. Если кто знает, как заставить его сохранять в  UTF-8, отпишитесь пожалуйста.

shadowrun пишет
Artvirus пишет

Всем привет после обновления Mozilla на новую версию перестал работать imacros, код проходит как будто его нет, перед этим все работало.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE ?????.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO= https://www.?????/{{!COL1}}

С утра столкнулся с такой же проблемой. Оказалось, теперь, imacros не не читает файлы в кодировке UTF-8 без BOM. Смените кодировку на UTF-8, и сохраните. Макрос заработает.
Зато теперь появиться друга проблема:imacros сохраняет все в кодировке  UTF-8 без BOM, но как мы знаем, теперь он ее не читает. Если кто знает, как заставить его сохранять в  UTF-8, отпишитесь пожалуйста.

аналогичный глюк был замечен вчера, при том не только с файлами из DATASOURCE но и с самими скриптами
сделайте откат на предыдущую версию

shadowrun пишет

Artvirus пишет:
Всем привет после обновления Mozilla на новую версию перестал работать imacros, код проходит как будто его нет, перед этим все работало.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE ?????.csv
SET !DATASOURCE_COLUMNS 1SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO= https://www.?????/{{!COL1}}


С утра столкнулся с такой же проблемой. Оказалось, теперь, imacros не не читает файлы в кодировке UTF-8 без BOM. Смените кодировку на UTF-8, и сохраните. Макрос заработает. Зато теперь появиться друга проблема:imacros сохраняет все в кодировке  UTF-8 без BOM, но как мы знаем, теперь он ее не читает. Если кто знает, как заставить его сохранять в  UTF-8, отпишитесь пожалуйста.

shadowrun спасибо за подсказку

Пока проблему решил изменением кодировки csv файла на UTF-8 без BOM, работает нормально, надо смотреть может еще что вылезет.

Привет народ, такая ситуация, при следующем екстракте HTM, да и не только, повторяется POS

скрытый текст

Выделить код

Код:

VERSION BUILD=9002379
VERSION BUILD=9002379
TAB T=1
TAG POS=1 TYPE=DIV ATTR=TXT:Парашютист<SP>рассказывает<SP>своей<SP>подруге:-<SP>Как-то<SP>в<SP>одном<SP>прыжке<SP>запутались<SP>у<SP>меня* EXTRACT=HTM


HTM получается вот таким

скрытый текст

Выделить код

Код:

<DIV class=section__content style=><A name=a8642></A>Парашютист рассказывает своей подруге:<BR>- Как-то в одном прыжке запутались у меня стропы.Помню только, что упал на какую-то крышу, проломил её и отключился. Потом открываю глаза, вокруг меня свет и подходят ко мне эти... белые, с крыльями за спиной.<BR>- Неужели ангелы?!<BR>- Да нет, бройлеры... </DIV>


Меняется только цифры в A name=a8642, 8643, 8644..., возможно кто-то по A name=a8642 зациклить?

Тут уже был пост по добавлению картинки в тему группы в одноклассниках,но я так и не поняла.
web ccылку на картинку вставить после этого же кода или новый создавать?
или ее в сам текст вставить,но тогда она будет высвечиваться как картинка с ссылкой,я не хочу так.Что делать? Можеть кто нибудь подкинет ссылку на полезную статью где можно изучить как картинку вставлять макросом?

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
SET !TIMEOUT 30
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:posting_form_text_field_labeled CONTENT=Создать<SP>новую<SP>тему
TAG POS=1 TYPE=TEXTAREA ATTR=ID:posting_form_text_field CONTENT=россия
TAG POS=1 TYPE=OBJECT FORM=ID:ACTION:upFr ATTR=NAME:ful_group_posting_form_btn.green CONTENT=http://vinokurovlife.ru/wp-content/uploads/2013/08/0222.jpg
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:ACTION:upFr ATTR=ID:*

Добрый день, подскажите пожалуйста, как сохранить данные буфера обмена в файл

marselkasml пишет

Тут уже был пост по добавлению картинки в тему группы в одноклассниках,но я так и не поняла.web ccылку на картинку вставить после этого же кода или новый создавать?

marselkasml В одноклассниках стоит защита на добавление картинки imacros, и потом стоит защита от спама после добавления 10-15 постов в группы акаунт заблокируют.

marselkasml пишет

Тут уже был пост по добавлению картинки в тему группы в одноклассниках,но я так и не поняла.
web ccылку на картинку вставить после этого же кода или новый создавать?
или ее в сам текст вставить,но тогда она будет высвечиваться как картинка с ссылкой,я не хочу так.Что делать? Можеть кто нибудь подкинет ссылку на полезную статью где можно изучить как картинку вставлять макросом?

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

31-03-2014 18:48:44

Artvirus пишет

В одноклассниках стоит защита на добавление картинки imacros

такой защиты не существует

marselkasml пишет

по добавлению картинки в тему группы в одноклассниках

сайтом социате воспользуйся

zon2004 пишет

как сохранить данные буфера

скрытый текст

Выделить код

Код:

SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\(имя пользователя)\\Documents\\iMacros\\Macros\\ FILE=буфер обмена.txt (или csv)
SAVEAS TYPE=EXTRACT FOLDER=* FILE=буфер обмена.txt (или csv) сохраняет в папку Downloads

zon2004 пишет

Добрый день, подскажите пожалуйста, как сохранить данные буфера обмена в файл

скрытый текст

Выделить код

Код:

SET !EXTRACT {{!CLIPBOARD}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=your_file.csv

InfSub пишет

имакрос в бесплатной версии

а что есть платный плагин для фокса?
прост не в курсе)

Protey пишет
InfSub пишет

имакрос в бесплатной версии

а что есть платный плагин для фокса?
прост не в курсе)

есть платная версия имакроса (имакрос-браузер) и есть бесплатный плагин для firefox, chrome и ie
имакрос-браузер - поддерживает работу с флеш, плагины - нет

спасибо большое всем кто откликнулся

Ребят проблема.
Вчера Imacros работал на ура. (воспроизводил макросы через управляющий js)
А сегодня воспроихводит 1 марос и все стоит как вкопанный.
Я не могу не остановить его.
Не на паузу нажать не закрыть.
В чем проблема может быть.

подскажите пожалуйста как перенести код в имакрос

скрытый текст

Выделить код

Код:

var text = custombuttonsUtils. gClipboard. read ();
var chkpoint="\n";
var arrayOfStrings = text.split(chkpoint);
pervyi_element=arrayOfStrings[0];
vtoroi_element=arrayOfStrings[1];
window.content.document.getElementById('a1').value=pervyi_element;
window.content.document.getElementById('10_1_3').value=vtoroi_element;

делаю так - ничего не выходит

Выделить код

Код:

var macro;
macro =  "CODE:";
macro +=  "var text = custombuttonsUtils. gClipboard. read ();" + "\n"; 
macro +=  "var chkpoint="\n";" + "\n"; 
macro +=  "var arrayOfStrings = text.split(chkpoint);" + "\n"; 
macro +=  "pervyi_element=arrayOfStrings[0];" + "\n"; 
macro +=  "vtoroi_element=arrayOfStrings[1];" + "\n"; 
macro +=  "window.content.document.getElementById('a1').value=pervyi_element;" + "\n"; 
macro +=  "window.content.document.getElementById('10_1_3').value=vtoroi_element;" + "\n"; 
iimPlay(macro)

zon2004 пишет

делаю так - ничего не выходит
macro +=  "var chkpoint="\n";" + "\n";

как минимум ошибка в этой строке

а как по другому можно описать переход к новой строке

zon2004 пишет

а как по другому можно описать переход к новой строке

только вчитался в сам код...
вы пытаетесь запихнуть js в js?

01-04-2014 14:55:00
соответственно предыдущий мой пост, скорее претензия к синтаксису без попытки вчитаться в приведенный код якобы имакроса

я пытался как то запустить код в макросе,

zon2004 пишет

я пытался как то запустить код в макросе,

в вашем посте - попытка вписать js-код в значение переменной на js
в общем - совершенно не понятно, что вы пытаетесь сделать...

у меня есть код для custom buttons

скрытый текст

Выделить код

Код:

var text = custombuttonsUtils. gClipboard. read ();
var chkpoint="\n";
var arrayOfStrings = text.split(chkpoint);
pervyi_element=arrayOfStrings[0];
vtoroi_element=arrayOfStrings[1];
window.content.document.getElementById('a1').value=pervyi_element;
window.content.document.getElementById('10_1_3').value=vtoroi_element;


но на нужном сайте код не работает, хотел перенести его в imacros. Суть скрипта, заполнить форму данными с буфера,
пытался делать
скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
FRAME NAME="flow"
SET !EXTRACT {{!CLIPBOARD}}
SAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=temp.csv
SET !DATASOURCE C:\\temp.csv
SET !DATASOURCE_LINE 1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:STOCK<SP>QTY-298958 ATTR=ID:10_1_2 CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:STOCK<SP>QTY-298958 ATTR=ID:10_1_3 CONTENT={{!COL1}}


но есть проблемы со вставкой, вставляет все в одну строчку
в буфер загоняются данные столбца екселя

zon2004 пишет

но на нужном сайте код не работает, хотел перенести его в imacros. Суть скрипта, заполнить форму данными с буфера,
пытался делать

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
FRAME NAME="flow"
SET !EXTRACT {{!CLIPBOARD}}
SAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=temp.csv
SET !DATASOURCE C:\\temp.csv
SET !DATASOURCE_LINE 1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:STOCK<SP>QTY-298958 ATTR=ID:10_1_2 CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:STOCK<SP>QTY-298958 ATTR=ID:10_1_3 CONTENT={{!COL1}}


но есть проблемы со вставкой, вставляет все в одну строчку
в буфер загоняются данные столбца екселя

1. не понятно - зачем использовать для этого буфер
2. для переноса строк, есть тег <br>, который можно внести в csv-файл

Надо данные именно буфера. данные меняются постоянно, их много и разные источники

Добрый день.
Прошу извинить меня если повторяюсь, но не нашел в данной ветке ответов на мои вопросы.
В браузере есть закрепленные вкладки - собственно с ними и нужно пошаманить, а именно зайти в первую закрепленную вкладку, авторизоваться, нажать на определенную ветку(например автомобиль), зайти на вторую вкладку... и так со всеми закрепленными вкладками. Потом объединить их , чтобы нажав на "воспроизведение" во всех сайтах открылась определенная ветка.
Пока получается лишь открыть новую вкладку и на ней авторизоваться, нажать на ветку.... Но это совсем не то.
Подскажите пожалуйста, буду очень вам благодарен

zon2004 пишет

Надо данные именно буфера. данные меняются постоянно, их много и разные источники

ясли я все верно понял, то решение - в пункте 2, моего предыдущего поста, иначе - опишите подробней, что требуется

01-04-2014 19:04:46
pswdufa
на сколько помню - имакрос не работает с меню браузера, в том числе и с закладками (могу ошибаться), соответственно все ссылки прописываются в скрипте и действия записываются в него же

InfSub пишет

на сколько помню - имакрос не работает с меню браузера, в том числе и с закладками (могу ошибаться), соответственно все ссылки прописываются в скрипте и действия записываются в него же

закладки и закрепленные вкладки - насколько я понимаю разные вещи, они не в меню, они тоже висят где и все вкладки
может все таки есть какой то способ, может другое расширение существует? не аймакрос

pswdufa пишет

закладки и закрепленные вкладки - насколько я понимаю разные вещи, они не в меню, они тоже висят где и все вкладки
может все таки есть какой то способ, может другое расширение существует? не аймакрос

в чем сложность внести их в имакрос, а не юзать из вкладок?

InfSub пишет

в чем сложность внести их в имакрос, а не юзать из вкладок?

это необходимо для удобства быстрого поиска информации, навигации, 10-15 одновременно открытых вкладок не удобно использовать, поэтому использую закрепленные вкладки.
есть какие нибудь идеи для закрепленных вкладок?

pswdufa пишет

это необходимо для удобства быстрого поиска информации, навигации, 10-15 одновременно открытых вкладок не удобно использовать, поэтому использую закрепленные вкладки.
есть какие нибудь идеи для закрепленных вкладок?

если я правильно понял, вы работаете всегда с определенными сайтами, тогда не понятен смысл попытки юзанья закладок (закрепленных вкладок) - через имакрос
при использовании одних и тех же сайтов, вы можете прописать их единожды в скрипте и описать действие, которое требуется сделать
открывать и закрывать вкладки имакрос умеет и сам, так что ему не нужны ваши закрепленные вкладки, они только вызовут путаницу и ошибки

01-04-2014 21:41:03
но в принципе - можно написать скрипт и на основе уже открытых вкладок, это скорее вопрос удобства, и расчета, чтобы не произошло сбоя из-за которого ваш скрипт вылетит с ошибкой или начнет обрабатывать не то что нужно

InfSub
скрипт - это конечно хорошо, но если я в этом не соображаю, куда мне ткнуться чтобы понять какой скрипт написать:/

pswdufa пишет

скрипт - это конечно хорошо, но если я в этом не соображаю, куда мне ткнуться чтобы понять какой скрипт написать:/

для начала более подробно описать, что требуется, а дальше уже вам подскажут в каком направлении двигаться

пример:
зашел на гугл, ввел текст "форум мозилла", нажал искать, в найденном перешел по первой ссылке....

Всем привет! Пытаюсь написать скрипт для Одноклассников, чтобы через определенный период времени менялся статус. Задачка по идее простая, но суть в том, что как бы я не пытался, текст не вставляется в поле для ввода Статуса.

Пишут так:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=http://odnoklassniki.ru/
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=ID:posting_form_text_field CONTENT=Status
WAIT SECONDS=60
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:gpf_4862436758.submit

denprox пишет

Всем привет! Пытаюсь написать скрипт для Одноклассников, чтобы через определенный период времени менялся статус. Задачка по идее простая, но суть в том, что как бы я не пытался, текст не вставляется в поле для ввода Статуса.

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#posting_form_text_field" CHARS="текст"
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:gpf_*.submit

InfSub пишет
denprox пишет

Всем привет! Пытаюсь написать скрипт для Одноклассников, чтобы через определенный период времени менялся статус. Задачка по идее простая, но суть в том, что как бы я не пытался, текст не вставляется в поле для ввода Статуса.

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#posting_form_text_field" CHARS="текст"
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:gpf_*.submit

Спасибо огромное!)) Подскажите, где можно почитать о возможностях iMacros? чтобы самому в следующий раз справиться )

denprox пишет

Спасибо огромное!)) Подскажите, где можно почитать о возможностях iMacros? чтобы самому в следующий раз справиться )

wiki.imacros.net
iopus.com
forum.mozilla-russia.org » Обсуждение расширений » iMacros
google.com

InfSub пишет
denprox пишет

Спасибо огромное!)) Подскажите, где можно почитать о возможностях iMacros? чтобы самому в следующий раз справиться )

wiki.imacros.net
iopus.com
forum.mozilla-russia.org » Обсуждение расширений » iMacros
google.com

Пришел сегодня бухой домой - ну как бухой! немного выпивший - и задумался , здесь люди задают такие вопросы, которые задевал когда-то я - может записать пару уроков которые дадут хоть какой то толчёк в развитии понимания imacros - да и на эти видео записи можно будет давать ссылки, чтоб не писать по 50 раз один и тот же  ответ.  Люди сталкиваются с такими проблемами как и я:
1 - Знание основ (так лазил по интернету и просто нашёл и решил написать супер скрипт за одни сутки)
2 - Отсутствие знаний терминологии (а х** его знает как оно называется пусть лошара на форуме мне напишет , а я ничего делать не буду, просто скопирую)
3 - Imacros- ну ща я напишу робота который мне заработает, а я ничего делать не буду
4 - я все понял , сильно вникать не буду, я же гений !
5 - ну и остольные проблемы скоторыми я сталкиваюсь.....

Сразу предупреждаю .... уроки  буду делать субъективные- не как учитель , а как человек который что-то понял и объясняет такому же Малопонимающему пользователю.

kolshix
идея не плохая, но от вопросов она не избавит, особенно от тех людей, кому лень нажать на кнопку поиск, тем не менее - я за уроки, может и я парочку накидаю, если будет желание, ну или хотя бы с конструктивной критикой помогу))

Доброе утро всем!
Нужна помощь, не могу сделать замену. Вот что показывает блокнот

"Вступить в сообщество 0.2 р         "
нужно получить
"Вступить в сообщество"

при попытке сделать так

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:join-link EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/сообщество(.*)/,\"\")")
SET !EXTRACT {{!VAR1}} 
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Proba.txt


выдаёт вот что

"Вступить в сообщество        "

-  Оказывается! через проверку непечатных знаков в конце слова 'сообщество' и кавычкой есть знак перехода на новую строке

скрытый текст
9100083041d6fdcabe551035d30c82c2.png

Интересно то,  что полная версия iopus выполняет extract без знака "переноса на новую строку" - проверил две версии макроса и на 881 и на 860 такой подвох

Вопрос : как удалит все после слова сообщество включая знак переноса?


короче ответ я не нашёл - пришлось через  HTM  и  replace делать - главное, что работает

Помогите, кто может/знает. Мучаюсь 4 дня и 3 ночи. Как прикрутить макрос к antigate.com. Поиск смотрел ничего не помогло.
Что пробовал:
1) Попробовал сделать denwer. Отправку капчи и получение ее ID я могу, далее пробую по ID получить само значение капчи, получаю, далее не знаю как извлечь его в макрос обратно и вставить в нужное место.
2) Попробовал запустить php скрипт тоже на denwer'e. (код скрипта взял с antigate.com). Засовываю скрипт в папку anti.local/www. В браузере вписываю http://anti.local/script.php ничего не происходит, просто белый экран.

Вопрос в следующем: 1) Как извлечь значение ID капчи в макрос, чтобы потом ввести его для запроса, затем получить само значение капчи и соответсвенно извлечь его. а затем вставить уже непосредственно в блок.
2)Что делать с php скриптом чтобы он заработал. http://apiexamples.antigate.com/curl.txt - php брал от сюда.

Uppermost пишет

Вопрос в следующем: 1) Как извлечь значение ID капчи в макрос, чтобы потом ввести его для запроса, затем получить само значение капчи и соответсвенно извлечь его. а затем вставить уже непосредственно в блок.
2)Что делать с php скриптом чтобы он заработал. http://apiexamples.antigate.com/curl.txt - php брал от сюда.

1. FAQ по антигейту - есть соответственно на сайте антигейта
2. Разбор php скриптов не относится к тематике данной ветви форума. И RTFM ни кто не отменял.

03-04-2014 14:57:15

kolshix пишет

Вопрос : как удалит все после слова сообщество включая знак переноса?

плохо искал:

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.trim()")

что то у меня с табами беда.

например такой js

скрытый текст

Выделить код

Код:

var s_n = "\n";
var code = "CODE:SET !ERRORIGNORE YES"+s_n;
code += "TAB open"+s_n;
code += "TAB T=2"+s_n;
var pl_code  = iimPlay(code);

var code = "CODE:SET !ERRORIGNORE YES"+s_n;
code += "TAB T=1"+s_n;
var pl_code  = iimPlay(code);


не возвращается на первый tab. Я понимаю что это из-за того что это два макроса получается. но как то может это решается?
кроме такого варианта:
скрытый текст

Выделить код

Код:

var s_n = "\n";
var code = "CODE:SET !ERRORIGNORE YES"+s_n;
code += "TAB open"+s_n;
code += "TAB T=2"+s_n;
// var pl_code  = iimPlay(code);

// var code = "CODE:SET !ERRORIGNORE YES"+s_n;
code += "TAB T=1"+s_n;
var pl_code  = iimPlay(code);


tab close тоже не подходит

spy686 пишет

не возвращается на первый tab. Я понимаю что это из-за того что это два макроса получается. но как то может это решается?
кроме такого варианта...

объединить в одном макросе, как описано во 2м варианте твоего кода, если не возможно - использовать переход к первому табу во всех отправляемых макросах, и соответственно, в последующих делать переход на нужную вкладку относительно 1й

ребят.. срочно нужна помощь
мозилла 28, имакрос 8.8.1

выдает ошибку при исполнении js скрипта

скрытый текст

Выделить код

Код:

var i
var j
var group 

for (i = 1; i <= 5; i++)
{
    iimSet("ROW_ID", i);
    iimSet("COLS_MAX", 1);
    ret = iimPlay("papka/install.iim");
    if (ret < 0) 
        break;
}


ошибка такая

NS_ERROR_UNEXPECTED: Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getCharPref], line 6 (Error code: -1001)

на 6 строке это - SET !DATASOURCE {{!FOLDER_DATASOURCE}}\papka\file.txt

как быть ?  ведь на мозилле 27.0.1 все работает
я бы использовал 27 версию, но при установке уж очень шустро происходит автоматическое обновление.
Заранее спасибо.

rados
отключить автообновление в настройках
ошибка может быть из-за кодировки файлов, в последней версии поддерживается только кодировка UTF-8, при этом UTF-8 (без BOM) - перестала поддерживаться, более точно, не видя файлов и не протестировав их, сказать сложно

InfSub пишет

в последней версии поддерживается только кодировка UTF-8

спасибо большое, помогло ) вот откуда можно было узнать, что на утф-8 поддержка перешла (

InfSub пишет

объединить в одном макросе, как описано во 2м варианте твоего кода, если не возможно - использовать переход к первому табу во всех отправляемых макросах, и соответственно, в последующих делать переход на нужную вкладку относительно 1й

Спасибо. Вспомнил, так и делал раньше. давно не писал.

rados пишет
InfSub пишет

в последней версии поддерживается только кодировка UTF-8

спасибо большое, помогло ) вот откуда можно было узнать, что на утф-8 поддержка перешла (

на офф. форуме или воспользовавшись поиском в данной теме, проблема уже обсуждалась недавно

InfSub Здравствуйте. Недавно Вы мне помогли с одним макросом:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=http://www.odnoklassniki.ru/
TAG POS=1 TYPE=DIV ATTR=ID:posting_form_text_field
WAIT SECONDS=1
EVENTS TYPE=KEYPRESS SELECTOR="#posting_form_text_field" CHARS="текст"
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:gpf_*.submit


макрос работает, но есть одна проблемка, работает только когда выделена вкладка Одноклассиков, т.е. нельзя ни переключиться в другое окно, ни свернуть вовсе браузер. Возможно ли как то ее решить ?

denprox пишет

InfSub Здравствуйте. Недавно Вы мне помогли с одним макросом:

скрытый текст

Выделить код

Код:

URL GOTO=http://www.odnoklassniki.ru/
EVENTS TYPE=KEYPRESS SELECTOR="#posting_form_text_field" CHARS="текст"
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:gpf_*.submit


макрос работает, но есть одна проблемка, работает только когда выделена вкладка Одноклассиков, т.е. нельзя ни переключиться в другое окно, ни свернуть вовсе браузер. Возможно ли как то ее решить ?

это может быть связано с последним обновлением, попробуйте более старую версию имакрос-плагина, так же может быть из-за самих одноклассников, из-за того как сделан сам сайт

04-04-2014 09:05:13
нет возможности сейчас тестировать самому, так что ответ пока что только такой, позже смогу сказать более точно, либо кто-то из участников форума подскажет

Я думаю это из за самих Одноклассников, поскольку в поле ввода для текста, по другому вбить текст не получается. Например ВК все более проще делается и без проблем.

Здравствутйе, есть такой пример кода

скрытый текст

Выделить код

Код:

SET !VAR1 {{!LOOP}}
ADD !VAR1 {{!LOOP}}
URL GOTO=https://www.google.ru/?gfe_rd=cr&ei=_YY-U8gcpL7AA8vggZAE
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:gbqf ATTR=ID:gbqfq CONTENT={{!LOOP}}


В результате мчетчик меняется на единицу как и хотел. А каким образом сделать чтоб число было трехзначное? 001 002 003 ...

Самое простое было поставить нули перед {{!LOOP}} но после 9 уже число четырехзначное получается.

Пробовал SET !LOOP 001 делать, ругается что число не integer

здравствуйте, подскажите, пожалуйста, каким образом испольовать ява-скрипт в макросе..

143456 пишет

здравствуйте, подскажите, пожалуйста, каким образом испольовать ява-скрипт в макросе..

1  - использовать браузер мазила
2  - Так делаю я - создаёте текстовый документ и меняете его расширение из .txt на .js
3  - используете вперемешку команд\ы отсюда http://wiki.imacros.net/Command_Reference  - в разделе - Scripting Interface Command Overview

P.s. - сразу ничего не получиться - поэкспериментируйте немного! Да и много проблем будет с явой, но терпение и труд все перетрут)


если вы имели ввиду команду для файла .iim то
http://wiki.imacros.net/EVAL

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("[javascript statements]")   или
SET !EXTRACT EVAL("[javascript statements]")   и тд.

Подскажите как указать макросу, чтобы сохранялась не вся страница, указанная в макросе, а часть текста страницы, начиная от определенного слова и заканчивая определенным словом, т.е. текст между указанными фразами.

Здравствуйте, подскажите, есть ли в imacros команда для 'поиска' (например текста) на странице ?

heisenberg пишет

Здравствуйте, подскажите, есть ли в imacros команда для 'поиска' (например текста) на странице ?

Я для поиска текста , ставлю imacros на запись , потом кликаю в нужное мне место с текстом , останавливаю запись , захожу в редактор и смотрю на записаную команду - и в команде оставляю нужное мне слово или словосочетание (не забыв при этом взять в звёздочки). Так я нахожу к примеру слово вкл или вкл или error .


Меня интересует вопрос , не написал ли кто нибудь код для antigate или rucaptcha  на основе js - а то через iim туговато выходит.?

Спасибо большое, интересное решение, но как сделать error условием выполнения скрипта, то есть если мы получили error, то скрипт выполняется дальше, а если не получили, то прекращает свою работу. Может есть какая то переменная наподобии if errorlevel=1 ?

heisenberg пишет

Спасибо большое, интересное решение, но как сделать error условием выполнения скрипта, то есть если мы получили error, то скрипт выполняется дальше, а если не получили, то прекращает свою работу. Может есть какая то переменная наподобии if errorlevel=1 ?

js файл

скрытый текст

Выделить код

Код:

if (iimPlayCode("TAG POS=........error")>=1){
alert ("нашли error")
}else{
alert ("все нормально error нет")
}


для отладки используй команды

скрытый текст

Выделить код

Код:

SET !SINGLESTEP YES

PAUSE

PROMPT {{}}

kolshix пишет

js файл

скрытый текст

Выделить код

Код:

if (iimPlayCode("TAG POS=........error")>=1){
alert ("нашли error")
}else{
alert ("все нормально error нет")
}


для отладки используй команды

скрытый текст

Выделить код

Код:

SET !SINGLESTEP YES

PAUSE

PROMPT {{}}

То что нужно, премного благодарен !

Здравствуйте!
Подскажите команду imacros для вставки картинки ВКОНТАКТЕ.

gorvitali пишет

Здравствуйте!
Подскажите команду imacros для вставки картинки ВКОНТАКТЕ.

почитай последних 10 страниц - в imacrose это реализовать геморойно!  лично я решения не видел, да и не видел чтоб кто то писал о нахождении решения данной задачи!

kolshix пишет

Меня интересует вопрос , не написал ли кто нибудь код для antigate или rucaptcha  на основе js - а то через iim туговато выходит.?

сегодня тоже задумался этим вопросом. И получилось)
Удалось все таки прикрутить проверку на капчу antigate.com к макросу через JS

Есть кто нибудь кто написал antigate скрипт на java и может им поделиться?

kolshix пишет

Есть кто нибудь кто написал antigate скрипт на java и может им поделиться?

Я реализовал это так:

скрытый текст

Выделить код

Код:

for(;;){
    for(;;){
        i=iimPlay("23.iim")   //Тут у меня Imacros Ставит Like VK
        if (i>0){                
           break            
       }
   
}
for(;;){
    
        i=iimPlay("ANTG.iim")   //  Сдесь запускается проверка на капчу, если она есть дальше макрос распознает ее (antigate)
        if (i<0){                
           break            
       }
   }



for(;;){
        i=iimPlay("#Current.iim")   //А тут после проверки на капчу идет уже звершающие действие. Закарыть вклдаку где ставился Like VK
        if (i>0){                
           break            
       }
   }
}

То что вы выше реализовали я уже давно использую .  Меня интересует код с отправкой img, потом запрос id капчи , через id проверка распознания капчи и через получения определённого ответа - перенос разгаданного текста. 


покажи код содержащийся в файле

Если это реализуется через раздел "Ввод тестовой капчи"  - то такой код я давно реализовал.

всем привет, подскажите пож-та, с недавних пор imacros стал вставлять статьи на сайт обрезано, около 80 символов, в чем может быть причина?
Статья сначала копируется в текстовый файл, потом макрос берет из ТХТ и вставляет на сайт, но с недавних пор длина строки ограничилась примерно 80 символами...

Здравствуйте.
подскажите, как решить небольшую задачу.
в html есть код:

скрытый текст

Выделить код

Код:

...
<div id="pager-top" class="pager" rel="4">
...


значение rel в данном случае: 4 - целое число, но на различных страницах сайта это значение может быть разным от 1 до 200.

в js-скрипте необходимо задать количество циклов выполнения макроса, равное значению именно этого атрибута rel, принадлежащему тэгу div с id равным значению pager-top.

отфильтровать по атрибуту rel не получается, т.к. кроме данного тэга div в html-коде есть и другие тэги div, имеющие свой атрибут rel
ну и такую запись EXTRACT=REL iMacros не понимает:

скрытый текст

Выделить код

Код:

TAG POS=* TYPE=DIV ATTR=REL:* ...


идеально было бы сделать так:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:pager-top EXTRACT=REL


но такой код не работает - EXTRACT не понимает, что такое REL.

сделал так:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:pager-top EXTRACT=HTM
PROMPT {{!EXTRACT}}


теперь в переменную EXTRACT сохранился весь код относящийся к этому тэгу div:
скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" id="pager-top" class="pager pager-top" rel="2"><ul class="pager-nav"><li class="current"><input style="display: inline-block; width: 28px; overflow: visible;" size="1" id="pager-value" value="1" rel="listing" type="text"></li></ul></div>


а как извлечь из этого кода число - значение этого атрибута rel ?
вроде бы просто, но не могу решить.
догадываюсь, что нужен DOM, но моих знаний javascript не хватает для этого.
подскажите, пожалуйста

скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" id="pager-top" class="pager pager-top" rel="2"><ul class="pager-nav"><li class="current"><input style="display: inline-block; width: 28px; overflow: visible;" size="1" id="pager-value" value="1" rel="listing" type="text"></li></ul></div>


а как извлечь из этого кода число - значение этого атрибута rel ?

есть в iim команда - можно и отдельно в js выполнить

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.raplace")

я плохо понимаю в замене по этому вам самому придётся поискать правила замены .
Выгладить будет что-то типа : удалить все до и включая    pager-top" rel=" а так же удалить все включая и после "><ul class=   в результате останется только число

вот туговатый пример , ещё раз напоминаю что с заменой у меня туго , и ищите правила замены в интернете

Выделить код

Код:

SET !VAR1 "маша работает, а петя спит"
SET !VAR2 EVAL("\"{{!VAR1}}\".replace(/(.*)работает,/,\"работает\").replace(/а петя (.*)/,\"петя \")")
Prompt {{!VAR2}}

Приветствую ! Кто ни будь подскажет, почему не получается убрать 6-ти секундный "tag waiting" в js таким способом - iimPlayCode ("SET !TIMEOUT_STEP 0") ?

heisenberg пишет

Приветствую ! Кто ни будь подскажет, почему не получается убрать 6-ти секундный "tag waiting" в js таким способом - iimPlayCode ("SET !TIMEOUT_STEP 0") ?

Я подскажу!

скрытый текст
каждая команда iimPlay("CODE:*******") или iimPlayCode("*******") или iimPlay("******.iim")   независимы друг от друга , в одной команде iimPlayCode указал настройку и как только  перешёл на другую iimPlayCode , все настройки сразу же сбиваются на стандартные\именно те при которых был запущен макрос (а именно скорость и задержка). Недавно тут на странице 60 задавали вопрос "О проблеме с табами"  - так вот он относится и к вашему вопросу, наглядный пример : если в js 2 макроса iim и в первом указано что работа идёт сначала на TAB T=1 и потом переходит на TAB T=2,  то после включения второго макроса iim вкладка TAB T=2 превращается в TAB T=1 и тем самым теперь чтоб вернуться на первую вкладку необходимо указать во втором макросе TAB T=0 (если указать во втором макросе iim TAB T=1 , то ничего не произойдёт)

Это особенно раздражает когда устанавливаешь прокси адрес и как только в js  переходит работа на другой iim файл, так сразу же настройки прокси пропадают, и их снова приходиться прописывать (а это много времени и работы)

Я знаю только 2 варианта решения того что вы хотите
1 создать отдельный файл iim с несколькими командами - одной из которых задержка

Выделить код

Код:

iimPlay("macros.iim")

2 чтоб не создавать отдельный файл iim - просто расписать его в js

Выделить код

Код:

var sample 
sample = "CODE:"+"\n";
sample  += "SET !TIMEOUT_STEP 0"+"\n";
sample  += "TAG POS=.........."+"\n";
iimPlay(sample);

Ну и 3-й вариант написать свою программу Imacros ))

Sborka пишет

ваш пример подходит, когда заранее известно значение подстроки в строке, тогда можем удалить всё лишнее до и после этой подстроки,
а в моей задаче заранее не известно, какая будет эта подстрока: у каждого нового URL-а значением атрибута rel будет "заранее не известное число от 0 до 200".

на php есть очень простое решение в два действия:
1) обрезаем строку от начала до подстроки rel=", включая и саму подстроку rel="
2) обрезаем оставшийся кусок, начиная с подстроки "> и до конца

Вы точь в точь описали мой пример. Не знаю почему он вам не понравился, я работаю на одном из сайтов и так же извлекаю код (там много белеберды) и у меня всё там работает. Насчёт того что число постоянно разное, это не имеет значения - так как код удаляет все что до числа и всё что после числа - остается одно число.  У меня в коде выше всё полностью описано , не знаю даже чем вам там непонятно\ не подходит?
этого кода вполне достаточно (немного подшаманьте и всё будет работать)

SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/(.*)rel=",/,\"\")

kolshix пишет

SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/(.*)rel=",/,\"\")

да, такой вариант подходит если немного подправить.
только здесь еще вот в чём проблема.
вот так работает:
SET !VAR1 "маша работает, а петя спит"
а так iMacros ругается об ошибке:
SET !VAR1 'маша работает, а петя спит'
то есть в iMacros (в отличии от JS и PHP) нельзя поместить строку в одинарные кавычки.
т.к. у меня внутри исходной строки уже есть двойные кавычки, то нужно предварительно их заменить на одинарные.
из этого: <div id="pager-top" class="pager pager-top" rel="2">
делаем это: <div id='pager-top' class='pager pager-top' rel='2'>
а потом уже присваиваем эту сроку переменной VAR1, то есть вот так должна выглядеть исходная строка после замены двойных кавычек на одинарные:
SET !VAR1 "<div id='pager-top' class='pager pager-top' rel='2'>"
и тогда уже обрезаем строку от начала до rel=' и от '> до конца,
поэтому, чтобы не сражаться с кавычками реализовать всё-таки лучше не в макросе через EVAL("..."), а в JS через .replace('...').
kolshix спасибо за помощь.

Здравствуйте, помогите пожалуйста с постингом в фейсбук, строка которая отправляет публикацию на стену перестала работать TAG POS=1 TYPE=SPAN ATTR=TXT:Опубликовать  Подскажите пожалуйста, как исправить данную ошибку, заранее спасибо.

Скачивал как то на одном сайте, полезную программку, которая переводит код imacros .iim в JavaScript
Вставляешь код imacros нажимаешь одну кнопку и к этому коду добавляет в конце строк "+"\n";

Кто знает такую программу, она мало весит.
Найти не могу.

Просто запаришься каждый раз вставлять "+"\n"; и т.п.  в конце и в начале строк.

Кто-нибудь сталкивался что макрос не отрабатывает команду с радиокнопками

скрытый текст

Выделить код

Код:

TAG POS=16 TYPE=INPUT:RADIO FORM=ACTION:https://direct.yandex.ru/registered/main.dO9yzTfFTConsWNN.pl ATTR=NAME:transfer-to-radio


Ошибка

RuntimeError: element INPUT specified by NAME:transfer-to-radio was not found, line 4 (Error code: -921)

Как нибудь лечится?

Всем привет. Я новенький. Кто нибудь подскажите: вставил текст со ссылкой в скрипт для фейсбука. Текст отображается нормально, а вот ссылка как то непонятно. Как правильно вставлять ссылку в iMacros?

кто нибудь может знает как возможно реализовать подобное Вконтакте, что бы ссылки появлялись не текстом, а превью.

скрытый текст
b3822c35b216.png

1.как убрать/спрятать плавающее окно при работе макроса?
2.как автоматически поставить на паузу если активна нужная вкладка?
3.как сделать, чтоб данная вкладка не активировалась при работе макроса, а работала в фоновом режиме.

или добится результата (эффект активности на конкретном сайте - надо на пару ссылок кликнуть) другим способом/расширением.

nikanuka

1.как убрать/спрятать плавающее окно при работе макроса?

такой возможности , вероятнее всего, нет, для удобства можно сместить кнопку в нижние (левый или правый) углы и плавающее окно не так будет мешать

2.как автоматически поставить на паузу если активна нужная вкладка?

писать скрипт на js где скрипт будет учитывать количество открытых вкладок , к примеру ищет T=1, потом Т=2, потом Т=3 и если нашёл Т=3 выполняет команды , а если к примеру не нашёл Т=2 то делает другие действия .  Про такие условия читай 60 страницу форума .

cod.iim
на автомате стопорят imacros сценарий

Выделить код

Код:

PAUSE 
или 
SET !SINGLESTEP YES

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

Если я правильно понял - Можно 2 окна браузера запустить и работать параллельно. Либо две версии портативной Мозилы запустить.  Либо после того как включилась ненужная вкладка вернутся на предыдущую.

огромное спасибо!
исчерпывающий ответ.
больше всего понравился совет про две версии мозилы - то что надо!
снимает все вопросы.

JohnGrace пишет

Всем доброго времени суток.  У меня вопрос такой:
Необходимо, чтоб Imacros переходил на некий url, который содержит в себе рандомный текст, например, http://site.zone/152???12, где символы ??? означают рандомные значения от 0 до 9. Очень прошу Вашей помощи, так как у самого не получилось никак реализовать рандом. :(

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*100 + 1); randomNumber;")
URL GOTO=http://site.zone/152{{!VAR1}}12
как насчет взаимопомощи ?:cool:

03-05-2014 00:43:14

hasgard пишет

кто нибудь может знает как возможно реализовать подобное Вконтакте, что бы ссылки появлялись не текстом, а превью.

пишешь www.youtube.com (обязательно с компьютерной версии),ждешь пока появится превью,удаляешь текст,нажимаешь "Отправить" :sick:

03-05-2014 00:45:23

vjapan пишет

всем привет, подскажите пож-та, с недавних пор imacros стал вставлять статьи на сайт обрезано, около 80 символов, в чем может быть причина?
Статья сначала копируется в текстовый файл, потом макрос берет из ТХТ и вставляет на сайт, но с недавних пор длина строки ограничилась примерно 80 символами...

как скопировать статью в файл,расскажи пожалуйста!:o очень нужно)

madzal пишет

как скопировать статью в файл,расскажи пожалуйста!:o очень нужно)

Поиск по форуму по командам saveas и extract

вот я почти дописал код

скрытый текст

Выделить код

Код:

URL GOTO=http://serva4ok.ru/index.php?do=register
SET !ERRORIGNORE YES
SET !TIMEOUT 15
SET !ERRORCONTINUE YES
SET !REPLAYSPEED FAST
SET !TIMEOUT_PAGE 10
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:registration ATTR=*
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*4034421 + 2213295); randomNumber;")
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registration ATTR=ID:name CONTENT={{!VAR1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:registration ATTR=NAME:password1 CONTENT={{!VAR1}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:registration ATTR=NAME:password2 CONTENT={{!VAR1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registration ATTR=NAME:email CONTENT={{!VAR1}}@ya.ru
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=image.jpg WAIT=NO
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:http://www.serva4ok.ru/engine/modules/antibot.php CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/panel.php
WAIT SECONDS=1
URL GOTO=http://antigate.com/panel.php?action=ocr
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:<SP>загрузка<SP>тестовой<SP>капчи<SP>&&CLASS:wButton
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:panel.php ATTR=TYPE:file&&NAME:testfile&&SIZE:40 CONTENT=C:\CAPCH\image.jpg
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:загрузить&&CLASS:wButton
WAIT SECONDS=15
URL GOTO=http://antigate.com/panel.php?action=ocr
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:panel.php ATTR=TYPE:text&&SIZE:5&&VALUE:10&&NAME:maxpage CONTENT=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:<SP>показать<SP>&&CLASS:wButton
TAG POS=1 TYPE=B ATTR=* EXTRACT=TXT
TAB T=1
TAB CLOSEALLOTHERS
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registration ATTR=NAME:sec_code CONTENT={{!EXTRACT}}
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:registration ATTR=NAME:recaptcha_response_field
WAIT SECONDS=0.25
URL GOTO=http://www.organizeit.ru/cab/main.php?action=notes
TAG POS=1 TYPE=TEXTAREA FORM=ID:addform ATTR=ID:note_text CONTENT=[RED]login:{{!VAR1}}<BR>[GREEN]password:{{!VAR1}}
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:addform ATTR=ID:FormSubmit


здесь он записывает в сайт-блокнот (organizeit) логин и пароль
я могу сделать чтобы создавался txt файл с именем "логина" ?

Это автореггер для serva4ok с поддержкой antigate (нужно быть авторизованным на antigate и на organizeit ,а я хочу чтобы не нужно было вмешательство в этот organizeit)
это можно реализовать ?

madzal пишет

вот я почти дописал код

код помещаем в теги CODE
большие куски кода прячем в спойлер

madzal пишет

я могу сделать чтобы создавался txt файл с именем "логина" ?
это можно реализовать ?

да можете, указав при сохранении файла в его имени логин

03-05-2014 01:13:38

Выделить код

Код:

SET !VAR1 user_login
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.txt
InfSub пишет
madzal пишет

вот я почти дописал код

код помещаем в теги CODE
большие куски кода прячем в спойлер

madzal пишет

я могу сделать чтобы создавался txt файл с именем "логина" ?
это можно реализовать ?

да можете, указав при сохранении файла в его имени логин

03-05-2014 01:13:38

Выделить код

Код:

SET !VAR1 user_login
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.txt

а почему оно переносится с ковычками "" ? я просто еще кое что дописал,ну чтобы еще когда открываешь файл писало login or password : {{!VAR1}}
а он с ковычками пишет "login or password : {{!VAR1}}"

madzal пишет

а почему оно переносится с ковычками "" ? я просто еще кое что дописал,ну чтобы еще когда открываешь файл писало login or password : {{!VAR1}}
а он с ковычками пишет "login or password : {{!VAR1}}"

imacros записывает данные в файл в формате csv (вне зависимости от расширения файла) - соответственно, данные одной ячейки обрамляются кавычками и отделяются от другой ячейки запятой...

Сбылась мечта * , моя мечта!)) искал долго и нудно, чувствовал задним местом, что где-то рядом ползаю.
Теперь по делу: imacros при смене прокси и завершении сценария в javascript, возвращается к настройкам которые были до смены прокси, а хотелось бы в нужный момент 1 раз включить прокси и чтоб оно к примеру работало до конца 3-го сценария, либо до нового переключения ! и вот на тебе :

немного оффтопа о прокси на js
iim

Выделить код

Код:

URL GOTO=about:config

JS ---- главное оставить верхнюю строчку и строчку включения прокси и удалить ненужные ниже (зависит от вида прокси) и установить нужные числа

Выделить код

Код:

var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);

// manual proxy configuration
prefs.setIntPref("network.proxy.type", 1);

// use the proxy server for all protocols
prefs.setBoolPref("network.proxy.share_proxy_settings", true);

// HTTP Proxy
prefs.setCharPref("network.proxy.http", ip);
prefs.setIntPref("network.proxy.http_port", port);

// SOCKS Host
prefs.setCharPref("network.proxy.socks", ip);
prefs.setIntPref("network.proxy.socks_port", port);

// SSL Proxy
prefs.setCharPref("network.proxy.ssl", ip);
prefs.setIntPref("network.proxy.ssl_port", port);

Пример  --------   обратите внимание что адрес  37.115.181.144 взят в одинарные кавычки  '

Выделить код

Код:

iimPlayCode("URL GOTO=about:config");
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
// SOCKS Host
prefs.setCharPref("network.proxy.socks", '37.115.181.144');
prefs.setIntPref("network.proxy.socks_port", 1080);


:) :) :) :)

okkamas_knife пишет

kolshix
а теперь загляни в ФАКе в тему про настройки about:config и смотри не захлебнись слюнями от количества возможностей по изменению параметров фф аналогичным способом:P:D
(маленький хинт - если картинки макросу не нужны их можно выключить перед отработкой а потом включить - страничка без них быстрее загрузится)

и совет - с настройками всегда делай так

а потом уже меняешь как тебе надо и в конце восстанавливаешь.
тогда не будет косяков типа если у тебя уже стоял один прокси текущим ты в скрипте его поменял и потом восстановил на Без прокси.

Вы что меня совсем за глупого пользователя держите!?  Я сразу понял что по аналогии можно работать с другими настройками.
насчёт картинок я сделал намного удобнее чем вы предложили!  картинки у меня отключены , но при проверке работы imacros их иногда нужно включить не останавливая и не меняя скрипт  --- есть дополнение которое устанавливает кнопки, дак я просто установил себе кнопку на панели и не морочу голову (когда надо то включу изображения, когда надо выключу.. Никак мини урок не запишу под названием "с чего начать"
53ba7a15136406c5aad0166509478017.png

считал настройку запомнил

У меня отдельный Data file  -  в котором под каждый сценарий установлена своя настройка и запоминать ничего не нужно !  Сейчас отдельная проблема - мазила не хочет выдавать окно где нужно вбить логин и пароль платного Proxy  и никак я это победить не могу! :(

Можно ли с помощью макроса извлекать определенную часть с ссылок которые находятся на сайте?

marselkasml пишет

Можно ли с помощью макроса извлекать определенную часть с ссылок которые находятся на сайте?

80 % ссылок имеют закономерное повторение в адресе -для того чтоб получить нужную часть  извлеките ссылку и отредактируйте её с помощью .raplace --- читать последние страницы форума.

hasgard пишет: кто нибудь может знает как возможно реализовать подобное Вконтакте, что бы ссылки появлялись не текстом, а превью

скрытый текст
b3822c35b216.png

пишешь www.youtube.com (обязательно с компьютерной версии),ждешь пока появится превью,удаляешь текст,нажимаешь "Отправить"

скрипт записывает только ссылку, превью не появляется.

Еще вопрос как можно прописать в скрипте прокрутку страницы.

hasgard пишет

Еще вопрос как можно прописать в скрипте прокрутку страницы.

скрытый текст

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,400)

Ребята никак не могу настроить рассылку комментариев на сайте YouTube.com :/ Кто-нибудь использовал iMacros для комментов под видео в Ютубе???

Vladimir Ageshin пишет

Ребята никак не могу настроить рассылку комментариев на сайте YouTube.com :/ Кто-нибудь использовал iMacros для комментов под видео в Ютубе???

дай несколько акков для работы,потом код отпишу,а то аккаунтов нету

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !DATASOURCE_DELIMITER " "
SET !DATASOURCE C:\users.csv
SET !DATASOURCE_COLUMNS 53207
SET !LOOP 1
FILTER TYPE=IMAGES STATUS=ON 
VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=
TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:recoverform ATTR=ID:email CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:recoverform ATTR=NAME:reset


Подскажите как сделать чтобы при нахождение текста на странице, содержание {{!COL1}} записывалось в файл на жесткий диск

papsuy пишет

Подскажите как сделать чтобы при нахождение текста на странице, содержание {{!COL1}} записывалось в файл на жесткий диск

почитать 3-5 последних страниц темы, как минимум

kolshix пишет

Код:URL GOTO=javascript:window.scrollBy(0,400)

спасибо :) а параметр 0,400 за что отвечает?

InfSub пишет
papsuy пишет

Подскажите как сделать чтобы при нахождение текста на странице, содержание {{!COL1}} записывалось в файл на жесткий диск

почитать 3-5 последних страниц темы, как минимум

Ну я пока новичок,почитав понял что нужно испоользовать SAVEAS !EXTRACT,но с условием не могу понять как сделать.Помогите

hasgard пишет

спасибо :) а параметр 0,400 за что отвечает?

Это наверно один из самых сложных вопросов которые я встречал ))) Вы когда узнаёте о работе какой-то команды, не бойтесь поиграть с числами, все человечество добивается результатов методом проб и ошибок, и я не исключение, бывает по 2 часа не могу подобрать нужные цифры. Если почитать историю моих сообщений, то поймете, сколько я тут бочинил))
отвечает за длину прокрутки вперед , а так назад:

скрытый текст

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,-400)


papsuy пишет

Ну я пока новичок,почитав понял что нужно использовать SAVEAS !EXTRACT,но с условием не могу понять как сделать.Помогите

ответ
1 для этого необходимо использовать в работе javascript
2 читай № 1493
3 необходимо использовать обмен информацией между js и iim либо использовать способ описанный в сообщении 1491

выглядит так : если я макрос нашёл нужное слово тогда сохраняю текст в файл, если не нашёл, то занимаюсь другим делом.

И да, забыл сказать команды читай тут  http://wiki.imacros.net/Command_Reference

Привет, Всех с наступающим праздником!
Подскажите как правильно сделать csv чтобы считывались колонки {{!COL1}}, {{!COL2}}, {{!COL3}}, а то у меня считывает все в одну строку.
Заранее спасибо!!

Artvirus пишет

Привет, Всех с наступающим праздником!
Подскажите как правильно сделать csv чтобы считывались колонки {{!COL1}}, {{!COL2}}, {{!COL3}}, а то у меня считывает все в одну строку.
Заранее спасибо!!

"один","два","три"

kolshix  Спасибо, я уже разобрался, при сохранении, разделитель поставило ; вот была собака.

Иногда требуется на сайте начать со второй ссылки, для этого используется код

скрытый текст

Выделить код

Код:

SET !LOOP 2
TAG POS={{!LOOP}}


но также в этом же коде использую второй такой же код

скрытый текст

Выделить код

Код:

SET !LOOP 5
TAG POS={{!LOOP}}


для того, чтобы к примеру начинать брать из текстового файла
текст с пятой строки

Но при использовании 2х таких кодов, они сбивают друг друга.
Можно, как нибудь отдельно их сделать, чтобы каждый работал не сбивая друг друга со счёта?

Или это можно сделать только используя скрипт?

Видел на фото использовали команду CLEAR
но не рискнул.
Читал про него, думаю, что-то лишнее удалит.

Здравствуйте,может кто сможет подсказать,как сделать чтобы imacros нашел нужный текст например "Петя" а когда он нашел этот текст срабатывала пауза или полностью останавливался
Либо нужную кнопку например "отправить"но не нужно чтобы он её нажимал,нужно чтобы просто остановился если найдет её

Nazhul пишет

Здравствуйте,может кто сможет подсказать,как сделать чтобы imacros нашел нужный текст например "Петя" а когда он нашел этот текст срабатывала пауза или полностью останавливался
Либо нужную кнопку например "отправить"но не нужно чтобы он её нажимал,нужно чтобы просто остановился если найдет её

вот полностью дан ответ на ваш вопрос


https://forum.mozilla-russia.org/viewto … 96#p647796

https://forum.mozilla-russia.org/viewto … 02#p647802

Народ, подскажите пожалуйста.... как в imacros сделать проверку наличия на экране определенного элемента или текста... если элемент или текст был найден, то выполнить одни действия, а если нет, то другие... Желательно если можно с примерами кода... Сразу говорю что я начинающий, в этом деле, сильно не пинайте... )))

SIGH пишет

Народ, подскажите пожалуйста.... как в imacros сделать проверку наличия на экране определенного элемента или текста... если элемент или текст был найден, то выполнить одни действия, а если нет, то другие... Желательно если можно с примерами кода... Сразу говорю что я начинающий, в этом деле, сильно не пинайте... )))

как минимум не задавать в 100 раз один и тот же вопрос, а прочесть хотя бы последнюю страницу форума...

10-05-2014 14:20:14
а если быть точным, то пару постов перед Вашим же не уже ли так сложно было прочесть?!

Есть ли в imacros команда перезагрузки браузера? Или это действие в принципе недоступно?

proekt-gaz пишет

Есть ли в imacros команда перезагрузки браузера? Или это действие в принципе недоступно?

имакрос плагин к браузеру, а не внешнее приложение, так что - нет такой опции, да и зачем?

Мне нужно с помощью имакроса нажать на кнопку находящуюся на панели мозилы.

proekt-gaz пишет

Мне нужно с помощью имакроса нажать на кнопку находящуюся на панели мозилы.

невозможно

Пытаюсь использовать следующий скрипт (ниже) для размещения текста и фото в группах в Фейсбуке.

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
'скрипт нужно запускать со страницы facebook.com/groups на средней скорости
SET !VAR1 EVAL("var content='Мой текст'; content;")
SET !VAR2 EVAL("var random=Math.floor(Math.random()*4 + 1); random;")
SET !VAR3 EVAL("var random=Math.floor(Math.random()*2 + 1); random;")
SET !VAR4 EVAL("var random=Math.floor(Math.random()*6 + 1); random;")
SET !VAR5 EVAL("var random=Math.floor(Math.random()*5 + 1); random;")
SET !VAR6 EVAL("var random=Math.floor(Math.random()*7 + 1); random;")
SET !VAR7 EVAL("var random=Math.floor(Math.random()*3 + 1); random;")
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/groups/*
WAIT SECONDS={{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message
WAIT SECONDS={{!VAR3}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}}
TAG POS=1 TYPE=INPUT ATTR=NAME:composer_unpublished_photo
WAIT SECONDS={{!VAR6}}
TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:u* ATTR=class:ifloat
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=INPUT:FILE FORM=ID:u* ATTR=ID:j* CONTENT=C:\Users\Администратор\Documents\iMacros\Datasources\picture1.jpg
WAIT SECONDS=15
TAG POS=1 TYPE=BUTTON FORM=ID:* ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR5}}
BACK


Проблема в том, что тэг "Опубликовать" не срабатывает, сразу переходит к WAIT и BACK
Что я делаю не так, подскажите пожалуйста?

vestnikra пишет

Пытаюсь использовать следующий скрипт (ниже) для размещения текста и фото в группах в Фейсбуке.

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
'скрипт нужно запускать со страницы facebook.com/groups на средней скорости
SET !VAR1 EVAL("var content='Мой текст'; content;")
SET !VAR2 EVAL("var random=Math.floor(Math.random()*4 + 1); random;")
SET !VAR3 EVAL("var random=Math.floor(Math.random()*2 + 1); random;")
SET !VAR4 EVAL("var random=Math.floor(Math.random()*6 + 1); random;")
SET !VAR5 EVAL("var random=Math.floor(Math.random()*5 + 1); random;")
SET !VAR6 EVAL("var random=Math.floor(Math.random()*7 + 1); random;")
SET !VAR7 EVAL("var random=Math.floor(Math.random()*3 + 1); random;")
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/groups/*
WAIT SECONDS={{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message
WAIT SECONDS={{!VAR3}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}}
TAG POS=1 TYPE=INPUT ATTR=NAME:composer_unpublished_photo
WAIT SECONDS={{!VAR6}}
TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:u* ATTR=class:ifloat
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=INPUT:FILE FORM=ID:u* ATTR=ID:j* CONTENT=C:\Users\Администратор\Documents\iMacros\Datasources\picture1.jpg
WAIT SECONDS=15
TAG POS=1 TYPE=BUTTON FORM=ID:* ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR5}}
BACK


Проблема в том, что тэг "Опубликовать" не срабатывает, сразу переходит к WAIT и BACK
Что я делаю не так, подскажите пожалуйста?

сколько раз говорить, код помещаем в теги код, а при большом объеме, еще и в спойлер!!!
запишите самостоятельно нажатие на кнопку "Опубликовать" и замените получившемся кодом строку:

Выделить код

Код:

TAG POS=1 TYPE=BUTTON FORM=ID:* ATTR=TXT:Опубликовать

Прошу прощения, если нарушил правила форума. Сегодня первый день, когда я начал заниматься iMacros

Вот код который я написал -

TAG POS=1 TYPE=SPAN ATTR=TXT:Опубликовать

Однако он все равно не работает.

InfSub, спасибо за ответы! А как можно кликнуть рандомную (внутреннюю) ссылку на вкладке? То есть организовать переход по внутренним ссылкам на одном сайте?

vestnikra пишет

Прошу прощения, если нарушил правила форума. Сегодня первый день, когда я начал заниматься iMacros

Вот код который я написал -

TAG POS=1 TYPE=SPAN ATTR=TXT:Опубликовать

Однако он все равно не работает.

экспериментируйте, не всегда решение лежит на поверхности..
ну а про вашу запись могу сказать что она ошибочна в корне, span  - не является кнопкой - учите мат. часть по html'у

InfSub пишет

экспериментируйте, не всегда решение лежит на поверхности..
ну а про вашу запись могу сказать что она ошибочна в корне, span  - не является кнопкой - учите мат. часть по html'у

Спасибо за совет. Поэкспериментировал.
Ну вот эта строка написана по всем правилам:

TAG POS=1 TYPE=BUTTON FORM=ID:u* ATTR=TXT:Опубликовать

И по прежнему  - не работает.
Пытался вместо Опубликовать ставить Post - тогда вообще выдает надпись на английском, что форма пустая и надо бы ее заполнить...

vestnikra пишет

Ну вот эта строка написана по всем правилам:

TAG POS=1 TYPE=BUTTON FORM=ID:u* ATTR=TXT:Опубликовать

И по прежнему  - не работает.
Пытался вместо Опубликовать ставить Post - тогда вообще выдает надпись на английском, что форма пустая и надо бы ее заполнить...

причин может быть много, от того что: срабатывает но не нам, до вообще не находит где срабатывать... а с учетом современных технологий (ajax, html5)  может и просто криво срабатывать... так что тут только экспериментировать, как с самими элементами строки, так и с имакросом...

Заметил баг, у меня начиная с 28 версии firefox не работает imacros в плане не получается работать с файлом, не открывает csv файлы никакой кодировки. Только у меня такая проблема? Как с ней бороться?

InfSub - обращаюсь к вам, реально ли написать на js скрипт для разгадки капчи на imacros ?
вот есть пример, но как его подогнать под imacros? может вы разберётесь?
https://code.google.com/p/java-antigate/

Зашёл только что на antigate и оболдел, !!! сбылась мечта дурака))  вот вам антигейт под imacros -- специальный раздел      http://antigate.com/imacros.html  .  там даже есть на сайте готовый код !

Теперь буду долбить админов рукапчи пусть тоже такой создадут, а то хвастаются, что у них всё как на антигейте!

kolshix пишет

InfSub - обращаюсь к вам, реально ли написать на js скрипт для разгадки капчи на imacros ?
вот есть пример, но как его подогнать под imacros? может вы разберётесь?
https://code.google.com/p/java-antigate/

по-моему, вы не понимаете разницы между java и java-script, это 2 разных языка, хотя в чем-то и похожих
реализовать на js, да - реально и для этого совершенно не обязательно строить код по аналогии с приведенным в ссылке

Повторю свой вопрос, а то он видимо затерялся...

proekt-gaz пишет

А как можно кликнуть рандомную (внутреннюю) ссылку на вкладке? То есть организовать переход по внутренним ссылкам на одном сайте?

proekt-gaz пишет

Повторю свой вопрос, а то он видимо затерялся...

proekt-gaz пишет

А как можно кликнуть рандомную (внутреннюю) ссылку на вкладке? То есть организовать переход по внутренним ссылкам на одном сайте?

скрытый текст

Выделить код

Код:

' !VAR1 - ссылок на странице (максимум)
SET !VAR1 15
' !VAR2 - номер рандомной ссылки
SET !VAR2 EVAL("Math.floor(Math.random()*{{!VAR1}} + 1);")

POS={{!VAR2}} TYPE=A ......


12-05-2014 09:36:48

Warped пишет

Заметил баг, у меня начиная с 28 версии firefox не работает imacros в плане не получается работать с файлом, не открывает csv файлы никакой кодировки. Только у меня такая проблема? Как с ней бороться?

об этом баге писалось еще страницы 3 назад, кодировка файлов должна быть в UTF-8, ранее поддерживалась еще UTF-8 (без BOM), сейчас только UTF-8

12-05-2014 09:37:56

Sborka пишет

Как заставить iMacros + JavaScript найти в таком изображении координаты X и Y красного круга относительно левого верхнего угла данного изображения?

использовать платную версию (iMacros браузер)

Ребята очень нужна помощь...
Почти всё прочитал, бьюсь неделю, нужна помощь....
Задача:
На экране найти ресурс (их много одинаковых), найти по чём его можно купить (цены разные), сравнить и потом нажать кнопку - Купить.
Как делал:
1) Запрос на поиск и обработку выполняю из под JS:
- создаю массив *.iim
- из под JS запускается iMacros:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
   TAB T=1
   SET !ERRORIGNORE YES
   FRAME NAME="main_top"
   TAG POS=1 TYPE=IMG ATTR=WIDTH:60&&HEIGHT:60&&SRC:http://resources/424.gif  (поиск предложения по картинке )
   TAG POS=R-1 TYPE=B ATTR=* EXTRACT=TXT (извлечение цены в буфер)


-в JS цена сравнивается с нужной:
скрытый текст

Выделить код

Код:

m = iimGetLastExtract()

   if (m >= cen[i]) {
   /* покупаем
  alert('Больше 3000!'); 
} else {
  /* не покупаем
   alert('меньше 3000!')


Проблема,
при правильном условии Купить.....не могу поймать именно ту кнопку КУПИТЬ и  именно этого предложения.
(кнопок Купить много.......нужное предложение может быть в любом месте экрана...)
что сделать?
нашёл картинку, нашёл цену - и тут нужно привязаться к координатам Х и У ???
Или
(Если сделать дабл-клин на цене - то переход на кнопку купить можно сделать нажав TAB и ENTER )
Как сделать или iMacros или JS ?
Спасибо!

Новенький2014 пишет

Ребята очень нужна помощь...
Почти всё прочитал, бьюсь неделю, нужна помощь....
Задача:
На экране найти ресурс (их много одинаковых), найти по чём его можно купить (цены разные), сравнить и потом нажать кнопку - Купить.
Как сделать или iMacros или JS ?

как я понимаю - речь об игре...
описанные вами методы в имакрос не применимы в автоматическом режиме, только если вы сами укажете координаты или сделаете даблклик
нужно смотреть код страницы, по-любому какая-то привязка должна быть между ценой и кнопкой

InfSub пишет

java и java-script, это 2 разных языка

Хорошо что вы подсказали, а для меня ранее в гугле всё под одно и тоже шло - и я читал всё подряд. Теперь будет немного легче.

Идей никто не подкинет?

Новенький2014 пишет

Идей никто не подкинет?

по-моему я ясно написал выше, что требуется от вас, чтобы вам "подкинули идеи"

InfSub пишет

нужно смотреть код страницы

12-05-2014 22:31:41
если конкретней, то все экстрасенсы в отпуске, так что: ссылку на страницу в спойлер или в личку, если требуется авторизация, данные акка в личку

Ребята. не сочтите за труд....помогите с написанием.
Из макроса вытягиваю 3 переменные:

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=FONT ATTR=CLASS:weaponch EXTRACT=TXT
TAG POS=3 TYPE=FONT ATTR=CLASS:weaponch EXTRACT=TXT
TAG POS=13 TYPE=B ATTR=* EXTRACT=TXT


В JS присваиваю переменным, для последующего сравнения
скрытый текст

Выделить код

Код:

ресурс1 = iimGetLastExtract(1);
 ресурс2 = iimGetLastExtract(2);
 цена = iimGetLastExtract(3);
      alert( ресурс1 );
      alert( ресурс2 );
      alert( цена );


Ресурс1 - вытягивается как СтеклоНужно:2Есть:3  -> нужно только название Стекло
Ресурс2 - вытягивается как МедьНужно:2:Есть:0 - > нужно только название ресурса
Цена - нормально выводится.

Что и куда написать, чтобы удалить всё, начиная с Н и вправо
Спасибо!

P.S. Видел на форуме, но не мойму как сделать(((

Новенький2014 пишет

СтеклоНужно:2Есть:3  -> нужно только название
Что и куда написать, чтобы удалить всё, начиная с Н и вправо

скрытый текст

Выделить код

Код:

ресурс1 = iimGetLastExtract(1);
ресурс1 = ресурс1.toString().replace(/Нужно(.*)/,'');

Sborka
Брат, от души - Поклон!!!!!!!
Спасибо!
около 20 видов скриптов на разных движках....это то что сейчас, надеюсь сработает!

Sborka
я не делал такой запрос...

Sborka пишет

вы с кодировкой csv-файлов разобрались?

а в чем проблема с кодировкой? любой нормальный текстовый редактор позволяет выставить кодировку файла... да и стандартный блокнот это в принципе умеет

Sborka пишет
Warped пишет

Заметил баг, у меня начиная с 28 версии firefox не работает imacros в плане не получается работать с файлом, не открывает csv файлы никакой кодировки. Только у меня такая проблема? Как с ней бороться?

Sborka, вам объяснить как пользоваться поиском? да и советовал бы почитать правила на тему флуда!
проблема обсуждалась уже и на вопрос уже давали ответ ранее, по поводу работы скрипта с файлами, кодировка utf-8 должна быть как у iim-файла, так и у csv

Sborka пишет

InfSub я заню о том, что только UTF-8.
но у меня iMacros начиная с 28 версии FF всё равно через раз читает csv-файлы, сохранённые в формате UTF-8 и процесс этот пока не поддаётся логике.
одни файлы открывает без проблем, другие не хочет, пока не сделаю такой ход конём:
...

по-моему вы изобретаете велосипед, научитесь пользоваться установленным софтом
удобно пользоваться Excel - пользуйтесь, просто сохраняйте файл как csv (разделители - запятые), открываете файл Notepad++, выделяете весь текст (Ctrl+A), вырезаете (Ctrl+X), меняете кодировку файла на UTF-8, вставляете данные (Ctrl+V)
imacros по умолчанию использует разделитель - запятую "," (здесь и далее символ должен быть без кавычек), так что либо после нужно заменить ";" на ",", либо указать имакросу другой разделитель:

SET !DATASOURCE_DELIMITER ;

13-05-2014 20:55:54
оффтоп

Sborka пишет

теперь в тотал-коммандере меняю расширение файла снова на .csv

да вы чувствуется знаете толк в извращениях)))
открываем "мой компьютер", жмем Alt, в появившемся меню "Сервис" - "Параметры папок..." - закладка "Вид" - убираем галку "Скрывать расширения зарегистрированных типов файлов"

Sborka, не нужно по 5 раз описывать свою проблему, и то как у вас не получается с ней бороться, вам описали как это можно сделать правильно и быстро, вы продолжаете биться лбом об стену

Sborka пишет

если же не делать копии старых файлов, а просто создать НОВЫЙ файл в экселе и сохранить его в формате csv "разделитель-запятые", тогда при обращении к нему iMacros не хочет видеть этот csv-файл и тогда нужно сделать так, как я писал выше

а разве я говорил, что будет работать с чистым csv?
короче... либо перечитайте мой пост выше и задавайте вопросы по существу, либо не флудите на форуме

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

Sborka пишет

InfSub, форумы нужны для решений проблем.
в последнем посте я подробно описал один из работающих способов, как бороться с проблемой кодировки csv-файлов и уже через день-два пользователи, столкнувшиеся с такой же проблемой будут читать и находить решение для себя, если оно им подойдёт.

во-первых проблема обсуждалась в момент выхода firefox 28, сейчас уже firefox 29, если вы не заметили, это было 2 месяца назад и решение было описано и если бы вы читали внимательно и пользовались поиском, то его бы нашли
во-вторых, ваше решение, уж извините, бред, ИМХО, все делается гораздо проще, и было описано подробно как (или я по вашему не прав что проще сделать 1-2 программами чем 3-4 и в 2-3 раза дольше?!)

Sborka пишет

InfSub, вы возьмите и перечитайте ответы, которые вы написали другим пользователям хотя бы на 2 последних страничках и подсчитайте, сколько раз вы с высоты своей самоуверенности нагрубили другим или ответили в общих чертах, ничего не конкретизируя и не приводя примеры, а только упрекая.

по поводу моих ответов вы можете обратиться к модератору, если считаете, что я был не вежлив груб, etc

offtop
да, мне не нравится то, что новички кричат "помогите", но не из-за того что они кричат и вообще зачем-то тут появились, а потому, что они вместо того чтобы потратить 5 минут собственного времени на поиск, будут ждать когда им в 100 раз разжуют уже разжеванное, и поищут за них... считаете я порчу своим отношением форум?, возможно, но те кто хотел заниматься имакросом, кому интересно это - те люди тут и они ищут решения для тех задач, которые действительно интересны и актуальны и отвечают на ваши вопросы

Sborka пишет

и может быть тогда люди, читающие вашу подпись будут к вам чаще обращаться в личку с деловыми предложениями?

моя подпись, это моя подпись - когда-нибудь удалю, все равно не актуальна

ОФФТОП
InfSub -  вредный пользователь! Это только на первый взгляд. Почитайте мою историю. Иногда на форуме звучат настолько примитивные вопросы , что аж тошнит ! и из-за этого такие ответы. Я рад , что вообще есть несколько русскоязычных пользователей которые могут дать ответ по поводу imacros  Если что то не нравится в ответах --- флаг в руки и гугл в помощь --- есть множество англоязычных форумов которые ответят всем на примитивщину!

Подскажите, пожалуйста,  как при запуске FireFox запустить Javascript. Для примера можно рассмотреть SI-Run-Test.js из поставки iMacros.

Что я сделал:
1. Содержимое SI-Run-Test.js  вставил в вызов функции:

скрытый текст

Выделить код

Код:

function start_scr() {
/* содержимое SI-Run-Test.js
}
start_scr();


2. в том же каталоге создал страничку HTML:
скрытый текст

Выделить код

Код:

<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18702"></HEAD>
<BODY>
<script src='SI-Run-Test.js' language='javascript'></script>
<script language="javascript">
<!--
start_scr();
//-->
</script>
</BODY></HTML>


Открываю эту страничку с помощью FireFox и - вуаля! ничего не происходит.

yinfo это вопрос не о работе iMacros, а о запуске js-скрипта в html-коде.
и похоже на то, что вы пытаетесь 2 раза запустить start_scr(); - первый раз в html-файле и второй раз снова запускаете эту же функцию внутри скрипта SI-Run-Test.js
вариантов несколько:
1)

скрытый текст
<BODY>
<script type="text/javascript" src="SI-Run-Test.js">
/script>
</BODY>

2)
скрытый текст
весь код <script> ... </script> убрать из BODY и вставить в HEAD

3)
скрытый текст
<BODY onload="start_scr();"></BODY>

почитайте в гугле: Подключение и выполнение javascript

Уважаемый Sborka, мой вопрос: как при старте FireFox запустить управляющий JavaScript файл SI-Run-Test.js  из демонстрационных скриптов iMacrosa.
По запуску обычных  js-скриптов в html-коде вопросов нет.
Не удается именно запустить демо-скрипт.

Вопрос решил так: скрипт можно добавить в закладки. Копируем ссылку и вставляем в строку запуска. Получилось вот что:

скрытый текст

Выделить код

Код:

"C:\Program Files\Mozilla Firefox\firefox.exe" imacros://run/?m=Demo-Firefox%5CSI-Run-Test.js  -p Profile0 -no-remote

Подскажите, пожалуйста,  как при запуске FireFox запустить Javascript. Для примера можно рассмотреть SI-Run-Test.js из поставки iMacros.

об этом уже давно писали :
Заходишь в настройки
Устанавливаешь в меню "При запуске фаерфокс"  - Домашняя страница
в адресе домашней страницы указываешь

Выделить код

Код:

imacros://run/?m=SI-Run-Test.js

и теперь при старте Mazila -  сразу будет запускаться JS

yinfo пишет

-p Profile0 -no-remote

и так во всех открытых профилях FF: Profile0, Profile1, Profile2 и т.д., насколько хватит мощности компьютера  :-))

Sborka пишет

yinfo пишет: -p Profile0 -no-remoteи так во всех открытых профилях FF: Profile0, Profile1, Profile2 и т.д., насколько хватит мощности компьютера  :-))

Именно так :-) А чтобы мощности хватило, вместо FF использовать  Pale Moon, который кушает оперативку и проц примерно на 30% меньше.

Ребята извините, кто нить сталкивался в игре с вводом ФлешПароля.....чтото вообще грустно....его imacros не видет?? я знаю свой пароль, а вот как его ввести?

есть гуру?

как решить:
макрос кликает по ссылке и в новой вкладке открывается страница, которая содержит в себе 2 фрейма:
FRAME NAME="1" и FRAME NAME="2"
в первом фрейме показывается реклама, во втором фрейме - таймер.
в настройках защиты FF стоит галочка "Предупреждать при попытке веб-сайтов усатновить дополнения".
иногда бывает, что рекламный сайт в первом фрейме хочет сохранить на компьютер свой файл или приложение и на экране появляется окно с предложением сохранить приложение или отказаться и с кнопками ОК и Отмена.
из-за этого iMacros приостанавливается и ждёт пока пользователь нажмёт одну из двух кнопок.

если в настройках защиты FF убрать галочку, тогда по идее сайты будут без спроса устанавливать свои приложения на компьютер, заражая его таким образом всякой гадостью?
полностью запретить javascript в браузере нельзя, потому что перестанет работать таймер во втором фрейме.

как запретить выполнение скриптов только для сайтов в первом фрейме: FRAME NAME="1"
или как запретить выполнение javascript везде, только добавив в исключения сайт, указанный во втором фрейме: FRAME NAME="2" ?
в настройках Оперы такое есть, а у FF не могу найти.
подскажите пожалуйста.
или может быть в iMacros есть какая-то соответствующая команда?

Подскажите, как с помощью Imacros получить заголовк текущей вкладки?
Зачем: вот мы бродили по сату, нашли что-то интересное и хотим сохранить все ссылки с помощью

Выделить код

Код:

SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt

Но вместо "url" хочу прописать этот самый заголовок вкладки, чтобы было понятно.

вместо "url" хочу прописать этот самый заголовок вкладки, чтобы было понятно.

с помощью JS: сохраняете нужную вам часть кода страницы в переменную и обрезаете всё лишнее до и после того, что вам нужно.
заголовок страницы обычно находится внутри тега <title>, который в свою очередь внутри тега <head>:

скрытый текст

Выделить код

Код:

macros1 = "CODE:TAG POS=1 TYPE=HEAD ATTR=HTM:* EXTRACT=HTM\n";
iplay = iimPlay(macros1);
s1 = iimGetLastExtract();
s1 = s1.toString().replace(/<\/title>(.*)/,'').replace(/(.*)<title>/,'');
alert(s1);


для данной страницы форума получаем:  iMacros | Форум Mozilla Россия.
зависит от того, что прописано в шапке <HEAD> того сайта, над которым хотите издеваться

Sborka пишет

вместо "url" хочу прописать этот самый заголовок вкладки, чтобы было понятно.

с помощью JS: сохраняете нужную вам часть кода страницы в переменную и обрезаете всё лишнее до и после того, что вам нужно.
заголовок страницы обычно находится внутри тега <title>, который в свою очередь внутри тега <head>:

скрытый текст

Выделить код

Код:

macros1 = "CODE:TAG POS=1 TYPE=HEAD ATTR=HTM:* EXTRACT=HTM\n";
iplay = "Shivaki" "hid=90594"(macros1);
s1 = iimGetLastExtract();
s1 = s1.toString().replace(/<\/title>(.*)/,'').replace(/(.*)<title>/,'');
alert(s1);


для данной страницы форума получаем:  iMacros | Форум Mozilla Россия.
зависит от того, что прописано в шапке <HEAD> того сайта, над которым хотите издеваться

Вы предложили вариант, когда я работаю в JS и вызываю iimPlay.

А я, наоборот, нахожусь в IMacros. Код примерно такой:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:https://www.mysite.ru* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt


вот как здесть вместо url.txt подставить содержимое <title>

PS извините, очень тяжело мне даются первые шаги в скриптописании

вы в iMacros запускаете файл с расширением .iim
и точно также вы можете запустить файл с расширением .js, который выполнит тот же код.

вот у вас в макросе с расширением FILE.iim такой код:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:https://www.mysite.ru* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt


если вы создадите в той же папке iMacros скрипт FILE.js и поместите в него код из вашего файла FILE.iim, только сделать это нужно по правилам:
скрытый текст

Выделить код

Код:

macros1 = "CODE:TAG POS=1 TYPE=A ATTR=HREF:https://www.mysite.ru* EXTRACT=TXT\n";
macros1 += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt\n";
iplay = iimPlay(macros1);


эффект от запуска любого из этих файлов будет одинаковым.

если вы запустите вот это:

TAG POS=1 TYPE=HEAD ATTR=HTM:* EXTRACT=HTM

в макросе FILE.iim, тогда в переменной EXTRACT вы получите результат: _undefined_
проверяется это выводом на экран содержимого переменной EXTRACT:
PROMPT {{!EXTRACT}}

а в примере, который я вам привел на JS содержимое переменной EXTRACT сохраняется в переменную s1
и далее содержимое приводится к текстовому значению:  s1.toString()

обе команды: на JS - это alert(s1), а на iMacros - это PROMPT {{!EXTRACT}} выводят на экран значение из EXTRACT,
но на JS в читабельном текстовом формате.

в Демо iMacros-а есть простейший пример, как код  макроса выполнять на JS. этот пример в файле SI-Send-Macro-Code.js

yinfo пишет

Подскажите, как с помощью Imacros получить заголовк текущей вкладки?
Зачем: вот мы бродили по сату, нашли что-то интересное и хотим сохранить все ссылки с помощью

SAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt

Но вместо "url" хочу прописать этот самый заголовок вкладки, чтобы было понятно.

учим мат часть, господа, js не везде и не всегда нужен, и является альтернативой для тех решений, где функционала imacros'a не хватает

TAG POS=1 TYPE=TITLE ATTR=TXT:* EXTRACT=TXT

17-05-2014 17:02:06
Sborka, вы снова придумываете велосипед!!

InfSub
так не работает.
запускаю в макросе ваш код:

TAG POS=1 TYPE=TITLE ATTR=TXT:* EXTRACT=TXT

и проверяю, что сохранилось в EXTRACT:

PROMPT {{!EXTRACT}}

получаю результат

__undefined__

Sborka пишет

получаю результат

__undefined__

примеры
пример 1:

4abc4ef2e069d68f79db0760815ca84d.png

пример 2:

fc33d362654e51be0cc4ff7ae3abcac2.png

да, убрал в .iim-файле всё лишнее и заработало.
а применять JS только когда iMacros не справится - это если только примитивный макрос писать из нескольких строк.
велосипед, о котором вы пишете взят из работающего скрипта, который ищет такой кусок в html-коде страницы, который iMacros не определит и из этого куска вырезает всё лишнее. пару страниц назад обсудили этот вопрос с функцией replace.
в JS удобно с циклами работать, а скорость выполнения .js почти не отличается от .iim

Sborka пишет

велосипед, о котором вы пишете взят из работающего скрипта, который ищет такой кусок в html-коде страницы, который iMacros не определит и из этого куска вырезает всё лишнее. пару страниц назад обсудили этот вопрос с функцией replace.
в JS удобно с циклами работать, а скорость выполнения .js почти не отличается от .iim

я не спорю, что можно и нужно применять такой подход в сложных ситуациях, где функционала imacros, банально не хватает, но тут - это "стрельба по комарам из пушки" и запутывание человека, что видно из предыдущих комментариев ваших и yinfo

17-05-2014 18:19:20

оффтоп
давайте тогда напишем целую js-библиотеку, которая проверяет наличие title на странице и в случае отсутствия или банально схожести title для всех страниц сайта, берет заголовок, к примеру из h1 на странице, а так как h1 используют сейчас редко, еще добавим анализатор классов и стилей, чтобы найти самый большой и жирный текст в заголовке станицы....
вот только зачем? когда для 99% сайтов достаточно 1 строки кода...
будьте добры, если даете советы, не советуйте "костыли", пока что, я вижу в ваших советах только их...

согласен, что запутывание, но ведь yinfo раньше написал, что с iMcaros только знакомится, а в JS соображает :-) вот мне и показалось, что человек быстро разберётся с интеграцией кода iim в JS

оффтоп: дальнейшее продолжение дискуссии не относится к проблеме, так что дафайте закончим оффтопить, мнение на тему js я долбавил к предыдущему посту

17-05-2014 18:25:08

Новенький2014 пишет

Ребята извините, кто нить сталкивался в игре с вводом ФлешПароля.....чтото вообще грустно....его imacros не видет?? я знаю свой пароль, а вот как его ввести?

есть гуру?

любой флеш корректно обрабатывается только полной версией имакроса, но не его плагином под ff

InfSub

скрытый текст
как решить:
макрос кликает по ссылке и в новой вкладке открывается страница, которая содержит в себе 2 фрейма:
FRAME NAME="1" и FRAME NAME="2"
в первом фрейме показывается реклама, во втором фрейме - таймер.
в настройках защиты FF стоит галочка "Предупреждать при попытке веб-сайтов усатновить дополнения".
иногда бывает, что рекламный сайт в первом фрейме хочет сохранить на компьютер свой файл или приложение и на экране появляется окно с предложением сохранить приложение или отказаться и с кнопками ОК и Отмена.
из-за этого iMacros приостанавливается и ждёт пока пользователь нажмёт одну из двух кнопок.

если в настройках защиты FF убрать галочку, тогда по идее сайты будут без спроса устанавливать свои приложения на компьютер, заражая его таким образом всякой гадостью?
полностью запретить javascript в браузере нельзя, потому что перестанет работать таймер во втором фрейме.

как запретить выполнение скриптов только для сайтов в первом фрейме: FRAME NAME="1"
или как запретить выполнение javascript везде, только добавив в исключения сайт, указанный во втором фрейме: FRAME NAME="2" ?
в настройках Оперы такое есть, а у FF не могу найти.
подскажите пожалуйста.
или может быть в iMacros есть какая-то соответствующая команда?


по этому вопросу подкинете идею?
я пока нашел решение только через файрволл, установив на рабочем компьютере запрет всем сайтам, добавив в исключение пару десятков URL-ов, которые должны выполнять скрипты

Sborka пишет

InfSub

скрытый текст
как решить:
макрос кликает по ссылке и в новой вкладке открывается страница, которая содержит в себе 2 фрейма:
FRAME NAME="1" и FRAME NAME="2"
в первом фрейме показывается реклама, во втором фрейме - таймер.
в настройках защиты FF стоит галочка "Предупреждать при попытке веб-сайтов усатновить дополнения".
иногда бывает, что рекламный сайт в первом фрейме хочет сохранить на компьютер свой файл или приложение и на экране появляется окно с предложением сохранить приложение или отказаться и с кнопками ОК и Отмена.
из-за этого iMacros приостанавливается и ждёт пока пользователь нажмёт одну из двух кнопок.

если в настройках защиты FF убрать галочку, тогда по идее сайты будут без спроса устанавливать свои приложения на компьютер, заражая его таким образом всякой гадостью?
полностью запретить javascript в браузере нельзя, потому что перестанет работать таймер во втором фрейме.

как запретить выполнение скриптов только для сайтов в первом фрейме: FRAME NAME="1"
или как запретить выполнение javascript везде, только добавив в исключения сайт, указанный во втором фрейме: FRAME NAME="2" ?
в настройках Оперы такое есть, а у FF не могу найти.
подскажите пожалуйста.
или может быть в iMacros есть какая-то соответствующая команда?


по этому вопросу подкинете идею?
я пока нашел решение только через файрволл, установив на рабочем компьютере запрет всем сайтам, добавив в исключение пару десятков URL-ов, которые должны выполнять скрипты

Надо видеть, что за запрос выдает браузер, по-моему для подобных запросов была какая-то настройка в имакросе, не готов сейчас сказать точно, не за компом

Как считать данне при помощи макроса и если там тру или фалсе делать согласно ответу . И как можно внутри макроса увеличить переменню для исполения   ?

pandabot пишет

Как считать данне при помощи макроса и если там тру или фалсе делать согласно ответу . И как можно внутри макроса увеличить переменню для исполения   ?

реализовать это всё на JS с помощью if ... else  и while

Sborka пишет

pandabot пишет: Как считать данне при помощи макроса и если там тру или фалсе делать согласно ответу . И как можно внутри макроса увеличить переменню для исполения   ?реализовать это всё на JS с помощью if ... else  и while

Я на форуме js ? Как оформить в Imacros ? Считвание  ?

pandabot пишет
Sborka пишет

pandabot пишет: Как считать данне при помощи макроса и если там тру или фалсе делать согласно ответу . И как можно внутри макроса увеличить переменню для исполения   ?реализовать это всё на JS с помощью if ... else  и while

Я на форуме js ? Как оформить в Imacros ? Считвание  ?

вы на форуме по имакрос, а не по js
как совместить js и имакрос, а так же, как реализовать выполнение условий (if... else...) уже не однократно обсуждали на форуме, воспользуйтесь поиском

Ребята, помогите, нужен код, который бы выполнял следующее:
в интернет-банкинге есть история операций, выводится списком (причем список прокручивается), нужно нажать на одной строке, потом нажать кнопу, а затем нужно нажать на одну стороку ниже, чем на предыдущем шаге. Вот такой цикл надо, т.е. смещение по Y надо как-то организовать или как-то иначе. Прошу помочь.

5466724m.png

Myak777 пишет

Ребята, помогите, нужен код, который бы выполнял следующее:
в интернет-банкинге есть история операций, выводится списком (причем список прокручивается), нужно нажать на одной строке, потом нажать кнопу, а затем нужно нажать на одну стороку ниже, чем на предыдущем шаге. Вот такой цикл надо, т.е. смещение по Y надо как-то организовать или как-то иначе. Прошу помочь.

http://savepic.net/5466724m.png

конкретного кода нет, код зависит от сайта, делается с помощью event keypress ....

InfSub
Спасибо за ответ, проблему решить удалось самостоятельно.

Как с помощью iMacros сохранить данные, полученные в javascript? Как я понимаю, javascript внутри FireFox не имеет возможности писать во внешние файлы.

Выделить код

Код:

var myvar = "Строка, которую надо сохранить";
iimSet("ii_myvar", myvar};//передали строку в iMacros
macros = "SAVEAS ??? FOLDER=* FILE=my.csv";
iimPlay(macros);

Как подправить этот код (??? в строке №3) или вообще написать по-другому, чтобы чтобы записать в my.csv  "Строка, которую надо сохранить"?

macros = "CODE:SAVEAS ??? FOLDER=* FILE=my.csv";
iimPlay(macros);

Sborka пишет

macros = "CODE:SAVEAS ??? FOLDER=* FILE=my.csv";
iimPlay(macros);

Ав какое место вставить ii_myvar, которое и надо сохранить? :(

Сам спросил и сам ответил :) Как из javacsript с помощью imacros сохранить в текст произвольное значение.

Выделить код

Код:

iimSet("i",123);   
iimPlay("CODE:SET !EXTRACT {{i}}\n SAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=hiprsites.txt");
Выделить код

Код:

CMDLINE !DATASOURCE vstavit-text.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1

В текстовом файле 10 строк, на данный момент при 20 циклах скрипт вводит слово из 10 строки - 10 раз. Что нужно прописать в коде для ввода слов по кругу?

Revers пишет

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE vstavit-text.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1


В текстовом файле 10 строк, на данный момент при 20 циклах скрипт вводит слово из 10 строки - 10 раз. Что нужно прописать в коде для ввода слов по кругу?

вспоминаем уроки математики)))

скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/10)-1)*10")


20-05-2014 21:39:51
и удалите это:

SET !LOOP 1

зачем устанавливать значение {{!LOOP}} равным 1, если это и так его значение по умолчанию ???

InfSub пишет

и удалите это: SET !LOOP 1зачем устанавливать значение {{!LOOP}} равным 1, если это и так его значение по умолчанию ???
                    Отредактировано InfSub (Вчера 21:48:09)

Для того, чтобы на 2-й день(в окончательном варианте строк будет далеко не 10) работы скрипта прописать 5792 вместо 1 )))  А для чего эта команда должна использоваться???

Revers пишет
InfSub пишет

и удалите это: SET !LOOP 1зачем устанавливать значение {{!LOOP}} равным 1, если это и так его значение по умолчанию ???
                    Отредактировано InfSub (Вчера 21:48:09)

Для того, чтобы на 2-й день(в окончательном варианте строк будет далеко не 10) работы скрипта прописать 5792 вместо 1 )))  А для чего эта команда должна использоваться???

не совсем понимаю смысла прописывать SET !LOOP 5792 если вам нужно ограничить кол-во строк
я уже уже написал выше код, который будет циклить строки и кол-во строк там меняется не за счет изменения значения !LOOP, за счет !LOOP - меняется номер строки
если вам нужно постоянно менять кол-во строк в файле запишите его так:

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE vstavit-text.txt
' {{!VAR1}} - кол-во строк в файле
SET !VAR1 5792
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/{{!VAR1}})-1)*{{!VAR1}}")

Установил браузер от Яндекса и установил imacros для хрома и макрос запустился и всё заработало к моему удивлению.
Потому, что яндекс браузер сделан на основе хрома.

Люди добрые и опытные в этих вопросах, помогите пожалуйста. У меня есть плагин для отправки сообщений в одноклассниках, до недавнего времени всё отправлялось исправно, но сейчас пишет сообщение, но не отправляет, просто закрывает диалоговое окно и текст остается неотправленным. В настройках ничего не меняла. Что могло повлиять на сбой и как его исправить?:o:o 

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO  
TAB T=1

'авторизация логин 1
TAB T=1
URL GOTO=http://www.odnoklassniki.ru/
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:field_email CONTENT=логин
TAG POS=1 TYPE=INPUT:PASSWORD ATTR=ID:field_password CONTENT=пароль
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://www.odnoklassniki.ru/https ATTR=*
'поехали
URL GOTO=http://www.odnoklassniki.ru/online/dk?st.cmd=userFriendLive&st.ageTo=50&st.ageFrom=14&st.female=2

TAG POS=1 TYPE=A ATTR=CLASS:o&&hrefattrs:st.cmd=friendMain&st.friendId=*&st._aid=UsersOnline_FriendMain&&HREF:/* EXTRACT=href
TAB OPEN
TAB T=2
URL GOTO={{!EXTRACT}}
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-m" CHARS="Здравствуйте..."
FRAME F=0
EVENT TYPE=CLICK SELECTOR="#ok-e-m_button" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#id-m-subh-3>A:nth-of-type(3)" BUTTON=0
TAB CLOSE
SET !EXTRACT NULL

Mariel73 пишет

Люди добрые и опытные в этих вопросах, помогите пожалуйста. У меня есть плагин для отправки сообщений в одноклассниках, до недавнего времени всё отправлялось исправно, но сейчас пишет сообщение, но не отправляет, просто закрывает диалоговое окно и текст остается неотправленным. В настройках ничего не меняла. Что могло повлиять на сбой и как его исправить?:o:o

код размещаем в тегах CODE, большие куски кода прячем в спойлер!
Причин может быть несколько, начиная от обновления самого имакроса, в связи с чем какая-то из его комманд отрабатывает не корректно и заканчивая изменениями на сайте
В данный момент проверить нет возможности, соответственно исправить, если это возможно -тоже
Вы можете самостоятельно попробовать вернуться на предыдущую версию имакроса и проверить - работает ли ваш скрипт, если да, то запретить обновляться, как самому плагину, так и браузеру

Извините за неправильное оформление:blush: Изменяла версию макроса на низшую, вообще не работает, а версия 8.8.1 запускает скрипт, но дело до конца не доводит, не отправляет сообщения. И мазилу пробовала 28 версию ставить (щаз 29 стоит) и то же не отправляет.

Помогите решить такую проблему:
Есть файл .iim, который разгадывает каптчу посредством антигейт и отправляет её на нужный сайт.
Как сделать, чтобы если каптча не была разгадана или была разгадана не правильно, то снова выполнялось действие, пока каптча не будет отгадана правильно.

Texas пишет

Помогите решить такую проблему:
Есть файл .iim, который разгадывает каптчу посредством антигейт и отправляет её на нужный сайт.
Как сделать, чтобы если каптча не была разгадана или была разгадана не правильно, то снова выполнялось действие, пока каптча не будет отгадана правильно.

нужно использовать js и прочитать последние 7-10 страниц, там полностью дан ответ

kolshix пишет

нужно использовать js и прочитать последние 7-10 страниц, там полностью дан ответ

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

На счёт js ... ничего не нашел по своему вопросу, соответственно вопрос остается открытым. Честно говоря в js не силен.
Если кого не затруднит, то подскажите как мне решить мою проблему.

Задача такая:
Запускаем файл .iim, который разгадывает каптчу;
Если каптча разгадана верно, то есть появилось сообщение GOOD, то продолжаем цикл;
Если вывелось сообщение типа ERROR или INCOREСT KAPTCHA, то запускаем файл .iim заново, пока не будет сообщения GOOD.

Texas пишет

Вобщем реализовал разгадывание каптчи при помощи ключа, чем остался очень доволен, хотя конкретного примера как это сделать на форуме нет.

Разуйте глазки , я уже писал на предыдущих страницах, что антигейт реализовал раздел под imacros, а код искать тут нет необходимости, так как его предоставляет антигейт, --- код остаётся только подшаманить под свои нужды

https://forum.mozilla-russia.org/viewtopic.php?pid=651235#p651235

Texas пишет

Задача такая:
Запускаем файл .iim, который разгадывает каптчу;
Если каптча разгадана верно, то есть появилось сообщение GOOD, то продолжаем цикл;
Если вывелось сообщение типа ERROR или INCOREСT KAPTCHA, то запускаем файл .iim заново, пока не будет сообщения GOOD.

по просьбам трудящихся   
js


1 вариант
for (;;){
      iimPlay("файл разгадки капчи ")
      captchaYes=iimGetLastExtract();
      if  (captchaYes=='GOOD'){
          break
     }   
}
файл разгадки капчи -  должен содержать в себе 2 копирующих команды, 1 -я копирует значение капчи, 2-я результат ( ERROR или INCOREСT KAPTCHA) .   Реализовать можно по разному, через переменные, обнуления, возврат и прочее, как душе угодн, я показал только каркас.

2 вариант
for (;;){
     captchaYes=iimPlay("файл разгадки капчи")
     if (captchaYes>0){
         break
     }
}

файл разгадки капчи - должен содержать строки идущие после копирования текста разгаданной капчи , которыми он ищет положительность(правельность) разгадки

Выделить код

Код:

SET !ERRORIGNORE NO 
TAG POS=1 ******* ATTR=TXT:GOOD

если данная команда не выполнится, то разгадка капчи начнётся по новой


3 вариант
вот код из моего макроса

Выделить код

Код:

for (cap=0;cap<=3;cap++){
          iimPlay("BUX/003-03-01 SmmokCaptchaAntig.iim") // в этом файле разгадка капчи и подтверждение, после подтверждения страница переходит на другой адрес , на котором я ищу , командой ниже, определённое место, если определённое место не найдено макрос повторяет разгадку, но не более 3-х раз 
          
          var errCod
              errCod = "CODE:";
              errCod += "SET !TIMEOUT_STEP 2" + "\n";
              errCod += "TAG POS=1 TYPE=DIV ATTR=TXT:Тип<SP>действия" + "\n";
          yescaptcha=iimPlay(errCod)  //если капча разгадана правильно то макрос найдёт "Тип действий" и выполниться break
          if (yescaptcha>0){
             break;
          }

      }


Если и это не понятно, то вам нужно просить кого то, чтоб написали чисто скрипт под Вас.

Помогите со скриптом (в программировании не силен)
нужно чтобы скрипт n раз нажал кнопку "кнопку1", после нажал "кнопку2", далее m раз нажимал "кнопку3". ну и так далее..

Есть светлые головы?=)

есть светлый поиск и google по запросу: цикл for

InfSub пишет

есть светлый поиск и google по запросу: цикл for

Ну да, ну да...
Говорю же не очень дружу с программированием...
В принципе скрипт работает и так:
m строк "нажать кнопку1"
"нажать кнопку2"
n строк "нажать кнопку3"
топорно, неудобно, но работает =))

а подскажите (в светлом поиске не нашел) а можно скриптом двигать ползунки влево-вправо на страницах?
Т.е. не ползунок страницы, а именно на странице...

alt+ctrl+del пишет
InfSub пишет

есть светлый поиск и google по запросу: цикл for

Ну да, ну да...
Говорю же не очень дружу с программированием...

форум не посвящен js-программированию, все вопросы по js, задаются на соответствующих форумах

alt+ctrl+del пишет

а подскажите (в светлом поиске не нашел) а можно скриптом двигать ползунки влево-вправо на страницах?
Т.е. не ползунок страницы, а именно на странице...

команда event

Как сделать так, чтобы если,например не выполнилось одно действие,допустим нажатие или переход по ссылке, то макрос не останавливался,а начинал все воспроизведение заново?


И почему вообще не работает команда "CLICK X= Y= "?

Галимов Руслан пишет

Как сделать так, чтобы если,например не выполнилось одно действие,допустим нажатие или переход по ссылке, то макрос не останавливался,а начинал все воспроизведение заново?

только проверяя действия с помощью js

Галимов Руслан пишет

И почему вообще не работает команда "CLICK X= Y= "?

если скрипт чужой, найденный в интернете, координаты могут не совпадать

И почему вообще не работает команда "CLICK X= Y= "?

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

Привет!
Мне надо написать скрипт, чтобы с файла s.csv базы на 20000 строк, при каждом следующем запуске макроса в поле вводился новый параметр  рандоном.

к примеру:

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE s.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 20000
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
URL GOTO=https://www.google.com.ua/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:tsf ATTR=* CONTENT={{!COL1}}


И так же если не затруднит, напишите как сделать так, чтобы стоки возводились  последовательно, следующая при каждом новом запуске макроса?

Duh пишет

Привет!
Мне надо написать скрипт, чтобы с файла s.csv базы на 20000 строк, при каждом следующем запуске макроса в поле вводился новый параметр  рандоном.

что вы имеете ввиду под рандомом? рандомную строку из файла? если да, примеры есть на форуме, ищем самостоятельно

Duh пишет

к примеру:

скрытый текст
CMDLINE !DATASOURCE s.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 20000
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
URL GOTO=https://www.google.com.ua/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:tsf ATTR=* CONTENT={{!COL1}}

лично я не понял, что импенно вы пытались показать данным примером, кроме того, что вы берете самую последнюю строку из файла

Duh пишет

И так же если не затруднит, напишите как сделать так, чтобы стоки при возводились и последовательно, следующая при каждом новом запуске макроса?

прочтите данное предложение еще раз, я вообще не вижу в нем ни какого смысла кроме набора слов, оформите данное предложение более грамотно, чтобы вас можно было понять

InfSub
Да, именно строку из файла с базой. А как писать запрос? Вставка случной строки в поле?

А за другое предложения, извиняюсь. Хотел спросить: как написать макрос так, чтобы строки из базы выбирались последовательно и вставлялись в поле?
То есть база:
а
б
в

То при  первом запуске макроса должна вводиться а, при втором б и так далее

Duh, так что именно вам нужно? Рандом или последовательно?
Последовательно, умеет делать ваш пример,если убрать !loop 20000

01-06-2014 20:05:00

Duh пишет

А как писать запрос? Вставка случной строки в поле?

Аналогично, заданному вами вопросу... К примеру, по слову "рандом"

InfSub
Увы но макрос не работает.  Все время вставляется первая строка из файла

От напишите мне текст макроса для любого сайта где есть две формы, в которые  будут вводится данные взятие с *.txt либо *.csv строки, и чтобы эти строки брались разные при каждом следующим запуске макроса.
Причем с базами надо два файла: фамилии и даты. (в моем случае)
Спасибо.

Duh пишет

InfSub
Увы но макрос не работает.  Все время вставляется первая строка из файла

значит ищите у себя ошибку, примеров по работе имакроса с файлами на форуме - куча, в том числе, обсуждался вариант работы скрипта с 2я файлами одновременно

antigate,иногда не правильно угадывает капчу. Можно ли реализовать iim  что бы ждал пока не появится правильная капча?

Gergi пишет

antigate,иногда не правильно угадывает капчу. Можно ли реализовать iim  что бы ждал пока не появится правильная капча?

Если речь идёт о скорости разгадки , то нужно поменять задержку загрузки страниц


Если конкретно о неправильности разгадки то вот
https://forum.mozilla-russia.org/viewtopic.php?pid=652944#p652944

и нужно будет немного почитать о работе js с iim

Я сперва раз 10 перечитал все 20 последних страниц но так и не увидел ответ на свой вопрос. Вот завершающая часть кода,можно на нём пример привести?

скрытый текст

Выделить код

Код:

URL GOTO=http://antigate.com/imacros.html
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{!VAR1}} 
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR9 {{!EXTRACT}}
TAB T=1
FRAME F=0
WAIT SECONDS=4
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_response CONTENT={{!EXTRACT}}
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=4


02-06-2014 22:23:19
Код работает как бы "замечательно" но смотрю что из 10 угаданных капч одна не правильно угадана,а две и вовсе не угаданных. Остаётся 7 правильно угаданных. Вот и хочу реализовать то что бы  скрипт не переходил дальше пока не будет правильно разгаданная капча.

Gergi пишет

Я сперва раз 10 перечитал все 20 последних страниц но так и не увидел ответ на свой вопрос. Вот завершающая часть кода,можно на нём пример привести?

скрытый текст
URL GOTO=http://antigate.com/imacros.html
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{!VAR1}}
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR9 {{!EXTRACT}}
TAB T=1
FRAME F=0
WAIT SECONDS=4
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_response CONTENT={{!EXTRACT}}
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=4

по последней команде вижу что код с капчей с ВК

код полностью рабочий, за исключением переходов по табам, я в кодах их не учитывал (некогда мне тестить отдельный скрипт), я думаю вы и сами понимаете в настройке
Иногда использую такой вариант

скрытый текст
Добавить в друзья.iim

Выделить код

Код:

WAIT SECONDS=1
SET !ERRORIGNORE YES
TAB T=2
WAIT SECONDS=3
TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья
WAIT SECONDS=1

' Капча
SET !ERRORIGNORE NO
SET !TIMEOUT_STEP 1
'команда ниже определяет появилась ли капча или нет
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title

Разгадать капчу.iim

Выделить код

Код:

URL GOTO=http://antigate.com/imacros.html
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{!VAR1}} 
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR9 {{!EXTRACT}}
TAB T=1
FRAME F=0
WAIT SECONDS=4
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_response CONTENT={{!EXTRACT}}
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=4

'=================================================================
SET !ERRORIGNORE NO
SET !TIMEOUT_STEP 1
'команда ниже определяет появилась ли капча в случае неправильной разгадки
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title

js

Выделить код

Код:

i=iimPlay("Добавить в друзья.iim")
if (i>0){
   for (;;){
        b=iimPlay("Разгадать капчу.iim")
        if (b<0){
           break
        }  
   }
}

можно немного по другому , вписать команду поиска капчи в файл "разгадать капчу.iim" и сделать так , макрос выполняет добавление в друзья и переходит к поиску капчи , если капча не найдена , работает далее, если капча найдена, то её разгадку можно зацыклить (for) и цыкл будет повторятся до тех пор пока вот эта позицыя будет находиться TAG POS=1 TYPE=DIV ATTR=CLASS:box_title


оффтоп
02-06-2014 22:53:35

InfSub пишет
kolshix пишет
Выделить код

Код:

WAIT SECONDS=4[/quote][/spoiler]

поменяй местами quote и spoiler - а то пол форума перекорежило

А я сижу и не могу понять , то ли у меня браузер глючит , то ли ещё что то )))))

Написал скрипт. Но с файла объявления.txt не вставляется вся строка, а только маленькая часть текста. Как исправить СКРИПТ так, чтобы вводилась вся строка?

скрытый текст
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE цена.txt
SET !DATASOURCE_COLUMNS 1
SET !VAR1 EVAL("Math.floor(Math.random()*440 + 1);")
SET !LOOP {{!VAR1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:f_item ATTR=ID:fld_price CONTENT={{!COL1}}
SET !DATASOURCE объявления.txt
SET !DATASOURCE_COLUMNS 1
SET !VAR1 EVAL("Math.floor(Math.random()*38000 + 1);")
SET !LOOP {{!VAR1}}
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:f_item ATTR=ID:fld_description CONTENT={{!COL1}}

Спасибо,но как то ни один вариант не сработал :( Капча была не разгаданной а скрипт пошёл дальше:o

02-06-2014 23:44:40

Duh пишет

Написал скрипт. Но с файла объявления.txt не вставляется вся строка, а только маленькая часть текста. Как исправить СКРИПТ так, чтобы вводилась вся строка?

скрытый текст
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE цена.txt
SET !DATASOURCE_COLUMNS 1
SET !VAR1 EVAL("Math.floor(Math.random()*440 + 1);")
SET !LOOP {{!VAR1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:f_item ATTR=ID:fld_price CONTENT={{!COL1}}
SET !DATASOURCE объявления.txt
SET !DATASOURCE_COLUMNS 1
SET !VAR1 EVAL("Math.floor(Math.random()*38000 + 1);")
SET !LOOP {{!VAR1}}
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:f_item ATTR=ID:fld_description CONTENT={{!COL1}}

Попробуйте в тексте запятые убрать

Gergi пишет

Попробуйте в тексте запятые убрать

А заменить их чем то можно?

Duh пишет
Gergi пишет

Попробуйте в тексте запятые убрать

А заменить их чем то можно?

можно если перед началом текста и в конце текста поставить дойные кавычки типо так "всем привет" тогда можно запятые ставить

Как зациклить проверку до правильной разгадки капчи я разобрался. А вот как зациклить js скрипт не могу понять .В данном случае он идёт один раз. А надо много раз :)


скрытый текст

Выделить код

Код:

i=iimPlay("Добавить в друзья.iim")
if (i>0){
   for (;;){
        b=iimPlay("Разгадать капчу.iim")
        if (b<0){
           break
        }  
   }
}


этот код работает,но он вызывает iim всё время на исходную  позицию

Как с помощью iim вызвать js ?

Gergi пишет

Как с помощью iim вызвать js ?

вызвать iim файлом файл js
URL GOTO=imacros://run/?m=файл.js

вызвать js файлом файл js
iimPlayCode("URL GOTO=imacros://run/?m=файл.js")

И не забывайте пользоваться поиском, данный вопрос 100500 раз обсуждался!

Ни один вариант не работает! А точнее всё время делает одно и тоже. Нету цикла.

Ребят , помогите . Напишите код , чтобы перейдя по ссылке http://www.asos.com/ru/Women/Bags-Purses/Purses/Cat/pgecategory.aspx?cid=11304   каждый товар по очередно открывался  и сохраняя изображение товара (полный размер) закрывал вкладку и переходил на следующий объект .

kolshix пишет
Gergi пишет

Ни один вариант не работает! А точнее всё время делает одно и тоже. Нету цикла.

Вы определитесь чего хотите!  Вызвать js и сделать цикл - это два разных процесса!

Мои желание очень простые :) Хочу с помощью одного скрипта вызывать другой.
Тема такая: Работает к примеру скрипт  ВКонтакте,берёт ID групп из txt файла  и вдруг не взначай появляется капча,antigate с лёгкостью её разгадывает,но иногда бывают сложности в разгадке капчи,не правильно разгаданная или вообще не разгаданная,и когда antigate пытается повторить разгадку капчи,то он сбрасывает ранее не разгаданную капчу и все действия в этой группе  по новой проходят. Потому что код ВК и код antigate в одном скрипте. Надо сделать что бы скрипт ВК по неоходимости вызывал скрипт antigate. Я это всё реализовал с помощью iim но беда в том что вся эта операция проходит один цикл. Тоесть кнопка воспроизвести цикл как бы не циклирует. Я через нею запускаю но оба скрипта делают по одной операции. Если вызывать эти два скрипта через js то скрипт ВК постоянно открывает только первую группу которая в txt дальше по списку не идёт.

Gergi
http://youtu.be/VP6AUHFjeQo

СПЕЦИАЛЬНО ДЛЯ ВАС!!!

Спасибо огромное,но я их тоже вызываю. Я в верху сформулировал более конкретнее свой вопрос и подредактировал сообщение.

Добррый день, помогите пожалуста с js, есть 1.iim, 2.iim, 3.iim каждый нужно запустить несколько раз в сутки в определенное время для каждого, я сделал вот так (зацикленный рабочий код)

скрытый текст
var count = 0
  do{
var t = new Date();
var h = t.getHours();
var m = t.getMinutes();
var res = new Array(h,m)
//дальше обьявляю нужное время
var a1= "12,00";
var a1 = "12,35";
var a3 = "13,15";
    .  .  .
var b1 = "14.22";
var b2 = "15,03";
var b3 = "16,00";
    .  .  .
var c1 = "16,42";
var c2 = "17,11";
var c3 = "17,55";
    .  .  .
//а дльше вот такой код

if (res  ==  a1){
   retcode = imPlay("111/1.iim");
  }else{
if (res  == a2){
   retcode = imPlay("111/1.iim");
  }else{
if (res  ==  a3){
   retcode = imPlay("111/1.iim");
  }else{
   ………

if (res  == b1){
   retcode = imPlay("111/2.iim");
  }else{
if (res  ==  b2){
   retcode = imPlay("111/2.iim");
  }else{
if (res  == b3){
   retcode = imPlay("111/2.iim");
  }else{
   ………

if (res  ==  c1){
   retcode = imPlay("111/3.iim");
  }else{
if (res  == c2){
   retcode = imPlay("111/3.iim")
  }else{
if (res == c3){
   retcode = imPlay("111/3.iim");
  }else{
    ………
   retcode = imPlay("111/4.iim"); //эт просто файл с паузой в 10сек
  }
}while(count<1);


хотелось бы как то както обьявить массив из нужного времени для своего файла iim ато у меня получился очень большой js, может кто поможет ато я в программиловании ооочень далек, все делал методом тыка и подсматриванием

Игорь42 пишет

Добррый день, помогите пожалуста с js, есть 1.iim, 2.iim, 3.iim каждый нужно запустить несколько раз в сутки в определенное время для каждого, я сделал вот так (зацикленный рабочий код)

скрытый текст
var count = 0
  do{
var t = new Date();
var h = t.getHours();
var m = t.getMinutes();
var res = new Array(h,m)
//дальше обьявляю нужное время
var a1= "12,00";
var a1 = "12,35";
var a3 = "13,15";
    .  .  .
var b1 = "14.22";
var b2 = "15,03";
var b3 = "16,00";
    .  .  .
var c1 = "16,42";
var c2 = "17,11";
var c3 = "17,55";
    .  .  .
//а дльше вот такой код

if (res  ==  a1){
   retcode = imPlay("111/1.iim");
  }else{
if (res  == a2){
   retcode = imPlay("111/1.iim");
  }else{
if (res  ==  a3){
   retcode = imPlay("111/1.iim");
  }else{
   ………

if (res  == b1){
   retcode = imPlay("111/2.iim");
  }else{
if (res  ==  b2){
   retcode = imPlay("111/2.iim");
  }else{
if (res  == b3){
   retcode = imPlay("111/2.iim");
  }else{
   ………

if (res  ==  c1){
   retcode = imPlay("111/3.iim");
  }else{
if (res  == c2){
   retcode = imPlay("111/3.iim")
  }else{
if (res == c3){
   retcode = imPlay("111/3.iim");
  }else{
    ………
   retcode = imPlay("111/4.iim"); //эт просто файл с паузой в 10сек
  }
}while(count<1);


хотелось бы как то както обьявить массив из нужного времени для своего файла iim ато у меня получился очень большой js, может кто поможет ато я в программиловании ооочень далек, все делал методом тыка и подсматриванием

данный форум посвящен решению вопросов с имакросом, а не с js
что вы подразумеваете под:

Игорь42 пишет

както обьявить массив из нужного времени для своего файла iim

если я правильно понял, то это:

Выделить код

Код:

var a = ["12.00","12,35","13,15"];
var b = ["14,22","15,03","16,00"];
var c = ["16,42","17,11","17,55"];
InfSub пишет

если я правильно понял, то это:
Выделить код
Код:

var a = ["12.00","12,35","13,15"];
var b = ["14,22","15,03","16,00"];
var c = ["16,42","17,11","17,55"];

пробовал, не работает так, там чет с оператором in нужно делать а в инете ничего не могу найти как с ним работать

Игорь42 пишет

пробовал, не работает так, там чет с оператором in нужно делать а в инете ничего не могу найти как с ним работать

что именно не работает? опишите подробнее, не вижу ни каких проблем с взятием данных из данного или иного другого массива/объекта данных

с перебором массива вроде разобрался, через if не получалось, калдую через for

скрытый текст
var list = ["11,30", "20,15", "13,20", "21,24", "15,33", "11,31", "20,16", "13,21", "21,25", "15,34"];
for(var i = 0, l = list.length; i < l; i++) {

      iimDisplay(list[i]);
}


теперь думаю как это все в кучу соединить чтобы работало, примерно так:
скрытый текст
var t = new Date();
var h = t.getHours ();
var m = t.getMinutes ();
var res = new Array(h, m);

var a1 = ["10,30", "22,15", "03,20", "01,24", "05,33", "18,31", "20,16", "13,21", "21,25", "15,34"];
var b1 = ["11,33", "20,18", "13,24"];
var c1 = ["16,30", "18,45"];

for(var i = 0, l = a1.length; i < l; i++) {
     //если время совпадает с a1 запустить 1.iim
  }

for(var i = 0, l = b1.length; i < l; i++) {
      //если время совпадает с b1 запустить 2.iim
  }

for(var i = 0, l = c1.length; i < l; i++) {
     //если время совпадает с c1 запустить 3.iim
  }

Игорь42 пишет

теперь думаю как это все в кучу соединить чтобы работало

например, так:

скрытый текст

Выделить код

Код:

while(true){
    var t = new Date();
    var h = t.getHours();
    var m = t.getMinutes();
    var res = [h,m];

    var arr = [1,2,3];    
    arr[1] = ['10,30','22,15','03,20','01,24','05,33','18,31','20,16','13,21','21,25','15,34'];
    arr[2] = ['11,33','20,18','13,24'];
    arr[3] = ['16,30','18,45'];

    for (var i=0;i<arr.length;i++) {
        for (var j=0;j<arr[i].length;j++) {
            if (res == arr[i][j]){
                iimPlay('111/'+ i +'.iim');
                break;
            };
        };
    };
    iimPlay('CODE:WAIT SECONDS=10');
};

скрытый текст

InfSub пишет

Игорь42 пишет: теперь думаю как это все в кучу соединить чтобы работалонапример, так:скрытый текстВыделить кодКод:while(true){
    var t = new Date();
    var h = t.getHours();
    var m = t.getMinutes();
    var res = [h,m];

    var arr = [1,2,3];   
    arr[1] = ['10,30','22,15','03,20','01,24','05,33','18,31','20,16','13,21','21,25','15,34'];
    arr[2] = ['11,33','20,18','13,24'];
    arr[3] = ['16,30','18,45'];

    for (var i=0;i<arr.length;i++) {
        for (var j=0;j<arr[i].length;j++) {
            if (res == arr[i][j]){
                iimPlay('111/'+ i +'.iim');
                break;
            };
        };
    };
    iimPlay('CODE:WAIT SECONDS=10');
};
                    Отредактировано InfSub (Сегодня 17:50:10)


InfSub пасиб огромное, всё работает на отлично, даж и не думал что код будет такой маленький

Хочу создать функцию перемешки маcсива на основе iim

вот код iim

скрытый текст
Это мой код , который собирает информацию с txt файла 

Выделить код

Код:

' Графа Деятельность  до 139
SET !DATASOURCE C:\Users\user\YandexDisk\Macros\RegAcc\Masiv\0007_Interests.txt
' 1
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 1;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES1 {{!COL1}}
' 2
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 24;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES2 {{!COL1}}
' 3
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 48;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES3 {{!COL1}}
' 4
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 72;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES4 {{!COL1}}
' 5
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 96;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES5 {{!COL1}}
' 6
SET !VAR1 EVAL("Math.floor(Math.random()*18) + 120;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES6 {{!COL1}}

SET !VAR9 {{INTERES1}},<SP>{{INTERES2}},<SP>{{INTERES3}},<SP>{{INTERES4}},<SP>{{INTERES5}},<SP>{{INTERES6}}

Prompt {{!VAR9}}

Это код js который перемешивает массив , знаю что можно сделать импорт из iim в js, там перемешать массив и вернуть в iim, но это лишнее дело.
Помогите вписать код js в EVAL

вот код перемешки массива на js

Выделить код

Код:

var array = ["Ася","Боря и Петя","Вася","Гриша","Дима"];

array.sort(function() {
   return Math.random() - 0.6;
});

alert (array)

хочу что типа такого: получаем !VAR9 и переставляем его содержимое рандомно, но не знаю как прописать

как то так но вообще не соображаю как, помогите

Выделить код

Код:

SET !VAR9 EVAL("{{!VAR9}}.sort(function() {
   return Math.random() - 0.6;
});")


Даже не знаю возможно ли такое реализовать в iim ? может кто то сталкивался и подскажет.

Всем привет ! мне надо написать скрипт чтобы кликало на ссылку (открывается просмотр сайта в той же закладке), по прошествии 23 секунд кликало вверху экрана для возврата на начальную и всё зациклить ну раз так на 100 примерно.

kolshix пишет

Хочу создать функцию перемешки маcсива на основе iim

скрытый текст

Выделить код

Код:

SET !VAR9 EVAL("{{!VAR9}}.sort(function() {
   return Math.random() - 0.6;
});")


Даже не знаю возможно ли такое реализовать в iim ? может кто то сталкивался и подскажет.

убери <SP> из {{!VAR9}}, в eval() разбей {{!VAR9}} с помощью split() по запятой на массив.. думаю, дальше сам догадаешься))

10-06-2014 16:02:40

sandro555 пишет

Всем привет ! мне надо написать скрипт чтобы кликало на ссылку (открывается просмотр сайта в той же закладке), по прошествии 23 секунд кликало вверху экрана для возврата на начальную и всё зациклить ну раз так на 100 примерно.

кнопка "запись" специально для вас, на одноименной закладке

sandro555 пишет

Всем привет ! мне надо написать скрипт чтобы кликало на ссылку (открывается просмотр сайта в той же закладке), по прошествии 23 секунд кликало вверху экрана для возврата на начальную и всё зациклить ну раз так на 100 примерно.

Я бы Вам посоветовал 4 варианта:

1 и самый лучший - Почитайте форум , тут много хлама , но и много очень полезного
2 Поищите немного по гуглу, а то уже чересчур обленились (ответов уйма) 
3 Нажмите на кнопку "запись" , проделайте действия, и потом сохранённый результат воспроизведите с помощью кнопки "Восп.(Цикл)" нужное вам количество раз
4 Почитайте про Цикл в javascrip с пометкой "for" и напишите макрос на js для мазила

Доброго времени суток.
Ребята, подскажите пожалуйста, как сделать рандомное нажатия из трех кнопок?
То есть передо мной 3 кнопки, надо нажать на любую из них, только каждый раз рандомную.
Реализацию рандомных чисел я понял, а как реализовать мою задачу, не знаю :(

Tungen пишет

Доброго времени суток.
Ребята, подскажите пожалуйста, как сделать рандомное нажатия из трех кнопок?
То есть передо мной 3 кнопки, надо нажать на любую из них, только каждый раз рандомную.
Реализацию рандомных чисел я понял, а как реализовать мою задачу, не знаю :(

js

скрытый текст

Выделить код

Код:

for (;;){
    var knopka=Math.floor(Math.random()*3)+1;
    if (knopka==1){
       alert (knopka)
       iimPlayCode("команда нажатия кнопки")
    }
    if (knopka==2){
       alert (knopka)
       iimPlayCode("команда нажатия кнопки")
    }
    if (knopka==3){
       alert (knopka)
       iimPlayCode("команда нажатия кнопки")
    }
}

kolshix пишет

Tungen пишет: Доброго времени суток.Ребята, подскажите пожалуйста, как сделать рандомное нажатия из трех кнопок?То есть передо мной 3 кнопки, надо нажать на любую из них, только каждый раз рандомную. Реализацию рандомных чисел я понял, а как реализовать мою задачу, не знаю js
                    Отредактировано kolshix (Сегодня 14:59:01)

Так? У меня ошибка "SyntaxError: missing ) after argument list, line NaN (Error code: -991)"

скрытый текст

Выделить код

Код:

for (;;){
    var knopka=Math.floor(Math.random()*3)+1;
    if (knopka==1){
       alert (knopka)
       iimPlayCode("FRAME NAME="fXD7e5a9"\n SET !ERRORIGNORE YES\n EVENT TYPE=CLICK SELECTOR="#lklBut>A" BUTTON=0")
    }
    if (knopka==2){
       alert (knopka)
       iimPlayCode("FRAME NAME="fXD7e5a9"\n SET !ERRORIGNORE YES\n EVENT TYPE=CLICK SELECTOR="#lkrBut>A" BUTTON=0")
    }
    if (knopka==3){
       alert (knopka)
       iimPlayCode("FRAME NAME="fXD7e5a9"\n SET !ERRORIGNORE YES\n EVENT TYPE=CLICK SELECTOR="#lkmBut>A" BUTTON=0")
    }
}

Не готов ни чего сказать про iimPlayCode -не юзал, и проверить, сейчас, нет возможности, но iimPlay - работает с event без проблем
Да и не понимаю, зачем вам тут вообще js-скрипт, все можно было сделать на имакросе с небольшими вкраплениями eval

Кто мешает написать так:
iimPlay('CODE:EVENT …');
А не юзать iimPlayCode?

10-06-2014 23:36:36

iimPlayCode("EVENT TYPE=CLICK SELECTOR="#myprofile>SPAN" BUTTON=0")   ----- так работать не будет

еще бы оно у тебя работало)))
Кавычки экранировать не пробовал?

10-06-2014 23:40:34
Аналогично и с кодом выше, тоже кавычки не экранированы, так что проблема, явно не в iimPlayCode )))

InfSub пишет

Кто мешает написать так:
iimPlay('CODE:EVENT …');
А не юзать iimPlayCode?

10-06-2014 23:36:36

iimPlayCode("EVENT TYPE=CLICK SELECTOR="#myprofile>SPAN" BUTTON=0")   ----- так работать не будет

еще бы оно у тебя работало)))
Кавычки экранировать не пробовал?

10-06-2014 23:40:34
Аналогично и с кодом выше, тоже кавычки не экранированы, так что проблема, явно не в iimPlayCode )))

Я же говорил , что ты "шарящий воин", хороший совет ! у меня тоже теперь всё заработало даже в iimPlayCode

РЕБЯТА, пробовал сделать чтобы  в группе   во время крмментирования вставлялась страничка с превью от ссылки... но..чет  не выходит..нун находил  код добавления новости..он работает на ура. но так как там сделать не получилось..вот что уменя вышло

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>TEXTAREA" CHARS=Удивительная<SP>красота<SP>природы<BR>https://vk.com/page-70942018_41552539<SP>
EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>TEXTAREA" BUTTON=0
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-*


Код не работает. помогите плз.

Никогда не программировал, просьба не пинать. Чем больше читаю - тем больше каши в голове. Нужен не большой скрипт для отправки фото в группы ВК. Смысл такой:
Взять первую ссылку из файла - перейти - клик по кнопке "добавить фотографии в альбом" - взять фото из файла - клик по кнопке "сохранить" - закрыть вкладку - рандомная пауза 5-15 сек. Взять вторую ссылку из файла - и т.д... Фото одно и то же. Ссылок в файле не более 1000.

Как сделать цикл в этом коде?

скрытый текст

Выделить код

Код:

i=iimPlay("Добавить в друзья.iim")
if (i>0){
   for (;;){
        b=iimPlay("Разгадать капчу.iim")
        if (b<0){
           break
        }  
   }
}

Помогите разобраться в чем ошибка:

скрытый текст

Выделить код

Код:

set iim1 = CreateObject("imacros")
iret = iim1.iimInit()
iplay = iim1.iimPlay("proxy")
extracted_text = iim1.iimGetLastExtract(1)


If iplay = 1 Then

    If instr (extracted_text, "#EANF#") > 0 Then
        iimPlay("proxy.iim",60);
    Else
        iimPlay("address.iim",60);
    End If
    
End If

If iplay < 0 Then
  MsgBox "Ошибка!"
End If


Логика такая:
JS скрипт должен вызывать"proxy.iim", если тот выдаёт результат "#EANF#", тогда запускаем его ещё раз.
Если результат другой, тогда запускаем "address.iim".

Код JS входа в аккаунт в ОК.
Вводит из текстового файла логин и пароль (без нажатия кнопки вход)

скрытый текст
for (i=1;i<=2;i++){
var macro;
    macro =  "CODE:";
    macro +=  "SET !ERRORIGNORE YES" + "\n";
    macro +=  "SET !ERRORCONTINUE YES" + "\n";
    macro +=  "TAB T=1" + "\n";

// С какого аккаунта начинать?" + "\n";
    macro +=  "SET !LOOP 1" + "\n";

// Заходим на одноклассники" + "\n";
    macro +=  "URL GOTO=http://www.odnoklassniki.ru" + "\n";

// Файл с логинами
    macro +=  "CMDLINE !DATASOURCE login.txt" + "\n";
    macro +=  "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
    macro +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.odnoklassniki.ru/https ATTR=ID:field_email CONTENT={{!COL1}}" + "\n";
    macro +=  "SET !ENCRYPTION NO" + "\n";
    macro +=  "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:https://www.odnoklassniki.ru/https ATTR=ID:field_password CONTENT={{!COL2}}" + "\n";

iimPlay(macro);

}


Как сделать, чтобы при повторном цикле брал следующие строки ?
При втором и т.д. циклах постоянно вводит первую строку из файла.

14-06-2014 23:10:31
Нашёл решения, работает

Всем привет.
Ребята подскажите, при запуске рассыльщика facebook выдает такую ошибку

SyntaxError: wrong format of TAG command, line 22 (Error code: -910)

как я понимаю ошибка в 22 строке, вот эта строка:

TAG POS=1 TYPE=INPUT:FILE FORM=ID:u* ATTR=ID:j* CONTENT=C:\\Мои документы\iMacros\Datasources\avatarki_smaili.jpg

но не могу понять где.

Заранее благодарен.:)

Добрый день.
У меня вопрос. Как сделать, что бы команда:
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1);")
Выводила не от 1 до 10, а от 3 до 9??

Tungen пишет

SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1);")
Выводила не от 1 до 10, а от 3 до 9??

SET !VAR1 EVAL("Math.floor(Math.random()*9 + 3);")

InfSub пишет

Tungen пишет: SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1);") Выводила не от 1 до 10, а от 3 до 9??SET !VAR1 EVAL("Math.floor(Math.random()*9 + 3);")

Пробовал так. И при тестировании выходили числа и 10, 11.

Поискал и нашел ваше сообщение:

Выделить код

Код:

SET !VAR6 EVAL("var min=3; var max=9; var res=0; res=Math.floor(Math.random()*(max-min+1))+min;")

Вот это работает идеально. Спасибо.

Подскажите, пожалуйста.
Нужно 3 iim объединить в один js.
То есть, чтобы было так. Запускаю js, он запускает первый 1.iim на 300 циклов, потом 2.iim на 60 циклов, затем 3.iim на 12 циклов. Между ними рандомная задержка.

Этот пример у меня с ошибкой выходит :(

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=40;i++)
 iimSet("LINE",i);
 iimPlay("primer.iim",60);


Как такой js оформить?

Tungen пишет

Как такой js оформить?

воспользуйтесь поиском

InfSub пишет

Tungen пишет: Как такой js оформить?воспользуйтесь поиском

скрытый текст

Выделить код

Код:

var replay = prompt('Кол-во повторов всего скрипта', '');
var allreplay = prompt('Кол-во повторов part1', ''); 
var allreplay1 = prompt('Кол-во повторов part2', ''); 
var n = 0
var p = 0
var macro = "CODE:";
macro += "CLEAR"
while (n <allreplay ) { 
n += 1 
     iimDisplay (n);
     iimPlay("part1");
}
while (p <allreplay1 ) { 
p += 1 
     iimDisplay (p);
     iimPlay("part2");
}


Скрипт выполняет, к примеру, 50 циклов part1.iim, потом 5 циклов part2.iim и останавливается. Хотя первой строкой я вывел var replay = prompt и при запуске js вбиваю туда 999.
В чем может быть проблема?

Tungen пишет
InfSub пишет

воспользуйтесь поиском

скрытый текст

Выделить код

Код:

var replay = prompt('Кол-во повторов всего скрипта', '');
var allreplay = prompt('Кол-во повторов part1', ''); 
var allreplay1 = prompt('Кол-во повторов part2', ''); 
var n = 0
var p = 0
var macro = "CODE:";
macro += "CLEAR"
while (n <allreplay ) { 
n += 1 
     iimDisplay (n);
     iimPlay("part1");
}
while (p <allreplay1 ) { 
p += 1 
     iimDisplay (p);
     iimPlay("part2");
}


Скрипт выполняет, к примеру, 50 циклов part1.iim, потом 5 циклов part2.iim и останавливается. Хотя первой строкой я вывел var replay = prompt и при запуске js вбиваю туда 999.
В чем может быть проблема?

в отсутствии цикла для var replay

InfSub пишет

в отсутствии цикла для var replay

скрытый текст

Выделить код

Код:

var b = 0 //дал переменную
var n = 0 
var p = 0 
var macro = "CODE:";
macro += "CLEAR"
while (b <replay ) { //ввел его для следующих двух
while (n <allreplay ) { 
n += 1
     iimDisplay (n);
     iimPlay("part1");
}
while (p <allreplay1 ) {
p += 1
     iimDisplay (p);
     iimPlay("part2");
}
}


Так будет правильно?

Tungen пишет
InfSub пишет

в отсутствии цикла для var replay

скрытый текст

Выделить код

Код:

var b = 0 //дал переменную
var n = 0 
var p = 0 
var macro = "CODE:";
macro += "CLEAR"
while (b <replay ) { //ввел его для следующих двух
while (n <allreplay ) { 
n += 1
     iimDisplay (n);
     iimPlay("part1");
}
while (p <allreplay1 ) {
p += 1
     iimDisplay (p);
     iimPlay("part2");
}
}


Так будет правильно?

у вас получился бесконечный цикл, т.к. b всегда равна 0
вообще в этом коде оптимально использовать for() а не while() во всех циклах

InfSub пишет

вообще в этом коде оптимально использовать for() а не while() во всех циклах

Не силен в js и плохо понимаю правила записи условия цикла for(), потому взял while().

Tungen пишет
InfSub пишет

вообще в этом коде оптимально использовать for() а не while() во всех циклах

Не силен в js и плохо понимаю правила записи условия цикла for(), потов взял while().

аналогично тому, как вы реализвали с while, только в одну строку
в конструкции for сначала пишется произвольное предложение инициализации цикла, затем — условие продолжения и, наконец, выполняемая после каждого тела цикла некоторая операция (это не обязательно должно быть изменение счётчика; это может быть правка указателя или какая-нибудь совершенно посторонняя операция)
в вашем случае это:

Выделить код

Код:

for(var b=0;b<replay;b++){
    // тело цикла
};

InfSub, спасибо большое. Разобрался, да еще и счетчик iimDisplay прикрутил. Как часики работает.

Подскажите!, как то я встречал дополнение которое работает с imacroc и может делать скрин не всего окна, а определённой его части. Может кто то встречал , тогда подскажите название и есть ли у аймакроса самостоятельная функция скринить часть окна, если да то подскажите команды!?

как всегда , все через задницу делаю, сначала Ищу и не нахожу, потом спрашиваю, потом нахожу :
Вот описание вопроса
http://wiki.imacros.net/SAVE_ELEMENT_SCREENSHOT

вот команда

Выделить код

Код:

ONDOWNLOAD FOLDER=* FILE=proba.bmp  WAIT=YES
TAG... CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
okkamas_knife пишет

tuser№1654сравни путь

Путь до фотки правильный.

tuser пишет
okkamas_knife пишет

tuser, №1654 сравни путь

Путь до фотки правильный.

tuser пишет

TAG POS=1 TYPE=INPUT:FILE FORM=ID:u* ATTR=ID:j* CONTENT=C:\\Мои документы\iMacros\Datasources\avatarki_smaili.jpg

проблема в пробеле и в двойном обратном слеше, поместите файл в корень диска или исправьте путь до него

InfSub пишет

проблема в пробеле и в двойном обратном слеше, поместите файл в корень диска или исправьте путь до него

Да я уже в корень диска С положил

TAG POS=1 TYPE=INPUT:FILE FORM=ID:u* ATTR=ID:j* CONTENT=C:\img\57758031.jpg

туже самую ошибку выдает, в чем проблема не пойму.

Как добавить комментарий к видео на youtube в браузере FF?
нашел два работающих варианта, чтобы добраться до поле ввода комментария:
работает так:

скрытый текст
FRAME NAME="I0_*"
TAG POS=1 TYPE=SPAN ATTR=TXT:А<SP>вы<SP>что<SP>об<SP>этом<SP>думаете?

или так:
скрытый текст
FRAME NAME="I0_*"
EVENT TYPE=CLICK SELECTOR=".Oga" BUTTON=0

в результате появляется кнопка "Отправить".
и нашел, как нажать эту кнопку:
скрытый текст
TAG POS=2 TYPE=DIV ATTR=TXT:Отправить

А как вставить в поле сам текст комментария перед тем, как нажать кнопку "Отправить" не могу понять.
пробовал так:
скрытый текст
EVENTS TYPE=KEYPRESS SELECTOR="#widget_bounds>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(5)>DIV>DIV" CHARS="здесь_какой-нибудь_текст"

ошибки не выдает, но текст не вставляет.

еще пробовал так:

скрытый текст
TAG POS=1 TYPE=DIV ATTR=ROLE:TEXTBOX CONTENT=какой_нибудь_текст

тоже ошибки не выдает, но текст не вставляет.

для проверки делаю так:

скрытый текст
TAG POS=1 TYPE=DIV ATTR=ROLE:TEXTBOX EXTRACT=HTM

в HTM получаю:
скрытый текст
<div style="outline: 1px solid blue;" role="textbox" g_editable="true" class="df b-K b-K-Xb URaP8 editable" id=":b1.f" contenteditable="true"></div>

можно было бы привязаться к DIV id=":b1.f", но этот id каждый раз новый, т.к. данный DIV создаётся JS-скриптом динамически после клика на SPAN с текстом "А что Вы об этом думаете?"

еще у этого DIV есть class="df b-K b-K-Xb URaP8 editable", в котором editable остается постоянно,
то есть можно было бы привязаться и к этой части класса: CLASS:*editable*

ответ где-то рядом, а не могу догнать.
подскажите плиз

Люди добрые подскажите позя
Нужно сделать такую команду

FRAME NAME="fXDad3d5"
TAG POS=1 TYPE=A ATTR=ID:join_community

но каждый раз меняется значение fXDad3d5 например на FXD84723
как сделать поиск?пробовал так FXD***** но толку ноль
Если что это виджет вк для подписки

Как мне написать скрипт для ввода в одно поле текст из двух баз из файлов?
К примеру в первой базе имена а в другой базе фамилии. И мне надо чтобы имя и фамилия ставилась в одно поле.
У меня не выходит привязать к разным переменным два файла.  Подскажите как это сделать не на джава  скривите а обычными командами макроса?

На стены пользователей прикрепляет фото,а вот в группы не хочет :( Кто то сталкивался с такой проблемой?

скрытый текст

Выделить код

Код:

URL GOTO=https://vk.com/
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
TAG POS=1 TYPE=NOBR ATTR=TXT:Прикрепить
WAIT SECONDS=2
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\getImage.jpeg
WAIT SECONDS=3

Duh пишет

Как мне написать скрипт для ввода в одно поле текст из двух баз из файлов?
К примеру в первой базе имена а в другой базе фамилии. И мне надо чтобы имя и фамилия ставилась в одно поле.
У меня не выходит привязать к разным переменным два файла.  Подскажите как это сделать не на джава  скривите а обычными командами макроса?

уже не единожды обсуждалось, как взять данные из нескольких файлов, разве так сложно воспользоваться поиском или элементарно подумать...?

скрытый текст

Выделить код

Код:

SET !DATASOURCE data_file_1.csv
SET !DATASOURCE_LINE {{!LOOP}}
SET !VAR1 {{!COL1}}

SET !DATASOURCE data_file_2.csv
SET !DATASOURCE_LINE {{!LOOP}}
SET !VAR2 {{!COL1}}

ADD !VAR1 {{!VAR2}}


POS=......CONTENT={{!VAR1}}


ОФФТОП: замечание про поиск касается практически всех выше заданных вопросов

FRAME NAME

fevrik пишет

Здравствуйте, вопрос?
Есть макрос:
URL GOTO=***
FRAME NAME="fXD85129" Интерисует эта часть,
Нащел откуда береться этот фрейм.

http://screeny.ru/52f8f32efe9933ae250023d1

Но, при перезагрузки сраницы этот фрэйм меняется.
Сам вопрос.
Как сделать так что бы, с поля name="ЭТО КОПИРОВАЛОСЬ"
и FRAME NAME="вставлялось сюда".
Понимаю что как то надо через Extract, но только как реализовать это не могу понять.
Ну или хотябы попытаться сделать что бы это поле name="Вот этот кусок" появлялся в диалоговом окне.
Как поступить помогите пожалуйста.


Подскажет кто решение этой проблемы? В поиске не нахожу(

Tungen пишет

FRAME NAME

fevrik пишет

Здравствуйте, вопрос?
Есть макрос:
URL GOTO=***
FRAME NAME="fXD85129" Интерисует эта часть,
Нащел откуда береться этот фрейм.

http://screeny.ru/52f8f32efe9933ae250023d1

Но, при перезагрузки сраницы этот фрэйм меняется.
Сам вопрос.
Как сделать так что бы, с поля name="ЭТО КОПИРОВАЛОСЬ"
и FRAME NAME="вставлялось сюда".
Понимаю что как то надо через Extract, но только как реализовать это не могу понять.
Ну или хотябы попытаться сделать что бы это поле name="Вот этот кусок" появлялся в диалоговом окне.
Как поступить помогите пожалуйста.


Подскажет кто решение этой проблемы? В поиске не нахожу(

как минимум укажите адрес страницы, о которой идет речь
обычно, достаточно заменить часть имени фрейма *

нужно на определённой страничке выделять фрагмент текста и скопировать в буфер обмена в промежутках времени - думаю  imacros+js справится с этим...

поможете?

InfSub пишет

как минимум укажите адрес страницы, о которой идет речь
обычно, достаточно заменить часть имени фрейма *

Спасибо большое.
Фреймы с вк.ком
FRAME NAME="fXD*" Сделал так и все работает прекрасно.
Это после обновления какого-то у аймакроса заработало?
В 2012 году пытался так же делать, ничего не выходило, я забросил и всегда перед запуском макроса менял фрейм обновленной страницы :blush:

* во фреймах, уже как минимум год работает

Вопрос по JS

Кусочек из скрипта

Выделить код

Код:

for (i=1;i<=3;i++){
iimSet("LINE",i);
iimPlay("google/posting.iim",60);
}

Цифра 3 - делает 3 цикла макроса posting.iim
iimSet("LINE",i); - передаёт циклы в макрос

TAG POS={{LINE}}

Если в макросе указать

SET LINE 3
TAG POS={{LINE}}

всегда переходит по 3 ссылки, дальше не продолжает.
потому, что всегда передаёт значение 3 {{LINE}}

Вопрос. Как сделать так, чтобы начиная допустим с 3 ссылки
при следующем цикле переходил на 4 ссылку и т.д. ?

Алим пишет

скрытый текст
Вопрос по JS

Кусочек из скрипта

Выделить код

Код:

for (i=1;i<=3;i++){
iimSet("LINE",i);
iimPlay("google/posting.iim",60);
}

Цифра 3 - делает 3 цикла макроса posting.iim
iimSet("LINE",i); - передаёт циклы в макрос

TAG POS={{LINE}}

Если в макросе указать

SET LINE 3
TAG POS={{LINE}}

всегда переходит по 3 ссылки, дальше не продолжает.
потому, что всегда передаёт значение 3 {{LINE}}


Вопрос. Как сделать так, чтобы начиная допустим с 3 ссылки
при следующем цикле переходил на 4 ссылку и т.д. ?

я вижу 2 варианта

1-й в iim файле использовать не команду утверждение SET, а команду сложения ADD
2-й колдовать в js

вариант А )
добавить переменною var b=3 и в цикле сделать b++ , при этом в iim файле убрать SET LINE 3

Выделить код

Код:

var b=3
for (i=1;i<=3;i++){
b++
iimSet("LINE",b);
iimPlay("google/posting.iim",60);
}


вариант Б)
в начале цикла добавлять 3, а конце отнимать 3 от переменной i и тоже убрать строку с iim  SET LINE 3

Выделить код

Код:

for (i=1;i<=3;i++){
i+=3
iimSet("LINE",i);
iimPlay("google/posting.iim",60);
i+=-3
}

Спасибо, выручил!
Добавлю в копилку знаний )

Вариант А. Я указываю var b=3 и начинает с 4, а если указать 0, то с 1 ссылки.

var b=3
for (i=1;i<=3;i++){
b++
iimSet("LINE",b);
iimPlay("google/posting.iim",60);
}

Сделал так b и начинает как надо с 3

Выделить код

Код:

В конце указал b+=+1 и каждый новый цикл прибавляет по 1

var b=3
for (i=1;i<=3;i++){
iimSet("LINE",b);
iimPlay("google/posting.iim",60);
b+=+1
}

Привет ребята, пожалуйста ответьте на вопрос о Imacros.

Узнал о нем недавно, посмотрел видео, почитал...
Попробовал, дополнение мне очень понравилось!!!

Решил сделать на нем бота для игры. В браузерке (типа БК) надо нападать на наставника, и биться с ним. всё это работает нормально, до того момента пока не вылезит капча.

Вот решил у вас, бывалых людей спросить. Как можно сделать некое условие?
Типа: если в ходе работы макроса появилась капча, остановить макрос, после ручного ввода капчи продолжить воспроизведение макроса с самого начала?
Как такое можно сделать ? подскажите пожалуйста, буду благодарен.
Капча выглядит вот так:
h_1403798712_2179575_71f6d65ff8.png

Еще раз спасибо заранее!


(Добавлено)
Как я вообще могу узнать, что вылезла капча ?
И возможно ли сделать какой нибудь звук, или высветить окошко поверх всех окон ?))))

SAOi пишет

Вот решил у вас, бывалых людей спросить. Как можно сделать некое условие?
Типа: если в ходе работы макроса появилась капча, остановить макрос, после ручного ввода капчи продолжить воспроизведение макроса с самого начала?
Как такое можно сделать ? подскажите пожалуйста, буду благодарен.
Капча выглядит вот так:
http://storage7.static.itmages.com/i/14 … d65ff8.png

если капча не на флеше и текст можно ввести с клавиатуры, а не только нажимая цифры под полем ввода - то можно
в поиске вы найдете решения или рекомендации, как на вопрос, как остановить макрос, при появлении капчи, и как работать с сервисами антикапчи, обсуждалось уже не раз
если же хотите без антикапчи, думаю, даже флеш-капча - не будет помехой

SAOi пишет

(Добавлено)
Как я вообще могу узнать, что вылезла капча ?
И возможно ли сделать какой нибудь звук, или высветить окошко поверх всех окон ?))))

да, возможно, все это, так же обсуждалось неоднократно

Подскажите пожалуйста, как сделать проверку условия.

Выделить код

Код:

Если на экране написано "1", то начать скрипт заного, в противном случае нажать на кнопку и вернуться в начало цикла
kostik456 пишет

Подскажите пожалуйста, как сделать проверку условия.Выделить кодКод:Если на экране написано "1", то начать скрипт заного, в противном случае нажать на кнопку и вернуться в начало цикла

Выделить код

Код:

for (var k=1;k<=123;k++){                                                                                           // цикл 123 раза        for (var k=1;1<=123;k++){        - такбезконечно

do {
var    tyt = "CODE:SET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES"+s_n;
    tyt += "TAG POS=1 TYPE=A ATTR=TXT:Группы"+s_n;                                              // сам скрипт

    tyt += "TAG POS=1 TYPE=body ATTR=txt:*1* extract=txt"+s_n;                              // поиск "1" на всей странице
    var pl_tyt = iimPlay(tyt);

    ip=iimGetLastExtract();                                                                                           // у меня такая универсальная приблуда регулярка
    var word = "1";
    var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');                                     
    var ip =ip.replace(myRegExp,"TutEst");                                                                       

} while (ip == "TutEst" );                                                                                                 // если "1" есть, то код дальше пойдет выполняться, если нет то заново

var    tyt = "CODE:TAG POS=1 TYPE=input ATTR=type:button"+s_n;                                       // нажатие на кнопку
    var pl_tyt = iimPlay(tyt);

}
spy686 пишет

скрытый текст

kostik456 пишет

Подскажите пожалуйста, как сделать проверку условия.Выделить кодКод:Если на экране написано "1", то начать скрипт заного, в противном случае нажать на кнопку и вернуться в начало цикла

Выделить код

Код:

for (var k=1;k<=123;k++){                                                                                           // цикл 123 раза        for (var k=1;1<=123;k++){        - такбезконечно

do {
var    tyt = "CODE:SET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES"+s_n;
    tyt += "TAG POS=1 TYPE=A ATTR=TXT:Группы"+s_n;                                              // сам скрипт

    tyt += "TAG POS=1 TYPE=body ATTR=txt:*1* extract=txt"+s_n;                              // поиск "1" на всей странице
    var pl_tyt = iimPlay(tyt);

    ip=iimGetLastExtract();                                                                                           // у меня такая универсальная приблуда регулярка
    var word = "1";
    var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');                                     
    var ip =ip.replace(myRegExp,"TutEst");                                                                       

} while (ip == "TutEst" );                                                                                                 // если "1" есть, то код дальше пойдет выполняться, если нет то заново

var    tyt = "CODE:TAG POS=1 TYPE=input ATTR=type:button"+s_n;                                       // нажатие на кнопку
    var pl_tyt = iimPlay(tyt);

}

Я , если ссылка, где расположено условие ,в данном случае "1", не кликабельна , то делаю так (намного уменьшает код, да и анализировать легче)

Выделить код

Код:

for (;;){
    if (iimPlayCode("SET !TIMEOUT_STEP 1\n TAG POS=1 TYPE=body ATTR=txt:*1*")>0){ 
      alert ('нашёл');
    }
}

если кликабельна то приходется работать через iimGetLastExtract()

Доброго времени суток.
Помогите с советом, есть рабочий JS с циклом по переходу от аккаунта к аккаунту, который выполняет свою задачу...для этого я использую очень много аккаунтов.
как сделать чтоб js  брал данные (логин и пароль) из txt или csv?
Вот нашел такой код:


CMDLINE !DATASOURCE akk.csv
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://baza.ru
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:test_form ATTR=NAME:name CONTENT={{!COL1}}


всё работает но цикл приходится вручную включать в плагине макроса... а у меня JS не может при рваться для этого

Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.

while(true) {

var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
alert

}

bitlex пишет

Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.

}

добавь счетчик проигрывании

в начале цикла введи новую переменную к примеру
var lose=0

if(extract == "l") { // я так понимаю тут команда проигрываний
iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании
lose++                // прибавляет 1 
}
if(extract == "w") { iimPlay(macro3);
}

if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете
  for (b=1;b<=4;b++){
        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза
  }

}


У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Спасибо! Попробую.

kolshix пишет

bitlex пишет: Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.}добавь счетчик проигрывании в начале цикла введи новую переменную к примеру var lose=0if(extract == "l") { // я так понимаю тут команда проигрываний  iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании lose++                // прибавляет 1  }if(extract == "w") { iimPlay(macro3);}if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете  for (b=1;b<=4;b++){        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза   }}У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Поставил как понял, но бот стал увеличивать сразу в несколько раз.и не уменьшать.

while(true) {

var lose=0
var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro2);  //
}
alert

}

Может я не правильно понял.

bitlex пишет

скрытый текст

kolshix пишет

bitlex пишет: Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.}добавь счетчик проигрывании в начале цикла введи новую переменную к примеру var lose=0if(extract == "l") { // я так понимаю тут команда проигрываний  iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании lose++                // прибавляет 1  }if(extract == "w") { iimPlay(macro3);}if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете  for (b=1;b<=4;b++){        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза   }}У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Поставил как понял, но бот стал увеличивать сразу в несколько раз.и не уменьшать.

while(true) {

var lose=0
var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro2);  //
}
alert

}

Может я не правильно понял


.

конечно не правильно поняли!

var lose=0  ----- выставляется вне цикла

в условии (нужно добавить счетчик )

if(extract == "l") {
iimPlay(macro2);
lose++   // счётчик
}

в условии (я прозивал ) нужно установить сброс счетчика
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro3);  //  макрос же ваш -- слидите за командами , если пошло умножение , то поменяйте команду (было macro2 -стало macro3)
       lose=0 // сброс счетчика , который я прозивал
}


и почему бы не сделать так ?

Выделить код

Код:

var lose=0

for (ckl=1;ckl<=100;ckl++){ // количество нужных повторений 100
     iimPlayCode("TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT")
     var s = iimGetLastExtract();
     var extract = s.charAt(18);

     if (extract == "l") {  // работаю если проиграл 
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x")
        lose++   // счётчик 
     }

     if (extract == "w") { // работаю если выиграл
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min")
    }

    if (lose==7){//
       for (b=1;b<=7;b++){
            iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min") // я так понимаю это команда уменьшения , если не угадал , то нужно поменять команду 
            lose=0   // сброс счётчика
      }
   }
}

kolshix пишет
bitlex пишет

скрытый текст

kolshix пишет

bitlex пишет: Здравствуйте знатоки! Кто может помочь, мне нужна команда для js что бы можно было прописать максимальное значение до которого бот бы доходил и уходил снова на минимум и повторял цикл. Для игры больше меньше . Бот работает по системе мартингейла при проигрыше удваивает ставку,мне нужно прописать ему максимальную ставку до которой он дойдет и при проигрыше больше не будет удваивать а начнет сначала с минимальной ставки.}добавь счетчик проигрывании в начале цикла введи новую переменную к примеру var lose=0if(extract == "l") { // я так понимаю тут команда проигрываний  iimPlay(macro3);  // я так понимаю эта команда умножает ставку на 2 при проигрывании lose++                // прибавляет 1  }if(extract == "w") { iimPlay(macro3);}if (lose==4){//к примеру 4, я не знаю какое количество проигрышей Вы допускаете  for (b=1;b<=4;b++){        iimPlay(macro2);  //  команда уменьшит ставку в 2 , четыре раза   }}У меня частенько глюки со считвми в циклах , перепроверте, но я думаю идею вы поняли

Поставил как понял, но бот стал увеличивать сразу в несколько раз.и не уменьшать.

while(true) {

var lose=0
var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);



var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min" + "\n";




if(extract == "l") { iimPlay(macro2);
}
if(extract == "w") { iimPlay(macro3);
}
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro2);  //
}
alert

}

Может я не правильно понял


.

конечно не правильно поняли!

var lose=0  ----- выставляется вне цикла

в условии (нужно добавить счетчик )

if(extract == "l") {
iimPlay(macro2);
lose++   // счётчик
}

в условии (я прозивал ) нужно установить сброс счетчика
if (lose==7){//
  for (b=1;b<=7;b++){
        iimPlay(macro3);  //  макрос же ваш -- слидите за командами , если пошло умножение , то поменяйте команду (было macro2 -стало macro3)
       lose=0 // сброс счетчика , который я прозивал
}


и почему бы не сделать так ?

Выделить код

Код:

var lose=0

for (ckl=1;ckl<=100;ckl++){ // количество нужных повторений 100
     iimPlayCode("TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT")
     var s = iimGetLastExtract();
     var extract = s.charAt(18);

     if (extract == "l") {  // работаю если проиграл 
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x")
        lose++   // счётчик 
     }

     if (extract == "w") { // работаю если выиграл
        iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min")
    }

    if (lose==7){//
       for (b=1;b<=7;b++){
            iimPlayCode("TAG POS=1 TYPE=A ATTR=ID:double_your_btc_min") // я так понимаю это команда уменьшения , если не угадал , то нужно поменять команду 
            lose=0   // сброс счётчика
      }
   }
}

Спасибо за помощь.Заработаю отблагодарю обязательно.Кажется работает)

Выделить код

Код:

CMDLINE !DATASOURCE 7000strok-post-po-45strok.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
EVENTS TYPE=A SELECTOR="pravka" CHARS={{!COL1}}
EVENT TYPE=GOOD SELECTOR="sub" BUTTON=0
'Какая команда отвечает за взятие нужного количества строк 1-45, 46-91... в каждом цикле ?

Можно ли каким то образом при каждом цикле удалять первую строчку из txt файла?

CMDLINE !DATASOURCE akk.txt
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

Здравствуйте всем.
Помогите решить следующую проблему. Каким образом нажать на "ОК" Alerta, когда он появляется не сразу от нажатия на кнопку, а после загрузки с сервера необходимой информации.
Для примера можно перейти по ссылке http://javascript.ru/ajax/intro#chto-takoe-ajax-primer-realizacii, там Alert появляется всегда через разное время, оно может быть и очень долгим.
Я написал следующий код (для этого сайта):

Выделить код

Код:

function YbiraemModalnoeOkno()
{var operacii1 = "CODE:";
    for (var i = 1; i < 20; i++) {operacii1 += "ONDIALOG POS="+i+" BUTTON=OK CONTENT="+s_n;}
    var retcode1 = iimPlay(operacii1);  
}

    var operacii1 = "CODE:SET !ERRORIGNORE YES"+s_n;
    operacii1 += "TAG POS=2 TYPE=INPUT:BUTTON ATTR=*";
    var retcode1 = iimPlay(operacii1);  //нажимаем на кнопку
    for (;;)
    {var DlyaOpredeleniyaStepeniZagryzhennosti = window.content.document.querySelectorAll('div[id="vote_status"]'); // находим статус
      if (DlyaOpredeleniyaStepeniZagryzhennosti[0].innerHTML == 'Ожидаю ответа сервера...')
      {YbiraemModalnoeOkno();}
      else
      {break;}
    }

Проблема в том, что если модальное окно появляется в момент обработки кода javascript, то выполнение программы останавливается. Долго ждать окна, тоже не хотелось бы.

Замена Alerta ничего не даёт (для сайта http://www.javascripter.net/faq/confirm.htm#top):

Выделить код

Код:

var SoobshcenieAlertaConfirma = iimExtractAlertConfirm("TAG POS=1 TYPE=INPUT:BUTTON FORM=NAME:myform ATTR=*");
alert("Last alert message was: "+SoobshcenieAlertaConfirma);

function iimExtractAlertConfirm(triggerCode) {
   var msg, msgAlert, msgConfirm;
   var evtListenerAlert=function(evtAlert){msgAlert=evtAlert.target.getAttribute('alt1Alert')};
   var evtListenerConfirm=function(evtConfirm){msgConfirm=evtConfirm.target.getAttribute('alt1Confirm')};
   window.content.document.addEventListener("alertEvent", function(eAlert){evtListenerAlert(eAlert)}, false, true);
   window.content.document.addEventListener("confirmEvent", function(eConfirm){evtListenerConfirm(eConfirm)}, false, true);
   iimPlay("CODE:SET !ERRORIGNORE YES\nURL GOTO=javascript:var<SP>msgAlert,msgConfirm,alert_old=window.alert,confirm_old=window.confirm;"//var<SP>"
   +"(function(){window.alert=function(strAlert){msgAlert=strAlert;"
   +"}})();\n"
   +"URL GOTO=javascript:(function(){confirm=function(strConfirm){msgConfirm=strConfirm;"
   +"}})();\n"
   +triggerCode+"\n"
   +"URL GOTO=javascript:(function(){alert=alert_old;confirm=confirm_old;var<SP>element=window.content.document.createElement('dElm');"
   +"element.setAttribute('alt1Alert',msgAlert);element.setAttribute('alt1Confirm',msgConfirm);window.content.document.documentElement.appendChild(element);" 
   +"var<SP>evtAlert=window.content.document.createEvent('Events');evtAlert.initEvent('alertEvent',true,false);element.dispatchEvent(evtAlert);"
   +"var<SP>evtConfirm=window.content.document.createEvent('Events');evtConfirm.initEvent('confirmEvent',true,false);"
   +"element.dispatchEvent(evtConfirm)"
   +"})();"
   );
   window.content.document.removeEventListener("alertEvent", function(eAlert){evtListenerAlert(eAlert)}, false, true);
   window.content.document.removeEventListener("confirmEvent", function(eConfirm){evtListenerConfirm(eConfirm)}, false, true);
    if (!(msgAlert == 'undefined')) {msg = msgAlert;}
    if (!(msgConfirm == 'undefined')) {msg = msgConfirm;}
   return msg; // может выдать кроме Confirm, еще и Alert, следующий за ним (Alert будет только от отрицательного нажатия Confirm, т.е. после нажатия кнопки "Отмена")
}

Как поставить iMacros на SeaMonkey?

Неужели никто не может ответить на мой вопрос? Или я  не корректно задал вопрос? У меня версия Firefox 30.0.

Мне нужно добавлять друзей из поиска из соц. сети "Мой Мир" от майл.
Добавлять нужно только тех людей, которые на сайте и у которых больше 300 друзей.

Те люди которые на сайте у них высвечивается из поиска на зелёном фоне "На сайте"
Так же под каждым человеком высвечивается количество друзей.

Если JS не находит к примеру одно слово на странице, то выполняется второй макрос, если находит, то первый макрос. А вот как сделать чтобы было 2 условия: 1. на сайте и 2. если у человека 300 или больше друзей, чтобы он только их добавлял, то есть чтобы выполнялся первый макрос, а если нет одно из 2 условий, шёл дальше ?

Алим пишет

скрытый текст
Мне нужно добавлять друзей из поиска из соц. сети "Мой Мир" от майл.
Добавлять нужно только тех людей, которые на сайте и у которых больше 300 друзей.

Те люди которые на сайте у них высвечивается из поиска на зелёном фоне "На сайте"
Так же под каждым человеком высвечивается количество друзей.

Если JS не находит к примеру одно слово на странице, то выполняется второй макрос, если находит, то первый макрос. А вот как сделать чтобы было 2 условия: 1. на сайте и 2. если у человека 300 или больше друзей, чтобы он только их добавлял, то есть чтобы выполнялся первый макрос, а если нет одно из 2 условий, шёл дальше ?

один
if (i==Online){
   if (b==300_друзей){
      Добавить в друзья
  }
}

Ну или
я думаю догадаешься где что вставить и подправить!?
if (b==300_друзей){

      dobavit=20
   }
   if (i==Online){
     dobavit+=+20
  }

  if (dobavit>39){
    что-то делаем
}

А вот когда слово не находит или ссылку, то выполняется следующий макрос, то есть может пойти и следующий цикл всего скрипта.
А как сделать, вот к примеру в скрипте прописан 1 макрос который разгадывает капчу с антигейта. Если капча не разгадана, то он заново её начинает разгадывать, то есть идёт второй цикл этого же макроса в скрипте.

Это легко сделать если этот макрос который разгадывает капчу поставить в начале всех остальных макросов.
Но если он в середине или в конце. Сделать так, чтобы следующий макрос не воспроизводился, а воспроизводился тот макрос, который разгадывает капчу, до тех пор пока не разгадает капчу?

---

Там же стоит
if (i>0 ){ //нашло слово

это значит пока не откадает капчу он дальше всё ровно не пойдёт, в независимости где этот макрос расположен в коде скрипта.

---
нет не сработало, дальше всё ровно продолжает даже если капча на странице
1 раз не угадал капчу, второй раз цикл этого макроса в скрипте не делает.

i=iimPlayCode("TAG POS=1... капча...")
if (i>0 ){ //нашло слово

дальше идёт. А как сделать если капча не угадана на странице вконатике
чтобы заново цикл делал, до тех пор, пока капчу не угадает ?

---
Мне кажется нужно использовать не оператор if, а while

Читал я об одном свойстве и вот наконец с ним встретился , но как быть не знаю

вот  код

Выделить код

Код:

iimPlayCode("SET !EXTRACT 500\n ADD !EXTRACT 80")
var i = iimGetLastExtract(1)
var b = iimGetLastExtract(2)

if (i<b){
alert ('i больше')   // срабатывают эти кавычки 
}
if (i>b){
alert ('b больше')
}

alert (i<b) // выдаст  true хотя цифры 500<80
alert (i>b) // выдаст  false хотя цифры 500>80

всем понятно , что i =500 и должно выполнится условие if (i>b){..., но на самом деле скрипт видит  что B больше так как у него в начале стоит 8  и макрос считает что условие
80>500   ---- true
а условие
80<500    ---- false

Хотя если сделать просто , то всё работает как часики

Выделить код

Код:

var i = 500
var b = 80

if (i<b){
alert ('i больше')
}
if (i>b){
alert ('b больше')   // срабатывают эти кавычки 
}

я так понял после копирования информации из iim файла , копированная информация воспринимается ни как число, а как набор цифр и по этому 80 больше чем 500 , Теперь вопрос, как сделать так  чтоб 500 было больше 80?



Опять 25 ! Сам задал , сам ответил !  Найти ответ не мог, так как не знал терминологии ! я опять часов так 6 искал ошибку макросе или в калькуляции, оказалось макрос просто недоработан !   (всего лишь +, но какой важный!)

ответ
Это называется "Преобразование к числу"
Когда извлеклась информация из imm файла, это были только данные, неопределённые, т.е. это числа, буквы или
буквы и числа.   Чтоб информации присвоить числовое значение делаем так :

// Строгое преобразование можно осуществить унарным плюсом '+' //

var i = + iimGetLastExtract(1)

kolshix, молодец, растешь!
про унарный +, я, к примеру, не знал, и сделал бы, на js, вот так:

var i = Number(iimGetLastExtract(1));
if.....

InfSub пишет

kolshix, молодец, растешь!
про унарный +, я, к примеру, не знал, и сделал бы, на js, вот так:

var i = Number(iimGetLastExtract(1));
if.....

сколько я промучился, пока выпалил, что в буфере js не числовая информация, а просто информация, там ещё кроме унарного плюса, есть ещё 2 условия, читать не стал, спешил проверить работоспособность!

Доброго времени суток.
Подскажите, пожалуйста, можно в js вставить таймер?
У меня есть js, он запускает 3 iim поочередно. Сейчас надо добавить к нему 4-й iim, но так, чтобы четвертый выполнялся раз в 10 минут независимо от стальных трех.
Я так понимаю можно использовать цикл for и он будет проверять если по переменной дошло или превысило 10 минут, то запускать скрипт, а если нет то идти дальше к другим iim.
Вот только как это реализовать?

Tungen пишет

Доброго времени суток.
Подскажите, пожалуйста, можно в js вставить таймер?
У меня есть js, он запускает 3 iim поочередно. Сейчас надо добавить к нему 4-й iim, но так, чтобы четвертый выполнялся раз в 10 минут независимо от стальных трех.
Я так понимаю можно использовать цикл for и он будет проверять если по переменной дошло или превысило 10 минут, то запускать скрипт, а если нет то идти дальше к другим iim.
Вот только как это реализовать?

Используйте функцию date()

InfSub пишет

Используйте функцию date()

Не знаю как его использовать :blush:

Нашел вот такой код. Он позволяет запустить скрипт в определенное время. В примере это 9:58:30.
Но как сделать чтобы он от времени отсчитывал 10 минут?

скрытый текст

Выделить код

Код:

var start = new Date();
var yy=start.getFullYear();
var mm=start.getMonth()+1;
var dd=start.getDate();
var i;

var ms=(new Date()).getTime()-Date.parse(yy+'/'+mm+'/'+dd);

if (ms<=50310000) {i = iimPlay("click");}
// 9:58:30=50310000


---------------------------------------------------------------------------

Этим кодом можно добиться полученная в переменную текущей минуты на часах

скрытый текст

Выделить код

Код:

var start = new Date();
var i;
var ms=(new Date()).getMinutes();
iimDisplay(ms);


Теперь у меня вопрос, как в цикл for вставить несколько значений для переменой i?

Выделить код

Код:

for (i = 1; i = ms; i++) {iimPlay("click");}

Чтобы получился у цикла for перебор минут: 1, 11, 21, 31, 41, 51 и если одна из них = ms, то выполнялся скрипт iimPlay("click");?

Tungen пишет
InfSub пишет

Используйте функцию date()

Не знаю как его использовать :blush:

Нашел вот такой код. Он позволяет запустить скрипт в определенное время. В примере это 9:58:30.
Но как сделать чтобы он от времени отсчитывал 10 минут?
...

все вопросы по js, обсуждаются на форумах посвященных js

09-07-2014 21:29:43

Tungen пишет

Чтобы получился у цикла for перебор минут: 1, 11, 21, 31, 41, 51 и если одна из них = ms, то выполнялся скрипт iimPlay("click");?

да и не проще ли вычесть текущее время из таймштампа, сделанного при запуске скрипта, и сравнивать прошло уже 10 минут или нет, чем перебирать минуты, которые в конечном счете обнулятся

InfSub пишет

вычесть текущее время из таймштампа

Не подскажите  как это сделать?

Tungen пишет
InfSub пишет

вычесть текущее время из таймштампа

Не подскажите как это сделать?

повторюсь, данный форум не посвящен решению вопросов по js, для того есть google.com и сайты/форумы соответствующей тематики
я дал только направление для поиска, т.к. предложенный вами метод, скорее всего вызовет у вас гораздо больше подводных камней при решении

09-07-2014 22:21:27
для общего понимания, о чем гуглить: вы имеете время полученное с помощью new Date(), и сохраненное, к примеру, в переменной ts
соответственно, выполнив требуемые действия со скриптами, делаем следующий таймштамп, который сохраняем в ts_n
сравниваем...
думаю остальную логику сами додумаете, сравнению дат в гугле посвящено куча статей и обсуждений

Здравствуйте  форумчане,  может кто помочь,  надо переделать этот скрипт,он очень похож на тот
что выложен выше ,но суть не в этом , на сайте  http://freebitco.in , можно выиграть 1.биткоин за 48 часа,
это примерно 600$.  и я знаю как ,но для этого надо переделать скрипт просто по тому как  уж очень
нудно и муторно клацать ! ,а я в програмировании  полный ноль !
вот и прошу помощи у знающих как переделать скрипт по следующему сценарию.
http://freebitco.i
  жмем бет хай - если проигрыш, скрипт  автоматом удваивает
ставку и переход на бет ло-если проигрыш то скрипт удваивает ставку и перход
на бет хай,если выигрыш то оставаться и продолжить с минимальной ставкой,и 
далее по кругу.
пожалуйста помогоите сделать его правильно, по вопросам как не сливать  в личку,
в рефералы ни кого не приглашаю ,мне это не надо.

while(true) {

var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=5" + "\n";

var r = window.find("you win");
var check = window.document.getElementById("double_your_btc_bet_hi_button").enabled;

var macro2;
macro2 = "CODE:";
macro2 += "TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x" + "\n";

var macro3;
macro3 = "CODE:";
macro3 += "TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:double_your_btc_stake CONTENT=0.00000001" + "\n";

if((!r)&&(!check)){ iimPlay(macro2); }
if((r)&&(!check)) { iimPlay(macro3); }
if (!check) { iimPlay(macro1); }

}

shtamp пишет

Здравствуйте  форумчане,  может кто помочь,  надо переделать этот скрипт,он очень похож на тот
что выложен выше ,но суть не в этом , на сайте  http://freebitco.in , можно выиграть 1.биткоин за 48 часа,
это примерно 600$.  и я знаю как ,но для этого надо переделать скрипт просто по тому как  уж очень
нудно и муторно клацать ! ,а я в програмировании  полный ноль !
вот и прошу помощи у знающих как переделать скрипт по следующему сценарию.
http://freebitco.i
  жмем бет хай - если проигрыш, скрипт  автоматом удваивает
ставку и переход на бет ло-если проигрыш то скрипт удваивает ставку и перход
на бет хай,если выигрыш то оставаться и продолжить с минимальной ставкой,и 
далее по кругу.
пожалуйста помогоите сделать его правильно, по вопросам как не сливать  в личку,
в рефералы ни кого не приглашаю ,мне это не надо.
...

данные скрипты давно лежат в сети и совершенно бесполезны, по причине того, что на 5-8 подряд проигрыше (в зависимости от выигрыннанных на данный момент биткоинов), вы улетите в ноль

RTFM: учебник математики и FAQ по системе управления ставками Мартингейла

10-07-2014 12:28:48

shtamp пишет

жмем бет хай - если проигрыш, скрипт  автоматом удваивает
ставку и переход на бет ло-если проигрыш то скрипт удваивает ставку и перход
на бет хай

а данный метод (смена lo/hi), еще больше снизит вероятность выигрыша

Причины, думаю можно найти в теории вероятности, а так же в учебниках по программированию, в разделе о генерации случайных чисел и борьбе с "предугадыванием" последующих результатов

InfSub пишет

а данный метод (смена lo/hi), еще больше снизит вероятность выигрыша

Причины, думаю можно найти в теории вероятности, а так же в учебниках по программированию, в разделе о генерации случайных чисел и борьбе с "предугадыванием" последующих результатов

ну так можете перделать или нет?

shtamp пишет
InfSub пишет

а данный метод (смена lo/hi), еще больше снизит вероятность выигрыша

Причины, думаю можно найти в теории вероятности, а так же в учебниках по программированию, в разделе о генерации случайных чисел и борьбе с "предугадыванием" последующих результатов

ну так можете перделать или нет?

легко, пиши на мыло, обсудим

Всем привет, задача такая: Нужно при включении компьютера, что FireFox запускался автоматически, и начинал выполнять макрос некоторое количество раз. Как сделать автозапуск FF знаю, как сделать, чтобы при запуске воспроизводился макрос - знаю, а вот как сделать, чтобы он повторялся (зациклился N количество раз) не знаю, кто может - помогите)

InfSub пишет

....

Привет, можешь помочь?
У меня в макросе идет на сайт, берет текст из файла, вставляет в поиск, нажимает "НАЙТИ", дальше полученный результат сохраняет
Так вот, задался таким вопросом, возможно ли сохранять во вторую колонку текст который командой EXTRACT копирует текст с сайта и что бы начинал сохранять с первой линии?

сам скрипт

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
SET !TIMEOUT 100
SET !TIMEOUT_STEP 100
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
URL GOTO=http://site.ru/
WAIT SECONDS=1
SET !DATASOURCE C:\\Users\\user\\Documents\\iMacros\\Macros\\test\\test.csv
WAIT SECONDS=0.30
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
WAIT SECONDS=0.30
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:frmFind ATTR=ID:term CONTENT={{!COL1}}
WAIT SECONDS=0.30
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:frmFind ATTR=*
WAIT SECONDS=1
CLICK X=367 Y=276
WAIT SECONDS=1
TAG POS=1 TYPE=TBODY ATTR=* EXTRACT=TXT
WAIT SECONDS=0.30
SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\user\\Documents\\iMacros\\Macros\\test\\ FILE=test.csv
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 20); randomNumber;")
WAIT SECONDS={{!VAR1}}

12-07-2014 07:25:34

Галимов Руслан пишет

зациклился N количество раз

java script, расширение у файла дожно быть .js
for (i=0;i<10;i++) 0 - идет отсчет от нуля; 10 - сколько раз будет повторяться
{
iimPlay("C:\\Users\\user\\Documents\\iMacros\\Macros\\НАЗВАНИЕ МАКРОСА.iim",60);
}

Protey пишет

задался таким вопросом, возможно ли сохранять. о вторую колонку текст который командой EXTRACT копирует текст с сайта и что бы начинал сохранять с первой линии?

Не совсем понял суть вопроса... Что должно быть в 1 колонке, а что во 2?

InfSub пишет

Что должно быть в 1 колонке, а что во 2?

Из файла test.csv в колонке 1 берется текст, с помощью которого делается поиск, 1 колонка должна быть не изменна, а вот после или перед, не знаю как будет правильней, команды TAG POS=1 TYPE=TBODY ATTR=* EXTRACT=TXT, во вторую колонку надо сделать так что бы найденный текст сохранялся в тот же файл test.csv во 2-ю колонку последовательно с 1 строки

В Одноклассниках не могу справиться с этим кодом

TAG POS=627 TYPE=SPAN ATTR=TXT:Класс!

делаю так  не работает TAG POS={{!LOOP}} TYPE=SPAN ATTR=TXT:Класс!

Доброго времени суток всем.

Есть небольшая проблемка и я не могу с ней справиться, прошу помощи у знающих.
Вобщем есть файл A.iim и файл В.iim.

Код в каждом из файлов разгадывает каптчу, но на разных сайтах. То есть в файле А прописан сайт А, в файле В прописан сайт В.
Запустить одновременно 2 файла не получается, поэтому и вопрос - Как сделать так, чтобы оба файла проигрывались за 1 раз?

Попробовал объединить оба файла в один - не получилось - код отправляет каптчу на антигейт, отгадывает и подставляет в поле ввода  на сайте А, далее переходит ко второму сайту В, также отгадывает каптчу, но вот при подстановке уже подставляется черти что, по-моему макрос не перезаписывает буфер, а добавляет в него ответ второй каптчи.

Как реализовать либо очистку буфера, либо два разгадывания каптчи в одном файле?

Texas пишет

Доброго времени суток всем.Есть небольшая проблемка и я не могу с ней справиться, прошу помощи у знающих.Вобщем есть файл A.iim и файл В.iim.Код в каждом из файлов разгадывает каптчу, но на разных сайтах. То есть в файле А прописан сайт А, в файле В прописан сайт В.Запустить одновременно 2 файла не получается, поэтому и вопрос - Как сделать так, чтобы оба файла проигрывались за 1 раз?Попробовал объединить оба файла в один - не получилось - код отправляет каптчу на антигейт, отгадывает и подставляет в поле ввода  на сайте А, далее переходит ко второму сайту В, также отгадывает каптчу, но вот при подстановке уже подставляется черти что, по-моему макрос не перезаписывает буфер, а добавляет в него ответ второй каптчи.Как реализовать либо очистку буфера, либо два разгадывания каптчи в одном файле?

очистку буфера:
SET !EXTRACT NULL  - http://wiki.imacros.net/!EXTRACT

в одном файле:
в .js

Выделить код

Код:

iimPlay("A.iim",60);
                iimPlay("B.iim",60);

Есть ли способ использовать jQuery в js-файле, исполняемом через iMacros?

Protey пишет

надо сделать так что бы найденный текст сохранялся в тот же файл test.csv во 2-ю колонку последовательно с 1 строки

это не возможно
возможно записать  в другой файл, и первую и вторую колонку, но в тот же нельзя
тот же файл, вы можете, только дописать

13-07-2014 17:19:39

null28 пишет

Есть ли способ использовать jQuery в js-файле, исполняемом через iMacros?

нет, этот функционал, как в прочем и многое другое, используемое в веб дизайне - подключить нельзя, разве что, какими-то хаками

spy686 пишет

очистку буфера:
SET !EXTRACT NULL  - http://wiki.imacros.net/!EXTRACT

в одном файле:
в .js

Выделить код

Код:

iimPlay("A.iim",60);
                iimPlay("B.iim",60);

Большое спасибо.

Доброе время суток форумчане !
Подскажите пожалуйста возможно ли реализовать Имакросом авто-публикации записей в вордпресс (создание отложенных записей не рассматривается) материал должен браться с тхт файла и публиковаться в вордпрессе ?
Также интересует на сколько это практично будет или данное действие проще будет организовать в зенно постере ?
Заранее спасибо.

Как сделать, чтобы 2 макроса были в одном цикле в JS

Делаю так не получается

скрытый текст
for (var i=1;i<=online1;i++){
iimPlay("macros1.iim",60);
for (var i=1;i<=vdruziya;i++){
iimPlay("macros2.iim",60);
}

чтобы если одному макросу поставить 0 циклов
вот так
скрытый текст
for (var i=1;i<=online1;i++){
iimPlay("macros1.iim",60);
for (var i=1;i<=0;i++){
iimPlay("macros2.iim",60);
}

чтобы второй макрос не воспроизводился, а воспроизводился только 1-ый ?

Доброго времени,люди подскажите как  параметр TYPE определить имеется короч такой  код

скрытый текст
<div id="LastBetInfoContainer">
                            <span id="LastBetInfoWon">Посл. ставка: выигрыш</span>
                            <span id="LastBetInfoLost">Посл. ставка: проигрыш</span>
                            <span id="LastBetInfoProfit"></span><span id="LastBetInfoProfitZeroes" class="NeutralNumber NumberIrrelevant"></span>
                            <span>BTC&nbsp; &nbsp; &nbsp; [<span id="LastBetInfoSecret"></span>]</span>
                            <span id="LastBetInfoDelay">[<span id="LastBetInfoDelayAmount"></span>]</span>
                        </div>

при использовании TYPE=SPAN извлекает  -  Посл. ставка:**** ,а хотелось бы что-бы извлекал  -   LastBetInfo*** , есть конечно другое решение,  оба осазнаю но не доганяю как сделать,предпологаю что это проще ,и прошу посильной помощи,заранее благодарен за отзывчивость

OFFTOPIC
Господа, не буду тыкать пальцем, Вы уже достали своим биткоином... не работают скрипты с рулеткой, успокойтесь уже, люди делавшие тот сайт, не идиоты, дающие возможность выиграть, все это просто развод, с наживой от показа рекламы

pahan27 пишет

Доброго времени,люди подскажите как  параметр TYPE определить имеется короч такой  код

скрытый текст
<div id="LastBetInfoContainer">
                            <span id="LastBetInfoWon">Посл. ставка: выигрыш</span>
                            <span id="LastBetInfoLost">Посл. ставка: проигрыш</span>
                            <span id="LastBetInfoProfit"></span><span id="LastBetInfoProfitZeroes" class="NeutralNumber NumberIrrelevant"></span>
                            <span>BTC&nbsp; &nbsp; &nbsp; [<span id="LastBetInfoSecret"></span>]</span>
                            <span id="LastBetInfoDelay">[<span id="LastBetInfoDelayAmount"></span>]</span>
                        </div>

при использовании TYPE=SPAN извлекает  -  Посл. ставка:**** ,а хотелось бы что-бы извлекал  -   LastBetInfo*** , есть конечно другое решение,  оба осазнаю но не доганяю как сделать,предпологаю что это проще ,и прошу посильной помощи,заранее благодарен за отзывчивость

скрытый текст
var macro1 = "CODE:";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1)
var s = iimGetLastExtract();
var Status = s.charAt(18);

InfSub пишет

OFFTOPIC
Господа, не буду тыкать пальцем, Вы уже достали своим биткоином... не работают скрипты с рулеткой, успокойтесь уже, люди делавшие тот сайт, не идиоты, дающие возможность выиграть, все это просто развод, с наживой от показа рекламы

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

spy686 пишет

скрытый текст
var macro1 = "CODE:";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1)
var s = iimGetLastExtract();
var Status = s.charAt(18);

премного благодарен за основу как раз и брал этот скрипт,но на моём сайте он не приминим т.к. значение TYPE является SPAN  а не DIV , поэтому и обратился сюда кто может разъяснит

pahan27 пишет

на базе одних скриптов учусь применяя их на других сайтах,ибо учителя на дом не приходят,а информация либо скудная либо недоступна в осознании,учимся методом пдборов и ошибок

учиться нужно на динамических сайтах, где можно реализовать много различных действий, а не 2-3

не спорю,но если ты и не знаешь как комьпьютер включать сомневаюсь что начинаешь на С++ игры писать под широкую аудиторию,с чегото начинать надо,повторяю более популярно ,нарвался на данную функцию решил изучить,зачем составлять  что-то глобальнее чем на 2 -3 действия

pahan27 пишет

не спорю,но если ты и не знаешь как комьпьютер включать сомневаюсь что начинаешь на С++ игры писать под широкую аудиторию,с чегото начинать надо,повторяю более популярно ,нарвался на данную функцию решил изучить,зачем составлять  что-то глобальнее чем на 2 -3 действия

если вы в курсе что такое С++, не думаю, что для Вас будет проблемой разобраться с iMacros))

InfSub пишет

если вы в курсе что такое С++, не думаю, что для Вас будет проблемой разобраться с iMacros))

с imacros особо не существует,но вот  тут проблема встала с HTML ,только вот не понимаю суть данного оффтопа,если нет желания или  знаний ответить смысл навязывать своё мнение,стоял конкретный вопрос,попросил помощи,зачем жизни то учить,всем спасибо кто хотел помочь !!!

pahan27 пишет
InfSub пишет

если вы в курсе что такое С++, не думаю, что для Вас будет проблемой разобраться с iMacros))

с imacros особо не существует,но вот  тут проблема встала с HTML ,только вот не понимаю суть данного оффтопа,если нет желания или  знаний ответить смысл навязывать своё мнение,стоял конкретный вопрос,попросил помощи,зачем жизни то учить,всем спасибо кто хотел помочь !!!

речь шла не только о вас, остальные комменты, были удалены модератором, т.к. являлись флудом
по поводу не знания, для данного сайта написан скрипт, позволяющий, как увеличивать ставку при проигрише, так и менять lo/hi различными способами, в том числе и играться с ползунком в зависимости от того, какой по счету проигрышь
результат всегда один, так или иначе несколько подряд проигрышей приводят к нулю на балансе
считаете, что знаете, как это обойти - что ж ваше право

InfSub пишет
pahan27 пишет
InfSub пишет

если вы в курсе что такое С++, не думаю, что для Вас будет проблемой разобраться с iMacros))

с imacros особо не существует,но вот  тут проблема встала с HTML ,только вот не понимаю суть данного оффтопа,если нет желания или  знаний ответить смысл навязывать своё мнение,стоял конкретный вопрос,попросил помощи,зачем жизни то учить,всем спасибо кто хотел помочь !!!

речь шла не только о вас, остальные комменты, были удалены модератором, т.к. являлись флудом
по поводу не знания, для данного сайта написан скрипт, позволяющий, как увеличивать ставку при проигрише, так и менять lo/hi различными способами, в том числе и играться с ползунком в зависимости от того, какой по счету проигрышь
результат всегда один, так или иначе несколько подряд проигрышей приводят к нулю на балансе
считаете, что знаете, как это обойти - что ж ваше право

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

Кто знает решение?

Иногда бывает, что страница не открывается и на ней ничего не появляется и дальнейшие действия скрипта, смысла не имеют.

Надо сделать так:

1. Если страница не загрузилась, то скрипт должен её обновить и ещё раз повторить цикл (ещё раз сделать проверку на наличие определённого текста на странице)
2. Если страница загрузилась, то пропустить второй макрос, который обновляет страницу и выполнять дальше действия, остальных макросов.

Вот код

Выделить код

Код:

i= iimPlayCode("Проверка на наличие текста на странице")
if (i>0 ){ //нашло слово
iimPlay("ok/вход.iim",60);
}

if (i<0 ){// не нашло слово 
iimPlay("обновить.iim",60);
}

Если текст не обнаружил на странице, как сделать, 
чтобы заново ещё раз проверял?

Мне кажется это делается оператором while, но когда я его ставлю вместо if, он воспроизводит бесконечно, макрос который обновляет страницу - обновить.iim

Алим пишет

Кто знает решение?
Иногда бывает, что страница не открывается и на ней ничего не появляется и дальнейшие действия скрипта, смысла не имеют.

в чем  проблема сделать проверку на наличие текста или картинки на странице и далее проверять есть она или нет? грубо говоря экспорт вернул #eanf# (false) или текст (true) а дальше уже ветвишь через if.. else..

18-07-2014 13:53:54
Алим, ну гугл же ))

Алим пишет

Кто знает решение?

Иногда бывает, что страница не открывается и на ней ничего не появляется и дальнейшие действия скрипта, смысла не имеют.

недавно натолкнулся на команду перечитывая первые 20 страниц форума
TAG POS=1 TYPE=P ATTR=TXT:*СЛОВО* CONTENT=EVENT:FAIL_IF_FOUND


Выделить код

Код:

CONTENT=EVENT:FAIL_IF_FOUND

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


конкретно по вашему случаю
я делаю так

Выделить код

Код:

for (;;){
     if (iimPlayCode("SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=P ATTR=TXT:*СЛОВО* CONTENT=EVENT:FAIL_IF_FOUND")<0){
        iimPlay("ok/вход.iim",60);
        break
        }else{
        iimPlayCode ("REFRESH")
     }
}

Спасибо то, что надо.

Ещё вопрос по рандому.
Как сделать такой рандом по задержке в секундах

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")

вместо 40 указываю к примеру 100, а в место 20 - 200.
И рандом должен делать не больше 200 задержку и не меньше 100.
Рандомная задержка между 100 и 200 ?

SET !VAR1 EVAL("var random=Math.floor(Math.random()*200 + 100); random;")

Кажется вот так

SET !VAR1 EVAL("var random=Math.floor(Math.random()*100 + 200 - 100); random;")

Алим пишет

Рандомная задержка между 100 и 200 ?

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")

kolshix пишет
Алим пишет

Рандомная задержка между 100 и 200 ?

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")

SET !VAR1 EVAL("Math.floor(Math.random()*201 + 100);")

делал больше 200 - 275 и т.п.

а вот так
SET !VAR1 EVAL("var random=Math.floor(Math.random()*100 + 200 - 100); random;")

больше 200 не разу не сделал

Проверял так: воспроизвести, проверял - стоп, воспроизвести, проверял - стоп

Алим пишет

скрытый текст

kolshix пишет
Алим пишет

Рандомная задержка между 100 и 200 ?

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")

SET !VAR1 EVAL("Math.floor(Math.random()*201 + 100);")

делал больше 200 - 275 и т.п.

а вот так
SET !VAR1 EVAL("var random=Math.floor(Math.random()*100 + 200 - 100); random;")

больше 200 не разу не сделал

Вообще не понял что вы пишите ??!!  команда

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")

говорит что :   число 101 означает что перебираться числа будут от 0 до 100 , а  число 100 прибавится к любому получившемуся рандомному числу =  вот и получится число от 100 и до  200  вот смотри  https://yadi.sk/i/c-GfOwlkWscFC

SET !VAR1 EVAL("Math.floor(Math.random()*201 + 100);  тут  будет от 100 и до 300
ну а если вам нравится ЛИШНЮЮ информацию вписывать то можно и так
SET !VAR1 EVAL("var random=Math.floor(Math.random()*100 + 200 - 100+100-100+200-200+300-300+500-500+1000-1000); random;")

kolshix пишет

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")

здесь конечно выше 100 не будет.

А если вот так

SET !VAR1 EVAL("Math.floor(Math.random()*200 + 100);")

то в этом случаи будет выдавать иногда больше 200, а надо чтобы выдавало между 200 и 100, то есть не больше 200, но и не меньше 100.

вы попросили от 100 до 200 , я написал, зачем лишние отнимания писать ведь ответ был сразу дан ?

Всем привет может кто подсказать следующее, мне нужно сделать скриншот отдельного учатска(не картинки):

скрытый текст
<div id="adcopy-puzzle-image" style="height: 150px; width: 300px;">.....</div>

Вот мне нужно засринить этот участок.
Голову уже сломал никак не получается

kolshix пишет

вы попросили от 100 до 200 , я написал, зачем лишние отнимания писать ведь ответ был сразу дан ?

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")
Рандом будет не выше цифры 201

SET !VAR1 EVAL("Math.floor(Math.random()*201 + 100);")
Рандом будет не выше 301

А мне надо, чтобы в рандоме можно было указать цифру "От" 100 и "До" 200
После запуска, чтобы рандом был не ниже 100 и не выше 200

Выделить код

Код:

Здесь результат получается такой же 
SET !VAR1 EVAL("Math.floor(Math.random()*100 + 100);")

100 + 100 = 200 и получается, что не ниже 100 и не выше 200.

Ход ясен, спасибо.
Разные методы были, а смысл один и тот же.

19-07-2014 11:23:55
Теперь я хотел узнать следующее. Конечно в гугле поискать можно было, может даже и здесь есть на форуме. Но ещё раз спрошу.

Предположим у меня 21 макрос.
Как мне через JS сначала воспроизвести первые 10 макросов - 5 раз (5 циклов),
а вторые 10 макросов 18 раз (18 циклов)
а последний макрос - 1 раз (1 цикл)

Мне кажется это делается оператором while. В коде в одном видел.
Макросы в джава скрипте распределяются по партиям.

Алим пишет

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 100);")
Рандом будет не выше цифры 201
100 + 100 = 200 и получается, что не ниже 100 и не выше 200.

в js именно в этом случае  100 + 100 = MAX 199 и получается, что не ниже 100 и не выше 199.
Специально  обращу ваше внимание на этот момент (я как-то долго мучился пока не отстрелил в чем проблема) , Вы пишите что не выше 201------ это не правильно, правильно , не выше 200  , вроде бы 1 не сыграет роли, но иногда скрипт подглючивает из-за этой 1 . Приведу пример на малых цифрах . 
SET !VAR1 EVAL("Math.floor(Math.random()*10  -  говорит о том что переберется будут 10 цифры , это значит 0, 1 ,2 ,3 ,4 ,5 ,6, 7, 8, 9  (посчитайте получилось 10 цифр) последняя как видите не 10 , а 9 -  так и с 101 , если указать 100 то получатся  цифры 0,1,.......98,99   ------весь прикол , что JS начинает отчет от 0 и по этому не стоит про это забывать


Алим пишет

Предположим у меня 21 макрос.
Как мне через JS сначала воспроизвести первые 10 макросов - 5 раз (5 циклов),
а вторые 10 макросов 18 раз (18 циклов)
а последний макрос - 1 раз (1 цикл)

Мне кажется это делается оператором while. В коде в одном видел.
Макросы в джава скрипте распределяются по партиям.

я делаю так
for (i=1;i<=5;i++){
чето делаем
}
for (i=1;i<=18;i++){
чето делаем
}

чето делаем




ответ на нижнее сообщение: ДА!

kolshix пишет

я делаю так
for (i=1;i<=5;i++){
чето делаем
}
for (i=1;i<=18;i++){
чето делаем
}

чето делаем

То есть, вместо "Чёто делаем" вставляем макросы
iimPlay("macros1.iim",60);
iimPlay("macros2.iim",60);
и т.д. ?

Я тоже так делаю, просто кроме 1 макроса, я больше не вставлял в них.

Помогите извлечь капчу отсюда bitcoinker.com, прошу очень надо

На сайте знакомств mamba.ru не получается выбрать страну и город.
Приведенный ниже код открывает список выбора, курсор позиционируется на стране "Россия", но нажатия не происходит.
Помогите, пожалуйста, разобраться.

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://www.mamba.ru/search.phtml?t=a&sz=b&ia=F&lf=M&af=19&at=36&s_c=3159_0_0_0&target=
TAG POS=1 TYPE=SELECT FORM=ACTION:/search.phtml ATTR=NAME:s_c CONTENT=%1_1_1
WAIT SECONDS=5
TAG POS=1 TYPE=SELECT ATTR=NAME:countryId CONTENT=$Россия
yinfo пишет

На сайте знакомств mamba.ru не получается выбрать страну и город.

скрытый текст
Приведенный ниже код открывает список выбора, курсор позиционируется на стране "Россия", но нажатия не происходит.
Помогите, пожалуйста, разобраться.

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://www.mamba.ru/search.phtml?t=a&sz=b&ia=F&lf=M&af=19&at=36&s_c=3159_0_0_0&target=
TAG POS=1 TYPE=SELECT FORM=ACTION:/search.phtml ATTR=NAME:s_c CONTENT=%1_1_1
WAIT SECONDS=5
TAG POS=1 TYPE=SELECT ATTR=NAME:countryId CONTENT=$Россия

тестил на Мазиле , команда срабатывала даже при чистке куки

Выделить код

Код:

TAB T=1
URL GOTO=http://www.mamba.ru/search.phtml?t=a&sz=b&ia=F&lf=M&af=19&at=36&s_c=3159_0_0_0&target=
TAG POS=1 TYPE=SELECT FORM=ACTION:/search.phtml ATTR=NAME:s_c CONTENT=%1_1_1
WAIT SECONDS=5
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>SELECT>OPTION:nth-of-type(2)" BUTTON=0

20-07-2014 02:16:44
а теперь  у меня вопрос как сделать нажатие на эту точку ?:

есть две команды при записи на EVENT , разными способами, но проблема в том , что запись идёт при наведении курсора. С командами происходит вот что: запустил макрос , команды не срабатывают, но если запустить команды и навести мышь на указанную область команды сразу срабатывают

https://yadi.sk/i/uSWL1qmyWvMJH
7rtKdE2Scw5jgLZ4pmzCeayqGrKVKDaldVk6BXZKmziqVioVxVG1kXU2ExcTJ-xKI_HchZITnQhxNQG0-QqJZg==?uid=0&filename=2014-07-20%2001-12-02%20Скриншот%20экрана.png&disposition=inline&hash=&limit=0&content_type=image%2Fpng&rtoken=b1d6d4d08d4d8373291ee8feb4fd2208&rtimestamp=53caef36&force_default=no

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(2)>OL>LI:nth-of-type(6)>A>SPAN>SPAN>SPAN" BUTTON=0

EVENT TYPE=CLICK SELECTOR="#l_msg>A>SPAN>SPAN>SPAN" BUTTON=0

Кто понимает в коде, может если исследовать код страницы то можно будет определить нужную область

через позиционирование мыши относительно осей X Y даже не пробуйте, imacros для мазила , не умеет нажимать на такие места это может , если не ошибаюсь IE и Iopus - а они меня не интересуют, интересен код для мазила.

Может кто-то из сторожил подскажет ?

kolshix пишет

скрытый текст

у меня вообще иначе выглядит данное меню и в нем нет плюса, если ты о нем...

скрытый текст
817d565139994c713c955ff60a42b047.jpg

InfSub пишет

у меня вообще иначе выглядит данное меню и в нем нет плюса, если ты о нем...

Смотри в чем прикол, посмотри на скрине положение курсора, в интересующем меня месте, какаето активная область, достаточно только навести курсор, сразу появляется крестик, я даже проверял через код страницы в мазиле, как только наводишь курсор в коде идут изменения, как только отводишь все возвращается как было
https://yadi.sk/i/USDlfh4BWznAp

kolshix пишет

Смотри в чем прикол, посмотри на скрине положение курсора, в интересующем меня месте, какаето активная область, достаточно только навести курсор, сразу появляется крестик, я даже проверял через код страницы в мазиле, как только наводишь курсор в коде идут изменения, как только отводишь все возвращается как было
https://yadi.sk/i/USDlfh4BWznAp

как уже говорил, менюшка отличается, при наведении появляется меню, а крест - нет
то, что изменяется код - тоже в курсе - подгружается динамически, потому имакрос с ним корректно и не работает до события onfocus над строкой
как обойти... надо смотреть куда конкретно ты хочешь попасть, возможно тебе просто нужно через URL GOTO=... перейти на нужную страницу без всяких извратов с меню

сейчас видео запишу , чтоб было конкретнее понятно , чего я хочу !
вот видео
https://yadi.sk/i/yLoygzp1Wzsgd

kolshix пишет

сейчас видео запишу , чтоб было конкретнее понятно , чего я хочу !
вот видео
https://yadi.sk/i/yLoygzp1Wzsgd

то что команда срабатывает, уже говорил, там динамический код (iframe) подгружаемый только при срабатывании события по onfocus над строкой (т.е. при наведении мыши на строку, код подгружается и далее он отрабатывается имакросом корректно)
думаю, вам нужно попробовать записать макрос когда на строке есть надпись +1 или более, а не просто +
в общем, тут только эксперементировать
в крайнем случае, должно быть достаточно перейти в "диалоги" и сообщения должны пометиться, как прочитанные

InfSub пишет

то что команда срабатывает, уже говорил, там динамический код (iframe) подгружаемый только при срабатывании события по onfocus над строкой (т.е. при наведении мыши на строку, код подгружается и далее он отрабатывается имакросом корректно)
думаю, вам нужно попробовать записать макрос когда на строке есть надпись +1 или более, а не просто +
в общем, тут только эксперементировать
в крайнем случае, должно быть достаточно перейти в "диалоги" и сообщения должны пометиться, как прочитанные

я уже говорил в видео, что задача частично решена , так как при новых сообщениях,  в интересующем меня месте появляется надпись "+1" и так далее и код EVENT срабатывает, просто интересно решить вопрос на будущее!

kolshix пишет

я уже говорил в видео, что задача частично решена , так как при новых сообщениях,  в интересующем меня месте появляется надпись "+1" и так далее и код EVENT срабатывает, просто интересно решить вопрос на будущее!

думаю - только клик по координатам, но в мозилле, он не выполняет действия onfocus, либо рыть возможности EVENT, возможно разработчики предусмотрели что-то на этот счет, хотя и сомнительно..

ЖОПОЙ чую - где то ответ рядом !! но ответ найти не могу, вечно у меня такие проблемы! (это по поводу предыдущих проблем)

21-07-2014 22:15:14
ладно задам вопрос по-проще , как разбить данную команду на несколько строк, чтоб редактировать удобнее было , по при этом код оставался единичной командой

Выделить код

Код:

iimDisplay(prcrGDisplay+'g-PRCR\n'+smmkaDisplay+'-Smmka-'+Smmka+'\n'+smmokDisplay+'-Smmok-'+SMMOK+'\n'+(vkserfingDisplay2+vkserfingDisplay)+'-VKserfing-'+(vksTask2+vksTask)+'\n'+targetDisplay+'-Vktarget\n'+'----------------------\n'+(prcrGDisplay+smmkaDisplay+smmokDisplay+vkserfingDisplay+vkserfingDisplay2+targetDisplay)+'-ALL Tasks')

А у меня проблема в следующем:

Вот заходит макрос на страницу пользователя в одноклассниках и нажимает кнопку - добавить в друзья.
Как задать скрипту такое условие, чтобы после захода на страницу человека, скрипт проверял:

1. если у пользователя, друзей больше 500, то добавляет в друзья
2. если меньше 500 друзей, то не добавляет в друзья.

Выделить код

Код:

i= iimPlayCode("TAG POS = Ваше Слово")
 if (i>0 ){ //нашло слово
 чёто тут делается
 }

 if (i<0 ){// не нашло слово 
 чёто тут делается
 }

Как это сделать. Это надо подключать рандом ? !VAR ?

Алим пишет

1. если у пользователя, друзей больше 500, то добавляет в друзья
2. если меньше 500 друзей, то не добавляет в друзья.

вот код

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=SPAN ATTR=CLASS:user-menu_c EXTRACT=TXT"); // команда берет в буфер цифры смотреть рис 1. 
if (iimGetLastExtract()>=500){
alert ('добавляем в друзья')
}

рис 1.
https://yadi.sk/i/-IRXIp-_X4d5M

То, что это команда, берёт цифру из раздела друзья, это и так ясно было.
Спасибо за решение.

А вот бывает такое, что циклы не всегда на зелёном фоне отображаются
Один цикл пройдёт появиться цифра 1, потом пропадает зелёный фон с циклами и после того как пройдёт следующий цикл, опять появляется цифра на зелёном фоне.

А как сделать, чтобы она не пропадала?

Алим пишет

То, что это команда, берёт цифру из раздела друзья, это и так ясно было.
Спасибо за решение.

А вот бывает такое, что циклы не всегда на зелёном фоне отображаются
Один цикл пройдёт появиться цифра 1, потом пропадает зелёный фон с циклами и после того как пройдёт следующий цикл, опять появляется цифра на зелёном фоне.

А как сделать, чтобы она не пропадала?

ты наверно по поводу команды iimDisplay ?? как только случаются какие-то подглючивания в коде , то он об этом сообщает в окне , и предыдущая инфа пропадает.   Я сам как-то искал как решить данный вопрос , но так и не нашёл.

21-07-2014 23:07:53
если ты не об этом то  заскринь -  что за цифры

У меня в скриптах нет команды iimDisplay.
Это после полного цикла всех макросов в скрипте, показывается цикл, на зелёном фоне
Один раз, все макросы прошли в скрипте и появляется цикл 1 на зелёном фоне.

5770330_m.jpg

а когда второй цикл начинает, то пропадает цифра цикла вместе с зелёным фоном.

Алим пишет

У меня в скриптах нет команды iimDisplay.
Это после полного цикла всех макросов в скрипте, показывается цикл, на зелёном фоне
Один раз, все макросы прошли в скрипте и появляется цикл 1 на зелёном фоне.

а когда второй цикл начинает, то пропадает цифра цикла вместе с зелёным фоном.

я даже не знаю почему он вообще что то показывает , если хотите видить данные то запилите себе цикл

Выделить код

Код:

for (i=1;i<=10000000000;i++){
iimDisplay(i)
}

и будет вам счастье
я вон вообще себе запилил и теперь болдею, а раньше по незнанию, сначала в ручную считал, потом через переменную с алертом, даже в файл писал , мороки было труба а теперь все супер https://yadi.sk/i/3UcVytnwX4zyU

kolshix пишет

ЖОПОЙ чую - где то ответ рядом !! но ответ найти не могу, вечно у меня такие проблемы! (это по поводу предыдущих проблем)

21-07-2014 22:15:14
ладно задам вопрос по-проще , как разбить данную команду на несколько строк, чтоб редактировать удобнее было , по при этом код оставался единичной командой

Выделить код

Код:

iimDisplay(prcrGDisplay+'g-PRCR\n'+smmkaDisplay+'-Smmka-'+Smmka+'\n'+smmokDisplay+'-Smmok-'+SMMOK+'\n'+(vkserfingDisplay2+vkserfingDisplay)+'-VKserfing-'+(vksTask2+vksTask)+'\n'+targetDisplay+'-Vktarget\n'+'----------------------\n'+(prcrGDisplay+smmkaDisplay+smmokDisplay+vkserfingDisplay+vkserfingDisplay2+targetDisplay)+'-ALL Tasks')

например, так:

Выделить код

Код:

iimDisplay(
    prcrGDisplay+'g-PRCR'+'\n'+
    smmkaDisplay+'-Smmka-'+Smmka+'\n'+
    smmokDisplay+'-Smmok-'+SMMOK+'\n'+
    (vkserfingDisplay2+vkserfingDisplay)+
    '-VKserfing-'+(vksTask2+vksTask)+'\n'+
    targetDisplay+'-Vktarget'+'\n'+
    '----------------------'+'\n'+
    (
        prcrGDisplay+smmkaDisplay+smmokDisplay+
        vkserfingDisplay+vkserfingDisplay2+targetDisplay
    )+'-ALL Tasks'
)
kolshix пишет

я даже не знаю почему он вообще что то показывает

Извиняюсь в конце скриптов было такое

iimDisplay(z);   
iimSet("z",z);
}

22-07-2014 11:11:12

Он у тебя отдельно считает циклы каждого макроса в скрипте,
а в конце показывает их общее количество?

Как это ты так сделал ?
Это надо к каждому макросу подставлять iimDisplay(i) ?

Мой ответ кажется написан выше.)

Интересное замечание! Я как то писал :

скрытый текст
есть две команды при записи на EVENT , разными способами, но проблема в том , что запись идёт при наведении курсора. С командами происходит вот что: запустил макрос , команды не срабатывают, но если запустить команды и навести мышь на указанную область команды сразу срабатывают

https://yadi.sk/i/uSWL1qmyWvMJH


Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(2)>OL>LI:nth-of-type(6)>A>SPAN>SPAN>SPAN" BUTTON=0

EVENT TYPE=CLICK SELECTOR="#l_msg>A>SPAN>SPAN>SPAN" BUTTON=0

Кто понимает в коде, может если исследовать код страницы то можно будет определить нужную область

через позиционирование мыши относительно осей X Y даже не пробуйте, imacros для мазила , не умеет нажимать на такие места это может , если не ошибаюсь IE и Iopus - а они меня не интересуют, интересен код для мазила.

Может кто-то из сторожил подскажет ?


Частичное решение: код срабатывает если есть наличие не прочитанного сообщения


Ну, а теперь интересное, не знаю каким образом, вероятно при подгрузке страницы не успевает включится динамический код страници, но код imacrocfs срабатывает даже при отсутствии новых сообщений!

Выделить код

Код:

SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1
TAB T=1

URL GOTO=vk.com/
WAIT SECONDS=1
' ниже , та команда о которой пишу
EVENT TYPE=CLICK SELECTOR="#l_msg>A>SPAN>SPAN>SPAN" BUTTON=0
WAIT SECONDS=1

Смысл данного кода, в том чтобы не писать код для каждого прочтения новых сообщений, (если сообщения 3 то не проблема написать код, а если 15-25)  -  выше записанным кодом у меня автоматически идёт прочтение всех новых сообщений

Алим пишет:

Он у тебя отдельно считает циклы каждого макроса в скрипте,
а в конце показывает их общее количество?

Как это ты так сделал ?
Это надо к каждому макросу подставлять iimDisplay(i) ?


Алим ну ты даёшь !!! я уже на 72 странице тебе написал и код подсчета циклов и даже успел задать вопрос по поводу работы с данной командой!

повтор с небольшой корректировкой

Выделить код

Код:

for (i=1;i<=10;i++){
iimDisplay(i)
}

for (q=1;q<=10;q++){
iimDisplay(i)
}
iimDisplay('i='+i+'\nq='+q+'\nAll='+(i+q))

можно и так

Выделить код

Код:

for (i=1;i<=10;i++){
}

for (q=1;q<=10;q++){
}
iimDisplay('i='+i+'\nq='+q+'\nAll='+(i+q))

В одноклассниках на странице пользователя, хочу извлечь только имя без фамилии.

Нажимаю - написать сообщение

и вот код
TAG POS=1 TYPE=DIV ATTR=CLASS:disc-i_cnt_name EXTRACT=TXT

извлекает имя и фамилию.
А как сделать, чтобы только имя извлекало ?

Имя и фамилия связаны одни кодом, отдельно не получается.

Алим пишет

В одноклассниках на странице пользователя, хочу извлечь только имя без фамилии.

Нажимаю - написать сообщение

и вот код
TAG POS=1 TYPE=DIV ATTR=CLASS:disc-i_cnt_name EXTRACT=TXT

извлекает имя и фамилию.
А как сделать, чтобы только имя извлекало ?

Имя и фамилия связаны одни кодом, отдельно не получается.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:disc-i_cnt_name EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\s(.*)/,'')")

Люди подскажите или дайте ссылку на скрипт odnoki_gruppa.iim  и на видео с его настройками только не Александра Серебрякова

Vadim3777 пишет

только не Александра Серебрякова

потому, что он работает только с координатами клика ?

Подскажите пожалуйста. Есть ли команда для скрипта, которая пропускает строку с ошибкой?
Мой скрипт для добавлений в друзья в Одноклассниках должен нажимать на кнопку "ДОБАВИТЬ В ДРУЗЬЯ". Но иногда попадаются странички, которые уже есть в друзьях и соответственно нужной мне кнопки нет и скрипт останавливается. 
Вопрос: как устранить эту проблему?  п.с. делать клик по координате не выход, т.к. на большой скорости работает не стабильно.

URL GOTO=http://www.ok.ru/online
WAIT SECONDS=0.30
EVENT TYPE=CLICK SELECTOR="#field_female" BUTTON=0
WAIT SECONDS=1.30
CLICK X=505 Y=380
WAIT SECONDS=1.50
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>в<SP>друзья           - вот корень зла в скрипте (кнопка на которую должен нажать скрипт не всегда есть на страничке)
WAIT SECONDS=0.20

Николай1597 пишет

Есть ли команда для скрипта, которая пропускает строку с ошибкой?

скрытый текст
вставь в начале кода
SET !ERRORIGNORE YES

Подскажите пожалуйста какой скрипт нужен для ответа на сообщения в одноклассниках?

bendiks пишет

Подскажите пожалуйста какой скрипт нужен для ответа на сообщения в одноклассниках?

что значит какой?
наверное, "скрипт, для ответа на сообщения в одноклассниках"

Добрый день уважаемые знатоки!!!
Скажите пожалуйста как можно сделать в JS скрол на определенное окно в браузере?
В одноклассниках можно приглашать своих друзей в группу - поверх основного окна сайта всплывает окошко со списком друзей, вот его и нужно скролить... если использовать window.scrollBy(0,4000) то скролиться основное окно а не всплывающее... Кто может помочь мне? 
https://yadi.sk/i/-G2842A4XgAMg

mrantoni пишет

Добрый день уважаемые знатоки!!!
Скажите пожалуйста как можно сделать в JS скрол на определенное окно в браузере?
В одноклассниках можно приглашать своих друзей в группу - поверх основного окна сайта всплывает окошко со списком друзей, вот его и нужно скролить... если использовать window.scrollBy(0,4000) то скролиться основное окно а не всплывающее... Кто может помочь мне? 
https://yadi.sk/i/-G2842A4XgAMg

думаю, вам нужно определить какой это фрейм и указать имакросу перейти на него, далее window.scrollBy(0,4000)

а как  именно указать макросу в каком фрейме работать?

InfSub пишет
mrantoni пишет

Добрый день уважаемые знатоки!!!
Скажите пожалуйста как можно сделать в JS скрол на определенное окно в браузере?
В одноклассниках можно приглашать своих друзей в группу - поверх основного окна сайта всплывает окошко со списком друзей, вот его и нужно скролить... если использовать window.scrollBy(0,4000) то скролиться основное окно а не всплывающее... Кто может помочь мне? 
https://yadi.sk/i/-G2842A4XgAMg

думаю, вам нужно определить какой это фрейм и указать имакросу перейти на него, далее window.scrollBy(0,4000)

Как сделать так:

Если первое условие - верное, то второе условие не выполняется.

Условие 1. если закрытый профиль в одноклассниках, то условие верное (совпали слова на странице)
Условие 2. если больше 500 друзей, то добавляет в друзья

То есть, если закрытый профиль, то не добавляет в друзья, даже если 500 или больше друзей.
Если открытый профиль, то первое условие - ложное (слова не нашлись) и выполняется второе условие.

Сначала переходит из поиска на страницу профиля человека, открывая его во второй вкладке и выполняется первое условие

скрытый текст

Выделить код

Код:

i= iimPlayCode("TAG POS=1 TYPE=...")
if (i>0 ){ //нашло слово
iimPlay("ok_druziya/возврат_в_поиск.iim",60);
}

if (i<0 ){// не нашло слово 
iimPlay("ok_druziya/pauza.iim",60);
}


Если находит слова о том, что закрытый профиль, то возвращается обратно в поиск, если нет, то пауза 2 секунды.

Дальше идёт второе условие (ведь если первое условие будет ложное, то макрос не закрывает вторую вкладку, а сделает только паузу) и по этому находясь на странице профиля, выполнится второе условие.

Но проблема в том, что если первое условие - верное, закрывает вторую вкладку и возвращается в первую - в поиск

Затем после второго условия, тоже закрывает вкладку и браузер закрывается. А чтобы, такого не было, нужно 2 условия сделать в одном цикле или как это сказать не знаю.

Надо, чтобы 2 условия выполнялись вместе, а как это сделать ?

вот второе условие

скрытый текст

Выделить код

Код:

iimPlayCode("TAG POS=1 ...");
if (iimGetLastExtract()>=500){
iimPlay("ok_druziya/добавить_в_друзья.iim",60);
}

скрытый текст

Выделить код

Код:

//условие 1
i= iimPlayCode("TAG POS=1 TYPE=...")
if (i>0 ){ //нашло слово
iimPlay("ok_druziya/возврат_в_поиск.iim",60);
}

esle {// не нашло слово 
iimPlay("ok_druziya/pauza.iim",60);


//условие 2
iimPlayCode("TAG POS=1 ...");
if (iimGetLastExtract()>=500){
iimPlay("ok_druziya/добавить_в_друзья.iim",60);
}

else
{
iimPlay("ok_druziya/возврат_в_поиск.iim",60);
}

}


Вот так.



Алим пишет

Как сделать так:

скрытый текст
Если первое условие - верное, то второе условие не выполняется.

Условие 1. если закрытый профиль в одноклассниках, то условие верное (совпали слова на странице)
Условие 2. если больше 500 друзей, то добавляет в друзья

То есть, если закрытый профиль, то не добавляет в друзья, даже если 500 или больше друзей.
Если открытый профиль, то первое условие - ложное (слова не нашлись) и выполняется второе условие.

Сначала переходит из поиска на страницу профиля человека, открывая его во второй вкладке и выполняется первое условие

Выделить код

Код:

i= iimPlayCode("TAG POS=1 TYPE=...")
if (i>0 ){ //нашло слово
iimPlay("ok_druziya/возврат_в_поиск.iim",60);
}

if (i<0 ){// не нашло слово 
iimPlay("ok_druziya/pauza.iim",60);
}

Если находит слова о том, что закрытый профиль, то возвращается обратно в поиск, если нет, то пауза 2 секунды.

Дальше идёт второе условие (ведь если первое условие будет ложное, то макрос не закрывает вторую вкладку, а сделает только паузу) и по этому находясь на странице профиля, выполнится второе условие.

Но проблема в том, что если первое условие - верное, закрывает вторую вкладку и возвращается в первую - в поиск

Затем после второго условия, тоже закрывает вкладку и браузер закрывается. А чтобы, такого не было, нужно 2 условия сделать в одном цикле или как это сказать не знаю.

Надо, чтобы 2 условия выполнялись вместе, а как это сделать ?

вот второе условие

Выделить код

Код:

iimPlayCode("TAG POS=1 ...");
if (iimGetLastExtract()>=500){
iimPlay("ok_druziya/добавить_в_друзья.iim",60);
}

Друзья, Помогите !!!! сделала для одноклассников, чтобы оценки ставила и дружбу предлагала, скажите, как написать так, чтобы скрипт заходит на страничку к человеку, если она закрыта, то добавить в друзья, если открыта страничка, то ставить оценку или класс
подскажите строчку через "if"это делать??

У человека друзей 1 949, а я в скрипте указал, что если больше 999, должен добавить, а он не добавляет, даже если укажу 1111 или 1001, не добавляет.

Если у человека 3-хзначное число друзей, то всё как надо работает.

вот код

Выделить код

Код:

iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE= ... EXTRACT=TXT");
if (iimGetLastExtract()>=999){
iimPlay("ok_druziya/добавить_в_друзья.iim",60);
}

что может быть не так ?

Алим пишет

что может быть не так ?

сравни 2 числа:
твое: 1 949
и: 1949 ..
не замечаешь разницы?

InfSub пишет

сравни 2 числа:
твое: 1 949
и: 1949 ..
не замечаешь разницы?

да я заметил, что после 1 пробел. И что тут можно предпринять, в таком случаи?
1 949 это так он копировался с сайта.

это надо первую цифру извлечь и добавить к тем 3-им ?

Алим пишет
InfSub пишет

сравни 2 числа:
твое: 1 949
и: 1949 ..
не замечаешь разницы?

да я заметил, что после 1 пробел. И что тут можно предпринять, в таком случаи?
1 949 это так он копировался с сайта.

это надо первую цифру извлечь и добавить к тем 3-им ?

удалить пробел и перевести текст в число

Ребята помогите пожалуйста!!!!!!!!!!!!!
кто нибудь знает как в iMacros "организовать" ответ на сообщение в одноклассниках одной простой фразой ?
готов заплатить

Как сделать, правильно?

Макрос - вход, выполняет следующее:

1. открывает страницу входа вконтакте
2. берёт из текстового файла, логи и пароль
3. вводит их в соответствующие поля
4. нажимает войти

потом, мне нужно сделать, чтобы проверялись несколько условий, после входа в аккаунт.
Если одно из них верное, то выполняется макрос - выход: нажимает выйти.
и при новом цикле должен браться следующий логин и пароль и входить через него и опять идёт проверка.

Выделить код

Код:

for (;;){
iimSet("д",д);
д++
iimPlay("vk_druziya/вход.iim",60);
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS = TAG POS=1 TYPE=B ATTR=TXT:временно<SP>заморозили" || "SET !ERRORIGNORE YES \n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=B ATTR=TXT:Ваша<SP>страница<SP>удалена" || "SET !ERRORIGNORE YES \n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=B ATTR=TXT:Не<SP>удается<SP>войти.")
iimPlay("vk_druziya/выход.iim",60);
        break
        }else{
     }
}

читал, что такие знаки ||, они разделяют ИЛИ, если одно из них верное, то должен сработать макрос - выход.

Добрый вечер, такой вопрос. На странице есть капча от 0 до 10 (разгадывается посредством запуска макроса антигейт), нужно, чтобы в зависимости от результата макрос начал воспроизводить определенное действие.

Ситуация такая:
Макрос заходит на сайт, выполняется проверка на капчу, она сохраняется и отправляется на разгадку в AG, откуда приходит число от 0 до 10 включительно и,допустим, нам пришло число 5 - макрос это понял и начал делать действие, которое я запишу для данного развития событий, при 9 - делает другое действие и так далее.

Буду благодарен за Ваши ответы

Алим пишет

Как сделать, правильно?

Выделить код

Код:

i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS = TAG POS=1 TYPE=B ATTR=TXT:временно<SP>заморозили" || "SET !ERRORIGNORE YES \n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=B ATTR=TXT:Ваша<SP>страница<SP>удалена" || "SET !ERRORIGNORE YES \n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=B ATTR=TXT:Не<SP>удается<SP>войти.")

читал, что такие знаки ||, они разделяют ИЛИ, если одно из них верное, то должен сработать макрос - выход.

в iimPlayCode() оператор сравнения ИЛИ не применим, строй условие иначе

29-07-2014 21:28:57

Галимов Руслан пишет

нужно, чтобы в зависимости от результата макрос начал воспроизводить определенное действие.

у тебя скрипт разгадывания капчи возвращает число, с помощью if.. elseif... else или с помощью case ... строишь линейку условий

29-07-2014 21:31:43
var r = // результат работы скрипта антикапчи
if (r==1){
// действия при 1
}elseif(r==2){
// действия при 2
}...

Мне надо вызывать 2 iim по очереди с помощью js

первый 1.iim надо вызывать 40 раз

а второй 2.iim надо вызывать 1 раз


Подскажите пожалуйста как это реализовать?

Gergi пишет

Мне надо вызывать 2 iim по очереди с помощью jsпервый 1.iim надо вызывать 40 раза второй 2.iim надо вызывать 1 разПодскажите пожалуйста как это реализовать?

скрытый текст
for (var i=1;i<=40;i++){
iimPlay("macros1.iim",60);
}

for (var i=1;i<=1;i++){
iimPlay("macros2.iim",60);
}

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

скрытый текст

Выделить код

Код:

while(true) {

SET !VAR2 EVAL("var min=1; var max=4; var res=0; res=Math.floor(Math.random()*(max-min+1))+min;")

var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS={{!VAR2}}" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);


.................................

Подскажите пожалуйста как правильно установить значение для рандомизации времени в js, заранее спасибо.

vidinfo пишет

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

как на чистом JS не знаю , пользуюсь как придумал

Выделить код

Код:

var i =Math.floor(Math.random()*10 + 1)
alert (i)
iimSet("I",i)
iimPlayCode("WAIT SECONDS={{I}}")

Не могли бы Вы показать как это должно выглядеть внутри структуры, спасибо.

скрытый текст

Выделить код

Код:

while(true) {

var macro1;
macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=1" + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);
.
.
.
.

vidinfo пишет

Не могли бы Вы показать как это должно выглядеть внутри структуры, спасибо.

скрытый текст

Выделить код

Код:

while(true) {

var min=1; var max=4; var res=Math.floor(Math.random()*(max-min+1))+min;

var macro1 = "CODE:";
macro1 += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:double_your_btc_bet_hi_button" + "\n";
macro1 += "WAIT SECONDS=" + res + "\n";
macro1 += "SET !EXTRACT NULL" + "\n";
macro1 += "TAG POS=1 TYPE=DIV ATTR=ID:double_your_btc_result EXTRACT=TXT" + "\n";
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(18);

Большое спасибо за помощь, работает :)

30-07-2014 17:05:59
Забыл спросить, подскажите пожалуйста, как поставить время к примеру с 2 сек, до 4 сек?

vidinfo пишет

Большое спасибо за помощь, работает :)

30-07-2014 17:05:59
Забыл спросить, подскажите пожалуйста, как поставить время к примеру с 2 сек, до 4 сек?

ну ты даёшь, а это для кого ?
var min=1; var max=4;
начиная с 1 и заканчивая 4
для твоего случая
var min=2; var max=4;
начиная с 2 и заканчивая 4

Если я не ошибаюсь это должно выглядеть примерно так?

var min=2; var max=4; var res=Math.floor(Math.random()*(max-min+1))+min;

30-07-2014 17:10:50
Спасибо.

Алим пишет

for (var i=1;i<=40;i++){

Спасибо. А как его зациклить?

Gergi пишет
Алим пишет

for (var i=1;i<=40;i++){

Спасибо. А как его зациклить?

что такое поиск, видимо вы не знаете?

Выделить код

Код:

for(;;){
...
};

столкнулся с такой проблемой! 
есть 1 код , но при работе на ПК все нормально, но при работе на дедике бывает стопорится, причем в любом месте не зависимо от кода: iim iimPlay iimPlayCode  SET !ERRORIGNORE YES  и прочие! ну а теперь интересующий меня воопрос , поможет ли испарвить такие тормоза доп код

Выделить код

Код:

VERSION BUILD=******* RECORDER=FX
SET !ERRORCONTINUE YES

может быть тормозит что я не указываю версию билда и не указываю что нужно продолжать работу не взирая ни на что или это все до одного места , просто проблема в самой программе ????

kolshix пишет

столкнулся с такой проблемой! 
есть 1 код , но при работе на ПК все нормально, но при работе на дедике бывает стопорится, причем в любом месте не зависимо от кода: iim iimPlay iimPlayCode  SET !ERRORIGNORE YES  и прочие! ну а теперь интересующий меня воопрос , поможет ли испарвить такие тормоза доп код SET !ERRORIGNORE YES

дело не в ошибках, скорее виснет сам процесс, бывает такое на слабых машинах... хотя не факт, что только на слабых

kolshix пишет

столкнулся с такой проблемой!

ещё нашел типо может из-за отсутствия указания

Выделить код

Код:

TAB T=***

я так понял мне ещё придется мучиться и мучится с этими кодами

Для себя вижу пока только одно решение

Так как у меня 1 макрос (он цикличен и не имеет значение когда запускать) рассчитан на 24 часа , нужно будет настроить плановую перезагрузку системы через каждые 8 часов и при новом запуске сразу запускался автоматом imacros,  может есть ещё какие нибудь решения ?

kolshix пишет
kolshix пишет

столкнулся с такой проблемой!

ещё нашел типо может из-за отсутствия указания

Выделить код

Код:

TAB T=***

я так понял мне ещё придется мучиться и мучится с этими кодами

если код не работает на конкретной машине, по статистике виновата либо сама система, стоящая на ней, либо железо... уж не знаю как, но было у меня такое, что при одной и той же версии ОС, Мозиллы и иМакроса - один и тот же скрипт обрабатывался по разному, и на более старой машине требовал то, что по спецификации js уже отмерло в предыдущих версиях ну и вис периодами.. так что приходилось постоянно мониторить работает ли...

InfSub пишет

Gergi пишет: Алим пишет: for (var i=1;i<=40;i++){Спасибо. А как его зациклить?что такое поиск, видимо вы не знаете? Выделить кодКод:for(;;){
...
};
                    Отредактировано InfSub (Сегодня 18:01:15)

Спасибо добрый человек. Всё работает:D

InfSub пишет

если код не работает на конкретной машине, по статистике виновата либо сама система, стоящая на ней, либо железо... уж не знаю как, но было у меня такое, что при одной и той же версии ОС, Мозиллы и иМакроса - один и тот же скрипт обрабатывался по разному, и на более старой машине требовал то, что по спецификации js уже отмерло в предыдущих версиях ну и вис периодами.. так что приходилось постоянно мониторить работает ли...

У меня как всегда
Проблему решил частично, как всегда через жопу , установил в планировщик заданий  перезагрузку дедика в 12.00PM 8.00PM 12.00AM и 8.00АМ и добавил старт копий мазила с автозапуском imacros.   И ко всему немного поманиторил скрипт и обратил внимание что очень хорошо зависания происходят на командах iimPlayCode("****\n ****\n ****\n"). Другого выхода в данной ситуации не вижу. Если конечно не дорогой дед купить !!!

kolshix пишет

очень хорошо зависания происходят на командах iimPlayCode("****\n ****\n ****\n").

Вместо iimPlayCode, можно ведь использовать iimPlay("macros.iim",60);

31-07-2014 11:00:28
У меня вопрос. Когда в одноклассниках вставляется текст в сообщение, то оно не вставляется мгновенно, а набирается, в независимости какая скорость воспроизведения и от куда вставляется из самого макроса или из текстового файла.

Отправка личного сообщения в ок.

скрытый текст
SET !VAR9 "Привет, {{!VAR0}} как дела?<br>Что делаешь?"
EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-m" CHARS={{!VAR9}}

{{!VAR0}} - это имя вставляет


Как сделать, чтобы вставлялось мгновенно?

Алим пишет

Как сделать, чтобы вставлялось мгновенно?

через евент ни как

Алим пишет
kolshix пишет

очень хорошо зависания происходят на командах iimPlayCode("****\n ****\n ****\n").

Вместо iimPlayCode, можно ведь использовать iimPlay("macros.iim",60);

Это я прекрасно знаю, вот только зачем засирать папки iim файлами с 1-3 командами? если проще вписать как указано выше - но конкретно по моему случаю придётся засирать !!

ОФФТОП
Нашёл я парочку команд, использую их в iimDisplay

вариант в коде 

Выделить код

Код:

var i = ('vv'+'\n'+'bb')
alert (i)

// \n переход на новую строку (абзац)
// \t табуляция 
// \f  \b и  \v срань какуюто пишет
// &nbsp; неразрывный пробел 

Какие есть ещё , поделитесь?

Добрый день, пожалуйста подскажите, нужен макрос который выполняет простейшие функции:
01. заходит по указанному адресу URL GOTO=http://сайт.рф/ (на котором располагается блок комментариев)
02. проверяет наличие текста среди комментариев например: Текст
03. если текст есть выполняет команду WAIT SECONDS=15 и запускает макрос снова
04. если текста нет то пишет его в коментари по типу TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст комента и затем снова WAIT SECONDS=15
и так по кругу

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

Прошу помочь, кому не сложно, заранее благодарен.

И пожалуйста не отсылайте меня к посту: https://forum.mozilla-russia.org/viewtopic.php?pid=647804#p647804, его я видел но осилить не могу :(

SET !DATASOURCE C:\Users\x.txt // В этом файле 200 строчек. Как сделать так что бы каждая выполненная строчка удалялась?
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

HolaWoro пишет

Прошу помочь, кому не сложно, заранее благодарен.

И пожалуйста не отсылайте меня к посту: https://forum.mozilla-russia.org/viewtopic.php?pid=647804#p647804, его я видел но осилить не могу :(

пишем на JS для мазила (не через iimGetLastExtract)

скрытый текст

Выделить код

Код:

for (ckl=1;ckl<=количество циклов;ckl++)
iimPlayCode("URL GOTO=http://сайт.рф");
i=iimPlaiCode("ТAG POS ****** TXT=нужный вам текст")   //   создание команды ****** -- если нужный текст не кликабельный ,  поставте макрос на запись и кликните в нужном месте, так и получите команду
if (i>0){// Ваш текст найден
imPlaiCode("WAIT SECONDS=15")
}else{ //тут если текст не найден 
iimPlayCode("TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст комента")
}
}

Наугад сложновато, может где то и накасячил , есть ещё немного отличающийся способ , а также другие, уменьшающие размер кода и ускоряющие работу, но по мне это самый простой. 
Хотя ещё проще

for (ckl=1;ckl<=КОЛИЧЕСТВО ЦИКЛОВ;ckl++) {
imPlaiCode("WAIT SECONDS=15")
iimPlay(файл.iim)
}

где файл iim содержит

Выделить код

Код:

URL GOTO=http://сайт.рф
ТAG POS ****** TXT=нужный вам текст  CONTENT=EVENT:FAIL_IF_FOUND    
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст комента

CONTENT=EVENT:FAIL_IF_FOUND  останавливает дальнейшую работа iim, но не останавливает работу JS файла
как получить команду поиска нужного текста я уже написал

если текст к примеру большой или некоторые слова меняются , то тогда динамическое место можно поменять на знак *
пример моей команды поиска текста

Выделить код

Код:

TAG POS=1 TYPE=P ATTR=TXT:Задание<SP>*<SP>временно<SP>приостановлено.* CONTENT=EVENT:FAIL_IF_FOUND

SET !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Dimux.txt

Надо реализовать такую команду в .js

kolshix пишет

for (ckl=1;ckl<=КОЛИЧЕСТВО ЦИКЛОВ;ckl++) {
imPlaiCode("WAIT SECONDS=15")
iimPlay(файл.iim)
}

запустился js, отсчитал 15 секунд и выдал ошибку ReferenceError: SP is not defined, line 3 (Error code: -991)


kolshix пишет

URL GOTO=http://сайт.рф
ТAG POS ****** TXT=нужный вам текст  CONTENT=EVENT:FAIL_IF_FOUND   
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст комента

не запускается, выдает ошибку формата тага на линии 2, туда я ставлю TAG POS=1 TYPE=DIV ATTR=ID:msg******* (где ******* динамический номер меняющийся каждый раз) TXT=Текст  CONTENT=EVENT:FAIL_IF_FOUND

HolaWoro пишет
kolshix пишет

for (ckl=1;ckl<=КОЛИЧЕСТВО ЦИКЛОВ;ckl++) {
imPlaiCode("WAIT SECONDS=15")
iimPlay(файл.iim)
}

запустился js, отсчитал 15 секунд и выдал ошибку ReferenceError: SP is not defined, line 3 (Error code: -991)


kolshix пишет

URL GOTO=http://сайт.рф
ТAG POS ****** TXT=нужный вам текст  CONTENT=EVENT:FAIL_IF_FOUND   
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст комента

не запускается, выдает ошибку формата тага на линии 2, туда я ставлю TAG POS=1 TYPE=DIV ATTR=ID:msg******* (где ******* динамический номер меняющийся каждый раз) TXT=Текст  CONTENT=EVENT:FAIL_IF_FOUND

Я тут допустил ошибку не взял в кавычки ""
for (ckl=1;ckl<=КОЛИЧЕСТВО ЦИКЛОВ;ckl++) {
imPlaiCode("WAIT SECONDS=15")
iimPlay("файл.iim")
}

не запускается, выдает ошибку формата тага на линии 2, туда я ставлю TAG POS=1 TYPE=DIV ATTR=ID:msg*******

По этому вопросу:  покажите команду поиска текста которая у вас получилась через автозапись действий

Подскажите как сделать, через Imarcos запущен скрипт, там идут переходы и поочередно идет 2 капчи, так выходит что в окно ввода второй капчи ставить текст первой + текст 2(капча 1 [EXTRACT]капча 2), как сделать что бы был только второй??

kolshix пишет

По этому вопросу:  покажите команду поиска текста которая у вас получилась через автозапись действий

Выделить код

Код:

запустил запись

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=Сайт
TAG POS=1 TYPE=DIV ATTR=ID:msg1111111 /тут я кликнул по своему тексту и выделился блок

остановил запись
kolshix пишет

Я тут допустил ошибку не взял в кавычки ""

да теперь ошибки он не выдает, но и не ищет никакой текст, просто отсчитывает 15 секунд и запускается по новой :D
действие макроса Macros.iim не происходит

ATJIaHTuK пишет

Подскажите как сделать, через Imarcos запущен скрипт, там идут переходы и поочередно идет 2 капчи, так выходит что в окно ввода второй капчи ставить текст первой + текст 2(капча 1 [EXTRACT]капча 2), как сделать что бы был только второй??

после первого  экстракта прописать:

SET !EXTRACT NULL

HolaWoro пишет

да теперь ошибки он не выдает, но и не ищет никакой текст, просто отсчитывает 15 секунд и запускается по новой :D
действие макроса Macros.iim не происходит

Сразу на всякий пожарный переспрошу, а вы помимо файла скрипта JS, создали файл Macros.iim ?
Вот что должно содержаться в Macros.iim

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=Сайт
TAG POS=1 TYPE=DIV ATTR=ID:msg1111111 CONTENT=EVENT:FAIL_IF_FOUND 
WAIT SECONDS=15
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст

Весь код
for (ckl=1;ckl<=КОЛИЧЕСТВО ЦИКЛОВ;ckl++) {
imPlaiCode("WAIT SECONDS=15")
iimPlay(" Macros.iim")
}

где  Macros.iim

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=Сайт
TAG POS=1 TYPE=DIV ATTR=ID:msg1111111 CONTENT=EVENT:FAIL_IF_FOUND 
WAIT SECONDS=15
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:адрес сайта ATTR=NAME:msg CONTENT=Текст

kolshix пишет

Сразу на всякий пожарный переспрошу, а вы помимо файла скрипта JS, создали файл Macros.iim ?

есть два файла Macros.js и Macros.iim в первом:

Выделить код

Код:

for (ckl=1;ckl<=12;ckl++) {
iimPlayCode("WAIT SECONDS=15")
iimPlay("Macros.iim")
}

во втором:

Выделить код

Код:

URL GOTO=http://сайт/?c=comments&id=51217
TAG POS=1 TYPE=DIV ATTR=ID:msg******* TXT=Текст  CONTENT=EVENT:FAIL_IF_FOUND    
TAG POS=1 TYPE=A ATTR=TXT:написать<SP>новый<SP>комментарий
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:http://сайт/?c=comments&a=add&id=51217 ATTR=ID:msg CONTENT=Текст комментария
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://сайт/?c=comments&a=add&id=51217 ATTR=ID:btn-send

при запуске Macros.js в меню плагина iMacros он отсчитывает эти 15 секунд и повторяется, вне зависимости от того есть на нужной странице искомый текст или нет

з.ы. напомню что поле msg******* динамическое и там где поставлены звезды каждый раз новый номер при добавлении комментария

Как можно сделать  {{!VAR15}} ?

02-08-2014 21:16:20

Gergi пишет

Как можно сделать  {{!VAR15}} ?

До {{!VAR9}} работает. А выше уже не работает

Gergi пишет

Как можно сделать  {{!VAR15}} ?

научиться пользоваться поиском, на все заданные вами вопросы, не однократно давались ответы на форуме

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

Gergi пишет

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

offtop

Gergi пишет

Можно ли каким то образом при каждом цикле удалять первую строчку из txt файла?

я, как минимум дважды отвечал на этот вопрос за последние полгода

Gergi пишет

Мне надо вызывать 2 iim по очереди с помощью js

Gergi пишет

А как его зациклить?

практически на каждой странице форума (из последних 20), есть примеры на эту тему

Gergi пишет

SET !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Dimux.txt

Надо реализовать такую команду в .js

куча примеров

Gergi пишет

До {{!VAR9}} работает. А выше уже не работает

воспользоваться вики по имакросу
найти общее во всех этих командах и воспользоваться поиском по форуму

Буду гуглить

Gergi пишет

Буду гуглить

не уже ли так сложно?!

InfSub пишет
Gergi пишет

Буду гуглить

не уже ли так сложно?!

Если не знаете решение вопроса то лучше промолчите! Я два раза прочитал эти 74 страницы! и нигде не встретил что то о том как увеличить {{!VAR 9}}

Gergi пишет
InfSub пишет
Gergi пишет

Буду гуглить

не уже ли так сложно?!

Если не знаете решение вопроса то лучше промолчите! Я два раза прочитал эти 74 страниц голимого  форум! и нигде не встретил что то о том как увеличить {{!VAR 9}}

не обязательно пользоваться !VAR (1-9)  --  я вообще переменным свои имена даю

наглядный пример извлечения рандомных строк из массива и перемешка извлеченного (ну и перменные с моими именами)

Выделить код

Код:

' Графа Деятельность до 139
SET !DATASOURCE C:\Users\kolshix\YandexDisk\Macros\RegAcc\Masiv\0007_Interests.txt
' 1
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 1;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES1 {{!COL1}}
' 2
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 24;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES2 {{!COL1}}
' 3
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 48;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES3 {{!COL1}}
' 4
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 72;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES4 {{!COL1}}
' 5
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 96;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES5 {{!COL1}}
' 6
SET !VAR1 EVAL("Math.floor(Math.random()*18) + 120;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES6 {{!COL1}}

'===Перемешка===
SET !VAR1 EVAL(" var tags = '{{INTERES1}}, {{INTERES2}}, {{INTERES3}}, {{INTERES4}}, {{INTERES5}}'; var tagList = tags.split(); tagList.sort(function() { return Math.random() - 0.6;});")
TAG POS=1 TYPE=TEXTAREA ATTR=ID:pedit_interests_interests CONTENT={{!VAR1}}


03-08-2014 02:20:46

HolaWoro пишет

з.ы. напомню что поле msg******* динамическое и там где поставлены звезды каждый раз новый номер при добавлении комментария

Достаточно и 1 звездочки .  к сожалению не могу вспомнить общую команду для поиска текста по всей странице , где -то на форуме писали что команда связана с тегом body  --- кто шарит в написании сайтов может и подскажет.

Сейчас помочь сильно не могу, военные действия идут, сижу через моб. интернет \  взорвали где-то интернет кабель при бомбордировке , теперь пол города без интеернета!

Gergi пишет
InfSub пишет
Gergi пишет

Буду гуглить

не уже ли так сложно?!

Если не знаете решение вопроса то лучше промолчите! Я два раза прочитал эти 74 страниц голимого  форум! и нигде не встретил что то о том как увеличить {{!VAR 9}}

если вы не можете извлечь знания из того, что вам дали, а в ссылках в гугле, как минимум первые 4 содержат нужную вам информацию, то будьте добры оставьте свое мнение при себе

special for you:
01c05800672a9ea6de3864815f81b587.png

03-08-2014 02:50:43

kolshix пишет

не обязательно пользоваться !VAR (1-9)  --  я вообще переменным свои имена даю

я специально не стал давать этот пример, хотя нашел его за минуту в поиске по форуму по запросу SET (и сделал намек на данный запрос, только в гугл)
но, если человек упорно не хочет включать мозг, о чем я писал выше в спойлере... то отвечать на каждый изжеванный несколько десятков раз тут вопрос.. я считаю не правильно, ИМХО

03-08-2014 03:05:46
тем более после его высказываний в сторону форума

Я просто читая вопросы, вспоминаю себя когда мучился и ни где не мог найти ответ по не знанию терминологии или из-за того , что бошкане тем забита , да и который раз обращаю внимание что у каждого по разному голова мыслит ... вот и возникают такие проблемы  ... да и макрос сам посебе интересная штука..     К примеру на днях мучился как на js взять текущее время, пока нашёл и вникнул, задолбался , потом не мог с eval отредоктировать время ..... короче ещё погуглил и узнал что у макроса есть своя независимая команда на iim / Вот так вот весело провел время

03-08-2014 03:08:26
и да ничего не подскажешь по поводу

ОФФТОП
Нашёл я парочку команд, использую их в iimDisplay

вариант в коде 

Выделить код

Код:

var i = ('vv'+'\n'+'bb')
alert (i)

// \n переход на новую строку (абзац)
// \t табуляция 
// \f  \b и  \v срань какуюто пишет
// &nbsp; неразрывный пробел 

Какие есть ещё , поделитесь?

kolshix пишет

Я просто читая вопросы, вспоминаю себя когда мучился и ни где не мог найти ответ по не знанию терминологии или из-за того , что бошкане тем забита , да и который раз обращаю внимание что у каждого по разному голова мыслит ... вот и возникают такие проблемы  ... да и макрос сам посебе интересная штука..     К примеру на днях мучился как на js взять текущее время, пока нашёл и вникнул, задолбался , потом не мог с eval отредоктировать время ..... короче ещё погуглил и узнал что у макроса есть своя независимая команда на iim / Вот так вот весело провел время

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

03-08-2014 03:14:26

kolshix пишет

Какие есть ещё , поделитесь?

а что ты еще хочешь? это стандартные маркеры для форматирования текста в документе (\n \t ...), &nbsp; - это из html

03-08-2014 03:16:07
в большинстве случаев этого достаточно, но можешь поэксперементировать с другими html- символами.. таблиц с ними в интернете куча

03-08-2014 03:16:57
тыц, еще тыц

тут когда люди жалуются, что форум плохой    -----  могу ответить что за последний месяц с помощью форума и imacros я заработал 10200 р -- так что, могу ответить , пусть и далее плачутся


тыц тыц - то что нужно  ))


обратил на символы внимание , когда искал табуляцию, для записи txt файлов в виде таблиц.

Не могу вконтакте в группе прокомментировать запись

1. Комментировать нажимает,
2. Поле ввода, выделяет.

А вот текст ни в какую не вставляет.
Разные варианты испробовал.

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

Так, тоже не идёт проверка на вход в контакте.
если одно из этих условий совпадает - верное, то делает второй цикл.

Выделить код

Код:

for (;;){
iimSet("д",д);
д++
iimPlay("вход.iim",60);
iimPlay("проверка.iim",60)<0){
iimPlay("выход.iim",60);
        break
        }else{
     }
}

код макроса проверка

Выделить код

Код:

SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1

TAG POS=1 TYPE=B ATTR=TXT:временно<SP>заморозили
TAG POS=1 TYPE=B ATTR=TXT:Ваша<SP>страница<SP>удалена
TAG POS=1 TYPE=B ATTR=TXT:Не<SP>удается<SP>войти.

Уважаемые знатоки помогите написать команды для автоматического ответа на сообщения в одноклассниках или подскажите как организовать вставку текста в поле ввода сообщения

TAG POS=1 TYPE=BUTTON FORM=ID:u_* ATTR=TXT:Отправить / При нажатий Отправить иногда хватает одной секунды а иногда и 10 мало. Можно ли как то сделать что бы скрипт не уходил на другую команду пока не отправится?
WAIT SECONDS=5

Gergi пишет

TAG POS=1 TYPE=BUTTON FORM=ID:u_* ATTR=TXT:Отправить / При нажатий Отправить иногда хватает одной секунды а иногда и 10 мало. Можно ли как то сделать что бы скрипт не уходил на другую команду пока не отправится?
WAIT SECONDS=5

в данном случае, только заранее выставив таймер с запасом, иные варианты трудоемки и практически бессмысленны

kolshix пишет

Достаточно и 1 звездочки .  к сожалению не могу вспомнить общую команду для поиска текста по всей странице , где -то на форуме писали что команда связана с тегом body  --- кто шарит в написании сайтов может и подскажет.

Хорошо, тогда поставлю вопрос так, ко всем: кто сможет сделать то что мне нужно и сколько это будет стоить?

Gergi пишет

SET !DATASOURCE C:\Users\x.txt // В этом файле 200 строчек. Как сделать так что бы каждая выполненная строчка удалялась?
SET !DATASOURCE_COLUMNS 1SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
                    Отредактировано Gergi (02-08-2014 00:47:15)

Если кто то знает ответ на этот вопрос ответьте если не сложно. Гугл не помогает.  :(

добрый день господа (и дамы, если вдруг есть)

есть задача - переходить в браузере по одному и тому же URL и залогиниваться в определенное время с интервалом в 5 или 10 минут, как такое реализовать?

пробовал запускать в нужное время,  через WAIT давать нужную паузу и этот макрос зацикливать, но но URL каждый раз с разной скоростью открывается и в итоге не то выходит

Gergi пишет
Gergi пишет

SET !DATASOURCE C:\Users\x.txt // В этом файле 200 строчек. Как сделать так что бы каждая выполненная строчка удалялась?
SET !DATASOURCE_COLUMNS 1SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
                    Отредактировано Gergi (02-08-2014 00:47:15)

Если кто то знает ответ на этот вопрос ответьте если не сложно. Гугл не помогает.  :(

ни как, нет в имакросе такого функционала

06-08-2014 12:55:54

boxrin пишет

добрый день господа (и дамы, если вдруг есть)

есть задача - переходить в браузере по одному и тому же URL и залогиниваться в определенное время с интервалом в 5 или 10 минут, как такое реализовать?

пробовал запускать в нужное время,  через WAIT давать нужную паузу и этот макрос зацикливать, но но URL каждый раз с разной скоростью открывается и в итоге не то выходит

поставьте мозиллу на запуск в планировщик задач с нужным вам интервалом
скрипт, выполняющий требуемые действия прописываете, как параметр для запуска (ни единожды обсуждалось как это сделать)

InfSub пишет

Gergi пишет: Gergi пишет: SET !DATASOURCE C:\Users\x.txt // В этом файле 200 строчек. Как сделать так что бы каждая выполненная строчка удалялась?SET !DATASOURCE_COLUMNS 1SET !LOOP 1SET !DATASOURCE_LINE {{!LOOP}}URL GOTO={{!COL1}}                    Отредактировано Gergi (02-08-2014 00:47:15)Если кто то знает ответ на этот вопрос ответьте если не сложно. Гугл не помогает.  ни как, нет в имакросе такого функционала

Спасибо! А то я загуглил уже весь интернет )))

06-08-2014 16:18:40
Раньше  Алим задавал вопрос на который я ответа не виде,поэтому задам его ещё раз.

У меня в txt файле 15 строчек,я их разбил с помощью SET !LOOP 1 SET !LOOP 2 SET !LOOP 3 задумка такая,что SET !LOOP 1 работал с первыми 5 строчек перебирал их с  помощью {{!LOOP}} и SET !LOOP 2 и SET !LOOP 3 тоже по 5 строчек брали. К примеру при одном цикле SET !LOOP 1 берёт первую строку из txt SET !LOOP 2 Берёт 10ю строчку.Всё работает ровно  при одном цикле,на втором цикле уже всё сбивается.

Gergi пишет

SET !LOOP 2 Берёт 10ю строчку.Всё работает ровно  при одном цикле,на втором цикле уже всё сбивается.

Сбивается потому, что в одном коде макроса несколько !LOOP, он не может их по отдельности считать.
Это можно сделать, через JS, указав каждый макрос отдельно.

Алим пишет
Gergi пишет

SET !LOOP 2 Берёт 10ю строчку.Всё работает ровно  при одном цикле,на втором цикле уже всё сбивается.

Сбивается потому, что в одном коде макроса несколько !LOOP, он не может их по отдельности считать.
Это можно сделать, через JS, указав каждый макрос отдельно.

EVAL() ни кто не отменял, можно все и в одном файле реализовать, при желании и активной работе серого вещества))

SET !VAR4 10
SET !VAR3 EVAL("var l={!LOOP}};var m={{!VAR4}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")

Так тоже не работает. Один цикл и всё.

Gergi пишет

var l={!LOOP}}

вторую фигурную скобку в начале забыл указать

08-08-2014 11:32:38
Как можно с помощью URL GOTO=javascript:... переходить на расположение объекта на странице?
Один раз видел на одной странице как это делается, сейчас не нахожу.

Объект на веб странице оказывается на верху или внизу.
Это удобнее, чем мотать страницу вниз.

Алим пишет

Gergi пишет: var l={!LOOP}}вторую фигурную скобку в начале забыл указать

Спасибо :blush:

08-08-2014 12:22:43
VERSION BUILD=8820413 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
SET !VAR1 5
SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\Users\User\Desktop\xxx.txt
SET !DATASOURCE_COLUMNS 5
SET !LOOP 1
SET !DATASOURCE_LINE {{!VAR2}}
EVENTS TYPE=KEYPRESS SELECTOR="#groupMembersInput" CHARS={{!COL1}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=ID:u_* ATTR=TXT:Добавить
SET !VAR4 10
SET !VAR3 EVAL("var l={{!LOOP}};var m={{!VAR4}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\Users\User\Desktop\xxx.txt
SET !DATASOURCE_COLUMNS 5
SET !LOOP 5
SET !DATASOURCE_LINE {{!VAR3}}
EVENTS TYPE=KEYPRESS SELECTOR="#groupMembersInput" CHARS={{!COL1}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=ID:u_* ATTR=TXT:Добавить
WAIT SECONDS=2

Вот весь код. Один проход идёт как задумано а на втором уже сбивается.

Gergi пишет
Алим пишет

Gergi пишет: var l={!LOOP}}вторую фигурную скобку в начале забыл указать

Спасибо :blush:

Вероятно уже писалось, но всеровно на будущее повторюсь , http://wiki.imacros.net/Error_and_Return_Codes   - по номеру можно сразу определить ошибку!

kolshix пишет

Вероятно уже писалось, но всеровно на будущее повторюсь , http://wiki.imacros.net/Error_and_Return_Codes   - по номеру можно сразу определить ошибку!

offtop
судя по большинству задаваемых, в данной ветке форума, вопросов - прихожу к мнению, что, как минимум - часть посетителей, из поколения AnyKey'щиков, и у них, типа не модно, юзать поиск =)

kolshix пишет
Gergi пишет
Алим пишет

Gergi пишет: var l={!LOOP}}вторую фигурную скобку в начале забыл указать

Спасибо :blush:

Вероятно уже писалось, но всеровно на будущее повторюсь , http://wiki.imacros.net/Error_and_Return_Codes   - по номеру можно сразу определить ошибку!

О том как определить ошибку  я знаю. Но дело в том что как с ошибкой так и без ошибки работает,ничего не поменялось. Скобка могла исчезнуть когда я сто раз переделывал код. Вы вместо того что бы помочь тролингом занимаетесь! Замечательный форум!

Gergi пишет

Вы вместо того что бы помочь тролингом занимаетесь! Замечательный форум!

ИМХО
кажется вы раньше несколько иначе отзывались о форуме...

Gergi пишет

Я два раза прочитал эти 74 страниц голимого форума!

и хотите, чтобы вам нормально отвечали....

Gergi пишет

Вот весь код. Один проход идёт как задумано а на втором уже сбивается.

очень информативно, может опишите, для начала, что именно делает данный код и на каком сайте/странице...
строка SET !LOOP 5, в данном коде, вообще бесполезна, т.к. ни на что не влияет, впрочем как и SET !LOOP 1 чуть выше
если вы, писали свой код отталкиваясь от значений, заданных вами же, в переменной {{!LOOP}} - то, возможно, ошибка, именно в этом, значение {{!LOOP}} - задается единожды, автоматически или в ручную, и меняется только самим имакросом - FAQ

iMacros WiKi

With SET !LOOP 3 you can set a start value for the loop counter (the default value is 1).

Note:

SET !LOOP n

is ignored for every loop run except the first one.

Я создал три разных txt файла и всё заработало.

Ребята, подскажите пож. по поводу проксей, кто-то пользуется такой примочкой?

скрытый текст
SET !DATASOURCE proxy.csv
SET !DATASOURCE_COLUMNS 3
SET !DATASOURCE_LINE 1
URL GOTO=about:config
URL GOTO=javascript:var<SP>prefb<SP>=<SP>Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);var<SP>str<SP>=<SP>Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);str.data<SP>=<SP>"{{!COL2}}";prefb.setComplexValue("network.proxy.http",<SP>Components.interfaces.nsISupportsString,<SP>str);
URL GOTO=javascript:gPrefBranch.setIntPref("network.proxy.http_port",{{!COL3}});
URL GOTO=javascript:gPrefBranch.setIntPref("network.proxy.type",1);
URL GOTO={{!COL1}}

У меня никак не меняет никакие параметры. Кто этим пользуется? Как правильно сменить прокси в браузере?

Кто-то пользуется .net версией? Не в курсе, есть ли где-то взломанная нормально работающая версия?

Тут где то на форуме видел вопрос на то как в iMacros прописать код который будет заменять клавишу ENTER но тогда мне это не нужно было а теперь по поиску не нахожу. Может таки кто то знает  как это сделать? :)

Здравствуйте!
Как мне исправить код чтобы во второе поле выводилось число на 20 меньше?

скрытый текст
SET !DATASOURCE prom.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 2
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:product_form ATTR=TYPE:text&&VALUE:&&NAME:price&&ID:price&&CLASS:b-input__field CONTENT={{!COL1}}
SET !VAR1 EVAL ("{{!COL1}} - 20);")
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:product_form ATTR=TYPE:text&&VALUE:&&NAME:prices-0-price&&ID:prices-0-price&&CLASS:b-input__field CONTENT={{!VAR1}}

Duh пишет

Здравствуйте!
Как мне исправить код чтобы во второе поле выводилось число на 20 меньше?

скрытый текст
SET !DATASOURCE prom.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 2
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:product_form ATTR=TYPE:text&&VALUE:&&NAME:price&&ID:price&&CLASS:b-input__field CONTENT={{!COL1}}
SET !VAR1 EVAL ("{{!COL1}} - 20);")
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:product_form ATTR=TYPE:text&&VALUE:&&NAME:prices-0-price&&ID:prices-0-price&&CLASS:b-input__field CONTENT={{!VAR1}}

попробуйте так:
SET !VAR1 {{!COL1}}
ADD !VAR1 -20
в данный момент пишу с телефона, проверить будет ли работать этот способ, если число воспринимается как текст - возможности нет

Warped пишет

Ребята, подскажите пож. по поводу проксей, кто-то пользуется такой примочкой?

Кто-то пользуется .net версией? Не в курсе, есть ли где-то взломанная нормально работающая версия?

Я уже писал , что с iim головняки по смене прокси, а вот на js работает как часики

https://forum.mozilla-russia.org/viewto … 61#p649961

InfSub, спасибо!
Работает ;)

EVENTS TYPE=KEYPRESS SELECTOR="#u_3_k" CHARS= При проигрываний скрипта,значение которое по среди кавычек "#u_3_k" постоянно меняется,и соответственно не работает скрипт.

Мне нужен кто-то кто за символическую сумму сделает мне скрипт, который будет брать данные из файла (текстовик, 1 строчка = 1 ссылка), открывать ссылку, затем на странице со ссылкой жать две кнопки и удалять отработанную строчку из файла и так до конца списка.
Напишите в личку, если есть кто знает, как такое реализовать.


А теперь вопрос за благодарность. У меня скрипт извлекает информацию в файл (csv, txt). Каждые данные в одну строчку. Но он их излекает в кавычках. Мне нужно, чтобы извлечение шло без кавычек.

Выделить код

Код:

SEARCH SOURCE=REGEXP:"Добро пожаловать на (.+?) сервер" EXTRACT = $1
SET !VAR2 {{!EXTRACT}}
SET !EXTRACT NULL
TAG POS=1 TYPE=H2 ATTR=TXT:Спасибо,<SP>за<SP>сделанный<SP>выбор.
TAG POS=R-1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=S:\ FILE={{!VAR2}}.txt

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

kolshix пишет

Сбылась мечта * , моя мечта!)) искал долго и нудно, чувствовал задним местом, что где-то рядом ползаю.
Теперь по делу: imacros при смене прокси и завершении сценария в javascript, возвращается к настройкам которые были до смены прокси, а хотелось бы в нужный момент 1 раз включить прокси и чтоб оно к примеру работало до конца 3-го сценария, либо до нового переключения ! и вот на тебе :

немного оффтопа о прокси на js
iim

Выделить код

Код:

URL GOTO=about:config

JS ---- главное оставить верхнюю строчку и строчку включения прокси и удалить ненужные ниже (зависит от вида прокси) и установить нужные числа

Выделить код

Код:

var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);

// manual proxy configuration
prefs.setIntPref("network.proxy.type", 1);

// use the proxy server for all protocols
prefs.setBoolPref("network.proxy.share_proxy_settings", true);

// HTTP Proxy
prefs.setCharPref("network.proxy.http", ip);
prefs.setIntPref("network.proxy.http_port", port);

// SOCKS Host
prefs.setCharPref("network.proxy.socks", ip);
prefs.setIntPref("network.proxy.socks_port", port);

// SSL Proxy
prefs.setCharPref("network.proxy.ssl", ip);
prefs.setIntPref("network.proxy.ssl_port", port);

Пример  --------   обратите внимание что адрес  37.115.181.144 взят в одинарные кавычки  '

Выделить код

Код:

iimPlayCode("URL GOTO=about:config");
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
// SOCKS Host
prefs.setCharPref("network.proxy.socks", '37.115.181.144');
prefs.setIntPref("network.proxy.socks_port", 1080);

Отлично! А нельзя ли еще сюда прокси с авторизацией (логин/пароль) прикрутить?

yinfo пишет
kolshix пишет

Сбылась мечта * , моя мечта!)) искал долго и нудно, чувствовал задним местом, что где-то рядом ползаю.
Теперь по делу: imacros при смене прокси и завершении сценария в javascript, возвращается к настройкам которые были до смены прокси, а хотелось бы в нужный момент 1 раз включить прокси и чтоб оно к примеру работало до конца 3-го сценария, либо до нового переключения ! и вот на тебе :

немного оффтопа о прокси на js
iim

Выделить код

Код:

URL GOTO=about:config

JS ---- главное оставить верхнюю строчку и строчку включения прокси и удалить ненужные ниже (зависит от вида прокси) и установить нужные числа

Выделить код

Код:

var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);

// manual proxy configuration
prefs.setIntPref("network.proxy.type", 1);

// use the proxy server for all protocols
prefs.setBoolPref("network.proxy.share_proxy_settings", true);

// HTTP Proxy
prefs.setCharPref("network.proxy.http", ip);
prefs.setIntPref("network.proxy.http_port", port);

// SOCKS Host
prefs.setCharPref("network.proxy.socks", ip);
prefs.setIntPref("network.proxy.socks_port", port);

// SSL Proxy
prefs.setCharPref("network.proxy.ssl", ip);
prefs.setIntPref("network.proxy.ssl_port", port);

Пример  --------   обратите внимание что адрес  37.115.181.144 взят в одинарные кавычки  '

Выделить код

Код:

iimPlayCode("URL GOTO=about:config");
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
// SOCKS Host
prefs.setCharPref("network.proxy.socks", '37.115.181.144');
prefs.setIntPref("network.proxy.socks_port", 1080);

Отлично! А нельзя ли еще сюда прокси с авторизацией (логин/пароль) прикрутить?

от вы какие-то чудные, может за вами ещё в туалете подтирать , ну нахрена мозги эволюция сотворила?!!!! Я к примеру ввел адреса прокси включил макрос на запись и получил результат , что так сложно за мной повторить или додуматься, это же не мудрённые команды js !? где без основ ничего не сделать !!!

1  ---  использовать команды Imacros     ONLOGIN USER=_____________   PASSWORD=_____________________

2  ---  использовать дополнения которые автоматически заполняют логин прокси и пароль прокси https://addons.mozilla.org/ru/firefox/a … src=search

kolshix пишет

от вы какие-то чудные, может за вами ещё в туалете подтирать , ну нахрена мозги эволюция сотворила?!!!!
1  ---  использовать команды Imacros     ONLOGIN USER=_____________   PASSWORD=_____________________
2  ---  использовать дополнения которые автоматически заполняют логин прокси и пароль прокси https://addons.mozilla.org/ru/firefox/a … src=search

Шеф, только спокойствие! Я как раз  основы изучаю. За совет спасибо.
PS а сайт, Яндекс тот же, не забанит если его с пяти вкладок с разных проксей анализировать?(Поиск или Маркет)  Без авторизации.

yinfo пишет
kolshix пишет

от вы какие-то чудные, может за вами ещё в туалете подтирать , ну нахрена мозги эволюция сотворила?!!!!
1  ---  использовать команды Imacros     ONLOGIN USER=_____________   PASSWORD=_____________________
2  ---  использовать дополнения которые автоматически заполняют логин прокси и пароль прокси https://addons.mozilla.org/ru/firefox/a … src=search

Шеф, только спокойствие! Я как раз  основы изучаю. За совет спасибо.
PS а сайт, Яндекс тот же, не забанит если его с пяти вкладок с разных проксей анализировать?(Поиск или Маркет)  Без авторизации.

Насколько я знаю по ВК , то он палит по User Agent + Java палит реальный IP -  а значит и Яндекс по этим способом тоже палит - ищи способы сокрытия данной информации, даже где-то слышал, что по вкладкам тоже палится комп и IP.   Сталкивался лично с ситуацией: регистрировал через Тор 2 аккаунта FB - на первом все нормально было, потом скопировал адрес из адресной строки facebook.com и нажал в торе смену личности, потом нажал вставить в адресную строку данные буфер "facebook.com"  - дак FB меня спалил по данным из буфера , что я один и тот же пользователь. Вторая ситуация: скинул на ВДС свой браузер, запретил там Flash, подстроил User agent - поставил Прокси которыми ранее пользовался, но всеравно ВК иногда палит меня, что не со стандартного места вошёл.   Вот и думай теперь как тут с сокрытием быть.

Ребята помогите чуток.Я начинающий))Сделал скрипт ,регер фейсбук.Раньше работал нормально.Но потом что то пошло не так.

VERSION BUILD=8820413 RECORDER=FX
TAB CLOSEALLOTHERS
TAB T=1
SET !DATASOURCE Address.csv
SET !DATASOURCE_COLUMNS 2
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://ru-ru.facebook.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg ATTR=ID:u_0_1 CONTENT=Алексей
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg ATTR=ID:u_0_3 CONTENT=Мишин
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg ATTR=ID:u_0_5 CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg ATTR=ID:u_0_8 CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:reg ATTR=ID:u_0_a CONTENT={{!COL2}}
TAG POS=1 TYPE=SELECT FORM=ID:reg ATTR=ID:day CONTENT=%13
TAG POS=1 TYPE=SELECT FORM=ID:reg ATTR=ID:month CONTENT=%5
TAG POS=1 TYPE=SELECT FORM=ID:reg ATTR=ID:year CONTENT=%1969
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:reg ATTR=ID:u_0_e
TAG POS=1 TYPE=BUTTON FORM=ID:reg ATTR=ID:u_0_i
WAIT SECONDS=25
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:u_5_6_ci_form ATTR=ID:u_5_6_ci_password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:u_5_6_ci_form ATTR=ID:u_5_8
WAIT SECONDS=22
TAG POS=1 TYPE=INPUT:BUTTON ATTR=NAME:skip_step
WAIT SECONDS=20
CLEAR



На этой строчке вылазит ошибка
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:u_5_6_ci_form ATTR=ID:u_5_6_ci_password CONTENT={{!COL2}}

Подскажите что не так.

Это пародия на скрипт. Он не мог нормально работать.

У кого тут можно скрипт заказать?

Всем привет, есть вопрос, я нуб а вы нет:
Вопрос: Он лайкает нормально только до первого камня, к примеру ему не нравится ссылка или ещё что то и он её не находит, соответственно не хочет открывать, но по списку есть другие, вопрос в том как изменять POS1 чтоб если его не устраивает первый то он не думал о нём и шел дальше по списку POS2,3,4,5...
Как это можно сделать?

VERSION BUILD=8820413 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES   
TAB T=1
TAB CLOSEALLOTHERS
URL GOTO=*сайт скрыт*
TAG POS=1 TYPE=DIV ATTR=TXT:http://vk.com/*
TAB T=2
TAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится

Здравствуйте!

Как правильно прописать в .js загрузку файла на сайт?

Выделить код

Код:

var ru = "\n";
macro1 += "TAG POS=1 TYPE=INPUT:FILE FORM=NAME:Foto ATTR=NAME:foto CONTENT=C:\TEST\fOTO.jpg"+ru;
' Загружает C:\TEST\fOTO.jpg вместо fOTO.jpg , соответственно сайт отвечает "неверный формат файла"

В .imm всё работает корректно

Выделить код

Код:

TAG POS=1 TYPE=INPUT:FILE FORM=NAME:Foto ATTR=NAME:foto CONTENT=C:\TEST\fOTO.jpg
Выделить код

Код:

VAR1 EVAL("var RandomFacts = ['Fact 1', 'Fact 2', 'Fact 3', 'Fact 4']; RandomFacts;") 
' вставляет все фак ты сразу, нужно , чтобы брал рандомно только одно слово за раз

Как будет выглядеть рабочий код рандомной вставки текста для .imm формата?

Revers пишет
Выделить код

Код:

VAR1 EVAL("var RandomFacts = ['Fact 1', 'Fact 2', 'Fact 3', 'Fact 4']; RandomFacts;") 
' вставляет все фак ты сразу, нужно , чтобы брал рандомно только одно слово за раз

Как будет выглядеть рабочий код рандомной вставки текста для .imm формата?

может немного не в тему, но но работает , нужно только создать txt файл с фразами

извлекает 5 разных текстов из txt файла с 140 строк  перемешивает их  и вставляет в нужное место
' Графа Деятельность до 139
SET !DATASOURCE C:\Users\kolshix\YandexDisk\Macros\RegAcc\Masiv\0007_Interests.txt
' 1
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 1;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES1 {{!COL1}}
' 2
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 24;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES2 {{!COL1}}
' 3
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 48;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES3 {{!COL1}}
' 4
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 72;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES4 {{!COL1}}
' 5
SET !VAR1 EVAL("Math.floor(Math.random()*23) + 96;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES5 {{!COL1}}
' 6
SET !VAR1 EVAL("Math.floor(Math.random()*18) + 120;")
SET !DATASOURCE_LINE {{!VAR1}}
SET INTERES6 {{!COL1}}

'===Перемешка===
SET !VAR1 EVAL(" var tags = '{{INTERES1}}, {{INTERES2}}, {{INTERES3}}, {{INTERES4}}, {{INTERES5}}'; var tagList = tags.split(); tagList.sort(function() { return Math.random() - 0.6;});")
TAG POS=1 TYPE=TEXTAREA ATTR=ID:pedit_interests_interests CONTENT={{!VAR1}}


а так выглядит файл извлекающий из файла тхт с 100 строк  рандоиную строку
' Графа Деятельность до 139
SET !DATASOURCE C:\Users\kolshix\YandexDisk\Macros\RegAcc\Masiv\0007_Interests.txt
'
SET !VAR1 EVAL("Math.floor(Math.random()*101 + 1;")
SET !DATASOURCE_LINE {{!VAR1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:pedit_interests_interests CONTENT={{!COL1}}

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 1;") я тестировал но мне не понравилось то что к примеру в txt файле находятся 100 строк,он может открыть 5 строку один раз,10ю строку 3 раза ну и так далее.... Как бы сделать так что бы не повторял уже отработанные строки

Как можно в iim реализовать LOG действий? я прикручивал этот код SET !FILELOG  но то ли не правильно прикрутил то ли это совсем не то.

Gergi пишет

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 1;") я тестировал но мне не понравилось то что к примеру в txt файле находятся 100 строк,он может открыть 5 строку один раз,10ю строку 3 раза ну и так далее.... Как бы сделать так что бы не повторял уже отработанные строки

Я и такую срань реализовал (срань- потому что как всегда по своему сделал, а не по науке!)
вот код без каких либо изменений, я его использую для добавления друзей на ВК из списка в рандомном порядке - Знаю что можно и по другому код сделать, но лень переписывать (можно массив не прописывать в ручную , а сделать цикл с добавлением данных в массив, но повторюсь, лень) в массиве отсутствует 1 номер - это не баг - это фича!

скрытый текст

Выделить код

Код:

var mass = ["31","32","33","34","35","36","37","38","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30"]
mass.sort(function() {
   return Math.random() - 0.6;
});

mass.sort(function() {
   return Math.random() - 0.6;
});

var d=0
var arr = mass
hawecikls=37 //prompt ("Сколько циклов?",'')
for (i=1;i<=hawecikls;i++){
iimDisplay (i)
iimSet("ARR",arr[d])
iimPlay("RegAcc/0006_AddFriends.iim")// тут код считывания строки   SET !DATASOURCE_LINE {{ARR}}
iimPlay("RegAcc/0007_CaptchaAntigate.iim") // капча 
d++
}

Revers пишет

Как правильно прописать в .js загрузку файла на сайт?

вы забыли про удвоение обратных слешей при использовании js
должно быть так:

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=INPUT:FILE FORM=NAME:Foto ATTR=NAME:foto CONTENT=C:\\TEST\\fOTO.jpg"+ru;

14-08-2014 15:07:42

Gergi пишет

Как можно в iim реализовать LOG действий? я прикручивал этот код SET !FILELOG  но то ли не правильно прикрутил то ли это совсем не то.

iMacros для Firefox создает глобальный log-файл. Log-файлы для отдельных макросов, пока не поддерживаются.

14-08-2014 15:12:40

Gergi пишет

Как бы сделать так что бы не повторял уже отработанные строки

реализовать на js проверку на повторения номера строки

14-08-2014 15:13:49
kolshix, просьба быть помягче в выражениях ;)

14-08-2014 15:17:11

kolshix пишет

Я и такую *** реализовал (потому что как всегда по своему сделал, а не по науке!)

правильней было бы считать весь файл, определив сколько в нем строк, перемешать и подавать охлажденным через цикл for(..) :)

InfSub пишет
kolshix пишет

Я и такую *** реализовал (потому что как всегда по своему сделал, а не по науке!)

правильней было бы считать весь файл, определив сколько в нем строк, перемешать и подавать охлажденным через цикл for(..) :)

Подскажи как определить количество строк в файле, я так понимаю считать строку 1 , 2 , 3 и так пока iim файл не выдаст ошибку - потом взять количество циклов, тем самым определив количество строк??

kolshix пишет
InfSub пишет
kolshix пишет

Я и такую *** реализовал (потому что как всегда по своему сделал, а не по науке!)

правильней было бы считать весь файл, определив сколько в нем строк, перемешать и подавать охлажденным через цикл for(..) :)

Подскажи как определить количество строк в файле, я так понимаю считать строку 1 , 2 , 3 и так пока iim файл не выдаст ошибку - потом взять количество циклов, тем самым определив количество строк??

по сути - да, за одно ты можешь спарсить всю инфу с файла и далее тебе к нему уже не потребуется обращаться

okkamas_knife пишет
kolshix пишет

Подскажи как определить количество строк в файле

alert(text.split("\n").length);
text - содержимое файла
\n - символ новой строки

для того чтобы получить текст в переменную text его нужно считать, имакрос не умеет считывать файл целиком, только построчно, так что данный метод, не функционален

день добрый.подскажите где может быть ошибка не срабатывает javascript-вызов, который выполняется, если условие верно а именно errCode=iimPlay("влад.js"); 

скрытый текст
{

for (var h = 1; h >= 1; --h) {
    errCode=iimPlay("CODE:TAG POS=1 TYPE=TABLE ATTR=TXT:*Владыка* EXTRACT=TXT");
    var s = iimGetLastExtract();
    if(s!=null)
    {
        errCode=iimPlay("CODE:URL GOTO=http://mgero.mobi/game/battle/mercenary/new?type=gold");
        errCode=iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Сражаться");
        errCode=iimPlay("CODE:WAIT SECONDS=3");
    }
    else if(s.indexOf('Владыка')!=-1)
        errCode=iimPlay("влад.js");
   
    else
    {
        errCode=iimPlay("CODE:URL GOTO=http://mgero.mobi/game/battle/mercenary/new?type=gold");
        errCode=iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Сражаться");
        errCode=iimPlay("CODE:WAIT SECONDS=3");
       
    }
}

adgjm2509 пишет

день добрый.подскажите где может быть ошибка не срабатывает javascript-вызов, который выполняется, если условие верно а именно errCode=iimPlay("влад.js")

js-файл нельзя ввзвать через iimPlay() само название функции говорит о том, что она проигрывает только iim-файлы

adgjm2509 пишет

день добрый.подскажите где может быть ошибка не срабатывает javascript-вызов, который выполняется, если условие верно а именно errCode=iimPlay("влад.js");

Немного инфы
в imacros есть способ запуска js файла через js скрипт , но есть небольшая особенность --- БАГ\ФИЧА --- :

Вот команда, назовём её вторым уровнем, а весь скрипт первым уровнем:

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=macros.js");

проблема в том , что после возврата из второго уровня в первый, imacros проскакивает сразу идущее по строке условие, при чем не обращая внимание часть ли это цикла, переменная или что то ещё
Пример

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=macros.js");
iimPlayCode("WAIT SECONDS=1"); // эта строка может быть пропущена

Интересно то, что последующая строка не всегда проскакивается , а иногда срабатывает и по этому на всякий пожарный была записана команда задержка времени 

Фича заключается в том , что imacros гурман в технике и операционной системе и на разных компьютерах бывает подвисает или просто стопорится сценарий, вот тут та и помогает особенность js в js , дело в том что при наличии  цикла на первом уровне js , при зависании (или без зависания) на втором уровне js сценария , при нажатии на кнопку стоп , макрос не останавливает весь сценарий , а просто перескакивает со второго уровня на первый. У меня для imacros есть задания на 24 часа и не всегда приятно перезапускать сценарий, вот тут та фича меня выручает , но есть и проблема , если нужно остановить сценарий, то кнопка стоп будет нажиматься столько раз , сколько циклов, чтоб было понятнее покажу код :
js

Выделить код

Код:

for (i=1;<=10;i++){
     iimPlayCode("URL GOTO=imacros://run/?m=macros.js");
     iimPlayCode("WAIT SECONDS=1");
}

Как вы думаете сколько раз тут нужно нажать стоп , чтоб полностью прекратился сценарий, при условии что сделан 1 цикл ?  У меня уходит 18 раз , проще говоря я просто перезапускаю браузер

Кто уже сталкивался с такими приколами, может что-то интересное поведает ?)

Здравствуйте!

Как правильно прописать?

скрытый текст

Выделить код

Код:

if (прошёл 100 циклов)
             {
iimPlay(macro2);
    }
        else     {
    iimPlay("1.iim");
    }
    
}

Revers пишет

Здравствуйте!
Как правильно прописать?

скрытый текст

Выделить код

Код:

if (прошёл 100 циклов)
{
iimPlay(macro2);
    }
        else     {
    iimPlay("1.iim");
    }    
}

скрытый текст

Выделить код

Код:

for(i=1;i<500;i++){
    if (i>100){
        iimPlay(macro2);
        }
    else{
        iimPlay("1.iim");
        }    
    }
};

InfSub пишет

скрытый текст

Выделить код

Код:

for(i=1;i<500;i++){
    if (i>100){
        iimPlay(macro2);
        }
    else{
        iimPlay("1.iim");
        }    
    }
};

macro2 будет запускаться только после первой сотни циклов или каждую сотню циклов? Нужно чтобы каждую сотню запускался macro2.

Revers пишет

...
macro2 будет запускаться только после первой сотни циклов или каждую сотню циклов?

вопрос был:

Revers пишет

Как правильно прописать?
if (прошёл 100 циклов)

исходя из вопроса и был дан ответ

Revers пишет

Нужно чтобы каждую сотню запускался macro2.

скрытый текст

Выделить код

Код:

... if(isInteger(i/100)){iimPlay(macro2);} ...

InfSub пишет

скрытый текст

Выделить код

Код:

... if(isInteger(i/100)){iimPlay(macro2);} ...

скрытый текст

Выделить код

Код:

for(i=1;i<500;i++){
    if (isInteger(i/100)){iimPlay(macro2);}
    else{
        iimPlay(macro1);
        }    
    }

ReferenceError: isInteger is not defined, line 25 (Error code: -991)

if (isInteger(i/100)){iimPlay(macro2);}   //25 строка "не определено"

Revers пишет

ReferenceError: isInteger is not defined, line 25 (Error code: -991)

добавьте строку перед for:

скрытый текст

function isInteger(n){return(n^0)==n;};

Всем доброе утро!:music:

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Users\User\Desktop\Test.txt
SET !DATASOURCE_LINE {{!LOOP}}
EVENTS TYPE=KEYPRESS SELECTOR="#Membe" CHARS={{!COL1}}


В данный момент в txt файле находятся 200 строк,при каждом цикле скрипт берёт по одной строке. Как бы сделать так что бы при каждом цикле скрипт брал сразу 10 строк а не одну?  При другом цикле следующие 10 и так далее....

Ребята,подскажите пожалуйста как  удалить строчку из "CSV" файла и переложить ее в другой файл ?

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB CLOSEALLOTHERS
TAB T=1
SET !DATASOURCE Address.csv
SET !DATASOURCE_COLUMNS 2
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://ru-ru.facebook.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:reg ATTR=NAME:firstname CONTENT=владимир
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:reg ATTR=NAME:lastname CONTENT=прохоров
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:reg ATTR=NAME:reg_email__ CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:reg ATTR=NAME:reg_email_confirmation__ CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:reg ATTR=NAME:reg_passwd__ CONTENT={{!COL2}}
TAG POS=1 TYPE=SELECT FORM=NAME:reg ATTR=NAME:birthday_day CONTENT=%15
TAG POS=1 TYPE=SELECT FORM=NAME:reg ATTR=NAME:birthday_month CONTENT=%10
TAG POS=1 TYPE=SELECT FORM=NAME:reg ATTR=NAME:birthday_year CONTENT=%1970
TAG POS=2 TYPE=INPUT:RADIO FORM=NAME:reg ATTR=NAME:sex
TAG POS=1 TYPE=BUTTON FORM=NAME:reg ATTR=NAME:websubmit
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:u_5_4_ci_form ATTR=NAME:password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:u_5_4_ci_form ATTR=*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=NAME:skip_step


Ну например здесь.Удалить первую строчку из Address.csv и скопировать ее в какой-нибудь файл txt например в папку Downloads или еще куда нибудь.
Помогите пожалуйста.Это Вам наверное не сложно))

Gergi пишет

Всем доброе утро!:music:

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Users\User\Desktop\Test.txt
SET !DATASOURCE_LINE {{!LOOP}}
EVENTS TYPE=KEYPRESS SELECTOR="#Membe" CHARS={{!COL1}}


В данный момент в txt файле находятся 200 строк,при каждом цикле скрипт берёт по одной строке. Как бы сделать так что бы при каждом цикле скрипт брал сразу 10 строк а не одну?  При другом цикле следующие 10 и так далее....

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Users\User\Desktop\Test.txt
SET !VAR1 EVAL("{{!LOOP}}*10-10")

ADD !VAR1 1
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#Membe" CHARS={{!COL1}}
ADD !VAR1 1
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#Membe" CHARS={{!COL1}}
...


20-08-2014 14:04:07

super.shestakoff пишет

Ребята,подскажите пожалуйста как  удалить строчку из "CSV" файла и переложить ее в другой файл ?
...
Ну например здесь.Удалить первую строчку из Address.csv и скопировать ее в какой-нибудь файл txt например в папку Downloads или еще куда нибудь.
Помогите пожалуйста.Это Вам наверное не сложно))

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

С П А С И Б О:music:

20-08-2014 14:49:31

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Users\User\Desktop\Test.txt
SET !VAR1 EVAL("{{!LOOP}}*10-10")

ADD !VAR1 1
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#Membe" CHARS={{!COL1}}
ADD !VAR1 1
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#Membe" CHARS={{!COL1}}


у меня в txt файле 200 строк,мне надо что бы скрипт брал не по одной строке а по 10.

Этот код берёт одну строку

Я выяснил причину,вот эта штука "#Membe" постоянно меняется и поэтому не работает

Как сделать чтобы при каждом выполнении скрипта к числу в переменной добавлялась 1 ?

ssccsscc пишет

Как сделать чтобы при каждом выполнении скрипта к числу в переменной добавлялась 1 ?

а поднять глаза на 3 поста выше, вам религия не позволяет?

скрытый текст

Выделить код

Код:

for (i=1;i<=10;i++){
iimDisplay(i)
i=iimPlay("11.iim")
}


этот код свёл меня с ума:o Дисплей показывает 1,2 и всё дальше не показывает.

Gergi пишет

скрытый текст

Выделить код

Код:

for (i=1;i<=10;i++){
iimDisplay(i)
i=iimPlay("11.iim")
}


этот код свёл меня с ума:o Дисплей показывает 1,2 и всё дальше не показывает.

так уберите присвоение переменной i результата от выполнения ф-ции iimPlay()
может, перед тем, как задавать вопрос, начнем анализировать собственный код???

Форумчане, помогите!
iMacros не сохраняет изображение капчи, подскажите что не так:

скрытый текст

Выделить код

Код:

URL GOTO=http://sitewithcaptcha.com
wait seconds=1
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=image.jpg
wait seconds=1
TAG POS=1 TYPE=IMG ATTR=SRC:http://www.google.com/recaptcha/api/image?c=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

amnesia_asot пишет

Форумчане, помогите!
iMacros не сохраняет изображение капчи, подскажите что не так:

скрытый текст

Выделить код

Код:

URL GOTO=http://sitewithcaptcha.com
wait seconds=1
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=image.jpg
wait seconds=1
TAG POS=1 TYPE=IMG ATTR=SRC:http://www.google.com/recaptcha/api/image?c=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

в коде ошибок не наблюдаю, скорее всего, либо ссыль не верна, либо где-то еще ошибка

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:*https://www.google.com/recaptcha/api/image?c=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=3


Вод код отлично работает

подскажите команды на js закрытия вкладки и закрытия браузера - не на iim , а на js     ---  точно знаю что есть, я их встречал но потерял, и почемуто не могу найти
все спасибо не нужно, случайно нашёл     window.close(1)

kolshix пишет

подскажите команды на js закрытия вкладки и закрытия браузера - не на iim , а на js     ---  точно знаю что есть, я их встречал но потерял, и почемуто не могу найти

закрыть вкладку, если 1 вкладка, закрыть окно

Выделить код

Код:

window.close()

InfSub пишет

закрыть вкладку, если 1 вкладка, закрыть окно

Выделить код

Код:

window.close()

Спасибо за оперативность !

Если запускать 1.iim через управляющий "if ... else" .js то при втором, 3, 4, и.т.д цикле  всё равно берётся первая строка из файла.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
URL GOTO={{!COL1}}


Что нужно прописать, для корректной работы, как если бы 1.imm запускался напрямую?

Revers пишет

Если запускать 1.iim через управляющий "if ... else" .js то при втором, 3, 4, и.т.д цикле  всё равно берётся первая строка из файла.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
URL GOTO={{!COL1}}


Что нужно прописать, для корректной работы, как если бы 1.imm запускался напрямую?

iimSet('!VAR1',i)

где i - значение, которое должна принимать переменная {{!VAR1}}
обращаю внимания, в данной ситуации (при запуске из js) {{!LOOP}} - работать НЕ будет, вместо {{!LOOP}} используйте {{!VAR1}} c выше приведенным кодом

.js

скрытый текст

Выделить код

Код:

iimDisplay(i);
    iimSet('!VAR1',i)
    if (isInteger(i/100)){iimPlay("2.iim");}
if (isInteger(i/1001)){iimPlay(macro2);}
    else{
        iimPlay("1.iim");
        
        }


.imm
скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP {{!VAR1}}
URL GOTO={{!COL1}}


Так нужно прописать или вместо {{!COL1}} ?

Revers пишет

.imm

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP {{!VAR1}}
URL GOTO={{!COL1}}


Так нужно прописать или вместо {{!COL1}} ?

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_COLUMNS {{!VAR1}}
URL GOTO={{!COL1}}


зачем в коде строка с {{!LOOP}} вообще не понятно, судя по куску кода, приведенного вами, {{!LOOP}} ни на что не влияет

Например если запуск .imm напрямую и нужно нажать Стоп после 10 циклов , редактирую и указываю

Выделить код

Код:

SET !LOOP 11

. Я через .js и напрямую запускаю, когда как нужно.

Revers пишет

Например если запуск .imm напрямую и нужно нажать Стоп после 10 циклов , редактирую и указываю

Выделить код

Код:

SET !LOOP 11

. Я через .js и напрямую запускаю, когда как нужно.

я не знаю, как у вас написан скрипт, но по логике, SET !LOOP 11 - значит что цикл начнется с {{!LOOP}} == 11 и продлится до того момента, пока  {{!LOOP}} не будет равен числу, указанному вами в самом окне имакроса

InfSub пишет
Revers пишет

Например если запуск .imm напрямую и нужно нажать Стоп после 10 циклов , редактирую и указываю

SET !LOOP 11

. Я через .js и напрямую запускаю, когда как нужно.

я не знаю, как у вас написан скрипт, но по логике, SET !LOOP 11 - значит что цикл начнется с {{!LOOP}} == 11 и продлится до того момента, пока  {{!LOOP}} не будет равен числу, указанному вами в самом окне имакроса

У меня если прописать в .imm

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE urls.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 11
URL GOTO={{!COL1}}


и кликнуть по нему два раза , то из urls.txt берётся одиннадцатая строка-ссылка и осуществляется переход по ней.

21-08-2014 18:31:03

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_COLUMNS {{!VAR1}}
URL GOTO={{!COL1}}


Всё равно при запуске .imm через .js , URL GOTO=всегда берётся первая строка из  texts.txt при каждом цикле .js

Revers
в общем, разобрался, что вы хотите и что у вас происходит..принцип приблизительно такой:

.js

Выделить код

Код:

iimDisplay(i);
    iimSet('LOOP',i)
    if (isInteger(i/100)){iimPlay("2.iim");}
if (isInteger(i/1001)){iimPlay(macro2);}
    else{
        iimPlay("1.iim");
        
        }


.iim

Выделить код

Код:

CMDLINE !DATASOURCE texts.txt
SET !DATASOURCE_LINE {{LOOP}}
URL GOTO={{!COL1}}

скрытый текст

Выделить код

Код:

for(i=1;i<1001;i++){
    iimDisplay(i);
    iimSet('LOOP',i);
    if (isInteger(i/100)){iimPlay("2.iim");} // в .txt файле 2.iim макроса только 10 строк, 101 строки нет
   else
    {
     iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
         }    
}


Как правильно вписать для каждого .imm свой for-счётчик? Второй for-счётчик
скрытый текст

Выделить код

Код:

for(w=1;w<11;w++){
    iimDisplay(w);
    iimSet('COOL',w);

Revers пишет

скрытый текст

Выделить код

Код:

for(i=1;i<1001;i++){
    iimDisplay(i);
    iimSet('LOOP',i);
    if (isInteger(i/100)){iimPlay("2.iim");} // в .txt файле 2.iim макроса только 10 строк, 101 строки нет
   else
    {
     iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
         }    
}


Как правильно вписать для каждого .imm свой for-счётчик? Второй for-счётчик
скрытый текст

Выделить код

Код:

for(w=1;w<11;w++){
    iimDisplay(w);
    iimSet('COOL',w);

вы, основы то js в сети почитайте, тем более что вопрос совсем не в тему данной ветви форума...
да и было уже куча подобных примеров ранее...

Revers пишет

в .txt файле 2.iim макроса только 10 строк, 101 строки нет

как я понимаю, не 10 а 100
могу, конечно, ошибаться, но в вашем случае, даже сравнивать ни чего не нужно, достаточно последовательно выполнить 2 цикла, и соответственно, даже переменные менять не нужно

code

Выделить код

Код:

for(i=1;i<=100;i++){
    iimDisplay(i);
    iimSet('LOOP',i);
    iimPlay("2.iim"); // в .txt файле 2.iim макроса только 10 строк, 101 строки нет
};
for(i=1;i<=1000;i++){
    iimDisplay(i);
    iimSet('LOOP',i);
    iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
};

скрытый текст

InfSub пишет

вы, основы то js в сети почитайте, тем более что вопрос совсем не в тему данной ветви форума...
да и было уже куча подобных примеров ранее...

Да читал я основы .js в сети, если в коде дописать символ , который вызовет ошибку, то вопрос будет по теме и я смогу получить на него ответ?


Revers пишет

в .txt файле 2.iim макроса только 10 строк, 101 строки нет

InfSub пишет

как я понимаю, не 10 а 100

Неверно понимаете , в .txt файле 2.iim нет 11 и так далее строк - только 10, дело в том , что это и есть тот код о котором до этого я спрашивал

InfSub пишет

могу, конечно, ошибаться, но в вашем случае, даже сравнивать ни чего не нужно, достаточно последовательно выполнить 2 цикла, и соответственно, даже переменные менять не нужно

Нужно запускать 2.imm после каждых 100 запусков 1.imm - это самое главное
.1imm

Выделить код

Код:

CMDLINE !DATASOURCE 1000-strok.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP {{LOOP}}// сто через раз, здесь всё работает верно
URL GOTO={{!COL1}}

.2imm

Выделить код

Код:

CMDLINE !DATASOURCE 10-strok.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP {{LOOP}} // передаёт 101...201...301, но вставка происходит пустоты, так-как нет 101...201...301 строки, их только 10. Вот я и хотел узнать как передать 1...2...3 вместо 101...201...301
URL GOTO={{!COL1}}

.js

Выделить код

Код:

...
for(i=1;i<1001;i++){
    iimDisplay(i);
    iimSet('LOOP',i);
    if (isInteger(i/100)){iimPlay("2.iim");}
    else
    {
        iimPlay("1.iim");
        }    
    }

Можно ли в iim сделать нажатие клавиш (Carl+Enter)

Revers пишет
InfSub пишет

вы, основы то js в сети почитайте, тем более что вопрос совсем не в тему данной ветви форума...
да и было уже куча подобных примеров ранее...

Да читал я основы .js в сети, если в коде дописать символ , который вызовет ошибку, то вопрос будет по теме и я смогу получить на него ответ?

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

скрытый текст

Выделить код

Код:

for(i=1;i<=1000;i++){
    iimDisplay(i);
    if(!(isInteger(i/100))){
        iimSet('LOOP',i);
        iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
    }else{
        iimSet('LOOP',i/100);
        iimPlay("2.iim"); // в .txt файле 2.iim макроса только 10 строк
    }
}

InfSub пишет

нет, не будет, ветка давно ушла от того, что в ней должно было быть,

Прям "Ветка хаоса"!

InfSub пишет

но тем не менее, пихать сюда, все что хоть как-то связано с имакросом - не верно
есть куча сайтов в сети посвященных js и ответ можно, получить и самому, продумав как должно работать... и задав верные вопросы...
ладно это лирика

Я бы наверное тоже так ответил, если у меня была такая же "подпись"! Из всех форумов только здесь, "пихнув" что-то можно получить вразумительный ответ.

Revers пишет

Из всех форумов только здесь, "пихнув" что-то можно получить вразумительный ответ.

потому что бардак, и не удаляются вопросы, не относящиеся к теме или дублирующие уже задававшиеся

Этот код записал макросом TAG POS=2 TYPE=DIV ATTR=TXT:Отправить из почты @gmail.com
Можно ли как то его заставить нажимать на Отправить? С утра вожусь ничего не выходит:angry:

Gergi пишет

Этот код записал макросом TAG POS=2 TYPE=DIV ATTR=TXT:Отправить из почты @gmail.com
Можно ли как то его заставить нажимать на Отправить? С утра вожусь ничего не выходит:angry:

А если record через experimental , тоже не жмёт кнопку?

Revers пишет
Gergi пишет

Этот код записал макросом TAG POS=2 TYPE=DIV ATTR=TXT:Отправить из почты @gmail.com
Можно ли как то его заставить нажимать на Отправить? С утра вожусь ничего не выходит:angry:

А если record через experimental , тоже не жмёт кнопку?

не жмёт

Revers пишет

А если record через experimental , тоже не жмёт кнопку?

Gergi пишет

не жмёт

Работает всё

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(13)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD>DIV>DIV:nth-of-type(2)" BUTTON=0

Сразу вылетает "Укажите как минимум одного получателя."

Revers пишет

Revers пишет: А если record через experimental , тоже не жмёт кнопку?Gergi пишет: не жмётРаботает всё Выделить кодКод:EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(13)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD>DIV>DIV:nth-of-type(2)" BUTTON=0Сразу вылетает "Укажите как минимум одного получателя."

Нет не жмёт,1000 раз э то пробовал и только что опять пробовал. Он жмёт один раз,мне проще мышкой нажимать чем под каждое письмо записывать макрос.

Gergi пишет

Нет не жмёт,1000 раз э то пробовал и только что опять пробовал. Он жмёт один раз,мне проще мышкой нажимать чем под каждое письмо записывать макрос.

Если нажать руками "НАПИСАТЬ" , а потом "Отправить" , то, что написано во всплывающем окне?

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(13)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR:nth-of-type(2)>TD>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD>DIV>DIV:nth-of-type(2)" BUTTON=0

Это работает на одно письмо,на второе письмо уже нужно новый код записывать.

Revers пишет
Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=data-tooltip:Отправить*

Тоже не нажимает:angry:
Один раз отправил,обновилась почта и на это всё.

InfSub пишет

вы, основы то js в сети почитайте,

Выделить код

Код:

for(i=1;i<=1000;i++){
    iimDisplay(i);
    if(!(isInteger(i/100))){
        iimSet('LOOP',i);
        iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
    }else{
        iimSet('LOOP',i/100);
        iimPlay("2.iim"); // в .txt файле 2.iim макроса только 10 строк
    }
}

На код:

Выделить код

Код:

function isInteger(n){return(n^0)==n;};
for(i=1;i<=1000;i++){
    iimDisplay(i);
    if(!(isInteger(i/100))){
        iimSet('LOOP',i);
        iimPlay("1.iim"); 
    }else{
        iimSet('LOOP',i/100);
        iimPlay("2.iim"); 
    }
}

Выдаёт ошибку

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource*.js :: imns.FIO.openNode :: line 203"  data: no], line 199 (Error code: -991)

Этот работает но не справляется с поставленной задачей:

Выделить код

Код:

function isInteger(n){return(n^0)==n;};
for(i=1;i<1001;i++){
    iimDisplay(i);
    iimSet('LOOP',i);
    if (isInteger(i/100)){iimPlay("2.iim");}
  
    if (isInteger(i/1001)){iimPlay(macro2);}
    
    
    
    else
    {
    
    
        iimPlay("1.iim");
        
        }    
    
}

Если у вас идеально  работает,то может это от версии мазилы и Imacrosa? Хотя не верю что из-за этого.

Gergi пишет

Если у вас идеально  работает,то может это от версии мазилы и Imacrosa? Хотя не верю что из-за этого.

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

Запустил его чере js и всё замечательно работает:music: А через iim так и не получилось его запустить.

Revers, кодировка js файла какая? должна быть utf8

InfSub пишет

Revers, кодировка js файла какая? должна быть utf8

Кодировка верная. Оба кода , которые привёл выше вписывал в один и тот же файл .js

Revers пишет
InfSub пишет

Revers, кодировка js файла какая? должна быть utf8

Кодировка верная. Оба кода , которые привёл выше вписывал в один и тот же файл .js

попробуйте этот файл, у меня летает без вопросов: download_2.jpg
с js иногда бывают глюки, посоветовал бы почистить хэш и перезапустить браузер, хотя и не факт, что поможет

23-08-2014 03:00:00

Revers пишет

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource*.js :: imns.FIO.openNode :: line 203"  data: no], line 199 (Error code: -991)

расковырял, аналогичная ошибка:

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 203"  data: no], line 199 (Error code: -991)

возникает при отсутствии файла *.iim по указанному пути, в данном случае, в директории Macros
в общем проверяйте пути до файлов 1.iim и 2.iim

Revers пишет
InfSub пишет

пути до файлов 1.iim и 2.iim

проблема была именно в этом. Буду наблюдать, что будет на 101...201... циклах.

Revers пишет
Revers пишет
InfSub пишет

пути до файлов 1.iim и 2.iim

проблема была именно в этом. Буду наблюдать, что будет на 101...201... циклах.

в следующий раз будьте внимательней

23-08-2014 03:24:38

InfSub пишет

что будет на 101...201... циклах.

будет срабатывать на 100, 200, 300 только что заметил...

InfSub пишет
Revers пишет
Revers пишет

проблема была именно в этом. Буду наблюдать, что будет на 101...201... циклах.

в следующий раз будьте внимательней

ну это уж как получится

23-08-2014 03:28:51

InfSub пишет
Revers пишет
Revers пишет

проблема была именно в этом. Буду наблюдать, что будет на 101...201... циклах.

в следующий раз будьте внимательней

23-08-2014 03:24:38

InfSub пишет

что будет на 101...201... циклах.

будет срабатывать на 100, 200, 300 только что заметил...

Сойдёт, главное , чтобы 2.iim получал через {{LOOP, i}} от1 до 10 цикл , а не 101...201. То есть через каждые 99 строк из 1.imm ,  брать одну строку из 2.imm

Revers пишет

Сойдёт, главное , чтобы 2.iim получал через {{LOOP, i}} от1 до 10 цикл , а не 101...201

коррекция на 101,201...1001

Выделить код

Код:

function isInteger(n){return(n^0)==n;};
for(i=1;i<=1000;i++){
    iimDisplay(i);
    if(!(isInteger(i/100))){
        iimSet('LOOP',i);
        iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
    }else{
        iimSet('LOOP',i);
        iimPlay("1.iim"); // в .txt файле 1.iim макроса 1000 строк
        iimDisplay(i+1);
        iimSet('LOOP',i/100);
        iimPlay("2.iim"); // в .txt файле 2.iim макроса только 10 строк
        i++;
    }
}


оффтоп
немного некрасиво, но я уже сплю практически... ><

InfSub пишет

оффтоп
немного некрасиво, но я уже сплю практически... ><

оффтоп
видимо я тоже не выспался, раз вписав код даже пути не отредактировал.

В txt файле 5555 строк,как сделать так что бы брать из этого списка по 5 строк и переносить их в другой txt файл?

Gergi пишет

В txt файле 5555 строк,как сделать так что бы брать из этого списка по 5 строк и переносить их в другой txt файл?

Gergi, может быть научимся пользоваться поиском и не будем задавать повторно вопросы, на которые вам уже отвечали?

Да,я помню,но не знаю как перенести их в другой файл.

Gergi пишет

Да,я помню,но не знаю как перенести их в другой файл.

отредактировал пост выше (добавил ссыль), ответ был там же, парой постов ниже

23-08-2014 14:08:41
сразу добавлю, предполагая следующий вопрос: "как убрать кавычки из файла в который сохранили данные": тыц и тыц

Спасибо. А вот кавычки мне нужны :music:

23-08-2014 14:20:20

InfSub пишет

Gergi, ответьте мне на вопрос, почему я могу найти ответы на форуме, а вы нет?

Ответ очень прост! Я не знаю что написать в поиске! А поиском я пользуюсь ежедневно. И по поиску не нахожу ответы на конкретные проблемы.

Gergi пишет

Спасибо

ответы на эти вопросы легко находятся поиском, будьте добры, в будущем, не пренебрегать им

Правила форума
За нарушения, расположенные в разделе Не рекомендуется, к вам не будут применены санкции в виде замечаний (исключение составляет многократное умышленное игнорирование пунктов этого раздела). Тем не менее эти нарушения считаются «плохой практикой» и могут привести к тому, что другие пользователи не захотят с вами общаться, а модераторы будут закрывать, переименовывать или переносить (и даже удалять) ваши темы и сообщения.
2.  Не рекомендуется:
2.1  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском.

Вы меня простите но я не нашёл то что мне нужно! В данном случае меня интересует как из txt файла забрать 5 строчек и переместить их в другой txt файл и вот так 5 тысяч раз. По моим соображения это очень не сложно реализовать,просто у меня в данный момент уже мозг кипит от прочтения 79 страниц форума.  А вы мне даёте ссылки на какие то статьи где мозг себе взломать можно а не скрипт написать.:mad: Я конечно же решу этот вопрос НО зачем я тогда к знатокам обращаюсь...:rolleyes:

Gergi пишет

В данном случае меня интересует как из txt файла забрать 5 строчек и переместить их в другой txt файл и вот так 5 тысяч раз. По моим соображения это очень не сложно реализовать,просто у меня в данный момент уже мозг кипит от прочтения 79 страниц форума.  А вы мне даёте ссылки на какие то статьи где мозг себе взломать можно а не скрипт написать.:mad:

что вам не понятно вот в этой фразе:

InfSub пишет

для добавления в др. файл читаете первый datasource........ потом saveas .... в нужный вам файл

+ поиск по приведенным в ней командам

23-08-2014 15:18:17
данные передаются через переменную {{!EXTRACT}}

var. 1.1, 5 column

Выделить код

Код:

CMDLINE !DATASOURCE file1.txt
SET !DATASOURCE_LINE 1
ADD !EXTRACT {{!COL1}}
SET !DATASOURCE_LINE 2
ADD !EXTRACT {{!COL1}}
...
SET !DATASOURCE_LINE 5
ADD !EXTRACT {{!COL1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=file2.txt
SET !EXTRACT NULL


или
var. 2, 5 rows

Выделить код

Код:

CMDLINE !DATASOURCE file1.txt
SET !DATASOURCE_LINE 1
SET !EXTRACT {{!COL1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=file2.txt
SET !DATASOURCE_LINE 2
SET !EXTRACT {{!COL1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=file2.txt
...
SET !DATASOURCE_LINE 5
SET !EXTRACT {{!COL1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=file2.txt


что тут сложного?
// внес пару исправлений в 1й код

Gergi пишет

НО зачем я тогда к знатокам обращаюсь...

простите, но находящиеся на форуме знатоки, как вы выразились, уже устали отвечать на одни и те же вопросы по 20-100 раз, вы не могли совместить работу 2-3 функций? это так сложно? лень поискать на форуме, в вики и в гугле, как работает !DATASOURCE, !EXTRACT и SAVEAS ?

В любом случае спасибо за помощь. Всё работает:)

Помогите пожалуйста реализовать нажатие кнопки класс! в одноклассниках. Пробовал варианты из этой темы, не работают.

ukropua пишет

Помогите пожалуйста реализовать нажатие кнопки класс! в одноклассниках. Пробовал варианты из этой темы, не работают.

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(4)>DIV>DIV>SPAN>SPAN>SPAN" BUTTON=0

Что тут  может быть не так?

for (;;)
for (var i=1;i<=2;i++){
iimDisplay(i)
iimPlay("2.iim",60);
}

for (var i=1;i<=1;i++){
iimPlay("1.iim",60);
}
}

Приходится закрывать браузер вместо кнопки СТОП

IMHO & OFFTOP
Gergi, лично мне, уже надоело отвечать Вам на вопросы, ответы на которые, достаточно легко, находятся через поиск, тем более, что обсуждение подобной проблемы, велось буквально на днях.. предположу, что другим старожилам - тоже, ИМХО!
может быть игнор, Вас чему-нибудь научит, хотя бы, юзанью поиска

З.Ы. добавлю только, что в данный момент решения нет (только обходные пути - обсуждалось) и разработчики, судя по обновлениям и офф-форуму, ни чего менять не планируют
З.Ы.Ы. куски кода, помещаем в теги [СODE][/СODE]

fasax пишет

Ребята подскажите! почему отсылки фотографии само окно с фотографиями остаётся открытым

уберите код в спойлер и теги СОDE
отредактируйте сообщение, удалив дубликат
экстрасенсов тут нет, так что код типа: CLICK X=... Y=... обязательно комментируем, прописывая в коментарии, куда имакрос в данном случае кликает

Gergi пишет

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(4)>DIV>DIV>SPAN>SPAN>SPAN" BUTTON=0

Experimental сначала "классит" , а потом приходит бан , за постоянный клик в пустоту :music:

Подскажите пожалуйста,

TAB T=1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TEXTAREA ATTR=ID:text_add_url EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=*

Пробовала извлечь урл в файл, потом  брать урл и делать переход, но урл извлекается с (""), не получилось(
Нужно взять урл и сделать переход, подскажите как это сделать.

Татьяна91 пишет

Подскажите пожалуйста,

скрытый текст

Выделить код

Код:

TAB T=1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TEXTAREA ATTR=ID:text_add_url EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=*


Пробовала извлечь урл в файл, потом  брать урл и делать переход, но урл извлекается с (""), не получилось(
Нужно взять урл и сделать переход, подскажите как это сделать.

вы уверены что нужная вам ссылка находится в поле TEXTAREA? судя по ID, в это поле нужно добавить url, а не взять его от туда

привет всем, немеренно рад что нашел такой форум. Перед тем как задать вопрос, погулял по блогу, но к сожаленики не нашел ответа.  Кто нибудь знает как считать капчу на сайте greenbitco.in. Буду очень признателен. Спасибо за ранее!

lonik101 пишет

привет всем, немеренно рад что нашел такой форум. Перед тем как задать вопрос, погулял по блогу, но к сожаленики не нашел ответа.  Кто нибудь знает как считать капчу на сайте greenbitco.in. Буду очень признателен. Спасибо за ранее!

скрипт для разгадывания капчи доступен на офф-сайте антикапчи, далее ваши прямые руки и умения

InfSub пишет
lonik101 пишет

привет всем, немеренно рад что нашел такой форум. Перед тем как задать вопрос, погулял по блогу, но к сожаленики не нашел ответа.  Кто нибудь знает как считать капчу на сайте greenbitco.in. Буду очень признателен. Спасибо за ранее!

скрипт для разгадывания капчи доступен на офф-сайте антикапчи, далее ваши прямые руки и умения

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

lonik101 пишет
InfSub пишет
lonik101 пишет

привет всем, немеренно рад что нашел такой форум. Перед тем как задать вопрос, погулял по блогу, но к сожаленики не нашел ответа.  Кто нибудь знает как считать капчу на сайте greenbitco.in. Буду очень признателен. Спасибо за ранее!

скрипт для разгадывания капчи доступен на офф-сайте антикапчи, далее ваши прямые руки и умения

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

у меня пишет:
bb53b5ce7abb4daef2b83725a9c22929.png
так что вряд ли смогу помочь

InfSub пишет
lonik101 пишет
InfSub пишет

скрипт для разгадывания капчи доступен на офф-сайте антикапчи, далее ваши прямые руки и умения

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

у меня пишет:
http://i68.fastpic.ru/big/2014/0826/29/ … c22929.png
так что вряд ли смогу помочь

у меня такая капча,  http://floomby.ru/s1/YW6DEG  с рекапчей я разобрался, там все простенько, но вот с этой бьюсь уже третьи сутки

lonik101 пишет
InfSub пишет
lonik101 пишет

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

у меня пишет:
http://i68.fastpic.ru/big/2014/0826/29/ … c22929.png
так что вряд ли смогу помочь

у меня такая капча,  http://floomby.ru/s1/YW6DEG  с рекапчей я разобрался, там все простенько, но вот с этой бьюсь уже третьи сутки

в данном случае, вы сделали скриншот флеш-объекта
имакрос (в бесплатной версии) не позволяет работать с флешем, соответственно, вряд ли есть возможность заскринить код капчи

InfSub пишет
lonik101 пишет
InfSub пишет

у меня пишет:
http://i68.fastpic.ru/big/2014/0826/29/ … c22929.png
так что вряд ли смогу помочь

у меня такая капча,  http://floomby.ru/s1/YW6DEG  с рекапчей я разобрался, там все простенько, но вот с этой бьюсь уже третьи сутки

в данном случае, вы сделали скриншот флеш-объекта
имакрос (в бесплатной версии) не позволяет работать с флешем, соответственно, вряд ли есть возможность заскринить код капчи

Жаль,  но спасибо, теперь хоть буду знать в чем дело

InfSub пишет
Татьяна91 пишет

Подскажите пожалуйста,

скрытый текст

Выделить код

Код:

TAB T=1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=TEXTAREA ATTR=ID:text_add_url EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=*


Пробовала извлечь урл в файл, потом  брать урл и делать переход, но урл извлекается с (""), не получилось(
Нужно взять урл и сделать переход, подскажите как это сделать.

вы уверены что нужная вам ссылка находится в поле TEXTAREA? судя по ID, в это поле нужно добавить url, а не взять его от туда

Да, все нормально, копирует нужную ссылку в файл, только копирует оно с ("")
Как можно сделать по другому, брать ссылку и отрывать ее в новой вкладке?

Татьяна91 пишет

Да, все нормально, копирует нужную ссылку в файл, только копирует оно с ("")
Как можно сделать по другому, брать ссылку и отрывать ее в новой вкладке?

обычно так: "" - обозначают пустую строку, записанную в файл, из-за этого, вопрос ранее был понят не верно
избавиться от кавычек, при записи в файл, средствами imacros - нельзя, т.к. данные, при сохранении через SAVEAS TYPE=EXTRACT.... сохраняются в файл в формате CSV
НО, при этом не возникает проблем при взятии их из файла, кавычки удаляются автоматически:

код, исправлено
test.txt

Выделить код

Код:

"http://ya.ru/"
"http://yandex.ru/"
"http://google.com/"

*.iim

Выделить код

Код:

SET !DATASOURCE test.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

подскажите по оптимизации: запускаю один и тот же скрипт по очереди в 6 профилях браузера FF. профили абсолютно одинаковые: при создании нового профиля делалась копия уже существующего и менялся только путь с prof_1 на prof_2 и т.д.
когда в html-коде не найдена ссылка на изображение, то iMacros(для FF) запускает обратный отсчет: в одном профиле - от 6 секунд до 0, а во втором - от 3 секунд до 0.
создал 6 профилей и в каждом профиле этот отсчет может быть или 3 секунды или 6 секунд.
при парсинге 15000 изображений выходит солидная разница между 6 сек и 3 сек.
пробовал SET TIMEOUT TAG, но у меня эта команда не работает так, как нужно.
как в iMacros программно регулировать эту функцию, чтобы все профили считали только 3 секунды или лучше вообще 1 секунду?

Sborka пишет

пробовал SET TIMEOUT TAG, но у меня эта команда не работает так, как нужно.

SET TIMEOUT_TAG - эта команда устарела и не используется с вер. 6 iMacros'a. Заменена командой SET !TIMEOUT_STEP

спасибо, STEP работает как нужно.
InfSub, а как вы считаете, если установить SET !TIMEOUT_STEP 0, а при работе скрипта работают еще и другие программы и процессор загружен на 100 или почти 100%
возможно ли такое, что js-скрипт будет не всегда успевать выполнить команду и что-то пропустит из-за того, что таймаут 0
наверное лучше установить SET !TIMEOUT_STEP 1 секунду?

Sborka пишет

лучше установить SET !TIMEOUT_STEP 1

и/или поиграться с временем ожидания, т.к. некоторые сайты грузятся долго и 1 сек будет недостаточно, особенно при высокой нагрузке на ПК

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

Добрый день. Подскажите пожалуйста скрипт автопостинга почему то не работает. Может подскажите причину?
/*### ********************************************* ###*/
/*### ======== The script for the Facebook ======== ###*/
/*### ********************************************* ###*/
/*### =============== v.3.1 Stable  =============== ###*/
/*### ********************************************* ###*/

var conf = new Array();
    // текст сообщения, для переноса строк, используем тег <br>
    conf['message'] = " <br>СМС Сигналы Форекс на ваш мобильник. 100% гарантия сохранности вашего депозита. (не спам)<br>http://affiliates.maxipartners.ru/processing/clickthrgh.asp?btag=a_6555b_5891&aid=<br>";
    // Путь до файла с изображением, прикрепляемый к сообщению (удвоение слешей - обязательно!)
    conf['image'] = 'C:\\Users\\user\\Pictures\\2.png';
    // Таймаут ожидания загрузки изображения
    conf['upl_time'] = 30;
    // Для работы с избранными группами, замените ссылку:https://www.facebook.com/bookmarks/groups на  эту:https://www.facebook.com/bookmarks/favorites
    conf['page'] = 'https://www.facebook.com/bookmarks/groups';
    conf['cycle'] = 1;
    conf['view_img'] = 'Y';

rn = ...

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

У меня есть проблемка. Нигде не могу найти решение.
Как сделать, чтоб imacros вставлял в форму тег <br> как текст? А то он сразу переводит строку, а мне такое не подходит.

Спасибо!

qweqwe1 пишет

Как сделать, чтоб imacros вставлял в форму тег <br> как текст?

попробуйте так (в imacros не проверял, но при создании джаваскриптом xml-прайса точно работает)
гугл может подсказать вам о спецсимволах html:
< это &lt;
> это &gt;

Sborka пишет

попробуйте так (в imacros не проверял, но при создании джаваскриптом xml-прайса точно работает)
гугл может подсказать вам о спецсимволах html:
< это &lt;
> это &gt;

Все вставляет, но после отправки сообщение вот так выглядит "текст<br>текст"  :(((

Вы спросили, как сделать, чтоб imacros вставлял в форму тег <br> как текст
и получили тег <br> как текст
логично :D
если вы изначально имели ввиду как вставить в форму перенос строки, тогда наверное вам вместо <br> нужно \n (или \\n если в коде потребуется экранировать обратный слэш)

У меня имакрос сразу тег <br> воспринимает как перенос строки, и вставляет текст с переносами сразу же. Потом когда, я отправляю сообщение, эти переносы пропадают, и все превращается в кашу. Надо чтоб вставлял:

Выделить код

Код:

текст<br>текст

Просто когда я вставляю текст&lt;br&gt;текст то после отправки сообщение оно выглядит текст<br>текст


Надеюсь поняли ;)


UPD: Разобрался, надо просто весь текст в "" заключить)))

Вопрос. Ка посчитать количество строк в файле csv? Сделал пока такой код он просто заносит цифры строк в файл не получается прикрутить прерывание.
Там кстати с колонками пример а не со строками. Всё равно не могу понять как количество строк в файле загнать в переменную?

скрытый текст
'SET !ERRORIGNORE YES
'SET !ERRORCONTINUE YES
SET !REPLAYSPEED FAST
CMDLINE !DATASOURCE header.csv

'SET !VAR1 EVAL("Math.floor(Math.random()*3)+1;")
'SET !LOOP 1
'SET !VAR1 EVAL("Math.floor(Math.random()*2000)+1;")
'SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:comment CONTENT={{!COL1}}
'TypeError: this.dataSource[(line - 1)] is undefined, line 6 (Error code: -1001) Такая ошибка на конце строк
SET !VAR2 {{!LOOP}}
'ADD !VAR2 -1
'SET !VAR1 EVAL("var s=\"{{!COLn}}\";if(s==\"\"){MacroError(\"End of Column reached. ({{!VAR2}} Rows)\");}")
'PROMPT {{!VAR2}}
SET !EXTRACT {{!VAR2}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=nymber.csv

серёжа4444444 пишет

Вопрос. Ка посчитать количество строк в файле csv? Сделал пока такой код он просто заносит цифры строк в файл не получается прикрутить прерывание.
Там кстати с колонками пример а не со строками. Всё равно не могу понять как количество строк в файле загнать в переменную?

скрытый текст
'SET !ERRORIGNORE YES
'SET !ERRORCONTINUE YES
SET !REPLAYSPEED FAST
CMDLINE !DATASOURCE header.csv

'SET !VAR1 EVAL("Math.floor(Math.random()*3)+1;")
'SET !LOOP 1
'SET !VAR1 EVAL("Math.floor(Math.random()*2000)+1;")
'SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:comment CONTENT={{!COL1}}
'TypeError: this.dataSource[(line - 1)] is undefined, line 6 (Error code: -1001) Такая ошибка на конце строк
SET !VAR2 {{!LOOP}}
'ADD !VAR2 -1
'SET !VAR1 EVAL("var s=\"{{!COLn}}\";if(s==\"\"){MacroError(\"End of Column reached. ({{!VAR2}} Rows)\");}")
'PROMPT {{!VAR2}}
SET !EXTRACT {{!VAR2}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=nymber.csv

как я понимаю, вы не поняли сути процесса, который вам был описан в ПМ

length
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

/* Script coding by InfSub */

var ds='header.csv'; // datasource file
var i=1; // initial string
do{
    var m='SET !DATASOURCE '+ ds +'\n';
    m+='SET !DATASOURCE_LINE '+ i++ +'\n';
}while(iimPlayCode(m)>0);
alert(i-2);
InfSub пишет

как я понимаю, вы не поняли сути процесса, который вам был описан в ПМ
length

Спасибо. Но перебором получается очень долго считывать файл. Например файл с 2000 строк считал около 10 мин плюс подвисания.

серёжа4444444 пишет
InfSub пишет

как я понимаю, вы не поняли сути процесса, который вам был описан в ПМ
length

Спасибо. Но перебором получается очень долго считывать файл. Например файл с 2000 строк считал около 10 мин плюс подвисания.

все остальные способы, периодически отмирают, так как используют недокументированные ф-ции и недоработки мозиллы. По сути браузер не должен иметь возможности читать локальные файлы - это дыра в безопасности.

02-09-2014 14:09:02
кто мешает оптимизировать этот код? не обязательно читать по 1 строке... ваша фантазия, думаю вам поможет это реализовать, я только указал на принцип

InfSub пишет

По сути браузер не должен иметь возможности читать локальные файлы - это дыра в безопасности.

FF не только их прекрасно читает, но за пару секунд и полностью перезаписывает содержимое путем удаления и создания файла заново

Sborka пишет
InfSub пишет

По сути браузер не должен иметь возможности читать локальные файлы - это дыра в безопасности.

FF не только их прекрасно читает, но за пару секунд и полностью перезаписывает содержимое путем удаления и создания файла заново

это возможности плагина иМакрос, которые урезаны до определенной степени

InfSub пишет

кто мешает оптимизировать этот код? не обязательно читать по 1 строке... ваша фантазия, думаю вам поможет это реализовать, я только указал на принцип

Я когда-то тоже задумался об оптимизации и сразу пришла идея , зачем считать по 1 строку!?  А ещё как вариант (подходил по моему вопросу) - можно создать отдельный фаил в который будет учитываться счет строк !
К сожалению данной темой перестал заниматься, вопрос не такой уж тяжёлый, отпала пока что надобность!


По поводу считывания информации с файла, где-то на форуме  выложен отдельный js по считыванию информации с документов, без использования кодов iim, там сразу лежал и код записи инфы в текстовые файлы, работоспособность кода не проверял!

kolshix пишет

можно создать отдельный фаил в который будет учитываться счет строк !

это уже вариации на тему...

02-09-2014 15:51:52

kolshix пишет

По поводу считывания информации с файла, где-то на форуме  выложен отдельный js по считыванию информации с документов, без использования кодов iim, там сразу лежал и код записи инфы в текстовые файлы, работоспособность кода не проверял!

тот функционал, что в нем был не работает уже около года, из-за изменений в самом FF

для этих целей в библиотеке simple dom (для php) есть несколько удобных и очень простых функций - работает на денвере во всех нормальных браузерах и с локальными файлами и с файлами на web-сервере

Sborka пишет

для этих целей в библиотеке simple dom (для php) есть несколько удобных и очень простых функций - работает на денвере во всех нормальных браузерах и с локальными файлами и с файлами на web-сервере

тут не шла речь о стороннем софте, php и денвере в часности, сторонние продукты предназначенные для других целей, совмещение данных продуктов (iMacros, php (+Denwer)) - дело, лично каждого...
я, к примеру, сижу на линуксе, и мне денвер вообще не нужен, при желании просто подниму apache+php+mysql... etc

совершенно верно! речь шла о том, что уже не работает:

InfSub пишет

тот функционал, что в нем был не работает уже около года, из-за изменений в самом FF

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

вот в js есть такая функция, которая одной строкой создает локальную папку (только папку, без файлов внутри)?

Sborka пишет

совершенно верно! речь шла о том, что уже не работает:

InfSub пишет

тот функционал, что в нем был не работает уже около года, из-за изменений в самом FF

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

метод приведенный мной выше, при небольшой модернизации кода, не будет тратить по 10-30 минут на обработку файла (в зависимости от длины), а справится с этим за секунд 10-30, просто я привел пример основы, дальше у вас есть своя голова на плечах

Подскажите пожалуйста.
При вставке данных из csv файла в {{!COL3}} содержится %747
но первая строка работает а вторая нет
...
TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT=%747
TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT="{{!COL3}}"
..
P.S. все остальные поля считываются и вставляются норм.
а ну и ошибка : Wrong format of CONTENT value, line 18 (Error code: -1001)

h4nn1 пишет

а ну и ошибка : Wrong format of CONTENT value, line 18 (Error code: -1001)

строка 18 это эта строка?:

h4nn1 пишет

TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT="{{!COL3}}"

h4nn1 пишет

При вставке данных из csv файла в {{!COL3}} содержится %747
но первая строка работает а вторая нет

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT=%747
TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT="{{!COL3}}"


P.S. все остальные поля считываются и вставляются норм.

поместите в спойлер - содержимое 2-3 строк из файла csv

InfSub пишет

h4nn1 пишет: а ну и ошибка : Wrong format of CONTENT value, line 18 (Error code: -1001)строка 18 это эта строка?:h4nn1 пишет: TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT="{{!COL3}}"h4nn1 пишет: При вставке данных из csv файла в {{!COL3}} содержится %747но первая строка работает а вторая нетскрытый текстВыделить кодКод:TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT=%747
TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT="{{!COL3}}"P.S. все остальные поля считываются и вставляются норм.поместите в спойлер - содержимое 2-3 строк из файла csv
                    Отредактировано InfSub (Вчера 13:53:03)

Ага а правда цсв не хочет сохранять с процентом перед числом...

h4nn1 пишет

Ага а правда цсв не хочет сохранять с процентом перед числом...

тоже интересует данный вопрос, только не знак процента, а двойные кавычки - как правильно сохранять в csv, чтобы из этого: " csv не делал это: ""

h4nn1 пишет

TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT=%747
TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT="{{!COL3}}"

знака % в файле csv - быть не должно, передаем только число:

Выделить код

Код:

TAG POS=1 TYPE=SELECT FORM=ID:wwvFlowForm ATTR=ID:P4_ATTR_LOV_2 CONTENT=%{{!COL3}}

05-09-2014 16:56:09

Sborka пишет
h4nn1 пишет

Ага а правда цсв не хочет сохранять с процентом перед числом...

тоже интересует данный вопрос, только не знак процента, а двойные кавычки - как правильно сохранять в csv, чтобы из этого: " csv не делал это: ""

при сохранении в формате данных csv - кавычки, всегда будут удваиваться, чтобы у парсера не возникало вопросов типа: ( " ) - это начало/конец столбца или это элемент текста.
при получении данных из этого файла, удвоенные кавычки ( "" ) будут интерпретированы, как ( " )

Доброго времени суток!
У меня имеется парочку вопросов по imacros. Синтаксис и прочая ерунда не интересует. Гуглом пользоваться умею, форумы "курю". Итак поехали:
1) Иногда зависает выполнение скриптов (скрипты .js крутятся в разных окнах при помощи циклов с разным временем ожидания WAIT). Связано ли это со стабильностью работы imacros'а или же при они каким-то образом могут нарушать работу друг друга (например, совпадает время при начале отработки очередного цикла)? Если вариант 2, как поправить знаю.
2) Существует ли ограничение на количество символов (строк) или вызовов iimPlayCode() в коде макроса на js? (Возникла ситуация когда в одном из написанных скриптов тупо не отрабатывает один из вызовов iimPlayCode() в теле цикла for(). При этом следующий вызов iimPlayCode() в теле того же цикла отрабатывает нормально, перенос неотрабатываемого текста в отдельный макрос и вызов при помощи iimPlay("имя_макроса",60) не принес результатов. Заставил работать только раскидав весь код по отдельным скриптам и организовав их запуск в нужной мне последовательности управляющим js скриптом, что значительно уменьшило общее количество текста в запускаемом скрипте, но усложнило отладку из-за большого итогового количества скриптов).

ЗЫ: пользуюсь плагином iMacros для FF, а не полноценной софтиной.

johnsx пишет

Иногда зависает выполнение скриптов (скрипты .js крутятся в разных окнах при помощи циклов с разным временем ожидания WAIT). Связано ли это со стабильностью работы imacros'а или же при они каким-то образом могут нарушать работу друг друга (например, совпадает время при начале отработки очередного цикла)?

это уже обсуждалось.
есть 2 варианта: одновременный запуск нескольких профилей файрфокса или запуск из под нескольких пользователей.
у меня на обычном 2-ядерном процессоре 10 профилей FF одновременно работают постоянно.
зависание случается 1 раз в день или даже в несколько дней и только в одном из 10 профилей.

johnsx пишет

ЗЫ: пользуюсь плагином iMacros для FF, а не полноценной софтиной.

полноценная софтина, тут и не обсуждается

johnsx пишет

2) Существует ли ограничение на количество символов (строк) или вызовов iimPlayCode() в коде макроса на js? (Возникла ситуация когда в одном из написанных скриптов тупо не отрабатывает один из вызовов iimPlayCode() в теле цикла for(). При этом следующий вызов iimPlayCode() в теле того же цикла отрабатывает нормально, перенос неотрабатываемого текста в отдельный макрос и вызов при помощи iimPlay("имя_макроса",60) не принес результатов. Заставил работать только раскидав весь код по отдельным скриптам и организовав их запуск в нужной мне последовательности управляющим js скриптом, что значительно уменьшило общее количество текста в запускаемом скрипте, но усложнило отладку из-за большого итогового количества скриптов).

да, существует, по умолчанию это 2500 строк, но большее кол-во строк, вызывает только предупреждение, но не остановку работы скрипта

Вопрос ко всем обитателям форума. Может кто нибудь пробовал использовать proxy под imacros? Если я запущу скрипт сразу в нескольких окнах и в этом скрипте будет рандомный выбор из списка прокси такая схема вообще рабочая?
Ещё вопрос почему не работает такой код в js :

Выделить код

Код:

iimPlay('CODE:SET !FOLDER_DATASOURCE C:\\Work');

файлы продолжают читаться из директории по умолчанию и этот код так же не работает в js думаю по той же причине

Выделить код

Код:

iimPlay('CODE:SET !REPLAYSPEED FAST ');
серёжа4444444 пишет

Вопрос ко всем обитателям форума. Может кто нибудь пробовал использовать proxy под imacros? Если я запущу скрипт сразу в нескольких окнах и в этом скрипте будет рандомный выбор из списка прокси такая схема вообще рабочая?

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

InfSub пишет

серёжа4444444 пишет: Вопрос ко всем обитателям форума. Может кто нибудь пробовал использовать proxy под imacros? Если я запущу скрипт сразу в нескольких окнах и в этом скрипте будет рандомный выбор из списка прокси такая схема вообще рабочая?если бы вы поискали посты на тему прокси, то нашли бы пост, о том, что встроенный в имакрос метод использования прокси действует локально в рамках одного скриптадругое дело те способы, которые предлагались тут, как более удобные, но при этом и глобальные, меняющие настройки мозиллы в целом...
                    Отредактировано InfSub (Сегодня 23:16:38)

Спасибо за быстрый ответ. Я вас правильно понял что если я возъму один скрипт запущу в разных окнах поставлю в коде скрипта разные прокси то в рамках каждого окна будет свой прокси?

серёжа4444444 пишет
InfSub пишет

серёжа4444444 пишет: Вопрос ко всем обитателям форума. Может кто нибудь пробовал использовать proxy под imacros? Если я запущу скрипт сразу в нескольких окнах и в этом скрипте будет рандомный выбор из списка прокси такая схема вообще рабочая?если бы вы поискали посты на тему прокси, то нашли бы пост, о том, что встроенный в имакрос метод использования прокси действует локально в рамках одного скриптадругое дело те способы, которые предлагались тут, как более удобные, но при этом и глобальные, меняющие настройки мозиллы в целом...
                    Отредактировано InfSub (Сегодня 23:16:38)

Спасибо за быстрый ответ. Я вас правильно понял что если я возъму один скрипт запущу в разных окнах поставлю в коде скрипта разные прокси то в рамках каждого окна будет свой прокси?

зависит от того, какой способ вызова прокси вы используете, если способ встроенный в имакрос - то да

09-09-2014 23:30:23

InfSub пишет
серёжа4444444 пишет
InfSub пишет

серёжа4444444 пишет: Вопрос ко всем обитателям форума. Может кто нибудь пробовал использовать proxy под imacros? Если я запущу скрипт сразу в нескольких окнах и в этом скрипте будет рандомный выбор из списка прокси такая схема вообще рабочая?если бы вы поискали посты на тему прокси, то нашли бы пост, о том, что встроенный в имакрос метод использования прокси действует локально в рамках одного скриптадругое дело те способы, которые предлагались тут, как более удобные, но при этом и глобальные, меняющие настройки мозиллы в целом...
                    Отредактировано InfSub (Сегодня 23:16:38)

Спасибо за быстрый ответ. Я вас правильно понял что если я возъму один скрипт запущу в разных окнах поставлю в коде скрипта разные прокси то в рамках каждого окна будет свой прокси?

зависит от того, какой способ вызова прокси вы используете, если способ встроенный в имакрос - то да

впрочем, я бы рекомендовал для этого использовать разные профили, т.к. вполне возможны глюки особенно в последних версиях мозиллы (за примером не нужно далеко ходить.. достаточно открыть окно "инкогнито" и открыть сайт на котором вы авторизованы в основном окне мозиллы... и.... ни какого вам инкогнито :angry: )

В текстовом документе имеется 2 логина с паролями
логин,пароль
логин,пароль

for (var z=1;z<=2;z++)

Первый цикл

Берёт из текстового файла логин и пароль из первой строки и заходит в одноклассники
что-то там делает и выходит.

Второй цикл

Берёт из текстового файла логин и пароль со второй строки и заходит в одноклассники
что-то там делает и выходит.

идёт следующая часть скрипта

for (var m=1;m<=2;m++)

Первый цикл

Берёт из текстового файла логин и пароль из первой строки и заходит в одноклассники
что-то там делает и выходит.

Второй цикл

Берёт из текстового файла логин и пароль из первой строки и заходит в одноклассники
что-то там делает и выходит.

даже если и 3  и 4 циклы будет делать, всегда берёт первую строку, поочерёдно не берёт.

Что не так ?

скрытый текст
for (var z=1;z<=2;z++)
{

for (var m=1;m<=2;m++)
{

for (i=1;i<=1;i++){
iimSet("LINE",б);
б++
iimPlay("макросы/вход.iim",60);
}

что-то тут делает
и выходит с аккаунта

iimDisplay(z);   
iimSet("z",z);
}

for (i=1;i<=1;i++){
iimSet("пауза",в);
iimPlay("макросы/пауза.iim",60);
}

iimDisplay(m);   
iimSet("m",m);
}


Сделал 2 скрипта и в обоих такая же проблема.

Алим пишет

даже если и 3  и 4 циклы будет делать, всегда берёт первую строку, поочерёдно не берёт.
Что не так ?
Сделал 2 скрипта и в обоих такая же проблема.

скрипт в спойлер, описание, сократи, куча лишней и ненужной воды
приведи те куски кода, которые относятся к проблеме

как я понимаю об этом куске кода идет речь:

Выделить код

Код:

for (i=1;i<=1;i++){
iimSet("LINE",б);
б++
iimPlay("макросы/вход.iim",60);
}

где в твоем коде информация о содержании переменной "б"?
есть только ее изменение б++

iimSet("LINE",б);
б++

в макрос передаёт
CMDLINE !DATASOURCE login.txt
SET !DATASOURCE_LINE {{LINE}}

чтобы поочерёдно брались логины и пароли.

---
я уже решил проблему

здесь вместо цифр были переменные тоже
for (var z=1;z<=p;z++)
{

for (var m=1;m<=a;m++)
{

добавил
б+=-p
и теперь как надо работает

Всем привет есть вопрос по imacros. Кто нибудь делал пользовотельские интерфейсы из php  JavaScript или c# полазил по http://wiki.imacros.net/Sample_Code#PHP не разобрался. Неужели с запуском из других языков работает только купленный макрос а не адон для мозилы или нет?
Этот код у меня тоже не пашет http://wiki.imacros.net/JavaScript

Выделить код

Код:

<html>
 <body> 
  
 <script type="text/javascript">
   <!--
   function runimacros() {
      var iim1 = new ActiveXObject("imacros");
      var iret
   
      iret = iim1.iimInit("-fx");
      iret = iim1.iimDisplay("This is a test");
      iret = iim1.iimPlay ("Demo-FillForm");
      iret = iim1.iimExit();
   }
   //-->
  </script>

 <a href="javascript:runimacros()">Click to run iMacros</font></a>
 </body>
 </html>
серёжа4444444 пишет

Этот код у меня тоже не пашет http://wiki.imacros.net/JavaScript

скрытый текст

Выделить код

Код:

<html>
 <body> 
  
 <script type="text/javascript">
   <!--
   function runimacros() {
      var iim1 = new ActiveXObject("imacros");
      var iret
   
      iret = iim1.iimInit("-fx");
      iret = iim1.iimDisplay("This is a test");
      iret = iim1.iimPlay ("Demo-FillForm");
      iret = iim1.iimExit();
   }
   //-->
  </script>

 <a href="javascript:runimacros()">Click to run iMacros</font></a>
 </body>
 </html>

как вы думаете, функционал, работающий в 2010 году должен работать и сейчас?

http://wiki.imacros.net/JavaScript пишет

This page was last modified on 2 February 2010, at 16:24.

Как установить кол-во циклов в зависимости кол-ва строк в текстовом файле?

Deamelfuse пишет

Как установить кол-во циклов в зависимости кол-ва строк в текстовом файле?

руками вбить количество строк в текстовом файле в окошко имакроса

Скажите, пожалуйста, как решить проблему? После строки TAB CLOSE перестал закрываться браузер Mozilla.
До этого все работало, пока не переустановил Windows 7 и Firefox.
Нужно, что бы после прокрутки макроса браузер закрывался. Либо как прописать в конце сочетание клавиш ALT+F4 ?

Пишут, что макрос делает от 20 до 80 циклов и останавливается. Это из за новой версии мазилы ?
Написал, чтобы установили 28 версию.

InfSub пишет
Deamelfuse пишет

Как установить кол-во циклов в зависимости кол-ва строк в текстовом файле?

руками вбить количество строк в текстовом файле в окошко имакроса

Руками то не сложно. Сложно чтобы js лез в txt, смотрел сколько там строк, а затем делал iimplay столько раз, сколько нашёл строк в файле.

Deamelfuse пишет
InfSub пишет
Deamelfuse пишет

Как установить кол-во циклов в зависимости кол-ва строк в текстовом файле?

руками вбить количество строк в текстовом файле в окошко имакроса

Руками то не сложно. Сложно чтобы js лез в txt, смотрел сколько там строк, а затем делал iimplay столько раз, сколько нашёл строк в файле.

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

Aleksandr724 пишет

Скажите, пожалуйста, как решить проблему? После строки TAB CLOSE перестал закрываться браузер Mozilla.
До этого все работало, пока не переустановил Windows 7 и Firefox.
Нужно, что бы после прокрутки макроса браузер закрывался. Либо как прописать в конце сочетание клавиш ALT+F4 ?

переходим в about:config

отключить закрытие последней вкладки вместе с браузером

browser.tabs.closeWindowWithLastTab                поставить  false

вам нужно поставить true

kolshix пишет

вам нужно поставить true

Большое спасибо!!!

SET !VAR1 "Текст комментария"
TAG POS=1 TYPE=A ATTR=TXT:Комментировать
TAG POS=1 TYPE=TEXTAREA ATTR=ID:reply_field-* CONTENT={{!VAR1}}
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-*

'1- строка - дает значение переменной
'2- строка - работает,окно комментировать открывается
'3- строка - эта строка должна вставить текст комментария,но не вставляет
'4- строку не возможно проверить,но пустое окно она не закрывает

Друзья нашел в инете скрипт по комментам вконтакте, но он не работает!?
Третья строчка никак не хочет работать,я пробовал через:

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="текст комментария "
заменяя #post_field на reply_field-* 

не получается,может кто подскажет ПРАВИЛЬНЫЕ 3и4 строчки.

Форумчане,помогите в решении такой проблемы. Мне нужен макрос,чтобы происходил переход по ссылке,которая находится в данный момент в буфере обмена.Прочитал форум, но найти не смог.Мне кажется,что ответ простой,но я "чайник" не могу придумать,просьба подробнее,большое спасибо!

dorosholeg пишет

Форумчане,помогите в решении такой проблемы. Мне нужен макрос,чтобы происходил переход по ссылке,которая находится в данный момент в буфере обмена.Прочитал форум, но найти не смог.Мне кажется,что ответ простой,но я "чайник" не могу придумать,просьба подробнее,большое спасибо!

Выделить код

Код:

URL GOTO={{!CLIPBOARD}}
InfSub пишет
dorosholeg пишет

Форумчане,помогите в решении такой проблемы. Мне нужен макрос,чтобы происходил переход по ссылке,которая находится в данный момент в буфере обмена.Прочитал форум, но найти не смог.Мне кажется,что ответ простой,но я "чайник" не могу придумать,просьба подробнее,большое спасибо!

Выделить код

Код:

URL GOTO={{!CLIPBOARD}}

Спасибо работает!

slavabest пишет

SET !VAR1 "Текст комментария"TAG POS=1 TYPE=A ATTR=TXT:КомментироватьTAG POS=1 TYPE=TEXTAREA ATTR=ID:reply_field-* CONTENT={{!VAR1}}TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-*'1- строка - дает значение переменной'2- строка - работает,окно комментировать открывается'3- строка - эта строка должна вставить текст комментария,но не вставляет'4- строку не возможно проверить,но пустое окно она не закрываетДрузья нашел в инете скрипт по комментам вконтакте, но он не работает!?Третья строчка никак не хочет работать,я пробовал через:EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="текст комментария "заменяя #post_field на reply_field-*  не получается,может кто подскажет ПРАВИЛЬНЫЕ 3и4 строчки.

Тоже интересует. Не хочет вставлять текст в форму.

Помогите, пожалуйста, решить задачку
Есть fail.csv
структура файла

время1, сайт1
время2, сайт2
время3, сайт3
время4, сайт4

и т. д.

Нужно чтобы при переходе по ссылке в файле обновлялось время.
Подскажите как записать (обновить) данные в определенной строке файла?

sashamerlin пишет

Помогите, пожалуйста, решить задачку
Есть fail.csv
структура файла

время1, сайт1
время2, сайт2
время3, сайт3
время4, сайт4

и т. д.

Нужно чтобы при переходе по ссылке в файле обновлялось время.
Подскажите как записать (обновить) данные в определенной строке файла?

в определенной строке файла - ни как, только записав эту информацию в конец файла

InfSub пишет

sashamerlin пишет: Помогите, пожалуйста, решить задачкуЕсть fail.csv структура файлавремя1, сайт1время2, сайт2время3, сайт3время4, сайт4и т. д.Нужно чтобы при переходе по ссылке в файле обновлялось время.Подскажите как записать (обновить) данные в определенной строке файла?в определенной строке файла - ни как, только записав эту информацию в конец файла

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

подскажите пожалуйста как очистить файл?

sashamerlin пишет
InfSub пишет

sashamerlin пишет: Помогите, пожалуйста, решить задачкуЕсть fail.csv структура файлавремя1, сайт1время2, сайт2время3, сайт3время4, сайт4и т. д.Нужно чтобы при переходе по ссылке в файле обновлялось время.Подскажите как записать (обновить) данные в определенной строке файла?в определенной строке файла - ни как, только записав эту информацию в конец файла

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

подскажите пожалуйста как очистить файл?

очистить ни как, но можно удалить

Выделить код

Код:

FILEDELETE NAME=файл

где, "файл" - имя файла, если он находится в директории iMacros/Downloads, либо абсолютный путь до файла

Добрый день, подскажите как сделать парсер для вк

Скрипт заходит на страницы

скрытый текст
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 0
SET !LOOP 2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD>DIV:nth-of-type({{!LOOP}})>DIV:nth-of-type(2)>DIV>A" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" KEY=8

Помогите, как извлечь урл страницы на которую скрипт перешел :angry:

InfSub  - Подскажи, более простая задача:есть строчка-

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="ссылка на фото "

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

slavabest пишет

InfSub  - Подскажи, более простая задача:есть строчка-EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="ссылка на фото "как сделать чтобы ссылка бралась из текстового файла на компьютере, и выполняла туже функцию?То есть можно заменить эту (ссылку на фото) какой нибудь переменной?

SET !DATASOURCE text.csv 
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="{{!COL1}}"

Татьянa пишет

Добрый день, подскажите как сделать парсер для вк

Скрипт заходит на страницы

скрытый текст
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 0
SET !LOOP 2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(11)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV:nth-of-type(4)>TABLE>TBODY>TR>TD>DIV:nth-of-type({{!LOOP}})>DIV:nth-of-type(2)>DIV>A" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" KEY=8

Помогите, как извлечь урл страницы на которую скрипт перешел :angry:

!URLCURRENT

Всем привет. Есть ли какая-нибудь альтернатива кнопки ''Воспроизвести цикл'' в коде .lim очень нужно именно в коде .lim  а не в js. Или может логичнее будет просто многократно вызывать один и тот же lim файл?

серёжа4444444 пишет

Всем привет. Есть ли какая-нидь альтернатива кнопки ''Воспроизвести цикл'' в коде .lim очень нужно именно в коде .lim  а не в js. Или может логичнее будет просто многократно вызывать один и тот же lim файл?

и логичнее и единственный вариант, кроме js - зацикленный вызов

К сожалению не  получилось

скрытый текст

Выделить код

Код:

SET !DATASOURCE text.csv  
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="{{!COL1}}"


Такая конструкция вставляет саму ссылку на фото, а не загружает картинку в поле ввода и не открывает ее.
А так хотелось чтобы картинки менялись.

slavabest пишет

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS=

slavabest пишет

К сожалению не  получилосьSET !DATASOURCE text.csv  EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="{{!COL1}}"Такая конструкция вставляет саму ссылку на фото, а не загружает картинку в поле ввода и не открывает ее.А так хотелось чтобы картинки менялись.

Этот вопрос пока не решаем!

slavabest пишет

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="{{!COL1}}"

это вообще где? на какой странице и что делает? // понятно что речь видимо о контакте и что данный код набирает адрес ссылки

Вот такой код комментирует один и тот же пост, потому что в нем идентификатор поста.

скрытый текст

Выделить код

Код:

URL GOTO=http://vk.com/club50882217
EVENT TYPE=CLICK SELECTOR="#reply_link-50882217_4678>A" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-50882217_4678" CHARS="хороший сайт"
EVENT TYPE=CLICK SELECTOR="#reply_button-50882217_4678" BUTTON=0


Встречал на форуме что идентификатор можно заменить звездочкой*, но у меня не получается. Может кто пробывал, поделитесь опытом.

slavabest пишет

Вот такой код комментирует один и тот же пост, потому что в нем идентификатор поста.

скрытый текст

Выделить код

Код:

URL GOTO=http://vk.com/club50882217
EVENT TYPE=CLICK SELECTOR="#reply_link-50882217_4678>A" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-50882217_4678" CHARS="хороший сайт"
EVENT TYPE=CLICK SELECTOR="#reply_button-50882217_4678" BUTTON=0


Встречал на форуме что идентификатор можно заменить звездочкой*, но у меня не получается. Может кто пробывал, поделитесь опытом.

* - не работает с EVENT(S)

23-09-2014 21:07:34
один из способов, заранее вытаскивать идентификатор и передавать его в EVENT

к примеру, так:

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#reply_link-{{!EXTRACT}}>A" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-{{!EXTRACT}}" CHARS="хороший сайт"
EVENT TYPE=CLICK SELECTOR="#reply_button-{{!EXTRACT}}" BUTTON=0

Такой код тоже не работает. Или надо что то еще дописывать?

А что вы пытаете решать? В группе ВК прикреплять фото?

slavabest пишет

Такой код тоже не работает. Или надо что то еще дописывать?

естественно, его нужно дописывать, я только привел пример, как можно вставить id в event

Gergi пишет

А что вы пытаете решать? В группе ВК прикреплять фото?

С фото я завязал ( буду спамить одной картинкой).

Гораздо безапасней спамить по коментариям (придумал обстрактные коменты, на все случаи, и пошел шпарить)
Только это похоже еще сложнее (в плане написания макроса)

Я пытался сделать макрос чтобы забирал у меня картинку с рабочего стола и прикреплял в группах ВК но ничего не получилось,вот именно в группах не крепится  фото.

slavabest пишет
Gergi пишет

А что вы пытаете решать? В группе ВК прикреплять фото?

С фото я завязал ( буду спамить одной картинкой).

Гораздо безапасней спамить по коментариям (придумал обстрактные коменты, на все случаи, и пошел шпарить)
Только это похоже еще сложнее (в плане написания макроса)

если рассматривать по объему кода, это - 2-3 строки кода кроме тех, что уже были указаны выше
в плане же, самого кода - думаю, да - это сложнее =)

24-09-2014 16:36:51

Gergi пишет

Я пытался сделать макрос чтобы забирал у меня картинку с рабочего стола и прикреплял в группах ВК но ничего не получилось,вот именно в группах не крепится  фото.

не не решаемых задач, есть люди, не умеющие их решать

InfSub пишет

не не решаемых задач, есть люди, не умеющие их решать

Согласен,но проблема реально не простая,я несколько дней потратил на решение этого вопроса но и так не решил.

Gergi пишет
InfSub пишет

не не решаемых задач, есть люди, не умеющие их решать

Согласен,но проблема реально не простая,я несколько дней потратил на решение этого вопроса но и так не решил.

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="полная ссылка на ваше фото с http://xxxx......"
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


Эти три строчки макроса вставят ваше фото  в поле ввода открытой группы.
----------------------------------------------------------------------------------------------------------------------------
InfSub - подскажи эти две три строчки для камментов, если не жалко - в карму зачтется.

Эти три строчки ставят ссылку на фото.

24-09-2014 19:05:13
Надо чтобы брались фото из моего компа а не из интернета. Это две большие разницы.

Gergi пишет

Эти три строчки ставят ссылку на фото.

24-09-2014 19:05:13
Надо чтобы брались фото из моего компа а не из интернета. Это две большие разницы.

по сути - ни какой разницы, выгрузили заранее фото в сеть, сохранили адрес, все, ни каких гвоздей, и работает с любого компа, без переброса ресурсов (фоток)

24-09-2014 19:13:50
да и по сути, подгрузить локальную фотку, вообще не проблема, если посмотреть на проблему под другим углом...

Вы могли бы в группах ВК прикрепить фото а не ссылку на фото? Выгрузить ссылку и она преобразуется в фото я это давно сделал. А вот проблема именно в том сто бы фотка забиралась из компа а не из сети.

24-09-2014 19:27:33
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="http://xxxx......" Вот так работает
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="C:\Users\Public\Pictures\Sample Pictures\хххх.jpg......" А хотелось бы так

Gergi пишет

Вы могли бы в группах ВК прикрепить фото а не ссылку на фото? Выгрузить ссылку и она преобразуется в фото я это давно сделал. А вот проблема именно в том сто бы фотка забиралась из компа а не из сети.

24-09-2014 19:27:33
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="http://xxxx......" Вот так работает
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="C:\Users\Public\Pictures\Sample Pictures\хххх.jpg......" А хотелось бы так

решение столь элементарно, что я, не буду его приводить здесь, тем более, оно уже было на форуме, хотя и достаточно давно, вы же, не пытаетесь посмотреть на проблему иначе, а просто бьетесь "лбом об стену"...
Учитесь находить нестандартные решения!

Я на эту проблему уже забил! Так как она на 99% не решаема! И тут показывать код никто не просил,я просто вёл к тому что вы сперва реализуйте эту проблему и тогда уже рассказывайте тут теорию. Да и насколько мне известно эта проблема обсуждалась но решение так и не нашлось

Gergi пишет

Я на эту проблему уже забил! Так как она на 99% не решаема! И тут показывать код никто не просил,я просто вёл к тому что вы сперва реализуйте эту проблему и тогда уже рассказывайте тут теорию. Да и насколько мне известно эта проблема обсуждалась но решение так и не нашлось

проблема решаема и решена еще год назад, просто тут сам метод озвучивался в другом контексте
доказывать что она решена, я тоже не собираюсь, я тут с вами не играю в "верю - не верю", считаете  - не решаема, считайте дальше

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

Gergi пишет

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

уважаемый, если у Вас лично, что-то не получается, то не нужно кричать, что это не возможно, считаете меня самоуверенным, напишите хотя бы половину скриптов, которые написал я, впрочем, все это уже OFFTOP

Ну насколько мне известно,вы не то чтобы один из лучших  специалистов по скриптам,а вы таки самый лучший специалист и с этим даже никто не поспорит. Просто тут речь была о другом. Ладно,закрываем очередной раз тему про эту проблему.

Gergi пишет

Ну насколько мне известно,вы не то чтобы один из лучших  специалистов по скриптам,а вы таки самый лучший специалист и этим даже никто не поспорит. Просто тут речь была о другом. Ладно,закрываем очередной раз тему про эту проблему.

не нужно мне приписывать того, чего нет

а по поводу, данной проблемы, я не вижу смысла давать решения, до которого, легко можно дойти самому, благо, проблема, по сути, не в написании кода, а в том, как и где его корректно применить
проблема поставленная slavabest, сложнее этой, но на ее решение, лично у меня ушло полчаса, но мне интересно, сможет ли сам, slavabest дойти до ее решения или нет

Ну например я у slavabest вообще не вижу никаких проблем,я его задачу давно решил и забыл! А вот свою задачу никак не решу :(  Вам кажется пустяком,но я вас огорчу - это очень сложная задача!

Gergi пишет

Ну например я у slavabest вообще не вижу никаких проблем,я его задачу давно решил и забыл! А вот свою задачу никак не решу :(  Вам кажется пустяком,но я вас огорчу - это очень сложная задача!

я могу быть не прав, но судя по возникающим у вас вопросам, я как раз, сомневаюсь в решении вами задачи slavabest, хотя, я мог пойти не самым простым путем и мой метод решения, через получение id из поста, не самый простой способ, и если вам удалось найти более простое решение, что ж, я только рад, что вы смогли найти более простое решение
тем не менее, решение вашей задачи, как уже говорил, не содержит ни каких сложностей, и код написать может даже новичок, воспользовавшись кнопкой записи, просто вы, не с той стороны смотрите на решение данной проблемы, вы, как говорится, "уперлись рогом" в стену и не хотите посмотреть со стороны на проблему, и найти тропинку, которая протоптана в обход.

Свои доводы оставьте при себе. А насчёт данной проблемы я не понимаю зачем пол дня спорить? Я вам написал что этот вопрос закрыт потому что на сегодняшний день ещё ни один человек не решил эту проблему. Я перелопачил весь интернет и что только не придумывал но проблема осталась. А если вы так утверждаете что это чепуха,тогда напишите три строчки кода и тогда кричите что все дураки.

25-09-2014 01:46:16
Вот меня удивляет сама ситуация. Человеку доказывают что на сегодняшний день ещё никому не удалось  реализовать  эту проблему,а он даже не пытаясь это реализовать,уже кричит что все дураки. Может проще попробовать три строчки записать?

Gergi пишет

ещё ни один человек не решил эту проблему

Gergi пишет

а он даже не пытаясь это реализовать

Gergi пишет

Человеку доказывают что на сегодняшний день ещё никому не удалось

да не уже ли, вы готовы бить себя в грудь кулаком и доказывать что проблема не решаема, просто потому, что лично вы - не смогли найти решение? сколько человек ее не смогло решить? лично вы один? а может быть -  те что решили, просто не выложили свое решение?
да, я не привожу тут код, знаете почему, потому что я дошел до него своими мозгами, так же, как еще 2-3 человека на этом форуме (которые своими постами ранее доказали, что решили данную проблему или схожую с ней, аналогичным способом), и я не единожды намекнул на решение, пусть абстрактно, но почему, я должен давать кому-то решение?
я что, пришел сюда решать ваши проблемы с контактом? или с одноклассниками?
суть темы на этом форуме, научить пользоваться имакросом, а не давать готовых решений на любой вопрос, я могу уйти с форума, не потеряв от этого ни чего, выиграю только время, которое я трачу на решение чьих-то задач и прения по несущественным вопросам... и кто от этого выиграет? явно не вы...
поверьте, с помощью имакроса, можно решить не все задачи, но те что можно, дают такие перспективы, что с вашей фантазией, явно не снились...
тут хоть один человек реализовал уведомления на телефон о событиях? все что реализовано это alert(), prompt и iimDisplay(), судя по форуму... а вы сделайте, или это тоже не возможно по вашему?
до моей реализации скрипта для фейсбука, ни кто даже не думал о возможности задавать параметры скрипта спрашивая их у пользователя, а не меняя сам файл скрипта... - это тоже не возможно?, их ведь тоже ни где не было, были скрипты только на чистом имакросе...
или взять другой пример, был тут вопрос о подсчете строк в файле, из которого считывались данные, я привел в пример кусок кода, который позволяет при зацикливании - посчитать кол-во строк в файле данных, что я услышал в ответ? долго..., зависает....
а мозг включять и оптимизировать код - я за вас буду? естественно считывание 3000 строк займет кучу времени, а сделать так чтобы вместо 3000 циклов, скрипт выполнил максимум 10 - не судьба, кривизны извилин не хватает?
мной то, как раз это все реализовано, но суть кода я привел, у меня она такая же...
или может мне просто выложить все что я написал, снабдив обильными комментами и еще подвязаться на поддержку, на тот случай, если кто вдруг комменты поленится прочесть?

у меня уже терпения, честно не хватает... хочется, просто забить, сказав - пишите и разбирайтесь сами...

Извините,и давайте уже закроем эту несчастную тему.

InfSub пишет

тут хоть один человек реализовал уведомления на телефон о событиях? все что реализовано это alert(), prompt и iimDisplay(), судя по форуму...

Задумывался как-то над данным вопросом - бесплатная отправка смс на сайтах идет через каптчу - но я делал по другому , брал левый аккаунт ВК и при завершении работы сценария? макрос заходил на этот левый акк и отправлял сообщение (с нужным мне текстом) на мой реальный аккаунт ВК - ведь всем известно что на ВК есть смс уведомление о сообщениях, тем самым я контролировал работу imacros

kolshix пишет
InfSub пишет

тут хоть один человек реализовал уведомления на телефон о событиях? все что реализовано это alert(), prompt и iimDisplay(), судя по форуму...

Задумывался как-то над данным вопросом - бесплатная отправка смс на сайтах идет через каптчу - но я делал по другому , брал левый аккаунт ВК и при завершении работы сценария? макрос заходил на этот левый акк и отправлял сообщение (с нужным мне текстом) на мой реальный аккаунт ВК - ведь всем известно что на ВК есть смс уведомление о сообщениях, тем самым я контролировал работу imacros

вариантов много, в данном случае речь шла не о смс, а о push-сообщениях, да и смысла, на мой взгляд нет отправлять себе смс из контакта, если стоит приложение (вконтакте), которое и так 95% времени онлайн (разве что для мест, где интернет совсем ни какой, но там и мобильная связь соответствующая)

InfSub пишет
kolshix пишет
InfSub пишет

тут хоть один человек реализовал уведомления на телефон о событиях? все что реализовано это alert(), prompt и iimDisplay(), судя по форуму...

Задумывался как-то над данным вопросом - бесплатная отправка смс на сайтах идет через каптчу - но я делал по другому , брал левый аккаунт ВК и при завершении работы сценария? макрос заходил на этот левый акк и отправлял сообщение (с нужным мне текстом) на мой реальный аккаунт ВК - ведь всем известно что на ВК есть смс уведомление о сообщениях, тем самым я контролировал работу imacros

вариантов много, в данном случае речь шла не о смс, а о push-сообщениях, да и смысла, на мой взгляд нет отправлять себе смс из контакта, если стоит приложение (вконтакте), которое и так 95% времени онлайн (разве что для мест, где интернет совсем ни какой, но там и мобильная связь соответствующая)

отвечаю лично тебе: в моем случае макрос бегает по 5 -ти сайтам  и рас в месяц у каждого сайта есть измененния и из этих эзминениях я теряю деньги , но когда вовремя вижу баги я деньги не тиряю

push-сообщениях??? это типо диалоги "да" "нет"??

kolshix, как кому удобно сделать, вопрос аналогичный выражению про вкус и цвет.
тебе удобно так, мне иначе, смысл один, уведомления приходят на телефон, я, когда прикручивал уведомления, мне вообще требовалось иметь возможность реагировать практически мгновенно на событие, максимальное время реакции 10-15 минут

26-09-2014 19:29:08
нет, это типа того что импользунтся в viber и whatsapp для отправки и получения сообщений

26-09-2014 19:32:22
PUSH

Подскажите пожалуйста
Сохраняю картинки в папку...
Нужно что бы макрс перед запуском удалил все содержимое файла, можно это как то сделать?

Татьянa пишет

Подскажите пожалуйста
Сохраняю картинки в папку...
Нужно что бы макрс перед запуском удалил все содержимое файла, можно это как то сделать?

копаю огород, как мне починить велосипед? - вопрос аналогичен вашему...

в чем, конкретно суть вопроса? как удалить содержимое файла - ни как, можно удалить только сам файл и создать новый, как удалить, только недавно об этом писал, не поленитесь пролистать 2-3 страницы форума или воспользуйтесь поиском, если же требуется очистить папку от скачанных файлов, то это можно сделать, только зная имена файлов в папке и также по одному их удалить

27-09-2014 17:01:44
единственное что может упростить процесс очистки папки, это использование пакета Denwer, совместно с iMacros. Создаете *.php-страницу, которая чистит определенную папку и заходите на нее вашим скриптом

Подскажите еще такое
Пользуюсь сервисом ripcaptcha.com

когда распознает капчу
EnhZvVtdUyvXbPitwhbgA.jpg
извлекаю TAG POS=1 TYPE=DIV ATTR=ID:res_status EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}

извлекает вот такое(
OK|3kc47

как можно убрать эту приставу "OK|"

Татьянa пишет

Подскажите еще такое
Пользуюсь сервисом ripcaptcha.com

когда распознает капчу
http://data3.floomby.com/files/share/27 … twhbgA.jpg
извлекаю TAG POS=1 TYPE=DIV ATTR=ID:res_status EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}

извлекает вот такое(
OK|3kc47

как можно убрать эту приставу "OK|"

например, так:
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('OK|','')")

Спасибо Вам,  огромное !!

А что классно. Выше сказанному.
Можно извлечь какую нибудь ссылку или текст, а потом удалить лишнее
или сразу извлечь из текста или ссылку нужный кусок.

Как известно, контакт снял почти все ограничения на постинг по родному таймеру.
Я подумал а почему не автоматизировать этот процесс.
Попробовал сделать запись - вот что получилось:

скрытый текст
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=привет
TAG POS=1 TYPE=NOBR ATTR=TXT:Таймер
TAG POS=1 TYPE=TD ATTR=ID:day30_397182
TAG POS=1 TYPE=TD ATTR=ID:dropdown2
TAG POS=1 TYPE=TD ATTR=ID:dropdown3
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Макрос работает, конечно можно десять раз повторить код и получится 10 постов. А на месяц? - слишком большой код получится!
Я понимаю,что можно это сделать более изящно, но я в скриптах профан.

У кого по поводу такого скрипта есть каки либо предложения, или решения - делитесь.

slavabest пишет

Как известно, контакт снял почти все ограничения на постинг по родному таймеру.
Я подумал а почему не автоматизировать этот процесс.
Попробовал сделать запись - вот что получилось:

скрытый текст
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=привет
TAG POS=1 TYPE=NOBR ATTR=TXT:Таймер
TAG POS=1 TYPE=TD ATTR=ID:day30_397182
TAG POS=1 TYPE=TD ATTR=ID:dropdown2
TAG POS=1 TYPE=TD ATTR=ID:dropdown3
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

Макрос работает, конечно можно десять раз повторить код и получится 10 постов. А на месяц? - слишком большой код получится!
Я понимаю,что можно это сделать более изящно, но я в скриптах профан.

У кого по поводу такого скрипта есть каки либо предложения, или решения - делитесь.

уже не однократно обсуждалось, что можно упростить, а точнее оптимизировать практически любой код требующий неоднокрытных однотипных действий с помощью js - да, на форуме этой теме посвящено не так много, но того, что есть, вам, для вашей задачи, хватит за глаза

Я раньше делал в JS код который срабатывал когда находит мои сообщения в 10 первых строчек. Тоесть скрипт открывает группу и если в этой группе в первых 10 строках находит меня то не даёт публикацию в этой группе уходит в другую. Но вот беда,я забыл как я его делал.

29-09-2014 13:34:04
На форуме конечно же обсуждалась эта тема,и я именно благодаря форуму смастерил этот код,но как вспомню как он мне нервы истрепал уже и не хочу с ним возиться. Если кто то подскажет то Спасибо,если нет так нет.

Ребятки, а есть у кого готовый скрипт, который оставляет комментарии в группе вконтакте?

Татьянa пишет

Ребятки, а есть у кого готовый скрипт, который оставляет комментарии в группе вконтакте?

offtop: есть заготовки, исходя из предыдущих вопросов на форуме, из которых можно сделать и скрипт, в зависимости от пожеланий...

EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13

Скажите пожалуйста какую функцию выполняет KEY=13 в строке выше?

И еще вопрос, как вставить данный код джава скрипта в макрос    for (i=1;i<=27;i++)

slavabest пишет

EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13

Скажите пожалуйста какую функцию выполняет KEY=13 в строке выше?

имитация нажатия ENTER

slavabest пишет

И еще вопрос, как вставить данный код джава скрипта в макрос    for (i=1;i<=27;i++)

так и вставить, конкретизируйте в чем проблема, предположу, что вы вставляете данный код в *.iim-файл, в нем работать не будет, нужен управляющий js-скрипт из которого будет запускаться код или  *.iim-файл(ы)

*.js

Выделить код

Код:

for (i=1;i<=27;i++){iimPlay(....)}

Спасибо! Все понятно.

Здравствуйте, у меня не большая проблема, на одном из сайтов на котором пользуюсь аймакросом, были обновления, теперь кнопка, у которой всегда было одно и тоже название:
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:0e1c19778f27910
стала менять окончание после ATTR=ID: и всегда разные комбинации, есть ли возможность подставить команду, которая сможет и в дальнейшем распозновать эту кнопку.
Спасибо за ранее

lonik101
замените изменяемую часть *

спасибо, да об этой фишке я знаю, но меняется именно эта часть 0e1c19778f27910 в конце этой команды:
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:0e1c19778f27910
и поставить звездочку после двоеточия типа этого примера
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:*
ничиго к сожалению не дает.
Другой возможности нет?

lonik101 пишет

спасибо, да об этой фишке я знаю, но меняется именно эта часть 0e1c19778f27910 в конце этой команды:
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:0e1c19778f27910
и поставить звездочку после двоеточия типа этого примера
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:*
ничиго к сожалению не дает.
Другой возможности нет?

скорее всего есть, но не видя кода страницы, и кнопки, которую вы пытаетесь нажать, какой ответ вы ответ хотите получить?

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://coincheckin.com/
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
WAIT SECONDS=320

это старый скрипт. заходим в ручную, задаем капчу и включаем скрипт на 12 циклов, потом снова задаем капчу в ручную и снова 12 циклов.
после обновления скрипт больше не видит кнопку "checkin*"
так как вместо неё на сайте просто беспорядочный набор букв и цифр. и они переодически меняются.
Буду признателен за помощь.

lonik101 пишет

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://coincheckin.com/
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:checkin*
WAIT SECONDS=320


это старый скрипт. заходим в ручную, задаем капчу и включаем скрипт на 12 циклов, потом снова задаем капчу в ручную и снова 12 циклов.
после обновления скрипт больше не видит кнопку "checkin*"
так как вместо неё на сайте просто беспорядочный набор букв и цифр. и они переодически меняются.
Буду признателен за помощь.

Выделить код

Код:

TAG POS=1 TYPE=INPUT:BUTTON ATTR=VALUE:CHECK*

Вы просто супер, огромнейшее спасибо. Очень, очень, очень благодарен

А можно еще на этом сайте узнать название кнопки. это аналог первого.
http://dogecheckin.com/
тоже каждые 5 минут нужно нажимать кнопку. и также слетела. но не найды где вы нашли название. можете подсказать как вы нашли?

lonik101 пишет

А можно еще на этом сайте узнать название кнопки. это аналог первого.
http://dogecheckin.com/
тоже каждые 5 минут нужно нажимать кнопку. и также слетела. но не найды где вы нашли название. можете подсказать как вы нашли?

Выделить код

Код:

TAG POS=1 TYPE=INPUT:IMAGE ATTR=SRC:*dogecoin*

Я вам очень признателен за вашу помощь, спасибо!!! а можно узнать где вы это посмотрели, чтоб в следуйщий раз не тревожить вас по пустякам?

lonik101 пишет

Я вам очень признателен за вашу помощь, спасибо!!! а можно узнать где вы это посмотрели, чтоб в следуйщий раз не тревожить вас по пустякам?

в html-коде страницы

Подскажите и тут пожалуйста)
<div style="height: 14px;" id="reply_field-35007997_2216" class="fl_l reply_field" onfocus="return Wall.showEditReply('-35007997_2216', event);" contenteditable="true"></div>

id="reply_field-35007997_2216" всегда меняется

Татьянa пишет

Подскажите и тут пожалуйста)
<div style="height: 14px;" id="reply_field-35007997_2216" class="fl_l reply_field" onfocus="return Wall.showEditReply('-35007997_2216', event);" contenteditable="true"></div>

id="reply_field-35007997_2216" всегда меняется

меняется не reply_field-35007997_2216, а только часть после reply_field-
вариантов, соответственно, несколько:
- можно банально извлекать данный цифровой номер из кода с помощью EXTRACT, и потом подставлять в код с EVENT (данный код был только недавно, разве что без примера, как извлечь)
- о втором варианте мы тут недавно спорили, в контексте вставки изображений в группу и комментарий, и его примеры были где-то глубоко зарыты в данной теме на форуме
- третий способ, я пока что на форуме - не видел, но тоже основан на EVENT

offtop
конкретно, здесь, в открытом доступе, рабочих примеров - не будет, во всяком случае, от меня, по многим причинам, одна из которых: господа, нужно уметь думать своей головой
конкретные предложения, готов выслушать на E-mail или в PM

Здравствуйте! Установил расширение iMacros на Мазилу. Подскажите пожалуйста, как можно эти макросы, запускать на исполнение в ручную. Минуя окна расширения и кнопки воспроизвести. Тоесть вообще из папки где они лежат. Спасибо!

Пролистайте форум, тут очень много раз обсуждалась эта тема,и есть отличные подсказки.

Пролистайте форум, тут очень много раз обсуждалась эта тема,и есть отличные подсказки. - Это вы мне написали на мой вопрос?:|

да

Наверное неделя уйдет на прочтение 85страниц и поиск ответа. Значит там все не так просто похоже :) Спасибо за ответ!

Нашел на форуме в истории такой ответ: Для запуска макроса в ручную

start /B "C:\Program Files\Mozilla Firefox\firefox.exe"   http://run.imacros.net/?m=название_файла.iim

Сохраняешь с расширением bat
Делал, у меня просто в браузере открывает страницу с ошибкой
Может подскажите что не так?

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe"  imacros://run/?m=Demo-FillForm.iim

просто только эту строку в бат файл вставьте и всё.  Вместо Demo-FillForm имя своего макроса напишите

Большое Спасибо! Успехов вам!!!

Кто подскажет можно ли как то нажать на крестик в адресной строке браузера?

Gergi пишет

Кто подскажет можно ли как то нажать на крестик в адресной строке браузера?

зачем?, на сколько я знаю - нет, можно просто проигнорировать незагрузившиеся элементы

Мне надо каким то образом остановить страницу,останавливаю скрипт не помогает,а когда нажимаю на крестик всё хорошо.

07-10-2014 16:42:34
В одноклассниках когда появляется капча,само окно капчи мигает и скрипт антигея не может обработать капчу. Вот и надо как то остановить окно с капчей.

Gergi пишет

Мне надо каким то образом остановить страницу,останавливаю скрипт не помогает,а когда нажимаю на крестик всё хорошо.

при чем тут остановка скрипта?
достаточно установить время ожидания загрузки страницы: SET !TIMEOUT
либо установить время ожидания загрузки элементов страницы: SET !TIMEOUT_STEP
либо и то и другое...
в вашем случае, с учетом того, что проблема не описана вообще ни как, и можно догадаться о проблеме только телепатически, думаю нужен второй параметр

Подскажите как сделать так что бы этот код i=iimPlayCode("TAG POS=2 TYPE=H5 ATTR=TXT:Юрий<SP>Давиденко") находил информацию за последний час а не аж прошлогоднюю.

Работает НО находит старую информацию

Gergi
экстрасенсы в отпуске

for (;;){
iimPlay(1.iim)
i=iimPlayCode(TAG POS=1 TYPE=P ATTR=TXT:...В<SP>с<SP>е<SP>м<SP>-<SP>П<SP>Р<SP>И<SP>В<SP>Е<SP>Т*)
if (i<0){
   for (;;){
        b=iimPlay(2.iim)
        if (b>0){
           break
        } 
   }
}
}

08-10-2014 09:16:04
К примеру отсчитать 10 постов и вних искать информацию. А посты 11-12 и так далее уже не видеть.

теги code видимо придумали не для вас, про спойлер вообще молчу
где именно 10 постов, как понимаю речь об ок.ру, где конкретно на ок.ру мне, из вас силой что-ли информацию вытягивать? кому это надо, мне или вам?

вот где посты http://vk.com/club10218137

08-10-2014 09:39:55
Вы меня простите но у меня как то мозгов не хватает как засунуть код под спойлер. Пробовал не получилось.

Gergi пишет

Вы меня простите но у меня как то мозгов не хватает как засунуть код под спойлер. Пробовал не получилось.

вот так

Выделить код

Код:

[spoiler][сode]ваш код[/сode][/spoiler]

Спасибо,буду пользоваться спойлером.

Gergi пишет

скрытый текст

Выделить код

Код:

for (;;){
iimPlay(1.iim)
i=iimPlayCode(TAG POS=1 TYPE=P ATTR=TXT:...В<SP>с<SP>е<SP>м<SP>-<SP>П<SP>Р<SP>И<SP>В<SP>Е<SP>Т*) 
if (i<0){
   for (;;){
        b=iimPlay(2.iim)
        if (b>0){
           break
        }  
   }
}
}


08-10-2014 09:16:04
К примеру отсчитать 10 постов и вних искать информацию. А посты 11-12 и так далее уже не видеть.

не вижу проблемы вытащить информацию из 10 поста?

скрытый текст

Выделить код

Код:

URL GOTO=https://vk.com/club10218137
TAG POS=10 TYPE=DIV ATTR=CLASS:wall_post_text EXTRACT=TXT


08-10-2014 10:06:18

Gergi пишет

буду пользоваться спойлером.

спойлер только прячет текст, для нормальной читабельности кода (без смайлов и другого мусора), используется тег [сode][/сode] при больших объемах, вместе со спойлером

Толи этого кода не достаточно,толи у меня что то с руками
Не срабатывает

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

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

Gergi пишет

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

10 пост - дата от 26 сентября
38b807550f135baf27da38bd98f0a6b2.jpeg

Для вконтакте получилось всё как было задумано СПАСИБО! А вот для фейсбука пока не получается.

Gergi пишет

Для вконтакте получилось всё как было задумано СПАСИБО! А вот для фейсбука пока не получается.

что именно?

Тоже самый код что и для вконтакте. На фейсбуке нет TAG POS=10 там всё TAG POS=1

Gergi пишет

Тоже самый код что и для вконтакте. На фейсбуке нет TAG POS=10 там всё TAG POS=1

значит вы не правильно задаете параметры

Не отойду от компа пока не добьюсь результата:sick:

Ребята помогите пожалуйста,я понимаю наверно не раз тут обсуждалось че и как но искать просто физически нет времени.

Короче есть записанных 5 макросов 1.iim,2.iim...5.iim,нужно запустить их по очереди, каждый макрос через 1 час.Нашел что нужно через скрипт но как так и не пойму.

Спасибо.

hirurgrrr1984 пишет

искать просто физически нет времени.

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

hirurgrrr1984 пишет

Короче есть записанных 5 макросов 1.iim,2.iim...5.iim,нужно запустить их по очереди, каждый макрос через 1 час.Нашел что нужно через скрипт но как так и не пойму.

где пример кода, что вы нашли и описание того, что в нем не поняли?

думаю, требуется, что-то подобное:

Выделить код

Код:

while(true){for(i=1;i<=5;i++){iimPlay(i+'.iim');iimPlayCode('WAIT SECONDS=3600');};};

Юзает ссылки из .txt файла и открывает в браузре
Всего 3 ссылки

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_COLUMNS EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/3)-1)*3")

URL GOTO={{!COL1}}


Юзает последнюю ссылку, а заново не повторяет.
Почему ?

Алим пишет

Юзает ссылки из .txt файла и открывает в браузре
Всего 3 ссылки

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_COLUMNS EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/3)-1)*3")

URL GOTO={{!COL1}}


Юзает последнюю ссылку, а заново не повторяет.
Почему ?

!DATASOURCE

InfSub пишет

Алим, помогло?=)

InfSub пишет
InfSub пишет

Алим, помогло?=)

нет

цифры меняю тоже не получается
Проблема в !DATASOURCE или в цифрах.

Что-то добавить или убавить надо?

Я смотрел пост 1609
https://forum.mozilla-russia.org/viewto … 44#p652544

один раз получилось, но в последнее время не работает

Может это поможет

скрытый текст
' Количество ссылок
SET !VAR1 120
SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\1234\1.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!VAR2}}
WAIT SECONDS=2
URL GOTO={{!COL1}}

Gergi пишет

Может это поможет
скрытый текст
' Количество ссылок
SET !VAR1 120
SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\1234\1.txt
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!VAR2}}
WAIT SECONDS=2
URL GOTO={{!COL1}}

Ну вот, совсем другое дело )))
Работает

Алим пишет

Ну вот, совсем другое дело )))
Работает

понятно, эт называется, читать не умеем, и код не понимаем
ваш код:

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_COLUMNS EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/3)-1)*3")

URL GOTO={{!COL1}}

аналогичен такой записи (почти аналогичен, в связи со спицификой хранения данных в вашем txt файле):

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt

URL GOTO={{!COL1}}

думаю вам снова не понятно по каким причинам и где же ошибка, хотя Gergi привел практически верный пример
вы что пытались с помощью EVAL задать? номер чего, если задать более конкретный вопрос, я специально дал ссылку, чтобы вы прочли что есть !DATASOURCE и какие у него параметры

09-10-2014 17:35:30

Алим пишет

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

09-10-2014 17:47:58
Что такое !DATASOURCE_COLUMNS и что такое !DATASOURCE_LINE ?
!DATASOURCE_LINE - это номер строки, из которой берутся данные
!DATASOURCE_COLUMNS - определяет количество столбцов во входном источнике данных (т.е. в вашем файле)
{{!COL1}}, {{!COL2}}, {{!COL3}} ... - определяет номер столбца, из которого возьмутся данные

что имеем в итоге, вы, пытались при каждом цикле указать скрипту, что в нем несколько столбцов, номер же строки определяла переменная {{!LOOP}}

09-10-2014 17:54:32
ну и соответственно, дабы не писать лишнего кода, который присутствует у Gergi получаем:

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/3)-1)*3")

URL GOTO={{!COL1}}

CMDLINE !DATASOURCE gruup_url.txt
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_COLUMNS EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/10)-1)*10")
URL GOTO={{!COL1}}

но, это тоже не сработало из за 3 строки

InfSub пишет

!DATASOURCE_COLUMNS и !DATASOURCE_LINE и {{!COL1}}, {{!COL2}} ...

это я знал.

Вместо
SET !DATASOURCE_COLUMNS

надо было
SET !DATASOURCE_LINE

Да, как я не догадался )
Зато ошибку исправили :)

Всегда мне внимательности не хватает.

09-10-2014 18:14:21
Надо было вот так намекнуть

!DATASOURCE_COLUMNS и !DATASOURCE_LINE
разницу замечаешь ?

Алим пишет

Я пробывал и с !DATASOURCE_COLUMNS 1
второго столбца у меня не было в txt
{{!COL1}}

но срипту то вы задали, что используем колонку 1 а потом на каждом цикле изменяли значение:

как работал код
1
!DATASOURCE_COLUMNS 1
!DATASOURCE_COLUMNS 1 (EVAL)
!DATASOURCE_LINE 1 (не была указана, и принимала значения от {{!LOOP}})
2
!DATASOURCE_COLUMNS 1
!DATASOURCE_COLUMNS 2 (EVAL)
!DATASOURCE_LINE 2 (LOOP)
3
!DATASOURCE_COLUMNS 1
!DATASOURCE_COLUMNS 3 (EVAL)
!DATASOURCE_LINE 3 (LOOP)
4
!DATASOURCE_COLUMNS 1
!DATASOURCE_COLUMNS 1 (EVAL)
!DATASOURCE_LINE 4 (LOOP)

...

09-10-2014 18:17:11
!DATASOURCE_COLUMNS 1 - вообще, данный параметр бесполезен при использовании одноколоночных файлов с данными

Теперь всё понятно.
Ну да !DATASOURCE_COLUMNS 1 лишним был. И так по умолчанию первая колонка используется.

Вот вы исправили код.
Берётся постоянно последняя строка, когда макрос до неё доходит.
и обратно не повторяет.

В текстовом файле 4 строки

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !VAR1 5792
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/{{!VAR1}})-1)*{{!VAR1}}")
URL GOTO={{!COL1}}


А вот если указать, вместо SET !VAR1 5792
SET !VAR1 4
то повторяет строки, работает как надо.

Алим пишет

Вот вы исправили код.
Берётся постоянно последняя строка, когда макрос до неё доходит.
и обратно не повторяет.

В текстовом файле 4 строки

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !VAR1 5792
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/{{!VAR1}})-1)*{{!VAR1}}")
URL GOTO={{!COL1}}


А вот если указать, вместо SET !VAR1 5792
SET !VAR1 4
то повторяет строки, работает как надо.

вы суть кода понимаете?
у вас 3 строки, и соответственно, должно быть SET !VAR1 3, а код выше рассчитан на файл с 5792 строками

09-10-2014 19:46:53
давайте не будем задавать глупые вопросы, элементарно не разобравшись в рабочем примере, тем более в ссылке, которую вы приводили ранее и от куда вытащили код, было описание требований, и было указано, что такое 5792 - тыц

Приветствую :)
я пробую свои силы в програмировании ява скрипта, и в одной из строк скрипт должен считывать капчу на сайте фрибиткоин:
macro1 += "TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEPICTUREAS" + "\n";
но когда стартую скрипт, именно в этой строке ошибка, оставляю:
macro1 += "" + "\n";
скрипт работает.  в чем может быть проблема?
За ранее примного благодарен!

lonik101 пишет

Приветствую :)
я пробую свои силы в програмировании ява скрипта, и в одной из строк скрипт должен считывать капчу на сайте фрибиткоин:
macro1 += "TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEPICTUREAS" + "\n";
но когда стартую скрипт, именно в этой строке ошибка, оставляю:
macro1 += "" + "\n";
скрипт работает.  в чем может быть проблема?
За ранее примного благодарен!

кавычки экранировать не пробовал?

Простите, если честно не понял. Что значит экранировать?
я просто уже 16 лет за границей живу. возможно уже кое какие слова и подзабыл

lonik101 пишет

Простите, если честно не понял. Что значит экранировать?

что такое спец-символы знаете?
Что значит экранировать

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=IMG ATTR=SRC:\"https://www.google.com/recaptcha/api/image?c=*\" CONTENT=EVENT:SAVEPICTUREAS" + "\n";

Огромное спасибо :)  все изучу что вы мне прислали

я просто уже 16 лет за границей живу. возможно уже кое какие слова и подзабыл

lonik101 пишет

я просто уже 16 лет за границей живу. возможно уже кое какие слова и подзабыл

bash-scripting.ru пишет

Экранирование символов - это замена управляющих символов на соответствующие текстовые подстановки. Символ экранирования (escape) (\) сообщает командной оболочке, что символ, стоящий за ним, надо воспринимать буквально.

ru.wikipedia.org пишет

Обычно языки программирования, текстовые командные интерфейсы, языки разметок текста (HTML, TeX, wiki-разметка) имеют дело со структурированным текстом, в котором некоторые символы (и их комбинации) используются в качестве управляющих, в том числе управляющих структурой текста. В ситуации, когда необходимо использовать такой символ в качестве «обычного символа языка», применяют экранирование.

ru.wikipedia.org пишет

В языке программирования Си (в JavaScript - аналогично, прим. InfSub), внутри строк экранирование символов осуществляется с помощью символа '\', помещённого перед экранируемым символом. (При этом символ '\' может экранировать себя, то есть для вывода бэкслеша используется комбинация '\\').

Пример экранирования двойных кавычек ("):

alert("\"Медведь\" ... он сказал.")    # "Медведь" ... он сказал.

Помогите довести до ума этот код.
Надо чтобы при нахождений слова срабатывал iimPlay("2.iim",60);

скрытый текст
var n=prompt("Введите количество циклов",22)
for (i=1;i<=n;i++){
var word = ('Введите Искомое слово', 'Всем привет');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("1.iim",60);
} else {
  iimPlay("2.iim",60);
  alert('Этой фразы тут нету!');
   
}
}

Gergi пишет

Помогите довести до ума этот код.
Надо чтобы при нахождений слова срабатывал iimPlay("2.iim",60);

скрытый текст
var n=prompt("Введите количество циклов",22)
for (i=1;i<=n;i++){
var word = ('Введите Искомое слово', 'Всем привет');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("1.iim",60);
} else {
  iimPlay("2.iim",60);
  alert('Этой фразы тут нету!');
   
}
}

был похожий вопрос, посмотрите здесь http://vk.com/wall-51683227_586

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=body ATTR=TXT:"*как сделать чтобы*" extract=txt

врезультате будет либо #EANF# если такого текста нет и "...какой то текс..." если такой текст есть на странице

Это код для поиска информации,а мне надо чтобы после поиска информации сработал iimPlay("2.iim",60);

Gergi
предположу, что проблема в регулярном выражении

Я на все 100% уверен в этом но у меня мозги кипят от этих скриптов и в данный момент  не могу ничего сообразить.

12-10-2014 20:11:38
Вот этот отлично работает
Но срабатывает только на TAG POS=1

скрытый текст
var i=0;
var n=prompt("Введите количество циклов",2)
for (i=1;i<=n;i++){
var q;
for (q=1;q<=1;q++){
iimDisplay("ЦИКЛ- "+i)
iimPlay("4.iim",60);
}
w=iimPlayCode("TAG POS=4 TYPE=P ATTR=*")

if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("5.iim")
       if (w>0){
          break

      } 
   }
  }
}

12-10-2014 20:14:14
Мне надо чтобы срабатывал TAG POS=2

Gergi пишет

Это код для поиска информации,а мне надо чтобы после поиска информации сработал iimPlay("2.iim",60);

ок, я тут на форуме, в своем посте, выше, указал код и как им пользоваться. все как вы и просили, нужно только подставить ваши условия

Gergi пишет

Я на все 100% уверен в этом но у меня мозги кипят от этих скриптов и в данный момент  не могу ничего сообразить.

12-10-2014 20:11:38
Вот этот отлично работает
Но срабатывает только на TAG POS=1

как он может срабатывать на tag pos=1, если у вас в коде tag pos=4
и при чем тут этот код

скрытый текст

Выделить код

Код:

var i=0;
var n=prompt("Введите количество циклов",2)
for (i=1;i<=n;i++){
var q;
for (q=1;q<=1;q++){
iimDisplay("ЦИКЛ- "+i)
iimPlay("4.iim",60);
}
w=iimPlayCode("TAG POS=4 TYPE=P ATTR=*")

if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("5.iim")
       if (w>0){
          break

      }  
   }
  }
}


если вы спрашивали об этом?:
скрытый текст

Выделить код

Код:

var n=prompt("Введите количество циклов",22)
for (i=1;i<=n;i++){
var word = ('Введите Искомое слово', 'Всем привет');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("1.iim",60);
} else {
  iimPlay("2.iim",60);
  alert('Этой фразы тут нету!');
   
}
}

То что там стоит TAG POS=4 это я при своих экспериментах поменял 1 на 4  и ещё раз повторюсь что код работает отлично но не срабатывает TAG POS=2 и именно из-за этого я изобретаю велосипед и он почти готов,надо только при НЕ нахождений слова чтобы сработал iimPlay("2.iim",60);

так отладьте сначала скрипт на чистом имакросе, чтобы срабатывал и pos=2...  и т.д....
в остальном, все зависит от того что и где вы ищите, на мой взгляд ошибка в рег. выражении, писал уже об этом ранее, но я не экстрасенс чтобы угадывать что вы этим выражением пытаетесь заменить

Ну вот запись TAG POS=1 TYPE=P ATTR=TXT:Черная<SP>шапка<SP>из<SP>шерсти<SP>мохер,<SP>уникальная<SP>ш* не важно какой пост записываю всё равно TAG POS=1 выходит TAG POS=2 не записывается

12-10-2014 22:01:29
Поэтому я пытаюсь другой усовершенствовать,мне надо только чтобы сработал iimPlay("2.iim",60);

Gergi пишет

Ну вот запись TAG POS=1 TYPE=P ATTR=TXT:Черная<SP>шапка<SP>из<SP>шерсти<SP>мохер,<SP>уникальная<SP>ш* не важно какой пост записываю всё равно TAG POS=1 выходит TAG POS=2 не записывается

12-10-2014 22:01:29
Поэтому я пытаюсь другой усовершенствовать,мне надо только чтобы сработал iimPlay("2.iim",60);

либо я вас не понимаю, либо, вам стоит перечитать азы имакроса, к примеру, по ссылке, данной osnastya991 или в вики

Ну что тут понимать?

скрытый текст
var n=prompt("Введите количество циклов",22)
for (i=1;i<=n;i++){
var word = ('Введите Искомое слово', 'Всем привет');
var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
ipat=iimGetLastExtract();
ip=ipat.replace(myRegExp,"TutTekstEst");

if (ip == 'TutTekstEst' ) {
iimPlay("1.iim",60);
} else {
  iimPlay("2.iim",60);
  alert('Этой фразы тут нету!');
   
}
}


Надо при НЕ нахождений слова чтобы сработал iimPlay("2.iim",60);

Gergi пишет

Ну что тут понимать?

не понимаю проблемы получить pos=2 из:

Gergi пишет

Ну вот запись TAG POS=1 TYPE=P ATTR=TXT:Черная<SP>шапка<SP>из<SP>шерсти<SP>мохер,<SP>уникальная<SP>ш* не важно какой пост записываю всё равно TAG POS=1 выходит TAG POS=2 не записывается

12-10-2014 23:31:55
во-вторых, мне не понятна логика, с которой составлен скрипт на js
в-третьих, по js - куча форумов и сайтов, где могут ответить на ваши вопросы, не касающиеся вопросов имакроса (а проблема, прямоты рук, при написании js-скрипта, не имеет отношения, к проблемам с имакросом и, соответственно, к данному форуму - ни какого отношения)
в-четвертых, я уже дважды, косвенно указал, где одна из ошибок, даже ни разу не запустив скрипт, повторить в третий раз?

InfSub пишет

проблема в регулярном выражении

могу только добавить, что:

Gergi пишет

errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");

при значении равном TAG POS=1 - всегда,будет проверять один и тот же кусок текста на наличие/отсутствие в нем искомой фразы

мне это и нужно

13-10-2014 00:52:37
errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT"); в этом коде срабатывает и TAG POS=1 и TAG POS=2 TAG POS=3 мне только нужно что бы запускался 2.iim

Gergi пишет

мне это и нужно

13-10-2014 00:52:37
errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT"); в этом коде срабатывает и TAG POS=1 и TAG POS=2 TAG POS=3 мне только нужно что бы запускался 2.iim

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

я не вижу ошибку из-за того что не соображаю в js

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

13-10-2014 02:13:09

Gergi пишет

я не вижу ошибку из-за того что не соображаю в js

что мешает задать вопрос на соответствующем форуме?

Дело в том что из-за такой мелочи нет желания регистрироваться на других форумах. Я убеждён что и сам решу этот вопрос,но так как мозг запаренный пока не могу сообразить ошибку.

13-10-2014 02:21:51
а причём тут RegExp?

offtop
var n=prompt("Введите количество циклов",22)
for (i=1;i<=n;i++){
    var word = ('Введите Искомое слово', 'Всем привет');
    // var word = ('...', '...') - что это за бред? бывший prompt()? зачем он в цикле?
    // word - хоть и принимает правильное значение и ...
    // такой код - работать будет, но это быдлокодинг

    var myRegExp = new RegExp('[\\s\\S]*' + word + '[\\s\\S]*', 'gi');
    // где вы видели, чтобы предложение начиналось с пробела и между словами пробел отсутствовал?

    errCode=iimPlay("CODE:FRAME F=0\nTAG POS=1 TYPE=DIV ATTR=ID:* EXTRACT=TXT");
    // что такое iimPlayCode(), судя по всему, тоже не знаем?
    // ...зачем тут errCode, если вы его не проверяете?

    ipat=iimGetLastExtract();
    ip=ipat.replace(myRegExp,"TutTekstEst");

    if (ip == 'TutTekstEst' ) {
    // замена по рег. выр., чтобы потом сравнить на совпадение? О_о
    // для проверки рег выражения - есть специальные методы...
    // работать будет, но это быдлокодинг

        iimPlay("1.iim",60);
    } else {
        iimPlay("2.iim",60);
        alert('Этой фразы тут нету!');
    }
}


причина редактирования - улучшение читаемости кода

Вы придрались к тому чему я помощи не просил и не прошу. Там всё прекрасно работает,и код я знаю где и что исправить,у меня только не получается воспроизвести iimPlay("2.iim",60); Все остальные ошибки в коде я исправлю.

я не придрался, а указал на ошибки, если вы считаете, что у вас там все прекрасно... флаг вам в руки

13-10-2014 02:38:28
тогда не вижу смысла вообще всей этой дискуссии, удачи на форумах по js

Спасибо! Вы как всегда очень любезный:angry:

Gergi пишет

Спасибо! Вы как всегда очень любезный:angry:

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

я ради интереса взял и исправил всё до мелочей то что вы указали! НО увы...всё  тоже самое,что исправлял что ни исправлял

Gergi пишет

я ради интереса взял и исправил всё до мелочей то что вы указали! НО увы...всё  тоже самое,что исправлял что ни исправлял

экстрасенс в отпуске, так что - то, что вы исправили и как исправили, судить не берусь, но видимо не достаточно правильно

Ответьте пожалуйста на один очень элементарный вопрос!
Как скрипт может понять какой ему iim запускать?
этот iimPlay("2.iim",60); или это iimPlay("1.iim",60);

Gergi пишет

Ответьте пожалуйста на один очень элементарный вопрос!
Как скрипт может понять какой ему iim запускать?
этот iimPlay("2.iim",60); или это iimPlay("1.iim",60);

Gergi, вы издеваетесь? в вашем скрипте, как бы он ни был написан, проблемы с выбором файла запуска (1 или 2) нет, проблема в описанных мной ошибках, точнее в одной из них

Здравствуйте подскажите как заставить imacros чтоб находил на буксах цветные активные ссылки и кликал по ним как например на сайте wad.ojooo.com

prokin81 пишет

Здравствуйте подскажите как заставить imacros чтоб находил на буксах цветные активные ссылки и кликал по ним как например на сайте wad.ojooo.com

можно кликать по:
-стилю
-идентификатору
-адресу
-прочие элементы

пожалуйста, выбирайте то что вам больше нравится

Gergi, специально для Вас, отредактировал пост для лучшей читаемости, если вам и так не будет понятно...

а пример команды можно как правильно записывать

prokin81 пишет

а пример команды можно как правильно записывать

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=ID:id_нужной_вам_ссылки

TAG POS=1 TYPE=A ATTR=ID:id_нужной_вам_ссылки
СПАСИБО КОМАНДА ПОНЯТНА ВОТ МНЕ НАДО ЧТОБ ПО ЦВЕТУ НАЖИМАЛ ГДЕ МНЕ ID БРАТЬ ИСЛЕДОВАТЬ ЭЛЕМЕНТ Я СМОТРЕЛ А ВОТ ЧТО ТАМ БРАТЬ НЕ ПОНЯЛ ИЗВИНИТЕ ЕСЛИ ДОБИВАЮ СВОИМ НЕЗНАНИЕМ

prokin81 пишет

TAG POS=1 TYPE=A ATTR=ID:id_нужной_вам_ссылкиСПАСИБО КОМАНДА ПОНЯТНА ВОТ МНЕ НАДО ЧТОБ ПО ЦВЕТУ НАЖИМАЛ ГДЕ МНЕ ID БРАТЬ ИСЛЕДОВАТЬ ЭЛЕМЕНТ Я СМОТРЕЛ А ВОТ ЧТО ТАМ БРАТЬ НЕ ПОНЯЛ ИЗВИНИТЕ ЕСЛИ ДОБИВАЮ СВОИМ НЕЗНАНИЕМ

Там есть либо id="идентификатор" либо class="класс" вот их и нужно брать. только для команды что вам дали выше подойдет только id

<div id="da1a" class="adname">

    <div class="bold">
        <a target="_self" href="cks.php?c=d&k=D4EC4CD36C4ECE413E7907BAF70BE042d41d8cd98f00b204e9800998ecf8427e&cdk=false">

            New!! Ojooo Share
ВОТ ПРИМЕР ОДНОЙ ИСЛЕДОВАННОЙ ССЫЛКИ ЧТО В НЕЙ МНЕ БРАТЬ И НУЖНЫ ЛИ КОВЫЧКИ

offtop
капс отключите, вы не на базаре

html и другой код, убираем в теги "код" и в "спойлер"

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:cks.php*

13-10-2014 17:24:24

osnastya991 пишет

для команды что вам дали выше подойдет только id

попросили пример - я дал пример
как правильно писать код на имакросе разбиралось не раз, к тому же есть вики и гугл

Спасибо большое всем кто отозвался

Еще вопрос назрел что дабавить в команду чтоб кликал только по розовым активным ссылкам которые я еще не просматривал

13-10-2014 18:04:17
А куда добавит атрибут чтоб розовые ссылки открывал которые я не смотрел еще

prokin81 пишет

Еще вопрос назрел что дабавить в команду чтоб кликал только по розовым активным ссылкам которые я еще не просматривал

цвет ссылок (просмотренная/нет) определяет браузер, вы можете задать порядковый номер ссылки заменив в POS=1, единицу на {{!LOOP}} и запустить имакрос в цикле - т.е.
TAG POS={{!LOOP}} TYPE=A .....

ПОДСКАЖИТЕ ЕЩЕ КУДА ДОБАВИТЬ АТРИБУТ В КОМАНДУ ЧТО ЭТО РОЗОВАЯ ССЫЛКА КОТОРУЮ Я НЕ СМОТРЕЛ

13-10-2014 18:08:24
СПАСИБО БОЛЬШОЕ

1 замечание за капслок

prokin81, ты кажется не понял про капс лок?

правила поведения на форуме:
2.  Не рекомендуется:
2.4  Злоупотреблять написанием сообщений и тем ЗАГЛАВНЫМИ или заглавными и прописными буквами вперемешку («вОт ТаКиМ оБрАзОм»), излишне выделять текст в целях привлечения внимания полужирным шрифтом, курсивом, подчёркиванием, отличным от стандартного для сообщений форума цветом, шрифтом, размером шрифта.

Виноват исправлюсь

13-10-2014 18:22:05
А какая команда чтоб по цвету ссылки кликал {{!LOOP}} не помогает

Если вы мастерите скрипт для Ojooo то не советую это делать! У меня есть парочка готовых скриптов,я ими пользовался и меня там забанили и 850$ на счету было.

prokin81 пишет

какая команда чтоб по цвету ссылки кликал {{!LOOP}} не помогает

Вам уже несколько раз писали что такое невозможно!! {{!LOOP}} - это перебор чисел 1, 2, 3,...

Gergi пишет

Если вы мастерите скрипт для Ojooo то не советую это делать! У меня есть парочка готовых скриптов,я ими пользовался и меня там забанили и 850$ на счету было.

понятно спасибо я так решил попробовать а ка у вас можно скрипты попросить

InfSub пишет

Gergi, специально для Вас, отредактировал пост для лучшей читаемости, если вам и так не будет понятно...

Спасибо! Вы как всегда очень любезный! Я посмотрел отредактированный пост,и сложилось впечатление что вы проэметировали редактирование.

13-10-2014 18:41:51

prokin81 пишет
Gergi пишет

Если вы мастерите скрипт для Ojooo то не советую это делать! У меня есть парочка готовых скриптов,я ими пользовался и меня там забанили и 850$ на счету было.

понятно спасибо я так решил попробовать а ка у вас можно скрипты попросить

Для чего вам он нужен? Меня забанили,и друзей моих которые пользовались скриптом тоже забанили! Если он вам нужен для продажи то я вам не дам его только из-за тех соображений что пострадают не винные люди! Так что закройте эту тему со скриптом для Ojooo

да продавать мне неинтересно просто интересен принцип реализации как он сделан нет так нет выпрашивать небуду

13-10-2014 18:58:47
Подскажите команды про то что мне писали или где ознакомится с ними
можно кликать по:
-стилю
-идентификатору
-адресу
-прочие элементы

пожалуйста, выбирайте то что вам больше нравится

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:***

TAG POS=1 TYPE=DIV ATTR=ID:***

TAG POS=1 TYPE=DIV ATTR=HREF:***
Gergi пишет
InfSub пишет

Gergi, специально для Вас, отредактировал пост для лучшей читаемости, если вам и так не будет понятно...

Спасибо! Вы как всегда очень любезный! Я посмотрел отредактированный пост,и сложилось впечатление что вы проэметировали редактирование.

под редактированием подразумевался перенос текста, т.к. до этого он вылазил за границы экрана, без переноса на новую строку, что мешало его полноценному прочтению без каких-либо манипуляций

Если Вы уперлись рогом и не хотите прислушаться к тому, что там написано - это Ваши проблемы, если Вы прислушались, но сделали не правильные выводы и коррекцию скрипта, это опять же Ваши проблемы, я Вам уже написал, я не экстрасенс, и что вы намудрили там со своим скриптом, не видя его, я угадать не могу, элементарное исправление того, что я пометил, у меня еще вчера привело к корректной работе вашего скрипта!

Дальнейшие препирательства, считаю бессмысленными, читаем правила, там черным по белому написано, что требуется прикладывать к сообщению, для того, чтобы оно не было голословным и не считалось флудом!

13-10-2014 19:49:15
prokin81, уже давал ссылки где и что почитать, несколькими постами выше, отключаем лень, есть так же поиск по форуму.. изучаем

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

Vanokk пишет

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

Если вам не помогут в этом вопросе,пролистайте форум,этот вопрос уже обсуждался и есть работающий пример. А насчёт !VAR это тоже обсуждалось,но я делаю
ТАК

скрытый текст
SET RG8 EVAL("var random=Math.floor(Math.random()*3 + 2); random;")
WAIT SECONDS={{RG8}}

И всё работает

Gergi пишет
Vanokk пишет

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

Если вам не помогут в этом вопросе,пролистайте форум,этот вопрос уже обсуждался и есть работающий пример. А насчёт !VAR это тоже обсуждалось,но я делаю
ТАК

скрытый текст
SET RG8 EVAL("var random=Math.floor(Math.random()*3 + 2); random;")
WAIT SECONDS={{RG8}}

И всё работает

извините дуб дубом. это что бы разные !VAR1 подставлялись?

Vanokk пишет

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


причина правки: опечатка в коде

Выделить код

Код:

SET !VAR6 EVAL("var arr=['Привет','Привет как дела','Привет ты как?'],r='';r=arr['{{!LOOP}}'-1]")
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}
Vanokk пишет
Gergi пишет
Vanokk пишет

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

Если вам не помогут в этом вопросе,пролистайте форум,этот вопрос уже обсуждался и есть работающий пример. А насчёт !VAR это тоже обсуждалось,но я делаю
ТАК

скрытый текст
SET RG8 EVAL("var random=Math.floor(Math.random()*3 + 2); random;")
WAIT SECONDS={{RG8}}

И всё работает

извините дуб дубом. это что бы разные !VAR1 подставлялись?

Вместо !VAR ставим это выделенное жирным шрифтом
SET RG8 EVAL("var random=Math.floor(Math.random()*3 + 2); random;")
WAIT SECONDS={{RG8}}

InfSub пишет
Vanokk пишет

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

СПАСИБО!

Выделить код

Код:

SET !VAR6 EVAL("var arr=['Привет','Привет как дела','Привет ты как?'],r='';r=arr['{{LOOP}}'-1]")
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

osnastya991]
TAG POS=1 TYPE=DIV ATTR=CLASS:***

TAG POS=1 TYPE=DIV ATTR=ID:***

TAG POS=1 TYPE=DIV ATTR=HREF:***

Спасибо

Что то не работает, пустой текст вставляет! ((((

InfSub пишет
Vanokk пишет

Помогите, в imacros нуб, пытаюсь написать что то. Суть такова. Есть
!VAR1 "Привет"
!VAR2 "Привет как дела"
!VAR3 "Привет ты как?"

и отображаются они тут
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}

Вопрос как прописать что бы !VAR1,!VAR2,!VAR3 выводились по очереди в CONTENT={{!VAR6}}

и да можно как то сделать что бы было больше !VAR. А то мне от !VAR0-!VAR9 не хватает))))

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


причина правки: опечатка в коде

Выделить код

Код:

SET !VAR6 EVAL("var arr=['Привет','Привет как дела','Привет ты как?'],r='';r=arr['{{!LOOP}}'-1]")
TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg CONTENT={{!VAR6}}
Vanokk пишет

Что то не работает, пустой текст вставляет! ((((

там опечатка, уже исправлено, написал же выше:
причина правки: опечатка в коде

:D СПС

InfSub пишет
Vanokk пишет

Что то не работает, пустой текст вставляет! ((((

там опечатка, уже исправлено, написал же выше:
причина правки: опечатка в коде

13-10-2014 20:45:53
InfSub, выручил очень спасибо!

Vanokk пишет

13-10-2014 20:45:53
InfSub, выручил очень спасибо!

не за что

Здравствуйте уважаемый InfSub!!! Вы уже не однокранто выручали меня вашими советами, и вот снова нуждаюсь в вашей помощи.
Мой скрипт должен вводить несколько капчей по очереди в о чень короткое время, но в буфаре обмена все капчи собираются одна за одной.
Вот пример как это выглядит:  http://floomby.ru/s1/teNCMy
Я уверен что есть команда чистки буффера обмена, но прочесав гугл я таковой не нашел.
Подскажите пожалуйста что мне прописать перед командой копирования новой капчи, чтоб буффер обмена был пуст и вставлял только одну капчу.
Спасибо за ранее!!!

lonik101 пишет

Здравствуйте уважаемый InfSub!!! Вы уже не однокранто выручали меня вашими советами, и вот снова нуждаюсь в вашей помощи.
Мой скрипт должен вводить несколько капчей по очереди в о чень короткое время, но в буфаре обмена все капчи собираются одна за одной.
Вот пример как это выглядит:  http://floomby.ru/s1/teNCMy
Я уверен что есть команда чистки буффера обмена, но прочесав гугл я таковой не нашел.
Подскажите пожалуйста что мне прописать перед командой копирования новой капчи, чтоб буффер обмена был пуст и вставлял только одну капчу.
Спасибо за ранее!!!

' получение капчи
TAG POS.... EXTRACT=TXT
' вставка капчи
... {{!EXTRAСT}}
' очистка extract'a
SET !EXTRACT NULL

Я сделал для  каждой капчи отдельную папку. И всё замечательно работает и не конфликтуют капчи.

Gergi пишет

Я сделал для  каждой капчи отдельную папку. И всё замечательно работает и не конфликтуют капчи.

а не проще капче присвоить рандомное число от 100000 до 999999

Офигеть, у меня слов нет. Огромное спасибо InfSub, во первых за быстроту ответа, во вторых за краткось но 100% понятливость.
Что еще хотелось бы узнать но это уже скорее на заказ, можно ли прписать команду или продолжение скрипта, на случай если капча была разгаданна не верно, чтоб цикл повторился заново, что час не был в пустую?
Спасибо.

lonik101 пишет

Офигеть, у меня слов нет. Огромное спасибо InfSub, во первых за быстроту ответа, во вторых за краткось но 100% понятливость.
Что еще хотелось бы узнать но это уже скорее на заказ, можно ли прписать команду или продолжение скрипта, на случай если капча была разгаданна не верно, чтоб цикл повторился заново, что час не был в пустую?
Спасибо.

да, такое возможно, с помощью js, но в двух словах не вижу смысла тут это описывать
если хотите написать сами, на форуме - были примеры работы условного оператора IF, с помощью которого - это можно реализовать, имеющие приблизительно вот такой вид:

if (какое-то условие) {
    действие при соблюдении условия...;
} else {

    действие, при не соблюдении условия...;
};

15-10-2014 02:21:39

osnastya991 пишет

а не проще капче присвоить рандомное число от 100000 до 999999

рандомное число, периодически будет повторяться, и соответственно переписывать ранее сохраненный файл.. не проще ли дать имя файлу с меткой времени, это исключит возможность случайной перезаписи...
да и миллион файлов на компе... зачем..

Gergi пишет

Я сделал для  каждой капчи отдельную папку. И всё замечательно работает и не конфликтуют капчи.

У меня чаще всего используется для каждого скрипта отдельная мазила с отдельной папкой "ДАТАСЕРС", а в отдельном файле txt(назвал его AdressWork.txt - хотя надо было назвать его options-так бы я думаю правильнее было бы и понятнее ) вписаны опции общих папок - короче в скрипте я прописал чтоб капчу\картинку макрос скачал разгадал и потом сразу удалил картинку - ну, а у кого есть общая папка для капчи\картинки , то к этой капче можно индивидуальный рандомный номер приписывать.......

Короче вариантов достаточно для решения проблемы.....где какой нравится там такой и использую....вообще дело сугубо личное и ограничивается в полёте фантазии и знания языка(ов) программирования

kolshix пишет

Короче вариантов достаточно для решения проблемы.....где какой нравится там такой и использую....вообще дело сугубо личное и ограничивается в полёте фантазии и знания языка(ов) программирования

полностью согласен, все делается под определенные нужны и требования и как это реализовать - зависит только от знаний и пожеланий

lonik101 пишет

если капча была разгаданна не верно, чтоб цикл повторился заново

Ну к примеру для Одноклассников у меня в конце скрипта стоит вот такой код,в случае если капча была не правильно разгадана он повторяет скрипт пока не исчезнет капча.

скрытый текст
SET !ERRORIGNORE NO
'команда ниже определяет появилась ли капча в случае неправильной разгадки
TAG POS=1 TYPE=IMG ATTR=ID:captcha

lonik101 пишет

offtop
Здравствуйте еще раз InfSub. я послал вам сообщение в личку. Хотел узнать получали вы его или нет, так как у меня в отправленных оно нигде не отображается.

ответил в ЛС, просьба удалить данное сообщение с форума

15-10-2014 21:38:29
письмо в ЛС или на Mail - не уходит, если не добавлена тема

делаю так

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:http://e.mail.ru/cgi-bin/sentmsg?To={{!EXTRACT}}* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=C:\сбор FILE=сбор_url.txt


но сохраняется вся ссылка в txt документ

А как сохранить часть ссылки ?

Алим пишет

но сохраняется вся ссылка в txt документ
А как сохранить часть ссылки ?

конкретней

Алим пишет

делаю так
но сохраняется вся ссылка в txt документ
А как сохранить часть ссылки ?

в eval сделать посимвольный перебор ссылки, все что не надо убрать, оставшееся перезаписать в extract, сохранить то что надо.

думаю вашу проблему можно решить так

скрытый текст

Выделить код

Код:

SET PER {{!EXTRACT}}
SET !EXTRACT NULL
TAG POS=1 TYPE=A ATTR=HREF:http://e.mail.ru/cgi-bin/sentmsg?To={{PER}}* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=C:\сбор FILE=сбор_url.txt

osnastya991 пишет
Алим пишет

делаю так
но сохраняется вся ссылка в txt документ
А как сохранить часть ссылки ?

в eval сделать посимвольный перебор ссылки, все что не надо убрать, оставшееся перезаписать в extract, сохранить то что надо.

посимвольный перебор ссылки? ))) зачем? не проще ли regexp'ом оставить только нужную часть?

16-10-2014 01:30:19
по сути, я пока что вообще не понимаю, что тут собираются извлекать (какую часть ссылки), при условии, что ссылка до To= не изменяема, а остальное и так вставляется из экстракта

по тому как у него записано, то в extract будет не только копируемая ссылка, extract будет хранить и идентификатор, использующийся для нахождения элемента, как исправить это я дал выше

osnastya991 пишет

по тому как у него записано, то в extract будет не только копируемая ссылка, extract будет хранить и идентификатор, использующийся для нахождения элемента, как исправить это я дал выше

посимвольным перебором строки? простите, повторюсь, зачем?)))

InfSub пишет
osnastya991 пишет

по тому как у него записано, то в extract будет не только копируемая ссылка, extract будет хранить и идентификатор, использующийся для нахождения элемента, как исправить это я дал выше

посимвольным перебором строки? простите, повторюсь, зачем?)))

Затем что человек не знает другие варианты

Gergi пишет
InfSub пишет
osnastya991 пишет

по тому как у него записано, то в extract будет не только копируемая ссылка, extract будет хранить и идентификатор, использующийся для нахождения элемента, как исправить это я дал выше

посимвольным перебором строки? простите, повторюсь, зачем?)))

Затем что человек не знает другие варианты

о, кто влез, а вы представляете, что такое посимвольная обработка строк, Gergi? опишите ка в 2 словах...

ну уж извините, чем богаты тем и рады, особенностей js я не знаю, поэтому выкручиваюсь основываясь на школьном программировании

там имелось ввиду

скрытый текст

Выделить код

Код:

SET PER {{!EXTRACT}}
SET !EXTRACT NULL
TAG POS=1 TYPE=A ATTR=HREF:http://e.mail.ru/cgi-bin/sentmsg?To={{PER}}* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=C:\сбор FILE=сбор_url.txt

InfSub пишет
Gergi пишет
InfSub пишет

посимвольным перебором строки? простите, повторюсь, зачем?)))

Затем что человек не знает другие варианты

о, кто влез, а вы представляете, что такое посимвольная обработка строк, Gergi? опишите ка в 2 словах...

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

osnastya991 пишет

ну уж извините, чем богаты тем и рады, особенностей js я не знаю, поэтому выкручиваюсь основываясь на школьном программировании

там имелось ввиду

скрытый текст

Выделить код

Код:

SET PER {{!EXTRACT}}
SET !EXTRACT NULL
TAG POS=1 TYPE=A ATTR=HREF:http://e.mail.ru/cgi-bin/sentmsg?To={{PER}}* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=C:\сбор FILE=сбор_url.txt

и что это? ну очистили вы один из элементов extract'a, получили чистую ссылку, речь - по-моему шла не об этом.. если, конечно, Алим, верно выразил свою мысль..

и где тут посимвольный перебор?

16-10-2014 01:48:46
Gergi, вы меня извините, но 90% ваших постов - изобретение велосипеда, и проблема ни в не знании, а в не умении/не желании, понять, что написано или что вам отвечено, даже в тех ситуациях. когда, вас уже практически носом тычут в вашу же ошибку...

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

osnastya991, ни чего не имею против школьной программы, но простите, сформулируйте - что такое посимвольный перебор своими словами, раз уж вы выразились данным термином

16-10-2014 01:52:20

osnastya991 пишет

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

ок, вполне возможно это и имелось ввиду, Алим пока что не сформулировал вопрос более корректно

для js

Выделить код

Код:

extract=iimGetLastExtract();
var str = "";
for (var i=0; i<=extract.length; i++) {
   if (extract.charAt(i)!=" ") {str += extract.charAt(i);}
}
osnastya991 пишет

для js

Выделить код

Код:

extract=iimGetLastExtract();
for (var i=0; i<=extract.length; i++) {
   if (extract.charAt(i)==" ") {}
}

отлично, ваш код найдет все пробелы, и что с этим делать?

16-10-2014 02:05:40
простите, но в данной ситуации это очередной велосипед, с кучей if(..){..}else{..} и так далее по нарастающей, или как там вы собираетесь посимвольно выдирать кусок строки...

16-10-2014 02:09:08
ладно, все это флейм... я к чему все это веду... если вы даете совет, будьте для начала уверены, что данный совет имеет право на существование, что это не "костыль", который изобрели вы, не зная более правильных и грамотных решений... как говорится - гугл, еще ни кто не отменял!

16-10-2014 02:12:24
osnastya991
просто для примера, у вас электронная книга, на 200 страниц, к примеру, по 1000 символов на каждой, сколько времени вы потратите вашим методом для нахождения слова, находящегося хотя бы на 10 странице книги?

Математику никто не отменял! Максимум полторы минуты потратит.

Gergi пишет

Математику никто не отменял! Максимум полторы минуты потратит.

допустим, хотя я сильно сомневаюсь, что при переборе каждого символа 1000*10=10000 циклов пройдут за пол минуты, не говоря о других операциях которые будут присутствовать в данном цикле, а именно сравнение символа с искомым, если совпадает запоминание и проверка следующего символа, совпадает ли... так что данный метод, как минимум сложен в реализации и слишком затратен по времени

16-10-2014 02:25:02
к тому же, даже если взять за константу, пол минуты на 10 страниц, сколько времени будет потрачено на поиск по всей книге? 200стр./10стр*30сек=600сек или 10минут
когда, тем же рег выражением можно пройтись по всей книге, от силы за пол минуты (при том это цифра скорее сильно завышена, не проверял)... есть разница?

Этот метод безусловно затратный,но человек пользуется методом который ему доступен. Если вы знаете более оригинальный метод то подскажите же,не стесняйтесь.

Gergi пишет

Этот метод безусловно затратный,но человек пользуется методом который ему доступен. Если вы знаете более оригинальный метод то подскажите же,не стесняйтесь.

один метод не решает всех проблем, в каждой конкретной ситуации стоит применять наиболее подходящий, по этому не стесняйтесь гуглить, писал об этом не единожды!

16-10-2014 02:28:31

Gergi пишет

человек пользуется методом который ему доступен

ни кто не спорит, если удобно забивать гвозди микроскопом, да ради бога, но только не надо открывать магазин по продаже микроскопов для забивания гвоздей!

16-10-2014 02:30:24
если вы уверены, что данный метод оптимален, пожалуйста - советуйте, а иначе, лучше промолчать, чем кидаться "умными терминологиями" не в тему

InfSub пишет

если вы уверены, что данный метод оптимален, пожалуйста - советуйте, а иначе, лучше промолчать, чем кидаться "умными терминологиями" не в тему

Я уже отвечал и повторюсь что вы самый толковый по макросам,но увы не всегда любезно помогаете.

Gergi пишет
InfSub пишет

если вы уверены, что данный метод оптимален, пожалуйста - советуйте, а иначе, лучше промолчать, чем кидаться "умными терминологиями" не в тему

Я уже отвечал и повторюсь что вы самый толковый по макросам,но увы не всегда любезно помогаете.

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

16-10-2014 03:12:19
у меня нет желание, повторять одно и тоже по 100 раз, а если вы лезете в дебри, пытаетесь разобраться, с теми же, регулярными выражениями, то не нужно пинать меня, за то, что я вам не ответил, данная тема, по сути не имеет к этому форуму ни какого отношения, по js вообще и по использованию рег. выражений в частности, есть куча материала в сети. Тем более, где конкретно ошибка вам было указано и вы же сами не смогли ее исправить, то что вы на исправляли, видели только вы, и при этом вы хотите получить ответ, что же не так... уже много раз говорил, экстрасенсов тут нет, хотите ответ, давайте информацию в полном объеме

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:http://e.mail.ru/cgi-bin/sentmsg?To={{!EXTRACT}}* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=C:\сбор FILE=сбор_url.txt


Пишу подробнее:

Извлечь хочу эмайл адрес и сохранить в текстовый файл.

Ссылка находится на странице майл ру на сервисе ответ майл
Рядом с вопросами, есть фото людей, при наведении курсора появляется меню,
в меню есть значок в виде конвертика.

Вот от этого значка и берётся это ссылка.

Так а в чем проблема то, вы хотя бы для примера пришлите что сохраняется в файл.

osnastya991 пишет

Так а в чем проблема то, вы хотя бы для примера пришлите что сохраняется в файл.

Выделить код

Код:

"http://e.mail.ru/cgi-bin/sentmsg?To=ivan@mail.ru&from=otvet"

я бы сделал так, возможно вам подскажут более правильный вариант

скрытый текст

Выделить код

Код:

extract=iimGetLastExtract();
var str = "";
for (var i=36; i<=extract.length; i++) {
   if (extract.charAt(i)=="&") { 
      break;
   }
   str += extract.charAt(i);
}
alert(str);

в str хранится e-mail

Алим пишет
osnastya991 пишет

Так а в чем проблема то, вы хотя бы для примера пришлите что сохраняется в файл.

Выделить код

Код:

"http://e.mail.ru/cgi-bin/sentmsg?To=ivan@mail.ru&from=otvet"

более правильный вариант =)
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/&(.*)/,'').replace(/(.*)=/,'')")

Правильный вариант, работает )))
Только вот не от первого пользователя сохраняет эмал.
Даже не нашёл от куда он начинает.

Но там есть ещё один вариант, от куда можно эмайл взять.
Когда наводишь мышку на ссылки: "Мир", "Фото", "Видео"
высвечивается эмайл, только без собачки майл ру

Попробую от туда извлечь, но вот как вначале сделать,
приписку к @mail.ru

Алим пишет

Правильный вариант, работает )))
Только вот не от первого пользователя сохраняет эмал.
Даже не нашёл от куда он начинает.

Но там есть ещё один вариант, от куда можно эмайл взять.
Когда наводишь мышку на ссылки: "Мир", "Фото", "Видео"
высвечивается эмайл, только без собачки майл ру

Попробую от туда извлечь, но вот как вначале сделать,
приписку к @mail.ru

вы дали ссылку:

Выделить код

Код:

"http://e.mail.ru/cgi-bin/sentmsg?To=ivan@mail.ru&from=otvet"

под эту ссылку и сделан код, какие претензии?

InfSub пишет

под эту ссылку и сделан код, какие претензии?

претензий нет

Я вот только не понял
как это строка

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=1 TYPE=A ATTR=HREF:http://e.mail.ru/cgi-bin/sentmsg?To=*&from=otvet EXTRACT=HREF
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/&(.*)/,'').replace(/(.*)=/,'')")
SAVEAS TYPE=EXTRACT FOLDER=C:\сбор_id FILE=сбор_id.txt


определила, что нужно извлечь именно эмайл адрес ?

Или он извлекает то, что скрывает * ?

Алим пишет
InfSub пишет

под эту ссылку и сделан код, какие претензии?

претензий нет

ну а в чем тогда вопрос, не понял, что у вас не получается...

offtop mail.ru
(проверить не могу... у мейла программисты криворукие.. восстанавливал пароль, т.к. не пользовался сервисом несколько лет, ввел новый, пароль проверку не прошел, хотя, судя по перечисленным в правилах параметрам, все используемые мной символы в пароле - разрешены... в общем какой-то из них удалил.. пароль применился, но какой..., повторное восстановление через 12 часов ...)

InfSub пишет

ну а в чем тогда вопрос, не понял, что у вас не получается...

по идеи стоит
SET !ERRORIGNORE YES
TAG POS=1 ...

должен был начинать с первого пользователя, а начинает извлекать эмайл адрес не понятно
с какого пользователя. Проверил первых 10 пользователей, не совпадает с
первым извлечённым и сохранённый эмайлом.

Алим пишет
InfSub пишет

ну а в чем тогда вопрос, не понял, что у вас не получается...

по идеи стоит
SET !ERRORIGNORE YES
TAG POS=1 ...

должен был начинать с первого пользователя, а начинает извлекать эмайл адрес не понятно
с какого пользователя. Проверил первых 10 пользователей, не совпадает с
первым извлечённым и сохранённый эмайлом.

ну, как уже написал выше, сейчас нет возможности протестить ваш extract.. только завтра..

1. если не ошибаюсь то это пишется друг за другом

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=freebitcoin.jpg
TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

2. зачем работаете через панель, антигейт специальна для макроса дал такой сервис: http://antigate.com/imacros.html

ws1985, правила не читаем? уберите ваш код в спойлер!

17-10-2014 00:31:21

ws1985 пишет

Я к сожалению не сооброжаю в этом и не знаю как его туда вставить (http://antigate.com/imacros.html)

а почитать и скачать в разделе "Примеры и библиотеки" разве так сложно?

17-10-2014 00:32:39

ws1985 пишет

Кстати на mozille все работало,но так как несколько окон(так как они друг другу мешают) в оконцовке весь браузер зависает

используйте несколько профилей в мозилле (поиск по форуму и гугл - в помощь)

ws1985 пишет

Матерится на 20 строку,но может и в целом что ни так..

ws1985 пишет

Ой я туплю,не на тот скрипт посмотрел

может и пример привели не тот? у меня ни каких проблем с 20 строкой не возникает

17-10-2014 00:41:34

ws1985 пишет

Огромнейшее Спасибо За помощь! :-((

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

для несколько профилей, использую дополнение Multifox для мозилы

Алим, способов решения - много, каждый выбирает удобный ему. Поэтому - не вижу смысла их перечислять, т.к. есть встроенные в мозиллу средства для работы с профилями, есть приложения и еще несколько иных вариантов... И, на данном форуме, не в этой ветке, а именно на форуме forum.mozilla-russia.org, все они, уже не единожды обсуждались.

InfSub я об Multifox именно с этого форума и узнал.
Ну как ты, посмотришь в чём дела в ответ майл?
Почему не начинает с первого пользователя сохранять эмайл?

Алим пишет

InfSub я об Multifox именно с этого форума и узнал.
Ну как ты, посмотришь в чём дела в ответ майл?
Почему не начинает с первого пользователя сохранять эмайл?

да, посмотрю
в течении часа постараюсь дать ответ, сейчас туго со временем

Алим пишет

Правильный вариант, работает )))
Только вот не от первого пользователя сохраняет эмал.
Даже не нашёл от куда он начинает.

либо я не там пытаюсь запустить ваш скрипт, но {{!EXTRACT}} == #EANF#, если предварительно не навести мышку на аватар отвечавшего, после чего появляется окно:

окно
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


тогда EXTRACT=HREF - работает и работает так как должен, берет адреса почты у всех ответивших, скорее всего данные подгружаются динамически, в связи с чем и связана ошибка
тестил тут
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


пробуйте извлечь URL из тега A самой авы, там есть e-mail

InfSub пишет

пробуйте извлечь URL из тега A самой авы, там есть e-mail

хорошо, попробую, спасибо.

Алим пишет
InfSub пишет

пробуйте извлечь URL из тега A самой авы, там есть e-mail

хорошо, попробую, спасибо.

не верно выразился, не из URL, а из параметров тега A

17-10-2014 18:51:05
способ извлечения - почти аналогичен, по сути ваш код нужно только чуть изменить и чуть-чуть исправить данный мной код

скрытый текст

Выделить код

Код:

for (i=1;i<=50;i++){
iimPlay("макросы/end.iim",60);
}


Как одним нажатием кнопки "Стоп" остановить скрипт,
который воспроизводит макрос, большое кол-ва циклов ?

Чтобы 50 раз не нажимать "Стоп"

Алим пишет

скрытый текст

Выделить код

Код:

for (i=1;i<=50;i++){
iimPlay("макросы/end.iim",60);
}


Как одним нажатием кнопки "Стоп" остановить скрипт,
который воспроизводит макрос, большое кол-ва циклов ?

Чтобы 50 раз не нажимать "Стоп"

закрыть браузер =) на эту тему, что-то писал kolshix некоторое время назад, поищи

InfSub пишет

закрыть браузер =)

Рубильник в подъезде выключить и включить :D

Алим пишет
InfSub пишет

закрыть браузер =)

Рубильник в подъезде выключить и включить :D

Заставить выдать скрипт ошибку! На некоторое время либо переместить либо переименовать файл "end.iim"

Кстати я даже не знаю почему у тебя не останавливается весь сценарий, у меня сразу стопорится. У меня не останавливался такого рода сценарий

Сценарий когда js запускает js через команду iim
for (i=1;i<=50;i++){
iimPlayCode("URL GOTO=imacros://run/?m=#Current.js")
}



Или уговорить программистов создать кнопку "Супер стоп"\ РУБИЛЬНИК !

Ребята есть к примеру вот такой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://site.org.ua/ID94506
EVENT TYPE=CLICK SELECTOR="#page>DIV:nth-of-type(3)>DIV:nth-of-type(2)>A:nth-of-type(2)>DIV" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#theme" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#theme" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#msg" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#msg" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#box_butt_create" BUTTON=0


Подскажите как сделать, что бри цикличном использовании данного скрипта к ID на конце ссылки добовлялся +1

Пример:   ID94506     +1 к числу    ID94507

idlermax пишет

Ребята есть к примеру вот такой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://site.org.ua/ID94506
EVENT TYPE=CLICK SELECTOR="#page>DIV:nth-of-type(3)>DIV:nth-of-type(2)>A:nth-of-type(2)>DIV" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#theme" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#theme" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#msg" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#msg" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#box_butt_create" BUTTON=0


Подскажите как сделать, что бри цикличном использовании данного скрипта к ID на конце ссылки добовлялся +1

Пример:   ID94506     +1 к числу    ID94507

перегоняешь в js
делаешь цикл for с переменной i
и вместо цифр добавляешь переменную "+i+"

скрытый текст

Выделить код

Код:

var s_n = "\n";


var i;
for (i=94506;i<=94596;i++){        
    var name = "CODE:SET !ERRORIGNORE YES"+s_n;
    name += "SET !ERRORCONTINUE YES"+s_n;
    name += "SET !EXTRACT_TEST_POPUP NO"+s_n;
    name += "URL GOTO=http://site.org.ua/ID"+i+""+s_n;
            var pl_name = iimPlay(name);
}

idlermax пишет

Ребята есть к примеру вот такой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://site.org.ua/ID94506
EVENT TYPE=CLICK SELECTOR="#page>DIV:nth-of-type(3)>DIV:nth-of-type(2)>A:nth-of-type(2)>DIV" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#theme" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#theme" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#msg" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#msg" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#box_butt_create" BUTTON=0


Подскажите как сделать, что бри цикличном использовании данного скрипта к ID на конце ссылки добовлялся +1

Пример:   ID94506     +1 к числу    ID94507

Выделить код

Код:

SET !VAR3 263459530
SET !VAR2 EVAL("var nam=\"{{!VAR3}}\"; var nam1 = parseFloat(nam); var no=\"{{!loop}}\"; var no1 = parseFloat(no); sum=nam1+no1; sum;")

VAR3 - начальный ид
в VAR2 необходимый ид

osnastya991 пишет
idlermax пишет

Ребята есть к примеру вот такой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://site.org.ua/ID94506
EVENT TYPE=CLICK SELECTOR="#page>DIV:nth-of-type(3)>DIV:nth-of-type(2)>A:nth-of-type(2)>DIV" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#theme" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#theme" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#msg" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#msg" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#box_butt_create" BUTTON=0


Подскажите как сделать, что бри цикличном использовании данного скрипта к ID на конце ссылки добовлялся +1

Пример:   ID94506     +1 к числу    ID94507

Выделить код

Код:

SET !VAR3 263459530
SET !VAR2 EVAL("var nam=\"{{!VAR3}}\"; var nam1 = parseFloat(nam); var no=\"{{!loop}}\"; var no1 = parseFloat(no); sum=nam1+no1; sum;")

VAR3 - начальный ид
в VAR2 необходимый ид

А как теперь VAR2 вставить в конец ссылки?

idlermax пишет

А как теперь VAR3 вставить в конец ссылки?

Выделить код

Код:

URL GOTO=http://site.org.ua/{{!VAR2}}
idlermax пишет

Подскажите как сделать, что бри цикличном использовании данного скрипта к ID на конце ссылки добовлялся +1
Пример: ID94506  +1 к числу ID94507

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !VAR2 {{!LOOP}}
ADD !VAR2 94507
ADD !VAR2 1
URL GOTO=http://site.org.ua/{{!VAR2}}

скрытый текст

Выделить код

Код:

SET !VAR3 57060
SET !VAR2 EVAL("var nam=\"{{!VAR3}}\"; var nam1 = parseFloat(nam); var no=\"{{!loop}}\"; var no1 = parseFloat(no); sum=nam1+no1; sum;")
URL GOTO=http://site/u{{!VAR2}}
WAIT SECONDS=2
SET !VAR4 0
ADD !VAR4 {{!LOOP}}
TAG POS={{!VAR4}} TYPE=A ATTR=TXT:Друзья
TAG POS={{!VAR4}} TYPE=A ATTR=TXT:Друзья
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
EVENT TYPE=CLICK SELECTOR="#theme" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#theme" CHARS="Текст"
EVENT TYPE=CLICK SELECTOR="#msg" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#msg" CHARS="Текст"
EVENT TYPE=CLICK SELECTOR="#box_butt_create" BUTTON=0


Ребята выдает

RuntimeError: element A specified by TXT:Друзья was not found, line 7 (Error code: -921)

idlermax пишет

скрытый текст

Выделить код

Код:

SET !VAR3 57060
SET !VAR2 EVAL("var nam=\"{{!VAR3}}\"; var nam1 = parseFloat(nam); var no=\"{{!loop}}\"; var no1 = parseFloat(no); sum=nam1+no1; sum;")
URL GOTO=http://site/u{{!VAR2}}
WAIT SECONDS=2
SET !VAR4 0
ADD !VAR4 {{!LOOP}}
TAG POS={{!VAR4}} TYPE=A ATTR=TXT:Друзья
TAG POS={{!VAR4}} TYPE=A ATTR=TXT:Друзья
TAG POS=1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
EVENT TYPE=CLICK SELECTOR="#theme" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#theme" CHARS="Текст"
EVENT TYPE=CLICK SELECTOR="#msg" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#msg" CHARS="Текст"
EVENT TYPE=CLICK SELECTOR="#box_butt_create" BUTTON=0


Ребята выдает

RuntimeError: element A specified by TXT:Друзья was not found, line 7 (Error code: -921)

Это похоже, что не может найти на странице данного элемента
Вначале кода помести строки:
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

Он будет пропускать ошибки, а не останавливать скрипт

С инстаграмом происходит какой-то ужос.

На imacros   невозможно ни отправить коммент, на даже написать скрипт, который залогиниться в инстаграм.

Если кто знает как можно хотя написать скрипт, который залогиниться, подскажите пожалуйста.
Как бы не ковырялся - пишет что пароль неправильный.

Мне нужно Вконтакте, со страницы поиск - Люди
начать допустим с 500-го пользователя
заходить на их страницы и ставить лайк.

Но проблема в том, что люди нужны сидящие в онлайне
А для того, чтобы зайти на страницу 500-го пользователя
нужно заранее подгружать страницу с людьми,
то есть раскрывать страницу до конца вниз.

Последний пользователь 1000-ый из поиска
дальше не будет показывать, даже если написано,
что найдено 3000 людей.

Если перед тем, как заходить на страницу пользователя,
каждый раз нажимать - сейчас на сайте и
опускать страницу вниз, на это уходит примерно 1 минута.
1 минута - 1 лайк.

Что в этом случаи, можно сделать ?

Я думаю поставить проверку.
Если онлайн, то ставит лайк на фото, если офф лайн, то пропускает.

Если можно было за 2 - 3 секунды сразу весь список людей раскрыть,
с помощью скрипта, было бы хорошо.

Алим пишет

Мне нужно Вконтакте, со страницы поиск - Люди
начать допустим с 500-го пользователя
заходить на их страницы и ставить лайк.

Но проблема в том, что люди нужны сидящие в онлайне
А для того, чтобы зайти на страницу 500-го пользователя
нужно заранее подгружать страницу с людьми,
то есть раскрывать страницу до конца вниз.

Последний пользователь 1000-ый из поиска
дальше не будет показывать, даже если написано,
что найдено 3000 людей.

Если перед тем, как заходить на страницу пользователя,
каждый раз нажимать - сейчас на сайте и
опускать страницу вниз, на это уходит примерно 1 минута.
1 минута - 1 лайк.

Что в этом случаи, можно сделать ?

Я думаю поставить проверку.
Если онлайн, то ставит лайк на фото, если офф лайн, то пропускает.

Если можно было за 2 - 3 секунды сразу весь список людей раскрыть,
с помощью скрипта, было бы хорошо.

напиши нажатии на низ страницы

spy686 пишет

напиши нажатии на низ страницы

этот метод не помогает.

----

У меня есть скрипт, который ВК со страницы: поиск - люди
посещает страницы и добавляет в друзья, при появлении капчи,
разгадывает её, через антигейт

У меня она работает без зависания.

Проверил у другого человека этот же скрипт и после того как разгадает капчу
скрипт зависает. Сами кнопки на панели imacros при этом работают и браузер тоже.

Хотя версия imacros и бразура мозилы у нас одинаковые (последнии)

Он и браузер переустанавливал вместе с imacros, не помогает.
В чём может быть дело?

Прочитал на форуме, в этой ветке.
И посоветовал скачать браузер ранней версии до 23 и imacros 8.6.0

spy686 пишет
Алим пишет

Мне нужно Вконтакте, со страницы поиск - Люди
начать допустим с 500-го пользователя
заходить на их страницы и ставить лайк.

Но проблема в том, что люди нужны сидящие в онлайне
А для того, чтобы зайти на страницу 500-го пользователя
нужно заранее подгружать страницу с людьми,
то есть раскрывать страницу до конца вниз.

Последний пользователь 1000-ый из поиска
дальше не будет показывать, даже если написано,
что найдено 3000 людей.

Если перед тем, как заходить на страницу пользователя,
каждый раз нажимать - сейчас на сайте и
опускать страницу вниз, на это уходит примерно 1 минута.
1 минута - 1 лайк.

Что в этом случаи, можно сделать ?

Я думаю поставить проверку.
Если онлайн, то ставит лайк на фото, если офф лайн, то пропускает.

Если можно было за 2 - 3 секунды сразу весь список людей раскрыть,
с помощью скрипта, было бы хорошо.

напиши нажатии на низ страницы

За 20 раз выполнения данного кода (http://m.vk.com/search), 500 точно отображается аккаунт, это занимает 20 сек:

TAG POS=1 TYPE=div ATTR=class:pfoot*
WAIT SECONDS=1

Юзаю FF Portable 19 + imacros 7.6.0.2

если проблема с опускание страницы вниз, то рекомендую посмотреть в сторону JS

Работает на странице люди - поиск (Вконтакте)
Макрос "Заход" заходит на страницу человека
е - заходит к следующему человеку, при новом цикле.

iimPlayCode - проверяет человек в онлайне или нет.
Макрос "Лайк" - ставит лайк на фото
Макрос "Назад" - возвращается обратно на страницу поиска

Кусок скрипта из js

Выделить код

Код:

for (var i=1;i<=5;i++){
iimSet("е",е);
е++
iimPlay("макросы/заход.iim",60);

i= iimPlayCode("TAG POS=1 TYPE=B ATTR=ID:profile_online_lv")
if (i>0 ){ //нашло слово
iimPlay("макросы/лайк.iim",60);
}

if (i<0 ){// не нашло слово 
iimPlay("макросы/назад.iim",60);
}
}


но, почему-то идёт бесконечный цикл.
В чём может быть ошибка ?

Алим пишет

Кусок скрипта из js

Выделить код

Код:

for (var i=1;i<=5;i++){
iimSet("е",е);
е++
iimPlay("макросы/заход.iim",60);

i= iimPlayCode("TAG POS=1 TYPE=B ATTR=ID:profile_online_lv")
if (i>0 ){ //нашло слово
iimPlay("макросы/лайк.iim",60);
}

if (i<0 ){// не нашло слово 
iimPlay("макросы/назад.iim",60);
}
}


но, почему-то идёт бесконечный цикл.
В чём может быть ошибка ?

потому что переменная i используется для двух разных задач, не совместимых по сути
for (var i=1;i<=5;i++){
и
i= iimPlayCode("TAG POS=1 TYPE=B ATTR=ID:profile_online_lv")

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=ID:############
TAB T=2
TAG POS=1 TYPE=BUTTON ATTR=TXT:##############
TAB CLOSE
TAB T=1

Общий скрипт открывает закладку 2, делает действие и закрывает.
Но если не открывается 2-я закладка, он закрывает 1-ю  и все останавливается.

Как заставить
TAB CLOSE

Закрывать только TAB T=2, а если её нет ,то впустую пройти ?

перейти на 1ю вкладку, закрыть все остальные

Выделить код

Код:

TAB CLOSEALLOTHERS
InfSub пишет

потому что переменная i используется для двух разных задач, не совместимых по сути
for (var i=1;i<=5;i++){
и
i= iimPlayCode("TAG POS=1 TYPE=B ATTR=ID:profile_online_lv")

Спасибо, помогло.

Вот только, почему-то всегда воспроизводит макрос "Лайк"
В независимости, есть человек в онлайне или нет.

Я думаю, что просто код profile_online_lv скрипт находит, в обеих случаях.
Или проблема в этом кусочке кода скрипта ?
Вроде я верно всё указал. Макрос "назад" на месте, с кодом.

Хотя и так делал, не помогло.
В обеих случаях, воспроизводится макрос "Лайк"

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=B ATTR=TXT:Online")

а если стрелочки меняю местами (><), то тоже в обеих случаях,
воспроизводится макрос "назад"

скрытый текст

Выделить код

Код:

for (var i=1;i<=5;i++){
iimSet("е",е);
е++
iimPlay("макросы/заход.iim",60);

iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=B ATTR=TXT:Online")
if (i>0 ){ //нашло слово
iimPlay("макросы/лайк.iim",60);
}

if (i<0 ){ // не нашло слово 
iimPlay("макросы/назад.iim",60);
}
}


мне кажется нужно i поменять. Сейчас попробую.

скрытый текст

Выделить код

Код:

for (var i=1;i<=5;i++){
iimSet("е",е);
е++
iimPlay("макросы/заход.iim",60);

h=iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=B ATTR=TXT:Online")
if (h>0 ){ //нашло слово
iimPlay("макросы/лайк.iim",60);
}

if (h<0 ){ // не нашло слово 
iimPlay("макросы/назад.iim",60);
}
}


Тоже не помогло

Протестировал на текст фамилии и имени.
Совпало имя - воспроизвёлся макрос "лайк"
Не было имени - воспроизвёлся макрос "назад"

Алим пишет

Протестировал на текст фамилии и имени.
Совпало имя - воспроизвёлся макрос "лайк"
Не было имени - воспроизвёлся макрос "назад"

ну так отладьте, сначала, проверку на online, без js

InfSub пишет

ну так отладьте, сначала, проверку на online, без js

Проверил с онлайном и ошибок не было, при обеих случаях.
Проверил с оффлайном и всё получилось.

Помогло ))

Как сделать, чтобы не только счёт на зелёном фоне показывал
а со словом. Примеру: сделано 2

Выделить код

Код:

for (i=1;i<=5;i++){
iimPlay("макросы/end.iim",60);
iimDisplay(i)
}

нашёл, сделал.

Алим, может поиском пользоваться будем?
iimDisplay('text '+i);

InfSub пишет

Алим, может поиском пользоваться будем?

Я сначала задаю вопрос, потом ищу в поиске.
Вдруг на мой вопрос ответят быстрее, чем я найду.

Сейчас я нашёл ответ через поиск.

А как сделать так, чтобы между цифрами +к и +i был пробел или текст,
а то они слипаются.

Выделить код

Код:

var к = 20;  

for (i=1;i<=к;i++){
iimPlay("макросы/end.iim",60);
iimDisplay("РАСКРЫТИЕ ДО" +к +i);
}

вот так он складывает
iimDisplay('i='+к+'\nq='+i+'\nAll='+(i+к))

чтобы отдельно было
iimDisplay('text' +к \n 'text' +i)

ошибка

Алим пишет

Алим пишет
InfSub пишет

Алим, может поиском пользоваться будем?

Я сначала задаю вопрос, потом ищу в поиске.
Вдруг на мой вопрос ответят быстрее, чем я найду.

Сейчас я нашёл ответ через поиск.

А как сделать так, чтобы между цифрами +к и +i был пробел или текст,
а то они слипаются.

Выделить код

Код:

var к = 20;  

for (i=1;i<=к;i++){
iimPlay("макросы/end.iim",60);
iimDisplay("РАСКРЫТИЕ ДО" +к +i);
}

вот так он складывает
iimDisplay('i='+к+'\nq='+i+'\nAll='+(i+к))

чтобы отдельно было
iimDisplay('text' +к \n 'text' +i)

ошибка


повторюсь
ОФФТОП
Нашёл я парочку команд, использую их в iimDisplay

Код:

var i = ('vv'+'\n'+'bb')
alert (i)
// +'\n'+ переход на новую строку (абзац)
// +'\t'+ табуляция 
// +'\f'+     +'\b'+ и  \v срань какуюто пишет
// +'&nbsp;'+ неразрывный пробел 
// +' '+     пробел (знак как кавычки, только одна чёрточка )


для проверки

Выделить код

Код:

iimDisplay('я'+' '+'тут')

cdbf601ef6e4f78a2f64ac159fd9725a.png

чтобы отдельно было
iimDisplay('text' +к \n 'text' +i)
попробуй так
iimDisplay('text '+к+'\n'+'text '+i)

Вот, что я хотел. Получилось методом проб и ошибок :)

Выделить код

Код:

iimDisplay('РАСКРЫТИЕ ДО ' +к+ ' = ' +i)
Алим пишет

Вот, что я хотел. Получилось методом проб и ошибок :)

Я тоже как и Вы мучился!

Вот я методом проб, ошибок, исправлений дополнений мучился - и это ещё не много

Выделить код

Код:

var fullTasks = ('\t\t'+'PRCR_'+prcrFDisplay+'f/'+prcrGDisplay+'g'+'\tVktarget('+balVktarget+')_'+(targetDisplay2+targetDisplay1)+'\tSmmka('+balSmmka+')__'+smmkaDisplay+'_'+Smmka+'\tSmmok('+balSmmok+')_'+smmokDisplay+'_'+SMMOK+'\tVKserfing('+balVksefing+')_'+(vkserfingDisplay3+vkserfingDisplay2+vkserfingDisplay1)+'_'+(vksTask3+vksTask2+vksTask1)+'\t\t'+(prcrFDisplay+prcrGDisplay+smmkaDisplay+smmokDisplay+vkserfingDisplay3+vkserfingDisplay2+vkserfingDisplay1+targetDisplay2+targetDisplay1)+'-ALL Tasks');


То пробел пропущу, то лишний символ впихну, то перемененную впишу до того как задам её значение

Алим пишет

Я сначала задаю вопрос, потом ищу в поиске.

а, должно быть наоборот (из правил)

kolshix пишет

// +'&nbsp;'+ неразрывный пробел

у меня эта конструкция не работает (отображается текстом)

Такой вопрос: умеет ли imacros заганять информацию в буфер обмена ? к примеру есть значение в переменной , макрос делает экспорт в буфер и жмет на паузу сценарий, далее мне остаётся только выполнить мышей команду "вставить" и нажать на продолжение работы сценария (PROMPT ALERT  мне не подходит)

kolshix пишет

умеет ли imacros заганять информацию в буфер обмена

SET !CLIPBOARD {{!EXTRACT}}

Всем Форумчанам привет!

offtop
Ищу исполнителей на следующую работу, естественно не за спасибо:

Одноклассники:
Мне нужен скрипт iMacros для Одноклассников который мне позволит запускать на компьютере 10,20, а лучше 50 аккаунтов одновременно. Которые будут выполнять простую функцию как просто посещение страниц других людей из поиска и по заданным спискам. Ходить он должен в случайном порядке, но при этом не посещать дважды те страницы на которых уже был. У меня к примеру, в файле лежит 20 000 аккаунтов людей и у меня 10 аккаунтов которые походят по одному и тому же списку, так вот нужно что эти аккаунты посещали только те страницы на которых ни один из аккаунтов еще не заходил.
И исходя из моих экспериментов данное количество аккаунтов можно реализовать только через подключение прокси серверов.
Суть здесь сводит даже не к тому что бы просто написать, а к тому что бы он действительно работал, и я за один прогон не терял кучу аккаунтов.

Инстаграмм:
Требуется скрипт, который бы ходил по определенным тегам и проставлял по каждому тегу 10 лайков и 5 комментариев. В час не более 100 лайков и 50 комментов. Комментарии и теги что бы подтягивал с отдельного файла/файлов. Так же не должен заходить дважды на тот тег на котором уже был, комментарии так же в случайном порядке проставлял.

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


флуд запрещен
InfSub

falkovichs, здесь не доска объявлений, я бы рекомендовал удалить данное сообщение, оно нарушает правила, ИМХО.

оффтоп
Все свои пожелания, вы можете отписать в личку (PM) или на почту (E-mail), старожилам данной ветви форума, возможно кто-то возьмется.

falkovichs пишет

Всем Форумчанам привет!

Ищу исполнителей на следующую работу, естественно не за спасибо:

К сожалению не помню, но точно уверен что существует сайт на котором команда на заказ пишет скрипты , не раз этот сайт встречал пока искал ответы на нужные мне  вопросы.

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

Я всё это смогу реализовать,но не хочу заниматься этим гемороем. Во первых если InfSub не решился его реализовать то я темболее не хочу. А во вторых  прокси уже не в моде,и Одноклассники Фейсбук и Вконтакте уже вычисляют Аккаунты не по прокси а по другим критериям. Могу только посоветовать не заморачиваться этой ерундой,оно того не стоит.

Gergi пишет

Я всё это смогу реализовать,но не хочу заниматься этим гемороем. Во первых если InfSub не решился его реализовать то я темболее не хочу. А во вторых  прокси уже не в моде,и Одноклассники Фейсбук и Вконтакте уже вычисляют Аккаунты не по прокси а по другим критериям. Могу только посоветовать не заморачиваться этой ерундой,оно того не стоит.

Стоит, ещё как стоит !!! Только на imacros под 50 потоков и 20 000 аккаунтов долго мониторить будет и нужны наверняка ресурсы intel i7 (знаю на примере что программа на 800 потоков\аккаунтов вводит в ступор i5 дедик)--- лучше уже просить профессионального программиста чтоб написал на других языках !!! насчет прокси: если выполнять регистрацию 10 аккаунтов подряд с 1 IP (чистя кеш и куки ) аккауты сразу уйдут в бан, а если с разных ip то не уйдут. По поводу палева и вычисления: я только знаю IP , java , даже время и разрешение экрана , USER AGENT, буфер, куки, кеш,  переходы, даже не знаю как называется\отслеживание по нажатиям (вроде бы яндекс метрика занимается) и на этом наверняка список не заканчивается  ...
Насколько я знаю , то пока IMACROS справляется только с IP , чисткой истории, частичная замена User Agent, вставка чистой ссылки - это по-мойму и все

kolshix пишет

По поводу палева и вычисления

туда же: тыц

InfSub пишет
kolshix пишет

По поводу палева и вычисления

туда же: тыц

Них*** себе , я даже не знал что куки настолько заморочены!  могу только небольшое решение по данному вопросу высказать, подойдёт для пользователей дедиков: перед тем как запускать imacros можно запустить в пенале управления ДЕДОМ , его переустановку , тем самым очистится все - займет мин 20 -25 потом первым делом устанавливаешь "yandex disc" - устанавливаешь на YD - нужную папку по умолчанию , а уже на YD сохранены  портативные копии  мазилы с базами imacros и вписанными настройками - по мне это самый простой вариант.... короче через 40-50 минут будет новый чистый комп )))

kolshix пишет

дедиков

в смысле дисков т.е. облачных сервисов?

InfSub пишет
kolshix пишет

дедиков

в смысле дисков т.е. облачных сервисов?

Вот такую вот ерунду , http://xlho.st/   , dedicated server - я могу ошибаться, но даже когда просто перезагружаешь его , он немного себя подчищает, и сбивает настройки , но лучше всего будет переустановка, тем более настройка займет не более 50 мин.

Облачный сервис нужен только для хранения настроек браузера и быстрое перемещение копий браузера и скриптов на нужный компьютер! пользуюсь уже 6 мес, очень удобное решение, у меня яндекс диск установлен и на dedicated server и на моём компе, тем самым я могу обращаясь к яндес диску мониторить работу и редактировать происходящую работу на dedicated server не запуская удалённый доступ и сторонний софт ---- Короче очень облегчает и ускоряет работу, да и не нужно на dedicated server ничего устанавливать кроме Яндекс диска

kolshix пишет
InfSub пишет
kolshix пишет

дедиков

в смысле дисков т.е. облачных сервисов?

Вот такую вот ерунду , http://xlho.st/   , dedicated server...

a)) 2й раз слышу прост от тебя про "дедики", вот и сидел гадал, что же это ... dedicate или disk ))))))))

InfSub пишет

a)) 2й раз слышу прост от тебя про "дедики", вот и сидел гадал, что же это ... dedicate или disk ))))))))

Кстати только что решил поверить на нём flash куки - на моём компе прога хренову тучу нашла, на дедике только 4 штуки --- наверно из-за того что ещё операционка  wind.serv.2007 стоит - про другие не убиваемые куки я вообще молчу...

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

Кто нибудь  тестировал imacros на новых версиях мазилы, мне просто интересно, а проверять нет времени, запустил пару команд на 33 портативной, дак выдало ошибки и не сработала команда "CLEAR" ??

Я тестировал разные версии мазилы на разные компы и пришёл к выводу что работает идеальней всего 24я версия мазилы и iMacros 8.8.2

kolshix пишет

Кто нибудь  тестировал imacros на новых версиях мазилы, мне просто интересно, а проверять нет времени, запустил пару команд на 33 портативной, дак выдало ошибки и не сработала команда "CLEAR" ??

нашёл инфу
https://addons.mozilla.org/ru/firefox/addon/imacros-for-firefox/versions/

запиливают новые версии imacros  , под новые версии mazilla

по поводу стабильной работы , у меня 27.0.1 - не плохо работает, на ОС W7  - работает как часики , на ОС Windows web serwer 2008 частенько стопорится и не работает , пока не перезапустишь скрипт

Gergi пишет

Я тестировал разные версии мазилы на разные компы и пришёл к выводу что работает идеальней всего 24я версия мазилы и iMacros 8.8.2

какая у тебя ОС ? и какая точная версия мазила, хочу протестировать на Windows web serwer 2008 , может не так подвисать будет!
сейчас тестирую imacros 8.8.5 на Mozilla 27.0.1 на ОС Windows web serwer 2008

У меня новая задача от клиента.

Человек открывает в своём браузере 20-ть вкладок в одном окне мазилы.
Каждая вкладка это разные страницы людей из Вконтакте. (Именно так хочет)

Скрипт воспроизвожу на первой вкладке
Скрипт должен добавлять в друзья, закрывать вкладку, переходить на следующую вкладку и т.д.
Но появляется капча и её нужно разгадать через сервис антигейт.

К примеру скрипт нашёл капчу на 5-ой вкладке.
А для разгадывание капчи, скрипт сначала открывает новую вкладку
TAB OPEN она открывается в конце всех вкладок.
Затем идёт команда TAB T=2 и переходит на следующую вкладку,
где находится страница человека и вместо неё открывает страницу антигейта.

В общем как надо сделать, так, чтобы переходила на новую открытую вкладку скриптом ?

Или я думаю, может начинать воспроизводить скрипт,
не с первой вкладки, а с последней ?

kolshix пишет

какая у тебя ОС ? и какая точная версия мазила

ОС W7  мазила 24 портативная

Привет всем.
Подскажите кто знает как извлечь ссылку  img src=        тегом EXTRACT из строчки внизу

скрытый текст

Выделить код

Код:

<img src="http://cs14113.vk.me/c620520/v620520778/1af29/wgdptaJrW1I.jpg" width="337" height="224" style="" class="page_post_thumb_sized_photo">

slavabest пишет

Привет всем.
Подскажите кто знает как извлечь ссылку  img src=        тегом EXTRACT из строчки внизу

скрытый текст

Выделить код

Код:

<img src="http://cs14113.vk.me/c620520/v620520778/1af29/wgdptaJrW1I.jpg" width="337" height="224" style="" class="page_post_thumb_sized_photo">

екстрактишь HTM (помоему так параметр называется), ну а затем парсишь ее.

slavabest пишет

Привет всем.
Подскажите кто знает как извлечь ссылку  img src=        тегом EXTRACT из строчки внизу

скрытый текст

Выделить код

Код:

<img src="http://cs14113.vk.me/c620520/v620520778/1af29/wgdptaJrW1I.jpg" width="337" height="224" style="" class="page_post_thumb_sized_photo">

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://*.vk.me/* EXTRACT=HREF

Сегодня несколько раз запускал  js скрипт в последней версии мазилы и imacrosa 8.8.5 Буквально через одну минуту начинает прыгать,тупить и вовсе завис. Поставил назад 24ю  портативную мазилу и imacros 8.8.2 и всё идеально заработало.

Всем привет.
На странице есть картинка, эта картинка всегда одна и та же, но при каждом обновлении страницы она меняет свой URL который генерируется рандомно, подскажите как вытаскивать ее URL при обновлении страницы.

Rysis пишет

Всем привет.
На странице есть картинка, эта картинка всегда одна и та же, но при каждом обновлении страницы она меняет свой URL который генерируется рандомно, подскажите как вытаскивать ее URL при обновлении страницы.

Экстрасенсов тут нет, читаем правила, как правильно задать вопрос

Всем привет. 
Подскажите, пожалуйста, как прописать в макросе немедленный переход на указанный url без ожидания полной загрузки страницы?

У меня макрос ждёт полной загрузки, которая иногда очень долгая и сбивается.

Хочется сделать что-то вроде:

WAIT SECONDS=3
(не ждать загрузки текущей страницы, идти сразу на) URL GOTO=


спасибо.

SET !TIMEOUT_STEP 1

InfSub пишет

SET !TIMEOUT_STEP 1

большое спасибо!

24-10-2014 03:14:50
но всё равно не получается)

вот кусочек кода:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:loginSubmit
WAIT SECONDS=3
SET !TIMEOUT_STEP 1
URL GOTO=

в этом случае  на 2-м шаге сперва ожидается полная загрузка странички и в SET !TIMEOUT уже нету смысла

а если убрать WAIT SECONDS, то не успевает залогиниться и моментально переходит на шаг 4.

может есть какое-то решение?

Chehov пишет

скрытый текст

InfSub пишет

SET !TIMEOUT_STEP 1

большое спасибо!

24-10-2014 03:14:50
но всё равно не получается)

вот кусочек кода:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:loginSubmit
WAIT SECONDS=3
SET !TIMEOUT_STEP 1
URL GOTO=

в этом случае  на 2-м шаге сперва ожидается полная загрузка странички и в SET !TIMEOUT уже нету смысла

а если убрать WAIT SECONDS, то не успевает залогиниться и моментально переходит на шаг 4.

может есть какое-то решение?

по больше бы информации
попробуй может сойдет

SET !ERRORIGNORE YES
SET !TIMEOUT_PAGE 60

SET !ERRORIGNORE YES   очень помогло в других ситуациях.
А есть какой-нибудь мануал с описаниями всех кодов для макроса? Чтобы не приставать тут с каждым своим вопросом.

Я далёк от программирования, просто жму RECORD, потом смотрю какая строчка что делает, и дальше сам то что мне нужно, но такие полезные коды, разбирая запись не узнать.

В любом случае, спасибо, что помогли)

Chehov пишет

А есть какой-нибудь мануал с описаниями всех кодов для макроса? Чтобы не приставать тут с каждым своим вопросом.

вот полная статья
оригинал бац
вот имеющая частичный перевод
русский бац

Chehov пишет

но всё равно не получается)
вот кусочек кода:

скрытый текст

Выделить код

Код:

1. TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:loginSubmit
2. WAIT SECONDS=3
3. SET !TIMEOUT_STEP 1
4. URL GOTO=


в этом случае  на 2-м шаге сперва ожидается полная загрузка странички и в SET !TIMEOUT уже нету смысла
а если убрать WAIT SECONDS, то не успевает залогиниться и моментально переходит на шаг 4.
может есть какое-то решение?

не совсем понял проблему, мне так кажется, что вы просто расположили элементы не в том порядке, а должно быть как-то так:

Выделить код

Код:

SET !TIMEOUT_STEP 3
'... ввод логина с паролем
TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:loginSubmit
URL GOTO=
Выделить код

Код:

TAB T=1
URL GOTO=*****
ONDOWNLOAD FOLDER=c:\ FILE=1.png
TAG POS=1 TYPE=IMG FORM=ID:captcha_1 ATTR=SRC:http://*****/_classes/captcha/generate_cp.php?type=1&rand=1418903425 CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

Стандартный код для сохранения картинки, но он этого не делает т.к при каждом входе на сайт цифры в конце ссылки генерируются рандомно, тоесть скрипт просто не видит картинки, так же он не видит картинки если цифры убрать и после знака "=" поставить "*".
Пробовал через EXTRACT

Выделить код

Код:

URL GOTO=*****
TAG POS=1 TYPE=IMG FORM=ID:captcha_1 ATTR=SRC:http://*****/_classes/captcha/generate_cp.php?type=1* EXTRACT=HREF
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s=s.substr(0,100);")
TAB OPEN
TAB T=2
URL GOTO= {{!VAR1}}

Да этот код открывает картинку с ее действующим URL в данный момент, в новом окне, при входе на сайт, но опять же картинка может быть другая, а может быть и та которая нужна, вообщем опять рандом. Картинок всего 5, но мне нужна именно та которая показывается при входе на сайт. Подскажите можно ли просто сохранить картинку, не зная ее URL и имени, зная только ID.

Rysis пишет

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=*****
ONDOWNLOAD FOLDER=c:\ FILE=1.png
TAG POS=1 TYPE=IMG FORM=ID:captcha_1 ATTR=SRC:http://*****/_classes/captcha/generate_cp.php?type=1&rand=1418903425 CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

Стандартный код для сохранения картинки, но он этого не делает т.к при каждом входе на сайт цифры в конце ссылки генерируются рандомно, тоесть скрипт просто не видит картинки, так же он не видит картинки если цифры убрать и после знака "=" поставить "*".
Пробовал через EXTRACT

Выделить код

Код:

URL GOTO=*****
TAG POS=1 TYPE=IMG FORM=ID:captcha_1 ATTR=SRC:http://*****/_classes/captcha/generate_cp.php?type=1* EXTRACT=HREF
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s=s.substr(0,100);")
TAB OPEN
TAB T=2
URL GOTO= {{!VAR1}}


Да этот код открывает картинку с ее действующим URL в данный момент, в новом окне, при входе на сайт, но опять же картинка может быть другая, а может быть и та которая нужна, вообщем опять рандом. Картинок всего 5, но мне нужна именно та которая показывается при входе на сайт.

вы получили урл, через extract, соответственно и при сохранении картинки этот урл должен работать, если нет проверяйте свой скрипт
вот пример:

скрытый текст

Выделить код

Код:

URL GOTO=http://forum.mozilla-russia.org/viewtopic.php?pid=665316#p665316
TAG POS=1 TYPE=IMG ATTR=SRC:http://forum.mozilla-russia.org/* EXTRACT=HREF
ONDOWNLOAD FOLDER=c:\ FILE=1.png
TAG POS=1 TYPE=IMG FORM=ID:captcha_1 ATTR=SRC:http://forum.mozilla-russia.org/* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

Rysis пишет

Подскажите можно ли просто сохранить картинку, не зная ее URL и имени, зная только ID.

а в чем проблема?: ID:captcha_1 ATTR=SRC:*

Выделить код

Код:

TAG POS=1 TYPE=IMG FORM=ID:captcha_1 ATTR=SRC:* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

InfSub
Спасибо за ответ, вроде разобрался)

Подскажите как зациклить скрипты

скрытый текст

Выделить код

Код:

var i, retcode;
var report;
var macrolist = new Array();

macrolist.push("1.iim");
macrolist.push("2.iim");

iimDisplay("Start Self Test");
report  =  "Self-Test Report\n\n";
for (i = 0; i < macrolist.length; i++) {
    iimDisplay("Step "+(i+1)+" of "+macrolist.length + "\nMacro: "+macrolist[i]);
    retcode = iimPlay(macrolist[i]);
    report += macrolist[i];
    if (retcode < 0) {
        report += ": "+iimGetLastError();
    } else {
        report += ": OK";
        s = iimGetLastExtract(1);
        if ( s != "" )  report += ", Extract: "+s;
    }
    report += "\n";
}
iimDisplay("Test complete");

alert ( report );


Что необходимо тут дописать что бы 1 макрос выполнился 10 раз, а потом только переходил к 2му.
А сам скрипт повторился  100 раз

Ребята подскажите пожалуйста мне, что можно сделать с моей проблемой, я ничего не понимаю в создании макросов, я просто нажал на кнопку и записал его, но этого не достаточно. Я сижу через Тор, запускаю макрос он заходит на youtube, задает поисковой запрос, в фильтре ставит видео выложенное в течении месяца, что-бы было легче искать видео, так вот проблема в том, что при каждой смене ip у меня меняется и расположение видео, то есть в макросе было прописано видео на первой страничке, а оно меняет расположение и уже находится на второй страничке, можно сделать так, что-бы макрос искал видео на первой страничке и при не нахождении этого видео он переходил на вторую страничку youtube и искал там (оно всегда либо на первой, либо на второй, только два варианта) помогите пожалуйста, буду очень благодарен...
Пригодится вам это или нет, но я скинул ниже свой макрос на всякий случай =)

скрытый текст
VERSION BUILD=8850919 RECORDER=FX
TAB T=1
URL GOTO=https://www.youtube.com/
TAG POS=1 TYPE=DIV ATTR=ID:yt-masthead-content
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:masthead-search ATTR=ID:masthead-search-term CONTENT=virus<SP>ebola<SP>two<SP>residents<SP>of<SP>liberia<SP>have<SP>been<SP>raised
TAG POS=1 TYPE=BUTTON FORM=ID:masthead-search ATTR=ID:search-btn
TAG POS=1 TYPE=BUTTON ATTR=TXT:Filters
TAG POS=1 TYPE=SPAN ATTR=TXT:This<SP>month
TAG POS=1 TYPE=A ATTR=TXT:2
TAG POS=1 TYPE=A ATTR=TXT:Две<SP>жертвы<SP>Эболы<SP>«воскресли»<SP>на<SP>своих<SP>похо*
WAIT SECONDS=36
TAG POS=1 TYPE=IMG ATTR=ID:logo

I_am_god пишет

Ребята подскажите пожалуйста мне,...

скрытый текст
что можно сделать с моей проблемой, я ничего не понимаю в создании макросов, я просто нажал на кнопку и записал его, но этого не достаточно. Я сижу через Тор, запускаю макрос он заходит на youtube, задает поисковой запрос, в фильтре ставит видео выложенное в течении месяца, что-бы было легче искать видео, так вот проблема в том, что при каждой смене ip у меня меняется и расположение видео, то есть в макросе было прописано видео на первой страничке, а оно меняет расположение и уже находится на второй страничке, можно сделать так, что-бы макрос искал видео на первой страничке и при не нахождении этого видео он переходил на вторую страничку youtube и искал там (оно всегда либо на первой, либо на второй, только два варианта) помогите пожалуйста, буду очень благодарен...
Пригодится вам это или нет, но я скинул ниже свой макрос на всякий случай =)
[spoiler]VERSION BUILD=8850919 RECORDER=FX
TAB T=1
URL GOTO=https://www.youtube.com/
TAG POS=1 TYPE=DIV ATTR=ID:yt-masthead-content
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:masthead-search ATTR=ID:masthead-search-term CONTENT=virus<SP>ebola<SP>two<SP>residents<SP>of<SP>liberia<SP>have<SP>been<SP>raised
TAG POS=1 TYPE=BUTTON FORM=ID:masthead-search ATTR=ID:search-btn
TAG POS=1 TYPE=BUTTON ATTR=TXT:Filters
TAG POS=1 TYPE=SPAN ATTR=TXT:This<SP>month
TAG POS=1 TYPE=A ATTR=TXT:2
TAG POS=1 TYPE=A ATTR=TXT:Две<SP>жертвы<SP>Эболы<SP>«воскресли»<SP>на<SP>своих<SP>похо*
WAIT SECONDS=36
TAG POS=1 TYPE=IMG ATTR=ID:logo

ответ освещался много раз на форуме, но напишу не поленюсь ещё раз

скрытый текст
0 Используй браузер мазила
1 запиши один код в отдельный файл где твоё видео на 1-й странице и сохрани его (к примеру так 1.iim)
2 запиши отдельный код где твоё видео на 2-й странице и сохрани его (к примеру так 2.iim )
3 создай файл js (к примеру start.js) и помести его в стандартную папку для imacros (js файл можно получить создав текстовый документ и поменять в нём расширение из txt в js) - после того как он будет в стандартной папке - то обнови список макросов
4 вот код для start.js

   if (iimPlay("1.iim")<0){
      iimPlay("2.iim")
   }

Вот как поведёт себя скрипт: зайдёт на youtube и поищет ваше видео - если вашего видео нет , то выполнит 2-й код, а если выполнится первый код без ошибок, т.е. найдётся ваше видео, то второй код просто напросто припустится


если все выше сказанное вам не понятно, то учите  больше javascript и imacros

kolshix пишет

ответ освещался много раз на форуме, но напишу не поленюсь ещё раз

скрытый текст
0 Используй браузер мазила
1 запиши один код в отдельный файл где твоё видео на 1-й странице и сохрани его (к примеру так 1.iim)
2 запиши отдельный код где твоё видео на 2-й странице и сохрани его (к примеру так 2.iim )
3 создай файл js (к примеру start.js) и помести его в стандартную папку для imacros (js файл можно получить создав текстовый документ и поменять в нём расширение из txt в js) - после того как он будет в стандартной папке - то обнови список макросов
4 вот код для start.js

   if (iimPlay("1.iim")<0){
      iimPlay("2.iim")
   }

Вот как поведёт себя скрипт: зайдёт на youtube и поищет ваше видео - если вашего видео нет , то выполнит 2-й код, а если выполнится первый код без ошибок, т.е. найдётся ваше видео, то второй код просто напросто припустится


если все выше сказанное вам не понятно, то учите  больше javascript и imacros

Спасибо буду пробовать )

есть команда которая останавливает скрипт ?

PAUSE других - нет

Есть код

скрытый текст

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,400)


она прокручивает страницу вниз

Нашёл страницу "Размеры и прокрутка для страницы"
перейти бац

в нём говорится
Метод elem.scrollIntoView(top) вызывается на элементе и прокручивает страницу так,
чтобы элемент оказался вверху
Возможно ли этот метод применить к
URL GOTO=javascript:
через макрос или скрипт ?

Алим пишет

Возможно ли этот метод применить к
URL GOTO=javascript:
через макрос или скрипт ?

нет

В принципе, тот же эффект, если в настройках imacros
поставить галочку на "Скролировать на объект"
и использовать

Выделить код

Код:

CONTENT=EVENT:MOUSEOVER

хотя нет, он как-то хаотично

Помогите! Когда исполняется скрипт, начинается лаг http://prntscr.com/50311s tag waiting останавливаеться и аймакрос зависает, и не понятно он может при первом цикле залагать , может на втором? Как устранить баг или сделать так что бы после любого бага он перезапускался что ли. Спасибо!

Vanokk пишет

Помогите!...

Правила

2.  Не рекомендуется:
2.2  Задавать вопрос без указания:
2.2.1  Содержания страницы "Информация для решения проблем". Для его получения откройте пункт меню "Справка —> Информация для решения проблем", скопируйте её, нажав кнопку "Копировать текст в буфер обмена", и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».
2.2.2  Содержания страницы "Включённые плагины". Для его получения наберите в строке адреса about:plugins (в Thunderbird перейдите по ссылке со страницы "Информация для решения проблем"), скопируйте содержимое страницы в буфер обмена и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».
2.2.3  Содержания страницы "Отправленные сообщения о падениях", если проблема связана с падением программы. Для его получения наберите в строке адреса about:crashes (в Thunderbird перейдите по ссылке со страницы "Информация для решения проблем"), скопируйте содержимое страницы в буфер обмена и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».

в данном, конкретном, случае - версия браузера и версия плагина, как минимум

InfSub пишет
Vanokk пишет

Помогите!...

Правила

2.  Не рекомендуется:
2.2  Задавать вопрос без указания:
2.2.1  Содержания страницы "Информация для решения проблем". Для его получения откройте пункт меню "Справка —> Информация для решения проблем", скопируйте её, нажав кнопку "Копировать текст в буфер обмена", и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».
2.2.2  Содержания страницы "Включённые плагины". Для его получения наберите в строке адреса about:plugins (в Thunderbird перейдите по ссылке со страницы "Информация для решения проблем"), скопируйте содержимое страницы в буфер обмена и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».
2.2.3  Содержания страницы "Отправленные сообщения о падениях", если проблема связана с падением программы. Для его получения наберите в строке адреса about:crashes (в Thunderbird перейдите по ссылке со страницы "Информация для решения проблем"), скопируйте содержимое страницы в буфер обмена и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».

в данном, конкретном, случае - версия браузера и версия плагина, как минимум

Спс!

Добрый день! Имеется немного сырая программа Imacros для сохранения данных с сайта, написана на Imacros.
Требуется модернизация для проверки сообщений на странице, возможная только через использование Java script. Также требуется внести в код дополнение по проверке и обработке капчи.

Имеющийся код:

скрытый текст
TAB T=1
SET !DATASOURCE report_1.csv
'Start at line 2 to skip the header in the file
SET !LOOP 2
'Increase the current position in the file with each loop
SET !DATASOURCE_LINE {{!LOOP}}
BACK
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ctl13_g_d692aeea_e0da_48fd_9ba2_a8ee26450575_SearchControl_TxtIinBin CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:aspnetForm ATTR=ID:ctl00_ctl13_g_d692aeea_e0da_48fd_9ba2_a8ee26450575_SearchControl_BtnSearch
SET !ERRORIGNORE YES

TAG POS=1 TYPE=TD ATTR=TXT:1
SET !TIMEOUT_STEP 0
TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR2 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR3 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR4 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR5 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR6 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Корпоративный<SP>подоходный<SP>налог<SP>(КПН)
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR7 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR8 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Hалог<SP>на<SP>добавленную<SP>стоимость<SP>на<SP>товары<SP>в*
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR9 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET !VAR0 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Индивидуальный<SP>подоходный<SP>налог<SP>(ИПН)
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR11 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR12 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Социальный<SP>налог
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR13 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR14 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Налог<SP>на<SP>имущество
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR15 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR16 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Земельный<SP>налог
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR17 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR18 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Налог<SP>на<SP>транспортные<SP>средства
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR19 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR20 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Акцизы<SP>на<SP>товары<SP>внутреннего<SP>производства<SP>(Ак*
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR21 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR22 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Налог<SP>на<SP>сверхприбыль<SP>(НСП)
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR23 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR24 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Бонусы
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR25 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR26 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Налог<SP>на<SP>добычу<SP>полезных<SP>ископаемых<SP>(НДПИ)**
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR27 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR28 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Прочие<SP>платежи<SP>недропользователей<SP>(за<SP>исключение*
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR29 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR30 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Прочие<SP>поступления<SP>(Плата<SP>за<SP>пользование<SP>земе*
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR31 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR32 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=TD ATTR=TXT:Итого<SP>по<SP>указанным
SET !TIMEOUT_STEP 0
TAG POS=R4 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR33 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

TAG POS=R1 TYPE=TD ATTR=TXT:* EXTRACT=TXT
SET !TIMEOUT_STEP 0
SET VAR34 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/£|^\\s*|\\s*$/g, \"\");")
SET !EXTRACT NULL
SET !EXTRACT_TEST_POPUP NO

ADD !EXTRACT {{!COL1}}
ADD !EXTRACT {{!VAR1}}
ADD !EXTRACT {{!VAR2}}
ADD !EXTRACT {{!VAR3}}
ADD !EXTRACT {{!VAR4}}
ADD !EXTRACT {{!VAR5}}
ADD !EXTRACT {{!VAR6}}
ADD !EXTRACT {{!VAR7}}
ADD !EXTRACT {{!VAR8}}
ADD !EXTRACT {{!VAR9}}
ADD !EXTRACT {{!VAR0}}
ADD !EXTRACT {{VAR11}}
ADD !EXTRACT {{VAR12}}
ADD !EXTRACT {{VAR13}}
ADD !EXTRACT {{VAR14}}
ADD !EXTRACT {{VAR15}}
ADD !EXTRACT {{VAR16}}
ADD !EXTRACT {{VAR17}}
ADD !EXTRACT {{VAR18}}
ADD !EXTRACT {{VAR19}}
ADD !EXTRACT {{VAR20}}
ADD !EXTRACT {{VAR21}}
ADD !EXTRACT {{VAR22}}
ADD !EXTRACT {{VAR23}}
ADD !EXTRACT {{VAR24}}
ADD !EXTRACT {{VAR25}}
ADD !EXTRACT {{VAR26}}
ADD !EXTRACT {{VAR27}}
ADD !EXTRACT {{VAR28}}
ADD !EXTRACT {{VAR29}}
ADD !EXTRACT {{VAR30}}
ADD !EXTRACT {{VAR31}}
ADD !EXTRACT {{VAR32}}
ADD !EXTRACT {{VAR33}}
ADD !EXTRACT {{VAR34}}

SAVEAS TYPE=EXTRACT FOLDER=* FILE=nalogi.csv


Кто может сделать эту работу на платной основе? Сколько это может стоить и в какие сроки? Способ оплаты - на карту или через через систему платежей.
Предложения на Dmitriy.Kutelyov@kcell.kz
Спасибо.

Дмитрий Кутелёв, здесь не форум фрилансеров по заказу скриптов, пишите в личку участникам форума, половина из них вам поможет, сообщение рекомендую удалить

Добрый день.
Хочу сохранить определенный пост паблика вконтакте через макрос (выделяю пост открытием).
Нашел способ привязаться к ID:wpt открытого поста (но привязка по моему не работает).
Так как сохраняются картинка и текст, но с самого начала паблика (а не c открытого поста).
Картинки и текст меняются в зависимости от номера элемента POS.


Где ошибки, может не к тому ID привязался,
или пост открывается через джава скрипт-поэтому с него ничего нельзя сохранить?

slavabest, открытый пост, по аналогии - тот же спойлер, открыв его (нажатием), вы по сути ни чего не меняете, во всяком случае для имакроса, код страницы не изменяется, привязаться к открытому посту, на сколько я помню - невозможно

С помощью макроса, вставляю в поле для комментирования
ссылки от фото и аудио

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


они появляются в прикреплённом виде
затем после отправки, эти ссылки остаются в виде текста
как их можно удалить, перед отправкой?

Сначала я извлекаю, содержимое в поле комментирования,
а затем всё хочу удалить, но не получается. Кто может помочь ?
 

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:fwr_text EXTRACT=txt
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.replace(/http/gi,\"\");")
EVENTS TYPE=KEYPRESS SELECTOR="#fwr_text" CHARS={{!VAR1}}

тестирую здесь
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

InfSub пишет

slavabest, открытый пост, по аналогии - тот же спойлер, открыв его (нажатием), вы по сути ни чего не меняете, во всяком случае для имакроса, код страницы не изменяется, привязаться к открытому посту, на сколько я помню - невозможно

Спасибо. Буду думать в другом направлении.

InfSub пишет

Алим, все ссылки на сторонние ресурсы, не имеющие отношения к Mozilla или imacros - размещаются в спойлере, в теге noindex

Не знал об этом, думаю правильно отредактировал.

Сделал. Буду знать, спасибо )

Есть скрипт по добавлению друзей в одной соц сети, но у мея он кликает по одному человеку первому с поиска, как сделать что бы он радномно кликал в хпотическом порядке?Кликаю так 

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="a.people..."
Vanokk пишет

Есть скрипт по добавлению друзей в одной соц сети, но у мея он кликает по одному человеку первому с поиска, как сделать что бы он радномно кликал в хпотическом порядке?Кликаю так 

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="a.people..."

в CLICK SELECTOR="" менять id человека, рандомно

InfSub пишет
Vanokk пишет

Есть скрипт по добавлению друзей в одной соц сети, но у мея он кликает по одному человеку первому с поиска, как сделать что бы он радномно кликал в хпотическом порядке?Кликаю так 

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="a.people..."

в CLICK SELECTOR="" менять id человека, рандомно

Там не айди человека. Зря полностью не скинул  вот, оно как бы по картинке кликает

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="a.people-person-pic"
Vanokk пишет

Там не айди человека. Зря полностью не скинул  вот, оно как бы по картинке кликает

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="a.people-person-pic"

значит запишите клик по нескольким авам, после чего сравните чем отличаются

InfSub пишет
Vanokk пишет

Там не айди человека. Зря полностью не скинул  вот, оно как бы по картинке кликает

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="a.people-person-pic"

значит запишите клик по нескольким авам, после чего сравните чем отличаются

В чем и соль что ничем, ну как ничем расположение мишки на екране! Можно сделать как то нардомный клик? А то с пробовал прокрутку, оно то прокручивает, а кликает по первому все равно(

адрес страницы либо в личку, либо сюда в спойлер и тег noindex

Для тех кто начинает работать с imacros, никакой информации про коды тут нет , видео о подготовки рабочего места
клац

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

скрытый текст

Выделить код

Код:

var y = 0.00000020
while(true) {
var macro1;
macro1 =  "CODE:";
macro1 +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro1 +=  "TAG POS=13 TYPE=SPAN ATTR=CLASS:BetControlTitle" + "\n"; 
macro1 +=  "WAIT SECONDS=2" + "\n"; 
macro1 +=  "SET !EXTRACT NULL" + "\n"; 
macro1 +=  "TAG POS=1 TYPE=SPAN ATTR=ID:LastBetInfoProfit EXTRACT=TXT" + "\n"; 
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(0);
var j = 1;
y = y + (y * j)
var k = (y).toFixed(8)


var macro2;
macro2 =  "CODE:";
macro2 +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT="+ k + "\n"; 
macro2 +=  "WAIT SECONDS=2" + "\n"; 

var macro3;
macro3 =  "CODE:";
macro3 +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT=0.00000020" + "\n"; 
macro3 +=  "WAIT SECONDS=2" + "\n"; 

if(extract == "-") {
    iimPlay(macro2);
}
if(extract == "0") {
var y = 0.00000020;
    iimPlay(macro3);
    }

var macro4;
macro4 =  "CODE:";
macro4 +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro4 +=  "TAG POS=14 TYPE=SPAN ATTR=CLASS:BetControlTitle" + "\n"; 
macro4 +=  "WAIT SECONDS=2" + "\n"; 
macro4 +=  "SET !EXTRACT NULL" + "\n"; 
macro4 +=  "TAG POS=1 TYPE=SPAN ATTR=ID:LastBetInfoProfit EXTRACT=TXT" + "\n"; 
iimPlay(macro4);

var s = iimGetLastExtract();
var extract = s.charAt(0);
var j = 1;
y = y + (y * j)
var k = (y).toFixed(8)

var macro2;
macro2 =  "CODE:";
macro2 +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT="+ k + "\n"; 
macro2 +=  "WAIT SECONDS=2" + "\n"; 

var macro3;
macro3 =  "CODE:";
macro3 +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT=0.00000020" + "\n"; 
macro3 +=  "WAIT SECONDS=2" + "\n"; 

if(extract == "-") {
    iimPlay(macro2);
}
if(extract == "0") {
var y = 0.00000020;
    iimPlay(macro3);

}
}

Равилль
спойлер забыли
должно быть так:
&#091;spoiler&#093;&#091;code&#093;ваш код&#091;/code&#093;&#091;/spoiler&#093;
и удалять - не обязательно, есть кнопа "редактировать"

InfSub пишет

Равилль
спойлер забыли
должно быть так:

скрытый текст

Выделить код

Код:

ваш код


и удалять - не обязательно, есть кнопа "редактировать"

Спасибо за помощь.А по моему вопросу помочь не можете?

Добрый день. Есть код сбора статистики

скрытый текст

Выделить код

Код:

VERSION BUILD=10022823
TAB T=1
'TAB CLOSEALLOTHERS
PROMPT "Введите число последней пятницы" !VAR1
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE_DELIMITER ;
' подбираем данные из csv
SET !DATASOURCE market1.csv
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://partner.market.yandex.ru/?perpageNumber=15
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:part CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/ ATTR=VALUE:найти
TAG POS=1 TYPE=A FORM=ACTION:/ ATTR=TXT:{{!COL1}}
TAG POS=1 TYPE=A ATTR=TXT:Клики<SP>по<SP>дате<SP>события
TAG POS=1 TYPE=A FORM=NAME:NoFormName ATTR=TXT:{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=NAME:NoFormName ATTR=NAME:group_type_code CONTENT=%1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=ID:show-report
TAG POS=3 TYPE=SPAN ATTR=CLASS:b-link__inner EXTRACT=TXT
TAG POS=10 TYPE=TD ATTR=CLASS:d EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Extract_{{!NOW:ddmmyy_hhnnss}}.csv


Как бы его переделать чтобы PROMPT надо было вводить только один раз, а не в каждом цикле.

Равилль пишет

по моему вопросу помочь не можете?

могу, но это не форумный вопрос, т.к. данный код на js, тут же ветка посвящена чистому имакросу, а не javascript'у

offtop
пиши в личку - обсудим

30-10-2014 17:42:11

Xuggin пишет

Как бы его переделать чтобы PROMPT надо было вводить только один раз, а не в каждом цикле.

ручками в скрипте прописать или реализовывать на js

InfSub пишет

ручками в скрипте прописать или реализовывать на js

Ручками в скрипте - это вы что имеете ввиду? Вместо PROMPT использовать SET !VAR1?

Xuggin
да,set !var1 значение

InfSub пишет

Xuggin
да,set !var1 значение

К сожалению, запускать будет не подготовленный пользователь, а каждый день переменная будет меняться. Значит кроме js вариантов нет...

Xuggin пишет

Значит кроме js вариантов нет...

нет

Как реализовать такую задачу: запускать по очереди несколько iim скриптов, причем каждый скрипт должен запуститься с заданным количеством циклов.

Oleksandr пишет

Как реализовать такую задачу.....

Oleksandr, в первую очередь - прочитать правила, конкретно, пункт 2.1 и следовать его рекомендациям.

В js я не силен, скорее полный ноль, Всю ветку выборочно просмотрел, но подходящего примера не нашел. Насколько понимаю, это можно сделать с помощью управляющего скрипта на js но вот как? В демках имакроса тоже не нашел примера запуска iim через циклы. Циклы мне нужны, так как данные хранятся в csv файле.

Oleksandr пишет

запускать по очереди несколько iim скриптов, причем каждый скрипт должен запуститься с заданным количеством циклов.

как минимум несколько примеров было на последних 3 страницах

один из...:

Выделить код

Код:

for (i=0;i<5;i++){
    iimPlay("my_macroses/1.iim",60);
}
for (i=0;i<10;i++){
    iimPlay("my_macroses/2.iim",60);
}
...

Спасибо, не срабатывает команда SET !LOOP, в макросе iim. Мне нужен запуск с поддержкой команды SET !LOOP, так как у меня используется csv файлик с ссылками на сайты

31-10-2014 00:28:44
Похожий пример я нашел в поиске, теперь сижу думаю, что нужно изменить и возможно ли это вообще?

Oleksandr пишет

не срабатывает команда SET !LOOP

она и не будет работать при запуске из js, т.к. js подразумевает, что у вас уже идет цикл (или позволяет его сделать, соответственно)
для передачи значения переменной из js в запускаемый iim-файл, есть функция iimSet('YOUR_VAR',value);

Вы как опытный, может подскажете более мудрое решение? У меня 5 макросов. 1 макрос = текст поста. В файлике находятся урл групп. У меня 5 акков в соцсети. Вхожу в один акк, запускаю макрос. Макрос постит одинаковый пост во все группы. Теперь мне нужно выйти из акк и войти в другой, запустить другой макрос №2. В те же самые группы я пощу другой пост под другим аккаунтом. Хотел все это автоматизировать по возможности.

Oleksandr пишет

Вы как опытный, может подскажете более мудрое решение? У меня 5 макросов. 1 макрос = текст поста. В файлике находятся урл групп. У меня 5 акков в соцсети. Вхожу в один акк, запускаю макрос. Макрос постит одинаковый пост во все группы. Теперь мне нужно выйти из акк и войти в другой, запустить другой макрос №2. В те же самые группы я пощу другой пост под другим аккаунтом. Хотел все это автоматизировать по возможности.

какое решение вы хотите? примеры решений, я вам дал, этого достаточно для реализации того, что вы задумали или вы хотите чтобы я написал за вас скрипт? =)

За меня не надо :) Хотел услышать, если есть какое более рациональное решение...

Oleksandr пишет

Как реализовать такую задачу: запускать по очереди несколько iim скриптов

Вот только задачу вы сформулировали не верно:
у вас должны быть вложенные циклы, по схеме:

схема
цикл1{
    логин
    цикл2{
        проход по группам
        отправка сообщения
    }
    логаут
}

31-10-2014 00:51:29

Oleksandr пишет

есть какое более рациональное решение...

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

Вы показали ведь часть процесса? Так как цикл1 в нашем случае должен повторятся (по количеству аккаунтов).

Oleksandr пишет

Вы показали ведь часть процесса? Так как цикл1 в нашем случае должен повторятся (по количеству аккаунтов).

а что такое, по вашему, цикл?

InfSub пишет

Вот только задачу вы сформулировали не верно:

Не хотел все проблемы валить в одну кучу. Войти в аккаунт, выйти и войти в другой - это мне по силам сделать и с помощью iim скрипта, а вот как их запускать по очереди, это для меня проблема.

Oleksandr, в общем, перед тем как разводить флуд, читаем, что такое цикл

InfSub пишет

а что такое, по вашему, цикл?

Да нет, все у вас верно.
Цикл1 выполняет js скрипт, а 2цикл может выполнить и iim скрипт.

Oleksandr пишет

а 2цикл может выполнить и iim скрипт.

еще раз читаем это

31-10-2014 01:19:30
при условии:

Oleksandr пишет

Хотел услышать, если есть какое более рациональное решение...

31-10-2014 01:24:39
как я понимаю - вы не поняли схему, хотя она максимально упрощена, просто сделал во втором цикле уточнение, исходя из разбивки вами iim-скриптов
вообще же ее имело смысл записать так:

скрытый текст
цикл1{
    логин
    цикл2{
        проход по группам
    }
    логаут
}

31-10-2014 01:25:32
для чего, по сути достаточно 2-3 iim файлов

31-10-2014 01:34:55

Oleksandr пишет

а 2цикл может выполнить и iim скрипт.

да, может, но только в 1м случае, если вы запишите код так:

скрытый текст
url goto=группа1
tag pos= .... ваше сообщение
url goto=группа2
tag pos= .... ваше сообщение
url goto=группа3
tag pos= .... ваше сообщение
....
url goto=группаN
tag pos= .... ваше сообщение

потому что код вида

Выделить код

Код:

SET !DATASOURCE_LINE {{!LOOP}}

работать - НЕ будет, при запуске iim-файла из js

Что то я запутался. И не мудрено, если в js я нолик. И к тому же надо в кучу собрать управляющий файл на js, управляемый iim и к тому же еще csv с урлами.
Прошу вас прояснить ситуацию. Что бы я мог понять, что именно выполняет функция iimSet('YOUR_VAR',value);? Подставляет значение в SET !LOOP в скрипте iim? Искал по поиску не нашел примера, как мне ее применить в своем js скрипте. Куда эту функцию нужно вставить.

Oleksandr пишет

Что бы я мог понять, что именно выполняет функция iimSet('YOUR_VAR',value);?

ссылку на iimSet я для чего поставил?
передает значение, которое содержит js-переменная value, iim-переменной YOUR_VAR

Oleksandr пишет

Подставляет значение в SET !LOOP в скрипте iim?

в данном, конкретном примере может выполнять функцию !LOOP

Oleksandr пишет

Искал по поиску не нашел примера

плохо искали

Oleksandr пишет

как мне ее применить в своем js скрипте. Куда эту функцию нужно вставить.

перед iimPlay()

InfSub пишет

потому что код вида

SET !DATASOURCE_LINE {{!LOOP}}

работать - НЕ будет, при запуске iim-файла из js

И без этой строчки циклы работают, эта строчка у меня закоментирована. Но это так к слову.

Oleksandr пишет
InfSub пишет

потому что код вида

SET !DATASOURCE_LINE {{!LOOP}}

работать - НЕ будет, при запуске iim-файла из js

И без этой строчки циклы работают, эта строчка у меня закоментирована. Но это так к слову.

я в курсе что они и без нее работают при упрощенной работе с файлами (т.е. если вы за цикл обращаетесь только к 1й (к одной) строке)

31-10-2014 01:51:05
я понял, к чему вы клоните, лень проверять, но сильно сомневаюсь, что запущенный из js-файла - iim с сокращенной записью чтения файла, будет последовательно считывать все строки

InfSub пишет

если вы за цикл обращаетесь только к 1й строке)

Я этого не знал, работает без нее, ну и пусть работает :) Но обращаться приходится не только к первой. Скрипт частенько останавливается, и приходится продолжать с других строчек.

31-10-2014 02:01:23
При попытке запустить js такого вида,

скрытый текст
var i;

for (var i=1;i<=40;i++){
iimSet('YOUR_VAR',value); iimPlay  ("js/macros1.iim",60);
}


Вылазит error: value is not defined

Oleksandr пишет
InfSub пишет

если вы за цикл обращаетесь только к 1й строке)

Я этого не знал, работает без нее, ну и пусть работает :) Но обращаться приходится не только к первой. Скрипт частенько останавливается, и приходится продолжать с других строчек.

31-10-2014 02:01:23
При попытке запустить js такого вида,

скрытый текст
var i;

for (var i=1;i<=40;i++){
iimSet('YOUR_VAR',value); iimPlay  ("js/macros1.iim",60);
}


Вылазит error: value is not defined

может быть вы замените value на i? или по ссылкам из примеров ходить не обязательно? да и гугл транслейт ни кто не отменял, если не можете понять смысл ошибки...
и очень сильно сомневаюсь что в вашем macros1.iim есть переменная YOUR_VAR

31-10-2014 02:29:24
и зачем вы дважды объявляете i в своем скрипте? у вас var i уже прописано в цикле, либо уберите var из цикла, либо уберите var i; из начала скрипта

Да смотрел я на пример по ссылке, ничего не понял, выделение элемента из других... код другой. "var i" удалил, заменил value на i, YOUR_VAR нужно заменить на LOOP? Или на другую переменную?

Oleksandr пишет

YOUR_VAR нужно заменить на LOOP? Или на другую переменную?

как угодно

Есть ли у imacrosa через event нажатие клавиши вниз ?

Как вызвать остановку управляющего js файла при остановке управляемого iim скрипта? Если, например, нужная страница не открылась.

Oleksandr пишет

Как вызвать остановку управляющего js файла при остановке управляемого iim скрипта? Если, например, нужная страница не открылась.

мне вам еще раз продублировать ссылку на вики про циклы и как с ними работать? читаем правила - пункты про флуд и создание вопросов, на которые ответ легко находится через поиск..

01-11-2014 00:41:05

kolshix пишет

Есть ли у imacrosa через event нажатие клавиши вниз ?

запиши - узнаешь=)

пишет

Есть ли у imacrosa через event нажатие клавиши вниз ?
запиши - узнаешь=)

Запись результата не дает , я перед тем как задать вопрос перепроверил, но может быть по номерам есть нажатие!?

kolshix пишет
пишет

Есть ли у imacrosa через event нажатие клавиши вниз ?
запиши - узнаешь=)

Запись результата не дает , я перед тем как задать вопрос перепроверил, но может быть по номерам есть нажатие!?

Выделить код

Код:

EVENT ..... KEY=40

Здравствуйте!

Нужно  EXTRACT , "два слова" иногда бывает "цифра" , сейчас вставка текста после  EXTRACT , происходит так:

два слова(function (d, w, c...
или
цифра(function (d, w, c...

как будет выглядеть рабочий код , для обрезки "(function (d, w, c..." перед вводом в поле?

Выделить код

Код:

TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT

Через атрибут уточнить нечем.

Здравствуйте. Помогите. Хочу написать скрипт, который на определенной странице будет искать заранее определенную фразу, состоящую из нескольких слов. Во фразе каждый раз меняется  1 слово. Скрипт должен эту фразу сохранять в текстовый файл. Каждый следующий цикл скрипта должен добавлять текст в файл с новой строки.  Подскажите, может на наглядном примере, как это сделать!? Заранее спасибо!

Nigativ пишет

Здравствуйте. Помогите. Хочу написать скрипт, который на определенной странице будет искать заранее определенную фразу, состоящую из нескольких слов. Во фразе каждый раз меняется  1 слово. Скрипт должен эту фразу сохранять в текстовый файл. Каждый следующий цикл скрипта должен добавлять текст в файл с новой строки.  Подскажите, может на наглядном примере, как это сделать!? Заранее спасибо!

https://developer.mozilla.org/en-US/Add … /Tutorials

Nigativ, поиск по данной ветке форма - Вам поможет, тут куча подобных примеров

02-11-2014 16:05:45

Revers пишет

Нужно  EXTRACT , "два слова" иногда бывает "цифра"

а можно по-человечески задать вопрос? если по поводу Extract - еще понятно, то пример со вставкой текста, меня несколько сбил с толку..

Revers пишет

сейчас вставка текста после  EXTRACT , происходит так:
два слова(function (d, w, c...
или
цифра(function (d, w, c...

т.к. обычно вставка текста происходит - вот так =) :
TAG POS=.... CONTENT="ваш текст"
или EVENTS KEYPRESS ......
если же вы имеете ввиду, что это текст, который вставляется - выглядит так:

два слова(function (d, w, c...

и нужно обрезать все начиная со скобки.. то код для обрезки будет выглядеть - как-то так:
\

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\((.*)/,'')")

Nigativ пишет

Здравствуйте. Помогите. Хочу написать скрипт, который на определенной странице будет искать заранее определенную фразу, состоящую из нескольких слов. Во фразе каждый раз меняется  1 слово. Скрипт должен эту фразу сохранять в текстовый файл. Каждый следующий цикл скрипта должен добавлять текст в файл с новой строки.  Подскажите, может на наглядном примере, как это сделать!? Заранее спасибо!

пожалуйста, внизу пример с extract
http://wiki.imacros.net/TAG

еще, могу добавить, посмотрите стандартные примеры макросов, там есть с extract

InfSub пишет

а можно по-человечески задать вопрос? если по поводу Extract - еще понятно, то пример со вставкой текста, меня несколько сбил с толку..

человеческого мало осталось, пишу как робот.

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT"+ru;
macro1 += "SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\((.*)/,'')")"+ru;
macro1 += "TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:vvod_v_pole CONTENT={{!EXTRACT}}"+ru;
InfSub пишет

т.к. обычно вставка текста происходит - вот так =) :
TAG POS=.... CONTENT="ваш текст"
или EVENTS KEYPRESS ......
если же вы имеете ввиду, что это текст, который вставляется - выглядит так:

Я имел ввиду, что команда:

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:vvod_v_pole CONTENT={{!EXTRACT}}"+ru;

вставляет в поле: "два слова(function (d, w, c..." , а нужно только: "два слова"

Как правильно прописать в .js файле строку:

Выделить код

Код:

macro1 += "SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\((.*)/,'')")"+ru;

и строку:

Выделить код

Код:

macro1 += "SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*4 + 1); randomNumber;")"+ru;

?

Revers пишет

Как правильно прописать в .js файле строку:

скрытый текст

Выделить код

Код:

macro1 += "SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\((.*)/,'')")"+ru;

и строку:

Выделить код

Код:

macro1 += "SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*4 + 1); randomNumber;")"+ru;


?

экранировать спец. символы нужно:
macro1 += "SET !EXTRACT EVAL(\"'{{!EXTRACT}}'.replace(/\\\((.*)/,'')\")"+ru;

macro1 += "SET !VAR2 EVAL(\"randomNumber=Math.floor(Math.random()*4 + 1);\")"+ru;

fireday2 пишет

https://developer.mozilla.org/en-US/Add … /Tutorials
                    Отредактировано fireday2 (Вчера 17:40:26)

osnastya991 пишет

пожалуйста, внизу пример с extracthttp://wiki.imacros.net/TAGеще, могу добавить, посмотрите стандартные примеры макросов, там есть с extract
                    Отредактировано osnastya991 (Вчера 21:17:14)

Спасибо, но на форуме ищу помощи, а не перенаправления по ссылкам.

Nigativ пишет

Спасибо, но на форуме ищу помощи, а не перенаправления по ссылкам.

так в чем проблема, вам же сказали:

InfSub пишет

Nigativ, поиск по данной ветке форма - Вам поможет, тут куча подобных примеров

или нам написать за вас скрипт?
вы задали общий вопрос - вот и получили - общий ответ...
что-то не работает - код в студию, будем смотреть, что не так, а иначе, тут каждый день постов из серии "помогите, я ни чего не умею..." - куча...

InfSub пишет

Nigativ пишет: Спасибо, но на форуме ищу помощи, а не перенаправления по ссылкам.так в чем проблема, вам же сказали:InfSub пишет: Nigativ, поиск по данной ветке форма - Вам поможет, тут куча подобных примеровили нам написать за вас скрипт?вы задали общий вопрос - вот и получили - общий ответ...что-то не работает - код в студию, будем смотреть, что не так, а иначе, тут каждый день постов из серии "помогите, я ни чего не умею..." - куча...

Не надо за меня ничего писать, я этого не просил. А дать направление могли бы, вместо того что бы писать кучу букв не по теме. Не проще было бы написать что нужна команда EXTRACT? Что бы сохранить в файл то, что вытащено данной командой, нужна команда (такая-то). Так нет же. Всем почему то проще написать слов намного больше, чем ответить по существу! а скрипт то в 2-3 строки. И я нигде не увидел в названии темы, что тут только коды разбирают! В общем, если не можете помочь, лучше не помогайте!

Nigativ пишет

Не проще было бы написать что нужна команда EXTRACT?

вам об этом писали

osnastya991 пишет

пожалуйста, внизу пример с extract
еще, могу добавить, посмотрите стандартные примеры макросов, там есть с extract

далее идете в поиск по команде extract, в чем проблема?

Nigativ пишет

Всем почему то проще написать слов намного больше

потому что, уже надоело отвечать на вопросы людей, которым лень, найти то, что им нужно, даже если оно лежит перед их носом

Здравствуйте!
Помогите с кодом. Нужно, чтобы при определенном значении !LOOP выполнялась заданная команда.
Делаю вот так:

командой EVAL
SET !VAR1 EVAL("if(({{!LOOP}}=84)&&({{!LOOP}}=168)){macro += "TAG POS=1 TYPE=A ATTR=CLASS:link-show-more""}

Но не работает, даже не запускается выдает ошибку.

mnemon84 пишет

Здравствуйте!
Помогите с кодом. Нужно, чтобы при определенном значении !LOOP выполнялась заданная команда.
Делаю вот так:

командой EVAL
SET !VAR1 EVAL("if(({{!LOOP}}=84)&&({{!LOOP}}=168)){macro += "TAG POS=1 TYPE=A ATTR=CLASS:link-show-more""}

Но не работает, даже не запускается выдает ошибку.

и не будет работать, нельзя переменной присвоить в виде значения строку или управляющий элемент имакроса
пишите управляющий js-скрипт, в котором и реализуйте ветвление по условию

Всем привет!

Подскажите плиз, возможно записи EXTRACT в exel файл, или наоборот забрать данные из exel файлика. Где посмотреть???

спасибо!

Новенький2014 пишет

Всем привет!

Подскажите плиз, возможно записи EXTRACT в exel файл, или наоборот забрать данные из exel файлика. Где посмотреть???

спасибо!

wiki.imacros.net/!DATASOURCE
wiki.imacros.net/SAVEAS
а так же, поиск по форуму

Всем добрый вечер, может кто знает код как реализовать, чтобы скрипт ходил по списку групп вк добавленным в аккаунте ,по очереди, добавил сообщение и вышел и пошел во вторую группу.
Вот часть моего кода, ходит по группам но доходит до 20 примерно и начинает сначала.
Если например поставить SET !LOOP 40, группу просто не находит и скрипт не работает.

скрытый текст

Выделить код

Код:

Вот код WAIT SECONDS= 1
URL GOTO=http://vk.com/groups
SET !LOOP 1
TAG POS={{!LOOP}} TYPE=IMG ATTR=CLASS:groups_row_img
TAB T=1
WAIT SECONDS= 3
TAG POS=5 TYPE=DIV ATTR=TXT:Написати<SP>повідомлення..

InfSub пишет

sagnio, отредактируйте свое сообщение так, чтобы в нем не было самоцитирования, код прячем с теги code и в spoiler
задайте вопрос так, чтобы он был понятен, не только вам, но и другим участникам форума

03-11-2014 23:29:34

sagnio пишет

Хотя цыкла нету.

а какую функцию, по вашему, выполняет {{!LOOP}} если это не элемент цикла?

отписал подробнее.

sagnio пишет

Если например поставить SET !LOOP 40, группу просто не находит и скрипт не работает.

предположу, что у вас просто не загружается весь список групп, т.к. подгрузка идет динамически, по мере прокрутки страницы, в связи с чем и не находит группы после 20
как исправить:
можно руками прокручивать страницу перед запуском скрипта =))))
можно поискать в этой теме код, для прокрутки страницы вниз

InfSub пишет
sagnio пишет

Если например поставить SET !LOOP 40, группу просто не находит и скрипт не работает.

предположу, что у вас просто не загружается весь список групп, т.к. подгрузка идет динамически, по мере прокрутки страницы, в связи с чем и не находит группы после 20
как исправить:
можно руками прокручивать страницу перед запуском скрипта =))))
можно поискать в этой теме код, для прокрутки страницы вниз

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

sagnio пишет

буду искать код.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,20000)
InfSub пишет
sagnio пишет

буду искать код.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Спасибо, теперь переходит на позицию ту которую указываю в цыкле, спасиб. Еще учится и учиться, но понемногу хоть собрал свой рабочий скрипт)

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,20000)

Ребята, помогите!
Насчет сайта для накрутки лайков Turboliker.
Пару дней назад узнал об Imacros.
Я написал свой скрипт, он сам вступает в группы с сайта turboliker, и за это мне платят "лайками".
Но у меня не получается написать другой, который ставит лайки людям, переходя по ссылке с Turboliker'a.

Я хочу, чтобы он сам переходил с сайта Turboliker на vk.com по ссылке, указанной на турболайкере и ставил лайки людям, чтобы мне платили.
Но он не хочет переходить, потому что каждый раз ссылки на страницы людей разные!
Не хочется этой суеты, тратить свое время на всякие лайки, хочу, чтобы "бот" сам переходил по ссылке и ставил лайки людям.
Помогите, кто может!

Vadim123 пишет

Помогите, кто может!

здесь не стол заказов и не доска объявлений, с просьбами написать скрипт обращайтесь в ЛС к старожилам, а не разводите флуд на форуме

Vadim123 пишет

Ребята, помогите!

скрытый текст
Насчет сайта для накрутки лайков Turboliker.
Пару дней назад узнал об Imacros.
Я написал свой скрипт, он сам вступает в группы с сайта turboliker, и за это мне платят "лайками".
Но у меня не получается написать другой, который ставит лайки людям, переходя по ссылке с Turboliker'a.

Я хочу, чтобы он сам переходил с сайта Turboliker на vk.com по ссылке, указанной на турболайкере и ставил лайки людям, чтобы мне платили.
Но он не хочет переходить, потому что каждый раз ссылки на страницы людей разные!
Не хочется этой суеты, тратить свое время на всякие лайки, хочу, чтобы "бот" сам переходил по ссылке и ставил лайки людям.
Помогите, кто может!

открою небольшой секрет - для турболайка есть бесплатный бот - это 100% - вот только нужно найти и на всякий пожарный проверить сайтом антивирусником. Совет по imacros и турболайк: нужен нормальный комп для использования нескольких потоков + proxy и прочее - не лезь в дебри ищи бот!

Vadim123, могу посочувствовать и помочь морально.

Бонус. Вам понадобится !ERRORIGNORE. При переходи с турболайкера на вк есть 2 вида лайков, их легко записать

osnastya991 пишет

Vadim123, могу посочувствовать и помочь морально.

Бонус. Вам понадобится !ERRORIGNORE. При переходи с турболайкера на вк есть 2 вида лайков, их легко записать

Спросил у человека в PM - но он так и не ответил что за 2 вида лайков - если речь идет нажатии мне нравится на вк, то их как минимум 4 могу назвать - но предпологаю что больше

OFFTOPIC: Господа, давайте не будем постить сообщения, не имеющие отношение к тематике данной ветки. Ладно - новички, правил не читали, но мы то...
2.  Не рекомендуется:
2.21  Отсылать сообщения, не соответствующие обсуждаемой теме (оффтопик)....
3.  Запрещено:
3.6  Вести разговор на «вольные темы» (флеймить), кроме соответствующего форума «Флейм». Нарушителю делается замечание.

ИМХО: обсуждение вктаргета и аналогичных сервисов, либо любых других сайтов, без описания конкретных проблем с имакросом и отсутствие кода, для выявления описанных проблем, по своей сути - флейм

Доброго времени суток, подскажите пожалуйста как осуществить с помощю аймакрос коменты в топиках (темах) групп Вконтакте.
после записи скрипта он кликает куда нужно, но набор текста не повторяет.

Можно ли запустить bat или vbs файл с помощью iMacros или iMacros+js ?

spy686 пишет

Можно ли запустить bat или vbs файл с помощью iMacros или iMacros+js ?

нет, разве только - наоборот

05-11-2014 23:06:31
Ну Погоди, читаем правила и пользуемся поиском

InfSub
Доброго времени суток, подскажите пожалуйста как осуществить с помощю аймакрос коменты в топиках (темах) групп Вконтакте.
после записи скрипта он кликает куда нужно, но набор текста не повторяет.
такой вопрос был, но он остался без ответа

Ну Погоди, вам ответили:

InfSub пишет

Ну Погоди, читаем правила и пользуемся поиском

повторюсь, читаем правила, в том числе и на тему повторения одного и того же вопроса несколько раз, и пользуемся поиском, как вставлять текст в поля в вконтакте уже не единожды обсуждалось в данной теме

06-11-2014 00:03:41

правила
2.  Не рекомендуется:
2.1  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском. Тема с данным вопросом будет перенесена модератором в форум «Архив» без каких-либо объяснений. Перенос вашей темы в данный форум служит признаком того, что вы плохо искали (или не искали вовсе) ответ на свой вопрос.
2.6  Многократно поднимать тему, если на поставленный вопрос ответ не был получен своевременно. Многократное поднятие темы чаще 1 раза в течение недели сообщениями типа «up» может быть расценено как флуд.

imacros
01.Индивидуальная/субъективная настройка браузера для работы с Imacros
02.Основы считывания текстовой информации в Imacros

Вот не лень тебе было это все писать? =)
мне, например, лень было смотреть =) очень много циферок с надписью минуты =) так что только пролистал один из роликов...
есть неточности:
<SP> - это тег, аналогия c html, и обрамляется он угловыми скобками, а не знаками: больше - меньше)), к тому же, его применение не обязательно, можно просто записать данные с пробелами в кавычках:

SET !DATASOURCE "1 2.txt"

стиль записи документов "колонка 1","колонка 2","и т.д." - это не "стандарт имакроса", а стандарт CSV или точнее, формат CSV - текстовый формат, предназначенный для представления табличных данных.

это то, что резануло слух при 2х минутном быстром пролистывании видео, вполне возможно - есть еще мелкие огрехи, но это не критично, суть, думаю, передана верно, а как видео-урок для новичков - вообще супер, молодец!

InfSub пишет

SET !DATASOURCE "1 2.txt"

стиль записи документов "колонка 1","колонка 2","и т.д." - это не "стандарт имакроса", а стандарт CSV или точнее, формат CSV - текстовый формат, предназначенный для представления табличных данных.

по поводу  имени файла в кавычках - если бы вы смотрели все видео ...- я там пояснил .... а представьте если указывать каждый раз 20-30 файлов , то каждый брать в кавычки - лишняя работа - не проще ли пробел нижним подчеркиванием заменить??
по поводу стандарта колонок
В данном случае речь идёт про imacros - смотрел различные источники - у каждого формата различные заморочки - как кавычки так и разделители - зачем дурным голову забивать ??? - сказал что для imacros стандарт - думаю с этим не поспоришь (одна мысль по разному сказан).

Вообще если писать видео о считывании - на неделю хватит текста!!! Где что подстроить.... непечатные знаки .... спецсимволы .... особенности настройки .... та даже та кодировка на которую я обратил внимание ---- обычно кодировка  часто пользователей вводит в ступор "А почему когда макрос сохранил в файл инфу, то файл читается, а когда я создал новый с нуля , то выдает ошибку?"  - я постарался  вписать в видео наиболее стандартные и часто встречающиеся вопросы
Ещё хочу записать видео про обработку считанной информации и запись её в файл

И да в видео я упомянул , я не программист и не преподаватель (было дела печатал на заказ  текст о преподавании-это оказывается очень мудрёная "наука") - поясняю языком понятным для простого пользователя- А то мне бывает попадаются "Юные будущие программисты" которые не знают что такое архиваторы.

kolshix пишет

если бы вы смотрели все видео ...- я там пояснил

сорри, действительно не подумал, что мог упустить подобное объяснение, но:

kolshix пишет

каждый брать в кавычки - лишняя работа

это не совсем верно, большинство текстовых редакторов давно умеют автоматически удваивать кавычки и скобки, так что - скорее использование блокнота и встроеного редактора для imacros - это архаизм, впрочем - ИМХО

06-11-2014 04:10:30
в общем, удачи, хорошее начинание, а легкая критика, скорее для того, чтобы вещи назывались своими именами

06-11-2014 04:13:54

kolshix пишет

А то мне бывает попадаются "Юные будущие программисты" которые не знают что такое архиваторы.

ну да... помнится тут пост был аналогичный, про поиск подстроки посимвольно))

Я к стати до сих пор не вкурь как правильно замены выполнять - все учу по аналогии - лень не победишь!!
Самое главное забыл сказать!!! Будут глупые вопросы задавать  которые по 100 раз объяснялись  отсылай на видео - "по собственному опыту говорю чем больше учишь , тем больше хочется, а чем больше хочется , тем больше вопросов!!!"
Видео обрубит как минимум 10 стандартных!

Добрый день!

у меня firefox
imacros 8.8.5

А может кто знает как при запуске макроса в firefox (из закладок - imacros://run/?m=den_02.iim) убрать открывание панели iMacros или окна с плеером макроса?

окно висит поверх и мешает, особенно если скрипт приведет к ошибке...

fiandy пишет

А может кто знает как при запуске макроса в firefox (из закладок - imacros://run/?m=den_02.iim) убрать открывание панели iMacros или окна с плеером макроса?

окно висит поверх и мешает, особенно если скрипт приведет к ошибке...

полностью спрятать имакрос - нельзя, на сколько я знаю

fiandy пишет

Добрый день!

у меня firefox
imacros 8.8.5

А может кто знает как при запуске макроса в firefox (из закладок - imacros://run/?m=den_02.iim) убрать открывание панели iMacros или окна с плеером макроса?

окно висит поверх и мешает, особенно если скрипт приведет к ошибке...

могу только посоветовать в версии до 30 браузера - могу ошибаться-  , можно переместить заначек imacros в нижнюю панель дополнений и уже окошко будет не по середине , а внизу

знаю не по теме форума - но давно искал - значение или  и промежуточное значения - гдета наткнулся в начале поиска - что в js нет таких параметров и забросил поиски - а нужно было немного продолжить и вуаля (кстати даже не могу вспомнить зачем искал такое выражение :):):) )

скрытый текст

Выделить код

Код:

var i =15;
if (i > 12 && i<20) { // сработает только цифры включительно  от 13 до 19
alert ('YES')
}

// либо 
var i =15;

if (i < 12 || i>20) { сработает только цифры включительно до 11 и после 21
alert ('YES')
}

kolshix, логические операторы И и ИЛИ, присутствуют во всех современных языках программирования, тем более схожих с С#

InfSub пишет

kolshix, логические операции И и ИЛИ, присутствуют во всех современных языках программирования, тем более схожих с С

да то понятно УЖЕ ! но главное что доволен как СЛОН ! - хотя после армии выражение немного приняло другое значение :):)

Вот так работает iimPlay("Odnoklassniki.iim",60); А вот так не хочет iimPlay("www.example.com/Odnoklassniki.iim",60);   Можно ли это реализовать?

Gergi пишет

А вот так не хочет iimPlay("www.example.com/Odnoklassniki.iim",60);   Можно ли это реализовать?

текст ошибки где? экстрасенсы в отпусках, где вы ошиблись, гадать - не кому

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 203"  data: no], line 199 (Error code: -991)

07-11-2014 10:06:05
Я закинул макрос к себе на хостинг,и вот это полный путь к макросу iimPlay("http://www.example.com/Odnoklassniki.iim",60);

Gergi пишет

Я закинул макрос к себе на хостинг

а где вы вообще нашли информацию, что будет работать с интернета?

Gergi пишет

iimPlay("www.название_сайта.com/Odnoklassniki.iim",60);

- путь до файла лежащего в папке iMacros\Macros\www.название_сайта.com\Odnoklassniki.iim

offtop
Подскажите где можно раздобыть скрипты для сбора догов.
за ранее спасибо!!!

флуд запрещен
InfSub

buben88 пишет

offtop
Подскажите где можно раздобыть скрипты для сбора догов.
за ранее спасибо!!!

1. написать самому
2. нагуглить
3. заказать одному из участников/старожилов, данной ветки форума

InfSub пишет
buben88 пишет

offtop
Подскажите где можно раздобыть скрипты для сбора догов.
за ранее спасибо!!!

1. написать самому
2. нагуглить
3. заказать одному из участников/старожилов, данной ветки форума

я серьезно. мож кто поделится

buben88 пишет

я серьезно. мож кто поделится

Серьезно? Вы тут видели надпись "Халява, СЭР!!!" ???

А во вторых, я работаю только с js (больше возможностей).
И в свое время использовал команду на js http://javascript.ru/do..while

InfSub пишет

а где вы вообще нашли информацию, что будет работать с интернета?

В том то и дело что я нигде такой информации не нашёл,я просто спрашиваю реально ли это реализовать? Лично мне кажется что не реально.

Gergi пишет
InfSub пишет

а где вы вообще нашли информацию, что будет работать с интернета?

В том то и дело что я нигде такой информации не нашёл,я просто спрашиваю реально ли это реализовать? Лично мне кажется что не реально.

почитайте это http://wiki.alertfox.com/First_Steps. Может поможет.
Лично я этим не пользуюсь.

spy686, там несколько иной принцип (аналогичный с использованием выделенного сервера, только с веб интерфейсом) и сервис - платный, так что сомневаюсь, что Gergi этот вариант устроит =)

07-11-2014 23:14:31

spy686 пишет

я работаю только с js (больше возможностей).

большинство - работает с js, там где это необходимо, хотя тут, можно обойтись и EVAL()

07-11-2014 23:16:33

Gergi пишет

я просто спрашиваю реально ли это реализовать

только перенеся ваши скрипты на alertFox, о чем писал spy686, но ни как не описанным вами способом

Всем привет.
Мне нужен скрипт умножения одного числа на другое... Сколько стоит такая работа? Может кому-то это покажется просто, но я не нашел в инете готового ответа, а сам далек от программирования

evkrem пишет

Всем привет.
Мне нужен скрипт умножения одного числа на другое...

умножение

Выделить код

Код:

SET !VAR1 5
SET !VAR2 27
SET !VAR3 EVAL("{{!VAR1}}*{{!VAR2}}")

InfSub пишет
evkrem пишет

Всем привет.
Мне нужен скрипт умножения одного числа на другое...

умножение

Выделить код

Код:

SET !VAR1 5
SET !VAR2 27
SET !VAR3 EVAL("{{!VAR1}}*{{!VAR2}}")

Спасибо!

Gergi пишет

Вот так работает iimPlay("Odnoklassniki.iim",60); А вот так не хочет iimPlay("www.example.com/Odnoklassniki.iim",60);   Можно ли это реализовать?

Может, искать решение здесь:
Manage -> Опции -> Shared scripts (таблица Site - Status)

Подскажите как в JS открывать новый TAB ?

Всем доброго! Помогите заставить работать такую фичу! Нужно с помощью имакроса заставить двигаться ползунок. Вот код с сайта:

скрытый текст

Выделить код

Код:

<div id="payout_multiplier_div" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all" aria-disabled="false">
<div class="ui-slider-range ui-widget-header ui-corner-all ui-slider-range-min" style="width: 0%;"></div>
<a class="ui-slider-handle ui-state-default ui-corner-all" href="#" style="left: 0%;"></a>
</div>


При передвижении мышкой меняется значение стилей width и left. Как это реализовать в iMacros? Возможно ли изменить значение Style?

Cazanova777 пишет

Всем доброго! Помогите заставить работать такую фичу! Нужно с помощью имакроса заставить двигаться ползунок. Вот код с сайта:

скрытый текст

Выделить код

Код:

<div id="payout_multiplier_div" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all" aria-disabled="false">
<div class="ui-slider-range ui-widget-header ui-corner-all ui-slider-range-min" style="width: 0%;"></div>
<a class="ui-slider-handle ui-state-default ui-corner-all" href="#" style="left: 0%;"></a>
</div>


При передвижении мышкой меняется значение стилей width и left. Как это реализовать в iMacros? Возможно ли изменить значение Style?

имакрос не меняет значений в коде, заставить двигаться можно, с помощью event и координат, но при этом на компе не должна двигаться мышь, иначе будет воспринято ее движение
как уже сказал, движение работает по координатам и значит скрипт привязан к разрешению экрана или размеру браузера, если он не открыт на полный экран

Gergi пишет

Подскажите как в JS открывать новый TAB ?

window.open("")

Привет всем
Подскажите или направте где можно почитать сатью, как записать такой сценарий

Кликает при условии что в определенном месте XYкоординат есть определенный цвет

vkyurii1 пишет

Кликает при условии что в определенном месте XYкоординат есть определенный цвет

зависит от того, что является цветом - картинка или просто какой-то хтмл элемент
если первое, то по-моему такое может только платная версия имакрос браузера, если же второе, то координат вы все равно не получите, только сможете кликнуть на сам объект

buben88 пишет

Подскажите где можно раздобыть скрипты для сбора догов.
за ранее спасибо!!!

Скинь техзадание на электронку, посмотрю при случае.

Доброго времени суток!
Кто-нибудь сталкивался что конструкция:

скрытый текст

Выделить код

Код:

TAG POS=12 TYPE=TABLE ATTR=* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Extract_{{!NOW:ddmmyy_hhnnss}}.csv


под firefox сохраняет всю таблицу в одну ячейку?
Лечится как-нибудь?

Xuggin пишет

Доброго времени суток!
Кто-нибудь сталкивался что конструкция:

скрытый текст

Выделить код

Код:

TAG POS=12 TYPE=TABLE ATTR=* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Extract_{{!NOW:ddmmyy_hhnnss}}.csv


под firefox сохраняет всю таблицу в одну ячейку?
Лечится как-нибудь?

а как она, по вашему, должна работать? :)
вы экстрактите всю таблицу в 1н элемент екстракта, он и сохраняется в 1н элемент в таблице

InfSub пишет

а как она, по вашему, должна работать? :)
вы экстрактите всю таблицу в 1н элемент екстракта, он и сохраняется в 1н элемент в таблице

Ну я все-таки считал что при TYPE=TABLE, результат все-таки должен выглядеть как таблица. Обойти это как-нибудь можно?

P.s. под ie, кстати таже самая связка выдает все в один столбец, но при этом разбивает на строки

Xuggin пишет
InfSub пишет

а как она, по вашему, должна работать? :)
вы экстрактите всю таблицу в 1н элемент екстракта, он и сохраняется в 1н элемент в таблице

Ну я все-таки считал что при TYPE=TABLE, результат все-таки должен выглядеть как таблица. Обойти это как-нибудь можно?

P.s. под ie, кстати таже самая связка выдает все в один столбец, но при этом разбивает на строки

екстрактить по ячейкам, либо обрабатывать перед сохранением

Я отлаживаю несколько управляющих js скриптов, можно ли используемые в них мои функции вынести в один js файл, чтобы править в одном месте?

Я заметил, что если воспроизводить скрипт с разных окон мазилы, то начинает зависать скрипт из первого окна.
А если макрос воспроизводить с разных окон мазилы, то не зависает.

И ещё одна интересная вещь.
Человек открывает у себя на компьютере скрипт (удалённый доступ) и он у него не работает.
При нажатии воспроизвести скрипт, нет ошибок ничего. При этом убрана галочка в настройках imacros
чтобы не показывал процесс хода скрипта.
Потом я копирую этот же код у себя с компьютера и вставляю в его скрипт и начинает работать.

А если создать текстовый документ, туда вставить код макроса или скрипт не важно, изменить
расширение на .iim (макрос) или .js (скрипт) сохранить в НЕ кодировке UTF-8.
Затем закинуть в папку macros и из окна imacros - редактировать, то окно будет пустым.

Алим пишет

Я заметил, что если воспроизводить скрипт с разных окон мазилы, то начинает зависать скрипт из первого окна.А если макрос воспроизводить с разных окон мазилы, то не зависает.И ещё одна интересная вещь.Человек открывает у себя на компьютере скрипт (удалённый доступ) и он у него не работает.При нажатии воспроизвести скрипт, нет ошибок ничего. При этом убрана галочка в настройках imacrosчтобы не показывал процесс хода скрипта.Потом я копирую этот же код у себя с компьютера и вставляю в его скрипт и начинает работать.А если создать текстовый документ, туда вставить код макроса или скрипт не важно, изменитьрасширение на .iim (макрос) или .js (скрипт) сохранить в НЕ кодировке UTF-8.Затем закинуть в папку macros и из окна imacros - редактировать, то окно будет пустым.
                    Отредактировано Алим (Сегодня 17:51:11)

Я заметил, что если воспроизводить скрипт с разных окон мазилы, то начинает зависать скрипт из первого окна.

А если макрос воспроизводить с разных окон мазилы, то не зависает.

помоему тоже самое написано - т.е. противоречит одно другому

Алим пишет

Алим пишет: И ещё одна интересная вещь.
Человек открывает у себя на компьютере скрипт (удалённый доступ) и он у него не работает.
При нажатии воспроизвести скрипт, нет ошибок ничего. При этом убрана галочка в настройках imacros
чтобы не показывал процесс хода скрипта.
Потом я копирую этот же код у себя с компьютера и вставляю в его скрипт и начинает работать.

может быть причина в версии браузера и скрипта, а так же в настройках

14-11-2014 20:41:33

Алим пишет

А если создать текстовый документ, туда вставить код макроса или скрипт не важно, изменить
расширение на .iim (макрос) или .js (скрипт) сохранить в НЕ кодировке UTF-8.
Затем закинуть в папку macros и из окна imacros - редактировать, то окно будет пустым.

Ну потомучто работает только с UTF-8 и при открытии левой кодировки он не видит текст, т.к. он для него не понятен.

Я заметил, что если воспроизводить скрипт с разных окон мазилы, то начинает зависать скрипт из первого окна.
А если макрос воспроизводить с разных окон мазилы, то не зависает.

Алим пишет

Я заметил, что если воспроизводить скрипт с разных окон мазилы, то начинает зависать скрипт из первого окна.
А если макрос воспроизводить с разных окон мазилы, то не зависает.

И ещё одна интересная вещь.
Человек открывает у себя на компьютере скрипт (удалённый доступ) и он у него не работает.
При нажатии воспроизвести скрипт, нет ошибок ничего. При этом убрана галочка в настройках imacros
чтобы не показывал процесс хода скрипта.
Потом я копирую этот же код у себя с компьютера и вставляю в его скрипт и начинает работать.

А если создать текстовый документ, туда вставить код макроса или скрипт не важно, изменить
расширение на .iim (макрос) или .js (скрипт) сохранить в НЕ кодировке UTF-8.
Затем закинуть в папку macros и из окна imacros - редактировать, то окно будет пустым.

Ты на VPS\VDS работал через imacros ?  - вот когда там поработаешь с imacros - поймешь что такое глюки )))

kolshix пишет

Ты на VPS\VDS работал через imacros ?

К счастью не приходилось иметь дело с такими вещами!

Алим пишет
kolshix пишет

Ты на VPS\VDS работал через imacros ?

К счастью не приходилось иметь дело с такими вещами!

Там imacros в 50 % стопорится на командах "найти элемент и выдать ошибку" + чтение информации из файла , если файл динамический то есть то нет (для определения false/true)+ динамические ссылки где часть заменяется * + особенно обожает iimPlay("CODE") и iimPlayCode("") + и на некликабельных командах тоже любит зависать
Вот тогда начинаешь мудрить .... !

kolshix пишет

Вот тогда начинаешь мудрить .... !

Господа, я думаю, вы забываете о таком основополагающем факторе, как ОС
Да, все привыкли, что основные глюки имакроса связаны с версией ФФ и версией иМакроса, но еще полтора года назад явно проступали глюки свянные и с версией ОС, просто менее заметные и менее обсуждаемые, т.к. основная ОС была Windows 7, тем не менее, были проблемы обнаруживаемые только под "восьмеркой", при том возникающие, только при генерации iim-кода js-скриптом, хотя, возможно, были и какие-то глюки и в iim-скриптах.
Так же, возникали проблемы с управляющим js-скриптом и в WinXP (тот код, что работал в Win7, сыпался ошибками на XP, если при этом проштудировать литературу по данным ошибкам, то будет понятно, что в XP - используется более старая версия js, тем не менее, запрос версии js в XP и 7 - выдавал идентичную версию).

К чему все это: на виртуальных серверах, в большинстве случаев, стоит серверная версия ОС, имеющая отличия в работе от домашней версии. Большинство ОС, стоит на виртуальном железе и имеет несколько иные принципы работы, нежели при установке на обычное железо. ФФ не заточен под это и работа скажем, на многопроцессорном сервере, да еще и под управлением, к примеру, Win Server 2012 - вполне может вызывать определенные ошибки, которых не возникает на домашнем ПК, и исправляют их - гораздо позднее, по причине того, что ФФ на сервере, в 95% случаев - редкость и, по сути, прихоть.

А взять, для примера, линукс системы, которые всегда славились своей стабильностью, хотя и не дружественностью, к обычному пользователю... Если быть конкретней Debian Based, к примеру, Ubuntu или Linux Mint... Стабильность последних версий FF в них, вообще оставляет желать лучшего, а иногда и желание пойти убивать =)

InfSub пишет

А взять, для примера, линукс системы, которые всегда славились своей стабильностью, хотя и не дружественностью, к обычному пользователю... Если быть конкретней Debian Based, к примеру, Ubuntu или Linux Mint... Стабильность последних версий FF в них, вообще оставляет желать лучшего, а иногда и желание пойти убивать =)

Давно мечтаю поработать на этих ОС - но нет под рукой второго компа ! а серверы и  домашний - заняты под 90 % - очень бы приятно былобы работать с под них на ФФ - думаю ресурсов потребляли бы намного меньше  (за стабильность и так все знают) - приходится довольствоваться тем что имеем

а ОС WS 2008 R2 - это ужа как повезёт - ФФ версии + imacros версии + различного рода софт и дополнения - по этому и пишу что  imacros хоть и глючный - но грех жаловаться когда он работает на домашнем ПК ! проблемы особенно когда оптимизируешь скрипты под свой ПК, а потом кидаешь на другую машину и пошли глюки - и ищи откуда они идут !!

kolshix пишет

думаю ресурсов потребляли бы намного меньше

к сожалению, это давно уже не соответствует истине, хотя есть быстрые и шустрые дистрибутивы, но это явно не про Ubuntu 14 и LinuxMint 17

загрузка проца и памяти открытым FF без запущенных макросов, но с открытыми 20 закладками
227b4f9cce8ecd1dff827ad3627ab1f2.png

Как извлечь имя профиля из ссылки и открыть её ?

так не работает

Выделить код

Код:

URL GOTO=http://ok.ru/*/groups EXTRACT=href
URL GOTO=http://ok.ru/{{!EXTRACT}}/groups


вот так он извлекает ссылку полностью
но и вставляет полностью, а надо только имя профиля из ссылки
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Алим<SP>Кармоков EXTRACT=href
URL GOTO=http://ok.ru/{{!EXTRACT}}/groups

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Алим<SP>Кармоков EXTRACT=href
URL GOTO=http://ok.ru/{{!EXTRACT}}/groups


в этом случае:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Алим<SP>Кармоков EXTRACT=txt
URL GOTO=http://ok.ru/{{!EXTRACT}}/groups


скрытый текст

Выделить код

Код:

URL GOTO=http://ok.ru/*/groups EXTRACT=href
URL GOTO=http://ok.ru/{{!EXTRACT}}/groups


в этом случае первоя строчка не понятна

первая строка нужна для извлечения ссылки

16-11-2014 13:44:22
Всё сделал, получилось

Я пишу управляющий скрипт.
Задача макроса заходить в группы. Группы из собственного профиля из раздела "Группы"
После входа в группу, нужно вернуться обратно в раздел "Группы", но с помощью ссылки, а не действием назад.

Но, дело в том, что находясь на странице группы, не из чего извлечь имя профиля.
Как это можно сделать ?

Вот если можно было с одного макроса передать извлечённое в другой макрос, тогда получилось бы.

первая строка нужна для извлечения ссылки

скрытый текст

Выделить код

Код:

URL GOTO=http://ok.ru/*/groups EXTRACT=href
URL GOTO=http://ok.ru/{{!EXTRACT}}/groups


Сомневаюсь что получиться

Вот если можно было с одного макроса передать извлечённое в другой макрос, тогда получилось бы.

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

ZZANOZZA пишет

а в каком топике можно обсудить написание скриптов в iMacros ??
просто тут проблема возникла,есть координаты и требуется,чтобы между кликами по ним,было рандомное время от 4 до 7 секунд. Не объясните,как это сделать?

сначала в переменную помещаем случайное число:

SET !VAR1 EVAL("Math.floor(Math.random()*5+1);")

а затем ожидаем:

WAIT SECONDS={{!VAR1}}

вообще EVAL("") - это функция, которая использует язык JavaScript, где:

Math.floor() - функция, которая выдает целое число, а

Math.random() тоже функция, генерирующая случайное число из системного таймера компа

всё я уже решил свои проблемы

Алим пишет

всё я уже решил свои проблемы

Уточняю (конкретно от 4 до 7):

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor( Math.random()*(4-7+1))+7;")

Подниму ещё раз тему - Нагрузка оперативы FF
Не перезагружал FF 4 суток и комп 7 суток в итоге дошло до того что FF уже требует более 350 и более оперативы, а это много , учитывая что я запустил 7 штук и хочу ещё !  начал смотреть другие браузеры на основе огненной лисы - нашел Pale Moon - (сеаманки не предлагать)
Установил туда все нужные дополнения - отключил все плагины - вбил все глубокие настройки - установил imacros 8.6.0. ------ на протяжении часа (комп ещё не перезагружал и параллельно работает три FF )  - пока жрет 85-90 RAM
Кто что тестировал ? ДЕЛИТЕСЬ.....

может кто версии FF использовал которые по меньше RAM жрут !?

kolshix пишет

Подниму ещё раз тему - Нагрузка оперативы FF
Не перезагружал FF 4 суток и комп 7 суток в итоге дошло до того что FF уже требует более 350 и более оперативы, а это много , учитывая что я запустил 7 штук и хочу ещё !  начал смотреть другие браузеры на основе огненной лисы - нашел Pale Moon - (сеаманки не предлагать)
Установил туда все нужные дополнения - отключил все плагины - вбил все глубокие настройки - установил imacros 8.6.0. ------ на протяжении часа (комп ещё не перезагружал и параллельно работает три FF )  - пока жрет 85-90 RAM
Кто что тестировал ? ДЕЛИТЕСЬ.....

может кто версии FF использовал которые по меньше RAM жрут !?

Pale Moon - тоже юзал, под виндой стабильна и жрет реально меньше ФФ, хотя я, обычто втыкаю кроме имакроса еще резалку флеша и рекламы, кол-во памяти - не замерял
под линухом, та же проблема, что и с ФФ - часто падает, впрочем, возможно это баг моего железа, есть пара подозрений
у Pale Moon - минус только один, предыдущая версия имакроса, впрочем, для кого-то это плюс

могу ошибаться ,  но вроде бы слышал, что есть дополнения которые сбрасывают RAM (дополнение FF)(не путать - не весь рам компьютера - такие уже тестировал , не помогают ) - может кто-то что-то знает ??

Народ помогите надо добавить жабу

скрытый текст

Выделить код

Код:

var macro;
macro =  "CODE:";
macro +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:autobet_base_bet CONTENT=0.0000001" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:autobet_bet_odds CONTENT=3" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:autobet_roll_count CONTENT=25" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:autobet_lose_increase_bet CONTENT=YES" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:autobet_lose_increase_bet_percent CONTENT=100.00" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:autobet_bet_hi CONTENT=YES" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:stop_after_profit CONTENT={{i}}" + "\n";  <------ этот айди профит
macro +=  "TAG POS=1 TYPE=BUTTON ATTR=ID:start_autobet" + "\n";    <------ этот айди стартует                          
macro +=  "WAIT SECONDS=10" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:autobet_base_bet CONTENT=0.00001" + "\n"; 
macro +=  "TAG POS=1 TYPE=BUTTON ATTR=ID:start_autobet" + "\n";  тут продолжение
macro +=  "WAIT SECONDS=10" + "\n";
iimPlay(macro)

тут оператор ловит профит но не возвращается в начало
var i=0;
for (i=0;i<=true;i++)
{
if (i==false)
  {
  continue;
  }
  {
  break;
  }
}


надо чтоб профит ловился и тормозил а у меня не тормозит и ещё возвращался в начало если это будет функция.

InfSub пишет

екстрактить по ячейкам, либо обрабатывать перед сохранением

экстрактить по ячейкам - не вариант, т.к. их количество может быть разным. Обработка я так понимаю должна идти силами js?

дапцеон, правила не для Вас писали? код в спойлер
Xuggin, как вариант, или пост обработка, удаляющая лишние кавычки в файле

Подскажите пожалуйста. нашел скрипт для сбора криптовалюты. выдает ошибку в четвертой строчке. кошельки все вставил. в чем проблема? оригинал прилагаю

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=http://btc.rena-faucet.com/?id=656
TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT=Your Bitcoin wallet
TAG POS=1 :SUBMIT FORM=NAME:myForm ATTR=*
TAG POS=1 :SUBMIT FORM=ID:furmularz ATTR=*
TAB T=1
WAIT SECONDS=14
CLICK X=966 Y=28
WAIT SECONDS=5
URL GOTO=http://ltc.rena-faucet.com/?id=4916
TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT=Your Litecoin wallet
TAG POS=1 :SUBMIT FORM=NAME:myForm ATTR=*
TAG POS=1 :SUBMIT FORM=ID:furmularz ATTR=*
TAB T=1
WAIT SECONDS=14
CLICK X=966 Y=28
WAIT SECONDS=5URL GOTO=http://doge.rena-faucet.com/?id=3594
TAG POS=1 ATTR=TXT:DogeCoin
TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT=Your Dogecoin wallet
TAG POS=1 :SUBMIT FORM=NAME:myForm ATTR=*
TAG POS=1 :SUBMIT FORM=ID:furmularz ATTR=*
TAB T=1
WAIT SECONDS=14
CLICK X=966 Y=28

WAIT SECONDS=3600

Может кто-нибудь поможет написать код в imacros загружается первый сайт и если после определения капчи и нажатия кнопки для зачисления ...  на сайте появляется надпись Insufficient funds. чтобы происходил переход на загрузку другого сайта.Имеется следующий код

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE yes
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
CMDLINE !DATASOURCE dann_anti.csv

'Определяем переменные
'если dann_anti.csv не заполнили - работать не будет

SET BTC {{!COL1}}
SET LOGIN {{!COL2}}
SET PASS {{!COL3}}
SET EMAIL {{!COL4}}
SET FREEBITCOPASS {{!COL5}}
SET FREEDOGE {{!COL6}}
SET FREEDOGEPASS {{!COL7}}
SET API {{!COL8}}

'==========================================
'Собираем с smallfaucet 20 мин
'==========================================
URL GOTO=http://goo.gl/Wh2Y3g
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{BTC}}
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch_smallfaucet.png WAIT=YES
TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
wait seconds=1

TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch_smallfaucet.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=1
TAB CLOSE

TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Get<SP>a<SP>reward!
SET !EXTRACT NULL
WAIT SECONDS=30


'==========================================
'Собираем с yourfreebitcoin 15 мин Вписал
'==========================================
URL GOTO=http://goo.gl/0NQ4r5
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{BTC}}
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch_yourfreebitcoin.png WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEITEM
WAIT SECONDS=1

TAB OPEN
TAB T=2
SET !TIMEOUT_PAGE 120
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch_yourfreebitcoin.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=1
TAB CLOSE

TAB T=1
SET !TIMEOUT_PAGE 60
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:recaptcha_response_field CONTENT={{!EXTRACT}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Get<SP>a<SP>reward!
SET !EXTRACT NULL
WAIT SECONDS=2

Xuggin пишет
InfSub пишет

екстрактить по ячейкам, либо обрабатывать перед сохранением

экстрактить по ячейкам - не вариант, т.к. их количество может быть разным. Обработка я так понимаю должна идти силами js?

можно попробовать в JS в массив разбить, ну а затем извращаться

17-11-2014 21:29:48

buben88 пишет

Подскажите пожалуйста. нашел скрипт для сбора криптовалюты. выдает ошибку в четвертой строчке. кошельки все вставил. в чем проблема? оригинал прилагаю

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
TAB T=1
URL GOTO=http://btc.rena-faucet.com/?id=656
TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT=Your Bitcoin wallet
TAG POS=1 :SUBMIT FORM=NAME:myForm ATTR=*
TAG POS=1 :SUBMIT FORM=ID:furmularz ATTR=*
TAB T=1
WAIT SECONDS=14
CLICK X=966 Y=28
WAIT SECONDS=5
URL GOTO=http://ltc.rena-faucet.com/?id=4916
TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT=Your Litecoin wallet
TAG POS=1 :SUBMIT FORM=NAME:myForm ATTR=*
TAG POS=1 :SUBMIT FORM=ID:furmularz ATTR=*
TAB T=1
WAIT SECONDS=14
CLICK X=966 Y=28
WAIT SECONDS=5URL GOTO=http://doge.rena-faucet.com/?id=3594
TAG POS=1 ATTR=TXT:DogeCoin
TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT=Your Dogecoin wallet
TAG POS=1 :SUBMIT FORM=NAME:myForm ATTR=*
TAG POS=1 :SUBMIT FORM=ID:furmularz ATTR=*
TAB T=1
WAIT SECONDS=14
CLICK X=966 Y=28

WAIT SECONDS=3600

может <sp> вместо пробелов поможет

17-11-2014 21:31:26

PTslawa681 пишет

Может кто-нибудь поможет написать код в imacros загружается первый сайт и если после определения капчи и нажатия кнопки для зачисления ...  на сайте появляется надпись Insufficient funds. чтобы происходил переход на загрузку другого сайта.Имеется следующий код

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE yes
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
CMDLINE !DATASOURCE dann_anti.csv

'Определяем переменные
'если dann_anti.csv не заполнили - работать не будет

SET BTC {{!COL1}}
SET LOGIN {{!COL2}}
SET PASS {{!COL3}}
SET EMAIL {{!COL4}}
SET FREEBITCOPASS {{!COL5}}
SET FREEDOGE {{!COL6}}
SET FREEDOGEPASS {{!COL7}}
SET API {{!COL8}}

'==========================================
'Собираем с smallfaucet 20 мин
'==========================================
URL GOTO=http://goo.gl/Wh2Y3g
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{BTC}}
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch_smallfaucet.png WAIT=YES
TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
wait seconds=1

TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch_smallfaucet.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=1
TAB CLOSE

TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Get<SP>a<SP>reward!
SET !EXTRACT NULL
WAIT SECONDS=30


'==========================================
'Собираем с yourfreebitcoin 15 мин Вписал
'==========================================
URL GOTO=http://goo.gl/0NQ4r5
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{BTC}}
WAIT SECONDS=2
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch_yourfreebitcoin.png WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEITEM
WAIT SECONDS=1

TAB OPEN
TAB T=2
SET !TIMEOUT_PAGE 120
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch_yourfreebitcoin.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=1
TAB CLOSE

TAB T=1
SET !TIMEOUT_PAGE 60
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:recaptcha_response_field CONTENT={{!EXTRACT}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Get<SP>a<SP>reward!
SET !EXTRACT NULL
WAIT SECONDS=2

в сторону js смотри

spy686 пишет

можно попробовать в JS в массив разбить, ну а затем извращаться

можно, ни кто не спорит, но ты сам пробовал? особенно, если в таблице присутствуют кавычки=)

17-11-2014 22:16:19

spy686 пишет

выдает ошибку в четвертой строчке

во первых, цитировать нужно ошибку: в данном, коде причина ошибки видна не вооруженным глазом, но на будущее - тут экстрасенсов нет
решение, либо:

spy686 пишет

может <sp> вместо пробелов поможет

либо:

Выделить код

Код:

TAG POS=1 :TEXT FORM=NAME:myForm ATTR=NAME:email CONTENT="Your Bitcoin wallet"

spy686 пишет

в сторону js смотри

я бы для начала, PTslawa681 - посоветовал почитать правила, на тему размещения объемных материалов, тем более кода

InfSub - для вас и других пользователей есть не плохая информация (может будет полезна)
Для платформы Mozilla есть дополнение memory_fox-7.4-fx  ====== но ещё лучше будет если его установить на Pale Moon
вот что получилось :

скрытый текст
69bf5ab57269e2ac6551dffca7557a22.png

Pale Moon - всеравно со временем продолжает увеличивать  потребление RAM - но раньше я с трудом 7-8 FF  запускал , а тут 11 PM - и ещё запущу!!!

Вот форум где иммется скрипт по сбору криптовалюты

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

, но чтобы его получить надо зарегится по ссылкам автора этого скрипта. Скрипт рабочий на 100%, но недостаток один надо постоянно править ссылки, так как сайты то появляются то исчезают. Автор не хочет усовершенствовать скрипт.
Вот здесь
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

предложения по оптимизации скрипта, но автор ни в какую не хочет внести функцию чтобы 
когда "insufficiend funds", то скрипт не повторял тратить деньги и не заходил на страницу снова (как будто инкоррект капча), а просто шел дальше?
Если кто силён в JS, то подмагните автору, всё -таки скрипт бессплатный.

Всплывает окно: 6986524.jpg и iMacros зависает.

Как с этим бороться?

Revers пишет

Всплывает окно: http://images.vfl.ru/ii/1416351752/ec4801e1/6986524.jpg и iMacros зависает.

Как с этим бороться?

на каком сайте высвечивает данное окно ? Не пробовал поставить imacros на запись и нажать на ok и посмотреть на полученный код - потом вписать его часть в свой скрипт и проверить работоспособность ?


часто использую что-то подобное

Выделить код

Код:

TAB T=1
ONDIALOG POS=1 BUTTON=OK CONTENT=
ONDIALOG POS=2 BUTTON=OK CONTENT=
ONDIALOG POS=3 BUTTON=OK CONTENT=
ONDIALOG POS=4 BUTTON=OK CONTENT=
ONDIALOG POS=5 BUTTON=OK CONTENT=
ONDIALOG POS=6 BUTTON=OK CONTENT=
ONDIALOG POS=7 BUTTON=OK CONTENT=
ONDIALOG POS=8 BUTTON=OK CONTENT=
ONDIALOG POS=9 BUTTON=OK CONTENT=

==> ТУТ <==                   ваша КОМАНДА отсылающая вписанную капчу на проверку и обязательно вставить код (подождать) - как ниже 

WAIT SECONDS=3

в тот момент пока будет работать код (подождать) - вероятно выскочит ваше окно "alert" вот код  ONDIALOG POS=1 BUTTON=OK CONTENT= теоретически должен его закрыть

Пробовал, если нажать СТОП , не нажав OK, то скрипт в зависшем состоянии, только после нажатия на OK , скрипт отвисает. Нужный код уже прописан:

Выделить код

Код:

macro1 += "ONDIALOG POS=1 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=2 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=3 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=4 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=5 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=6 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=7 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=8 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=9 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=10 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=11 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=12 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=13 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=14 BUTTON=OK CONTENT="+ru;
macro1 += "ONDIALOG POS=15 BUTTON=OK CONTENT="+ru;

, но не помогает. У тебя  виснет при подобных окнах? Нужно , чтобы окно на сайте не появлялось , например , даже если я пропишу

Выделить код

Код:

alert(Wrong Captcha)

в макросе. Как отключить алерты через about:config? Или в настройках firefox, как запретить эти окна? Теоретически , но на деле , если скрипт зависает при появлении этого окна, то он ничего не закроет.

Revers пишет

Пробовал, если нажать СТОП , не нажав OK, то скрипт в зависшем состоянии, только после нажатия на OK , скрипт отвисает.

Дай ссылке на сайт !

kolshix пишет

InfSub - для вас и других пользователей есть не плохая информация (может будет полезна)
Для платформы Mozilla есть дополнение memory_fox-7.4-fx  ====== но ещё лучше будет если его установить на Pale Moon
вот что получилось :


Pale Moon - всеравно со временем продолжает увеличивать  потребление RAM - но раньше я с трудом 7-8 FF  запускал , а тут 11 PM - и ещё запущу!!!

Доброго времени суток, не знаю как у вас, а у меня imacros  на нем не работает. Макросы видит, а запускать их не хочет.

anber121 пишет

Доброго времени суток, не знаю как у вас, а у меня imacros  на нем не работает. Макросы видит, а запускать их не хочет.

правила
2.  Не рекомендуется:
2.2  Задавать вопрос без указания:
2.2.1  Содержания страницы "Информация для решения проблем". Для его получения откройте пункт меню "Справка —> Информация для решения проблем", скопируйте её, нажав кнопку "Копировать текст в буфер обмена", и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».
2.2.2  Содержания страницы "Включённые плагины". Для его получения наберите в строке адреса about:plugins (в Thunderbird перейдите по ссылке со страницы "Информация для решения проблем"), скопируйте содержимое страницы в буфер обмена и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».

Здравствуйте. В ходе работы и изучения iMacrosa  возник вопрос...

С цифровым рандомом всё понятно.  Команда

Выделить код

Код:

SET !VAR3 EVAL("var random=Math.floor(Math.random()*13 + 1); random;")

выдаёт случайное число от 1 до 13.
А есть возможность рандомно вызывать, например, нажатие на кнопку из нескольких на странице?
Вот это нажимает на 4 кнопки по порядку. Хотелось бы  заставить скрипт нажимать на одну случайную.

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
TAB CLOSEALLOTHERS
'URL GOTO=http://site.ru
TAG POS=1 TYPE=SPAN ATTR=TXT:Плохо
TAG POS=1 TYPE=SPAN ATTR=TXT:Нормально
TAG POS=1 TYPE=SPAN ATTR=TXT:Хорошо
TAG POS=1 TYPE=DIV ATTR=TXT:Отлично*


И ещё. На странице есть 4 ссылки (url1.htm, url2.htm.... url4.htm ) Какой командой можно заставить макрос нажимать на одну ссылку случайно?

Здравствуйте! Делаю макрос для удаления личных сообщений в твиттере. Возникли трудности...
вот мой код:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Serg<SP>Smith<SP>@NeOrel<SP>20<SP>ч.20<SP>часов<SP>назад
TAG POS=1 TYPE=SPAN ATTR=CLASS:Icon<SP>Icon--dots&&TXT:
TAG POS=1 TYPE=BUTTON ATTR=TXT:Удалить
TAG POS=1 TYPE=BUTTON ATTR=ID:confirm_dialog_submit_button
TAG POS=1 TYPE=DIV ATTR=TXT:Aскольд<SP>Вешалкин<SP>@Veasko<SP>17<SP>нояб.
TAG POS=1 TYPE=SPAN ATTR=CLASS:Icon<SP>Icon--dots&&TXT:
TAG POS=1 TYPE=BUTTON ATTR=TXT:Удалить
TAG POS=1 TYPE=BUTTON ATTR=ID:confirm_dialog_submit_button
TAG POS=1 TYPE=DIV ATTR=TXT:Nastya<SP>Babitskaya<SP>@nastyababitskay<SP>Hi,<SP>Do<SP>you*
TAG POS=1 TYPE=SPAN ATTR=CLASS:Icon<SP>Icon--dots&&TXT:
TAG POS=1 TYPE=BUTTON ATTR=TXT:Удалить
TAG POS=1 TYPE=BUTTON ATTR=ID:confirm_dialog_submit_button


как вы заметили, делал его через запись)  можно ли как то сделать одинаковые строчки для щелчка мышью по сообщению? Чтобы скрипт был независим от того что написано в сообщении?

udalov пишет

А есть возможность рандомно вызывать, например, нажатие на кнопку из нескольких на странице?
Вот это нажимает на 4 кнопки по порядку. Хотелось бы  заставить скрипт нажимать на одну случайную.

скрытый текст

Выделить код

Код:

TAB T=1
TAB CLOSEALLOTHERS
'URL GOTO=http://site.ru
TAG POS=1 TYPE=SPAN ATTR=TXT:Плохо
TAG POS=1 TYPE=SPAN ATTR=TXT:Нормально
TAG POS=1 TYPE=SPAN ATTR=TXT:Хорошо
TAG POS=1 TYPE=DIV ATTR=TXT:Отлично*


И ещё. На странице есть 4 ссылки (url1.htm, url2.htm.... url4.htm ) Какой командой можно заставить макрос нажимать на одну ссылку случайно?

как-то так

Выделить код

Код:

TAB T=1
TAB CLOSEALLOTHERS
'URL GOTO=http://irecommend.ru/content/asya-naidet-metall-vezde
SET !VAR3 EVAL("var a=['Плохо','Нормально','Хорошо'],r=Math.floor(Math.random()*2 + 0);a[r];") 
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR3}}
' но, строка ниже не подпадет под такой вариант, т.к. находится в другом html-теге
'TAG POS=1 TYPE=DIV ATTR=TXT:Отлично*


19-11-2014 11:53:56
twitter-master, код в спойлер уберите!

19-11-2014 11:55:04

twitter-master пишет

можно ли как то сделать одинаковые строчки для щелчка мышью по сообщению? Чтобы скрипт был независим от того что написано в сообщении?

можно, если использовать id тега

InfSub пишет
udalov пишет

А есть возможность рандомно вызывать, например, нажатие на кнопку из нескольких на странице?
Вот это нажимает на 4 кнопки по порядку. Хотелось бы  заставить скрипт нажимать на одну случайную.

скрытый текст

Выделить код

Код:

TAB T=1
TAB CLOSEALLOTHERS
'URL GOTO=http://site.ru
TAG POS=1 TYPE=SPAN ATTR=TXT:Плохо
TAG POS=1 TYPE=SPAN ATTR=TXT:Нормально
TAG POS=1 TYPE=SPAN ATTR=TXT:Хорошо
TAG POS=1 TYPE=DIV ATTR=TXT:Отлично*


И ещё. На странице есть 4 ссылки (url1.htm, url2.htm.... url4.htm ) Какой командой можно заставить макрос нажимать на одну ссылку случайно?

как-то так

Выделить код

Код:

TAB T=1
TAB CLOSEALLOTHERS
'URL GOTO=http://site.ru
SET !VAR3 EVAL("var a=['Плохо','Нормально','Хорошо'],r=Math.floor(Math.random()*2 + 0);a[r];") 
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR3}}
' но, строка ниже не подпадет под такой вариант, т.к. находится в другом html-теге
'TAG POS=1 TYPE=DIV ATTR=TXT:Отлично*

Супер! Благодарю. Теперь попробую по аналоги сделать рандомный выбор из нескольких ссылок на странице.

PS. Заинтересовало, а почему рандомизация именно такая, т.е. от 0 до двух. И  где можно прочитать, что значит a[r]

Выделить код

Код:

SET !VAR3 EVAL("var a=['Плохо','Нормально','Хорошо'],r=Math.floor(Math.random()*2 + 0);a[r];")
anber121 пишет

Доброго времени суток, не знаю как у вас, а у меня imacros  на нем не работает. Макросы видит, а запускать их не хочет.

вот ссылки на скачивание
Тут все ссылки по Pale Moon
32-bit (На этой работаю Я)
64-bit
Тут инструкция русификации
Тут все версии Imacros
8.6.0 (На этой работаю Я)

Кстати за 30 часов работы Pale Moone стал поедать 180 оперативы , хотя во время запуска было только 80

udalov пишет

PS. Заинтересовало, а почему рандомизация именно такая, т.е. от 0 до двух. И  где можно прочитать, что значит a[r]

потому что a это массив, а в индексном массиве, первым индексом - является 0

19-11-2014 18:42:34
а почитать - можно, например, ТУТ

kolshix пишет
anber121 пишет

Доброго времени суток, не знаю как у вас, а у меня imacros  на нем не работает. Макросы видит, а запускать их не хочет.

вот ссылки на скачивание
Тут все ссылки по Pale Moon
32-bit (На этой работаю Я)
64-bit
Тут инструкция русификации
Тут все версии Imacros
8.6.0 (На этой работаю Я)

Кстати за 30 часов работы Pale Moone стал поедать 180 оперативы , хотя во время запуска было только 80

Все ставил по указанным ссылкам, кроме версии (у меня 64), результат: браузер стал, русифицировался, установил imakros, видит панель, окно с макросами, открывает папки с ними, а вот запускать их на исполнение отказывается (ни чего не происходит). из 48 штук не выполнил ни одного

anber121 пишет

Все ставил по указанным ссылкам, кроме версии (у меня 64), результат: браузер стал, русифицировался, установил imakros, видит панель, окно с макросами, открывает папки с ними, а вот запускать их на исполнение отказывается (ни чего не происходит). из 48 штук не выполнил ни одного

Вам было процитировано, что нужно сделать или правила не для Вас писаны?

Есть вариант закрыть alert ?

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=A ATTR=TXT:Подтвердить

Не помогает

offtop: Или плагин есть какой-нить? (InfSub, только не шли цитату из правил, пжл :))

spy686 пишет

Есть вариант закрыть alert ?

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=A ATTR=TXT:Подтвердить

Не помогает

ссылку на страницу сайта, с алертом (в спойлере, в теге noindex)

InfSub пишет
spy686 пишет

Есть вариант закрыть alert ?

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=A ATTR=TXT:Подтвердить

Не помогает

ссылку на страницу сайта, с алертом (в спойлере, в теге noindex)

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Шаги воспроизведения:
1. нажимаешь выполнить,
2. задание не выполняешь
3. В pop-up нажимаешь "Подтвердить"

spy686 пишет

Шаги воспроизведения:
1. нажимаешь выполнить,
2. задание не выполняешь
3. В pop-up нажимаешь "Подтвердить"

и где там alert?

InfSub пишет
spy686 пишет

Шаги воспроизведения:
1. нажимаешь выполнить,
2. задание не выполняешь
3. В pop-up нажимаешь "Подтвердить"

и где там alert?

Что-то очень похожее на alert
http://screencast.com/t/kdjxcVowDL

spy686 пишет
InfSub пишет
spy686 пишет

Шаги воспроизведения:
1. нажимаешь выполнить,
2. задание не выполняешь
3. В pop-up нажимаешь "Подтвердить"

и где там alert?

Что-то очень похожее на alert
http://screencast.com/t/kdjxcVowDL

хм, может я не дождался, но у меня такого не вылезло... в каких заданиях? лайки, группы? где это?

InfSub пишет
spy686 пишет
InfSub пишет

и где там alert?

Что-то очень похожее на alert
http://screencast.com/t/kdjxcVowDL

хм, может я не дождался, но у меня такого не вылезло... в каких заданиях? лайки, группы? где это?

оно везде есть. Этот был зделан на друзьях. Alert не сразу появляется, с задержкой. Бывает разная 5 -30 сек ).
Он в запросе

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Если этот XML-запрос заблочить, то проверка не проходит. Там похоже где-то в else он прописан.

spy686

собственно - не вижу ни каких сложностей:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Выполнить
TAB T=2
TAB T=1
WAIT SECONDS=5
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=A ATTR=TXT:Подтвердить
TAG POS=1 TYPE=A ATTR=TXT:Закрыть

Писал же в посте #2521

что не работает, проверял.
А тут на, и заработал.
Магия ) InfSub, спасибо )

spy686 пишет

Магия ) InfSub, спасибо )

spy686, бывает, возможно, что-то не учли =)

20-11-2014 22:32:45

spy686 пишет

Если этот XML-запрос заблочить, то проверка не проходит. Там похоже где-то в else он прописан.

скорее всего - это ajax-запрос

spy686 пишет

Писал же в посте #2521

что не работает, проверял.
А тут на, и заработал.
Магия ) InfSub, спасибо )

там вся проблема с задержкой - обычно без задерки у меня тоже такие глюки
ооооо вижу кликалку для букса делаете.....

читать далее...
- у меня раньше такая работала !!! )))  предупреждаю на будущее , если конечно не знаете , там они банят фейковые акки по номеру кошелька , хочу попробовать сделать там заказы выплат на разные номера кошельков которые на одном WMID - может прокатит )

2 kolshix
после ваших фраз, чувствую себя кипятильником =))) что такое букс?

InfSub пишет

2 kolshix
после ваших фраз, чувствую себя кипятильником =))) что такое букс?

А это как раз тот сайт о котором писалось выше....

.....
, где выполняются задания по вступлению в группы, добавлению в друзья, написание комментариев, просмотр рекламы и прочее - я столько этих сайтов просмотрел , пока на imacros не наткнулся. Кстати сайты которые выглядят как БУКСы но в конце концов обманывают исполнителей и не платят денег называются СКАМ .   Imacros просто отлично подходит под БУКСы )))

kolshix пишет

.....
Imacros просто отлично подходит под БУКСы )))

offtop to be continue... =)
в таком случае, я практически начинал изучать имакрос с написания скриптов под БУКСы =) хотя ни тогда, ни теперь, imacros, для меня, не является источником дохода, разве что, за написание скрипта могу что-то взять...
видимо - я тут один не СЕОшник =)

InfSub пишет
kolshix пишет

.....
Imacros просто отлично подходит под БУКСы )))

offtop to be continue... =)
в таком случае, я практически начинал изучать имакрос с написания скриптов под БУКСы =) хотя ни тогда, ни теперь, imacros, для меня, не является источником дохода, разве что, за написание скрипта могу что-то взять...
видимо - я тут один не СЕОшник =)

Тут есть ещё любители азартных игр и поклонники криптовалют! )))

kolshix пишет

Тут есть ещё любители азартных игр и поклонники криптовалют! )))

я - ни то, ни другое, для меня это хобби, поиск интересной головоломки для ума, почему и берусь, обычно, не за заезженные просьбы о скриптах для ок, вк, фб и т.д., а за что-то нестандартное, заставляющее включать мозг =)

InfSub пишет

нестандартное, заставляющее включать мозг

Без обходных решений не обойтись.
Вот к примеру, когда 2 ссылки одновременно в комментарии к посту в группе в контакте постили,
то одна из них становилось ссылкой на неизвестный сайт.

Решение сделал такое:
2 комментарии подряд по одному прикреплению.

Добрый день друзья.
Такая проблемка нарисовалась.

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('http://vk.com/public12312312?w=wall','')")

Так все работает, но влом ставить каждый раз восемь цифр ID:12312312 паблика!
Ставлю * за место цифр, не работает сама конструкция - остаётся URL полностью без удаления.
Может кто что подскажет?

slavabest пишет

Добрый день друзья.
Такая проблемка нарисовалась.

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('http://vk.com/public12312312?w=wall','')")

Так все работает, но влом ставить каждый раз восемь цифр ID:12312312 паблика!
Ставлю * за место цифр, не работает сама конструкция - остаётся URL полностью без удаления.
Может кто что подскажет?

Почитай инфу по регуляркам

slavabest пишет

Может кто что подскажет?

скрытый текст

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace(/http://vk.com/public(.*)w=wall/,'')")

InfSub пишет
slavabest пишет

Может кто что подскажет?

скрытый текст

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace(/http://vk.com/public(.*)w=wall/,'')")

К сожалению так (.*) - тоже не работает (после исправления синтаксиса), - адрес не удаляется.

slavabest пишет
InfSub пишет
slavabest пишет

Может кто что подскажет?

скрытый текст

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace(/http://vk.com/public(.*)w=wall/,'')")

К сожалению так (.*) - тоже не работает (после исправления синтаксиса), - адрес не удаляется.

полный вывод extract'a в спойлер, в код

скрытый текст

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('http://vk.com/public71624268?w=wall','')")
PROMPT {{!VAR1}}


Этот код выводит -71624268_2130


скрытый текст

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('/http://vk.com/public(.*)w=wall/','')")
PROMPT {{!VAR1}}


А этот код выводит http://vk.com/public71624268?w=wall-71624268_2130
то есть не робит.

slavabest пишет

то есть не роби

так, стоп, что вы пытаетесь получить в итоге? удалить полностью ссылку?

21-11-2014 14:49:42

если да, то так (забыл экранировать слеши):

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace(/http:\\/\\/vk.com\\/public(.*)w=wall/,'')")

InfSub пишет
slavabest пишет

то есть не роби

так, стоп, что вы пытаетесь получить в итоге? удалить полностью ссылку?

21-11-2014 14:49:42

если да, то так (забыл экранировать слеши):

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace(/http:\\/\\/vk.com\\/public(.*)w=wall/,'')")

Здорово!
Вот сейчас все работает, большое спасибо!

kolshix пишет
spy686 пишет

Писал же в посте #2521

что не работает, проверял.
А тут на, и заработал.
Магия ) InfSub, спасибо )

там вся проблема с задержкой - обычно без задерки у меня тоже такие глюки
ооооо вижу кликалку для букса делаете.....

читать далее...
- у меня раньше такая работала !!! )))  предупреждаю на будущее , если конечно не знаете , там они банят фейковые акки по номеру кошелька , хочу попробовать сделать там заказы выплат на разные номера кошельков которые на одном WMID - может прокатит )

А какое лечение предлагаете, мистер kolshix?

Мой вармант, такой, но бывает не справляется, куда паузы втыркнуть?

скрытый текст

Выделить код

Код:

WAIT SECONDS=3
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=A ATTR=TXT:Подтвердить 
WAIT SECONDS=5 
TAG POS=1 TYPE=A ATTR=TXT:Закрыть

spy686 пишет

А какое лечение предлагаете, мистер kolshix?
Мой вармант, такой, но бывает не справляется, куда паузы втыркнуть?

Вы где проблему споймали ? с добавлением друзей долгая задержка ?
Сейчас пока работаю на таком коде - тормозов пока не заметил - ещё тестирую

ничего нового - можно конечно попробовать через about:config отключить alert/javascrip - но никогда не тестировал работоспособность - даже не предстовляю как в-лайка себя поведёт
......................
только написал это сообщение, сразу же тормоз споймал )))

проблему на друзьях споймал
на в-лайку в разделе друзья долго идёт проверка и пришлось такой код запилить
сначала

Выделить код

Код:

WAIT SECONDS=1 
ONDIALOG POS=1 BUTTON=OK CONTENT=
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=TXT:Подтвердить
WAIT SECONDS=1

потом

Выделить код

Код:

for (;;){
if (iimPlay("zaderjka.iim")<0){break}
}

zaderjka.iim

Выделить код

Код:

'Выполнение заданий друзья 
SET !TIMEOUT_STEP 1
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=DIV ATTR=CLASS:loading&&TXT:
ONDIALOG POS=1 BUTTON=OK CONTENT=
WAIT SECONDS=10
ONDIALOG POS=1 BUTTON=OK CONTENT=

TAG POS=1 TYPE=DIV ATTR=CLASS:loading&&TXT:
ONDIALOG POS=1 BUTTON=OK CONTENT=
WAIT SECONDS=10
ONDIALOG POS=1 BUTTON=OK CONTENT=

TAG POS=1 TYPE=DIV ATTR=CLASS:loading&&TXT:
ONDIALOG POS=1 BUTTON=OK CONTENT=
WAIT SECONDS=10
ONDIALOG POS=1 BUTTON=OK CONTENT=

пока выполняется данная команда, а именно так выглядит команда ползунка задержки

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:loading&&TXT:

код будет мониторить и готовится нажать OK в Alert

Дайте ссылочку пожалуйста на антикапчу, где почитать можно. На сервисе зарегистрировалась, капчу сохраняет, разгадывает, разгадку сохраняет, а вот в окно самой капчи не вводит. Помогите пожалуйста.
Это дял сайта вконтакте
Вот пример кода:

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
SET API —----Тут ключ----
URL GOTO=http://vk.com/club-----
WAIT SECONDS=5
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=-------
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch.gpeg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1

TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=3
TAB CLOSE

TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:free_play_form ATTR=ID:racaptcha_response_field CONTENT={{!EXTRACT}}
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:free_play_form ATTR=ID:*
WAIT SECONDS=3
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить


подскажите что изменить, или где прочитать

Ну Погоди, код поместите в теги "код" и "спойлер"

для vk код, такой вроде был

Выделить код

Код:

TAG POS=2 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
TAG POS=2 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=2


что изменить в вашем коде - последние 5 строк на приведенные мной

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

Ну Погоди пишет

куда макрос ее сохраняет

текст находится в переменной {{!EXTRACT}}

23-11-2014 20:35:47
запишите самостоятельно ввод и отправку капчи и сравните что не верно - вместо "текста капчи", который вы вводили подставьте {{!EXTRACT}}

23-11-2014 20:38:16

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}} - строка с полем для ввода капчи и вставка в нее значения из {{!EXTRACT}}
TAG POS=2 TYPE=BUTTON ATTR=TXT:Отправить - нажатие на кнопу отправить
WAIT SECONDS=2 - ожидание 2 сек после отправки

InfSub
спасибо огромное, получилось, здоровья вам.:)

Подскажите пожалуйста как осуществить идею:
как сделать так, чтобы капча вводилась с помощю аймакрос только когда она появляется. В группах вк по всякому бывает, то вылазит, то нет.

Ну Погоди пишет

Подскажите пожалуйста как осуществить идею:
как сделать так, чтобы капча вводилась с помощю аймакрос только когда она появляется. В группах вк по всякому бывает, то вылазит, то нет.

сделать ветвление с помощью управляющего js-скрипта
на чистом имакросе, сделать - не сможете

Добрый день) Подскажите как вставить произвольную ссылку из файла?

CMDLINE !DATASOURCE coinurl.com.txt
SET !VAR1 30
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/{{!VAR1}})-1)*{{!VAR1}}")

URL GOTO={{!COL1}}

вот есть скрип - действует по принципу, когда заканчивается 30 строка, начинает заново, а мне надо чтоб он вставлял произвольную ссылку из файла.
Спасибо за ответ)

Serjio85 пишет

Добрый день) Подскажите как вставить произвольную ссылку из файла?

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE coinurl.com.txt
SET !VAR1 30
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/{{!VAR1}})-1)*{{!VAR1}}")

URL GOTO={{!COL1}}


вот есть скрип - действует по принципу, когда заканчивается 30 строка, начинает заново, а мне надо чтоб он вставлял произвольную ссылку из файла.
Спасибо за ответ)

так

Выделить код

Код:

SET !VAR1 30
SET !DATASOURCE_LINE EVAL("Math.floor(Math.random()*('{{!VAR1}}'))+1")

InfSub пишет
Serjio85 пишет

Добрый день) Подскажите как вставить произвольную ссылку из файла?

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE coinurl.com.txt
SET !VAR1 30
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/{{!VAR1}})-1)*{{!VAR1}}")

URL GOTO={{!COL1}}


вот есть скрип - действует по принципу, когда заканчивается 30 строка, начинает заново, а мне надо чтоб он вставлял произвольную ссылку из файла.
Спасибо за ответ)

так

Выделить код

Код:

SET !VAR1 30
SET !DATASOURCE_LINE EVAL("Math.floor(Math.random()*('{{!VAR1}}'))+1")

спасибки большое, очень помогло)))

Смотрю базара много а решения проблемы ноль! Pale Moone Подскажите чего не запускаются макросы?

24-11-2014 23:25:33
Старая версия имакроса работает а последняя не хочет

Gergi пишет

Смотрю базара много

пока что - "базар" только от вас, мне процитировать правила, как описываются проблемы или поступить проще, и пометить сообщение, как флуд?
где версия Pale Moon и iMacros'a о которых речь?

Gergi пишет

Смотрю базара много а решения проблемы ноль! Pale Moone Подскажите чего не запускаются макросы?

24-11-2014 23:25:33
Старая версия имакроса работает а последняя не хочет

На сайте дополнений мозила , указано что последние версии imacros точатся под новую версию мазила, а она уже имеет значительные отличия от старой - тем самым наврядле будет работать новая версия Imacros на pale moon (кстати я тоже тестил последнюю версию imacros на палмун и тоже не работала!)

kolshix, если б Gergi удосужился прочитать информацию о поддерживаемых версиях, этого поста бы не было... но поиск ответов на собственные вопросы, явно не его конек

InfSub пишет

kolshix, если б Gergi удосужился прочитать информацию о поддерживаемых версиях, этого поста бы не было... но поиск ответов на собственные вопросы, явно не его конек

Нет чтобы в двух словах объяснить по человечески,и помочь решить проблему,а вот надо умничать,посылать меня на какие то посты где то чё то читать и ничего не понять! Ну вот читал я это  информацию о поддерживаемых версиях И ничего не понял! Только ещё время потратил в пустоту! Хорошо что не все люди такие добрые:rolleyes:

Gergi, в двух словах: ЧИТАЕМ ПРАВИЛА о том как правильно оформлять сообщение о проблеме (нужное - подчеркнул):

правила

2.  Не рекомендуется:
2.2  Задавать вопрос без указания:
2.2.1  Содержания страницы "Информация для решения проблем". Для его получения откройте пункт меню "Справка —> Информация для решения проблем", скопируйте её, нажав кнопку "Копировать текст в буфер обмена", и вставьте его в сообщение под тег "Spoiler" или выложите на сайт «Pastebin».

Gergi пишет

посылать меня на какие то посты где то чё то читать и ничего не понять!

Gergi пишет

Ну вот читал я это  информацию о поддерживаемых версиях И ничего не понял! Только ещё время потратил в пустоту!

если вы не понимаете русский язык, могу порекомендовать обратиться в такое заведение, как школа, т.к. понять надпись: "Работает с Firefox 23.0 и выше" - может даже 5 летний ребенок

скрытый текст
39d9ae7ed0cacdd0bfa8a0b64550d036.png

Ну как это не странно но у меня на Pale Moone Версии Version: 25.1.0 (x64) iMacros 8.8.7 не работает и 8.8.5 тоже не работает,только 8.8.2 работает.

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

Gergi пишет

у меня на Pale Moone Версии Version: 25.1.0 (x64) iMacros 8.8.7 не работает и 8.8.5 тоже не работает,только 8.8.2 работает

PM != FF так что, совместимость и поддержка плагинов - не гарантирована, хотя ранее все работало именно по схеме:  номер версии PM == номеру версии FF (например PM v21 == FF v21, но PM последней версии никогда не равен FF последней версии)

25-11-2014 13:13:15
соответственно iMacros - может работать на PM, но совменстимость и поддержку именно PM - ни кто не гарантировал

25-11-2014 13:36:06

add
при запуске любого скрипта из PM v25.1 + iM v8.8.7 получаем ошибку -1001 (см. рис. слева)
смотрим вики - видим: Unknown Error (неизвестная ошибка)
e5737e7fc8bad2890d30fb27b49e7216.png
о чем это говорит? о том, что плагин не затачивался под PM, а только под FF и изменения внесенные в код PM для его быстродействия - не совместимы с данной версией iM

Вот теперь всё понятно. Спасибо!:) А кто знает что вообще хорошего в версии 8.8.7

Gergi пишет

Вот теперь всё понятно. Спасибо!:) А кто знает что вообще хорошего в версии 8.8.7

История версий iMacros for Firefox + Переводчик Google

Раньше в макросе записывал КОММЕНТАРИИ К ПОСТАМ в сообществах вконтакте, нажимал воспроизвести, и он воспроизводил. А сейчас не записывает и не воспроизводит . Как можно записать по прежнему, что изменилось?

Заранее извиняюсь если неправильно задал вопрос, на каждом форуме свои правила размещения вопросов.
Очень хотелось бы получить ответ на мой вопрос... от знатоков.

elmario пишет

Заранее извиняюсь если неправильно задал вопрос, на каждом форуме свои правила размещения вопросов.
Очень хотелось бы получить ответ на мой вопрос... от знатоков.

Так у тебя вообще макросы не работают? Если так то подозреваю что версия iMacrosa обновилась,установи старую версию имакроса или обнови мазилу.

elmario пишет

сейчас не записывает и не воспроизводит

elmario пишет

Очень хотелось бы получить ответ на мой вопрос... от знатоков.

в правилах - читаем о том, какая требуется информация в ситуации, если что-то не работает
один из вариантов решения проблемы, выше предложил Gergi

Версия Мозиллы 33.0 , Версия imacros 8.8.7 - пробовал откатить  до предыдущих версий (какие были на протяжении года) - результата не принесло.

НЕ РАБОТАЕТ ИМЕННО ЗАПИСЬ МАКРОСА КОММЕНТАРИЯ К ПОСТУ ВК, записывает макрос вот так без слова каким прокомментировал пост:
[TAG POS=1 TYPE=A ATTR=TXT:Комментировать
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button264218147_26],  и после этого выдает ошибку "RuntimeError: element BUTTON specified by ID:reply_button264218147_26 was not found, line 5 (Error code: -921)"

Это проверял только что прокомментировать пост на своей стене, в сообществах тоже самое.

НА СТЕНЕ ЖЕ У МЕНЯ ПИШЕТ И В ГРУППАХ ЗАПИСЫВАЕТ МАКРОС И ВОСПРОИЗВОДИТ БЕЗ ПРОБЛЕМ!

elmario пишет

Версия Мозиллы 33.0 , Версия imacros 8.8.7 - пробовал откатить  до предыдущих версий (какие были на протяжении года) - результата не принесло.

НЕ РАБОТАЕТ ИМЕННО ЗАПИСЬ МАКРОСА КОММЕНТАРИЯ К ПОСТУ ВК, записывает макрос вот так без слова каким прокомментировал пост:
[TAG POS=1 TYPE=A ATTR=TXT:Комментировать
TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button264218147_26],  и после этого выдает ошибку "RuntimeError: element BUTTON specified by ID:reply_button264218147_26 was not found, line 5 (Error code: -921)"

Это проверял только что прокомментировать пост на своей стене, в сообществах тоже самое.

НА СТЕНЕ ЖЕ У МЕНЯ ПИШЕТ И В ГРУППАХ ЗАПИСЫВАЕТ МАКРОС И ВОСПРОИЗВОДИТ БЕЗ ПРОБЛЕМ!

Не найдена кнопка с данным id. ВК сейчас часто использует динамически генерируемые адреса кнопок, поэтому после рефреша страницы кнопка становится как бы другой. Меняется вот эта часть - reply_button264218147_26
Теоретически знаю как с этим бороться, а вот для реализации руки немного не из того места растут

26-11-2014 17:21:52
Кстати, кто-нибудь знает можно ли через imacros с js сделать граббер? Т.е. сам нашёл все ссылки и сам по ним по всем прошёлся.

Xuggin, elmario - event ни кто не отменял

InfSub пишет

Xuggin, elmario - event ни кто не отменял

В смысле режим записи? Ты удивишься, но он не помогает.

да,реально чё то не помогает.

При записи

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#static_datepicker_408160657_date_input" BUTTON=0

При воспроизведении

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#static_datepicker_411950479_date_input" BUTTON=0
InfSub пишет

Xuggin, elmario - event ни кто не отменял

Я код не сам писал, а именно в режиме записи и делал если Вы об этом.

Xuggin пишет

При записи

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#static_datepicker_408160657_date_input" BUTTON=0

При воспроизведении

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#static_datepicker_411950479_date_input" BUTTON=0

и что? проблема id подставить?

InfSub Там всё намного сложнее чем вам кажется.

Gergi пишет

InfSub Там всё намного сложнее чем вам кажется.

там - это где? в комментариях к постам в вк?

Ну лично я пробовал в комментариях к постам в группах вк. Около часа себе мозг выносил ничего не вышло:angry:

Gergi, сорри за иронию, но я - не удивлен =) и на сколько помню, мы тут уже устраивали дискуссию на тему постов, месяц или два назад... нет там ни чего сложного... и способов несколько.. просто вы бьетесь головой об стену, вместо того, чтобы ее обойти.. впрочем и преодолеть ее -  не проблема... тем же EVENT'ом, это прекрасно решается

InfSub:dumb:

Gergi, лучше себя, у меня-то голова нормально работает, а проблемы с решением того или иного, обычно у вас

EVENT TYPE=CLICK SELECTOR="#reply_link-78289787_155>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#reply_field-78289787_155" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-78289787_155" CHARS="Всем приветик!"
EVENT TYPE=CLICK SELECTOR="#reply_button-78289787_155" BUTTON=0

26-11-2014 20:56:47
Много уважаемый InfSub То что вы лучший специалист по макросам об этом даже не стоит спорить. Но вы иногда бываете хамом!:angry:

Gergi, в 10 раз Вам лично говорю, лесть оставьте кому-то другому, тем более, что она далека от истины

Gergi пишет

Но вы иногда бываете хамом!:angry:

Возможно вы и правы, но мне надоедают одни и те же вопросы - каждый день, думаете мне интересно на них отвечать? тем более ответ есть, при том даже на форуме, просто нужно собрать небольшой пазл...
повторюсь, опять же уже в бог знает какой раз, кому мое присутствие и/или манера общения не нравится - есть кнопа - "сообщить модератору" - и не вопрос, я уйду, мое место займет кто-то другой, со свежими мозгами и мышлением.. но для вас это мало что изменит, пока вы не научитесь анализировать то, что вы хотите сделать... пока не научитесь представлять, что хотите сделать в голове, а не тупо нажимая на кнопку "запись"
почему я до сих пор не ушел? наверное, я жду тот вопрос, который поставит меня в тупик, но, видимо не дождусь

elmario Мне свою проблему удалось решить сняв галку Favor element Ids in selector.

Xuggin пишет

elmario Мне свою проблему удалось решить сняв галку Favor element Ids in selector.

Сбрось скрин своих настроек! Я уже что только не делал - вечно ошибки, и при том разные!
35240627dc8b.jpg

elmario, картинку в спойлер

Это Филькина грамота! Не помогает!

Вот как по умничать кому то то есть кому! :angry: А как реализовать проблему некому! Только умеем говорить что человек дебил и руки не с того места растут! Я описал реальную проблему,неужели нельзя взять и реализовать её вместо того чтобы обвинять человека в дебилизме?

27-11-2014 12:39:12
ОБЪЯСНЯЮ КОНКРЕТНУЮ ПРОБЛЕМУ!
Надо открыть группу,найти любое объявление и к нему добавить комментарий.

Gergi, а зачем? что мне с вашей проблемы? я ее решил давно..мне она ни какого интереса не представляет, к тому же я не обвинял ни кого в дибилизме, я только сказал что вы не стой стороны смотрите на проблему, так что будьте добры - не перевирайте мои слова и не придумывайте того, чего нет

InfSub пишет

Gergi, а зачем? что мне с вашей проблемы? я ее решил давно..мне она ни какого интереса не представляет, к тому же я не обвинял ни кого в дибилизме, я только сказал что вы не стой стороны смотрите на проблему, так что будьте добры - не перевирайте мои слова и не придумывайте того, чего нет
                    Отредактировано InfSub (Сегодня 12:40:29)

Будь добр, подскажи тогда с какой стороны смотреть на проблему? Если уже все перепробовали и ничего не получается!!!


ВОТ НАША ПРОБЛЕМА!
Надо открыть группу,найти любое объявление и к нему добавить комментарий. Люое объявления предоставляет собой (картинку на стене или видеозапись БЕЗ ТЕКСТА)

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

elmario пишет
Xuggin пишет

elmario Мне свою проблему удалось решить сняв галку Favor element Ids in selector.

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

скрытый текст
http://screencast.com/t/mrU7I5PoWc1

Вот сюда надо писать комент

скрытый текст

elmario пишет

ВОТ НАША ПРОБЛЕМА!
Надо открыть группу,найти любое объявление и к нему добавить комментарий. Люое объявления предоставляет собой (картинку на стене или видеозапись БЕЗ ТЕКСТА)

не злоупотребляем капсом!

В чем проблема записать действия с помощью event и заменить id вытащенный последовательно из постов тем же имакросом?

скрытый текст
EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-78289787_159" CHARS="Привет!"

Вот чистая запись.

Xuggin пишет

elmario пишет: Xuggin пишет: elmario Мне свою проблему удалось решить сняв галку Favor element Ids in selector.Сбрось скрин своих настроек! Я уже что только не делал - вечно ошибки, и при том разные!скрытый текстhttp://screencast.com/t/mrU7I5PoWc1

Что за ***!!! Все точно так же указал и (Error code: -802)

Не ругайтесь, ведь есть п.3.3.

Вот другая запись

скрытый текст
TAG POS=1 TYPE=DIV ATTR=ID:reply_field-78289787_153

Вместо Привет!  вылазят цифры.

InfSub пишет

elmario пишет: ВОТ НАША ПРОБЛЕМА!Надо открыть группу,найти любое объявление и к нему добавить комментарий. Люое объявления предоставляет собой (картинку на стене или видеозапись БЕЗ ТЕКСТА)не злоупотребляем капсом!В чем проблема записать действия с помощью event и заменить id вытащенный последовательно из постов тем же имакросом?
                    Отредактировано InfSub (Сегодня 12:52:31)

Проблема только в том, что мозгов не хватает у меня заменить id вытащенный последовательно из постов тем же имакросом :cool:
Вот обратился на этом форуме за помощью...

InfSub пишет
elmario пишет

ВОТ НАША ПРОБЛЕМА!
Надо открыть группу,найти любое объявление и к нему добавить комментарий. Люое объявления предоставляет собой (картинку на стене или видеозапись БЕЗ ТЕКСТА)

не злоупотребляем капсом!

В чем проблема записать действия с помощью event и заменить id вытащенный последовательно из постов тем же имакросом?

Ну лично у меня проблема в руках (о чем я кстати сразу и заявлял). В Extract  кроме id попадает куча мусора. Т.е. нужна обработка js, а лично я такое не умею.

Про какую замену ID речь идёт????? Такое впечатление что тут все сами собой общаются и не понимают о чём речь идёт!

elmario пишет
Xuggin пишет

elmario пишет: Xuggin пишет: elmario Мне свою проблему удалось решить сняв галку Favor element Ids in selector.Сбрось скрин своих настроек! Я уже что только не делал - вечно ошибки, и при том разные!скрытый текстhttp://screencast.com/t/mrU7I5PoWc1

Что за пздц!!! Все точно так же указал и (Error code: -802)

Честно, делал под свою задачу. У меня там динамический календарик и у меня получилось.

Xuggin пишет

elmario пишет: Xuggin пишет: elmario пишет: Xuggin пишет: elmario Мне свою проблему удалось решить сняв галку Favor element Ids in selector.Сбрось скрин своих настроек! Я уже что только не делал - вечно ошибки, и при том разные!скрытый текстhttp://screencast.com/t/mrU7I5PoWc1Что за пздц!!! Все точно так же указал и (Error code: -802)Честно, делал под свою задачу. У меня там динамический календарик и у меня получилось.

Так мы же не о календариках говорим. Вопрос в комментарии к посту вконтаке! ;)

elmario пишет

Проблема только в том, что мозгов не хватает у меня заменить id вытащенный последовательно из постов тем же имакросом

Xuggin пишет

Ну лично у меня проблема в руках (о чем я кстати сразу и заявлял). В Extract  кроме id попадает куча мусора. Т.е. нужна обработка js, а лично я такое не умею.

я об этом и говорю.. что проблема решается легко, а вопрос с чисткой вывода extract'a тут обсуждался не единожды, хотя и не имеет к теме прямого отношения, т.к. это js
думаю поиск по теме  по слову replace - поможет

Кто то галочки снимает,кто то ID меняет,.кто то говорит что решил проблему. Короче полный бред! Дайте код что бы убедить меня что я дебил!

Gergi пишет

Дайте код что бы убедить меня что я дебил!

ахахах=)))  могу записать видео, попозже

InfSub пишет
Gergi пишет

Дайте код что бы убедить меня что я дебил!

ахахах=)))  могу записать видео, попозже

Отлично! Буду ждать видео. Мне этот код и нафик не сдался,просто любопытно.

27-11-2014 13:14:21
Многоуважаемый InfSub То что вы решили эту проблему я в этом не сомневаюсь,понятное дело что для вас ничего не возможного нет. Но всё же киньте сюда код,хочется посмотреть на сколько это было легко.

InfSub пишет

Gergi пишет: Дайте код что бы убедить меня что я дебил!ахахах))  могу записать видео, попозже

Я так понимаю, ты так себе цену набиваешь?
Цена вопроса кода?

elmario пишет

Я так понимаю, ты так себе цену набиваешь?

нет - не набиваю, ответ как решить проблему (один из способов) - дал выше, писать код - ни для кого не буду, решайте сами

На самом деле лично этот код никакой ценности в себе не несёт,это голимое занятие спамить Вконтакте,так как немедленно получишь бан! И если человек из-за этого нечтожного кода себе цену набивает,то это глупо!:sick:

27-11-2014 13:20:10
Не мучайте себя писать код,вот он уже записан EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-78289787_159" CHARS="Привет!" Но в комментариях не пишет.

Gergi, как обычно, вы не видите даже то, что написано у вас перед носом, про поиск информации - вообще молчу

27-11-2014 13:21:09

Gergi пишет

Не мучайте себя писать код

что толку с вашей строки - которая не работает?)))))))))))

InfSub пишет

Gergi, как обычно, вы не видите даже то, что написано у вас перед носом, про поиск информации - вообще молчу

Не видим, открой нам глаза СЕНСЕЙ! ) Правда, ну очень поможешь!

elmario пишет

Правда, ну очень поможешь!

кажется, вы противоречите сами себе - несколькими постами выше вы писли, что вам нафиг данный код не нужен

InfSub пишет

elmario пишет: Правда, ну очень поможешь!кажется, вы противоречите сами себе - несколькими постами выше вы писли, что вам yfasbu данный код не нужен

Я писал, что код не нужен? Ты попутал СЕНСЕЙ

Gergi пишет

Мне этот код и нафик не сдался,просто любопытно.

InfSub пишет

Gergi пишет: Мне этот код и нафик не сдался,просто любопытно.

Ну и? Это вообще не я писал, а мне говоришь, что я противоречу сам себе.

P.S. Что за люди пошли? Что за время такое?  Год назад смарт накрылся, на 4PDA написал, сразу парень дал свой номер телефона и под диктовку перепрошил с ним, все ОК ! На вопрос что должен - ответил мне НИЧЕГО НЕ ДОЛЖЕН!
В знак благодарности - пополнил счет на 100грн. А здесь, "Я знаю как это сделать, это не проблема, уже решил ее, вам нужно, вы и думайте как это сделать"...

Gergi

youtube
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


elmario, вы тут не причем, но краткое объяснение как решить проблему я дал выше и давал месяца два месяца назад нашему крикуну Gergi и из-за него же - принципиально не для кого этот код постить не буду

27-11-2014 13:51:30
elmario, прошу прощения, промахнулся в запале, про противоречия писал Gergi

27-11-2014 13:53:47

elmario пишет

P.S. Что за люди пошли?

люди бывают разные, и я кому-то помогаю безвозмездно, а кому только за деньки, а кому-то принципиально не помогаю, все зависит от человека

InfSub пишет

Gergi youtubehttp://youtu.be/VfIlKIL5_eAelmario, вы тут не причем, но краткое объяснение как решить проблему я дал выше и давал месяца два месяца назад нашему крикуну Gergi и из-за него же - принципиально не для кого этот код постить не будуДобавлено Сегодня 13:51:30elmario, прошу прощения, промахнулся в запале, про противоречия писал GergiДобавлено Сегодня 13:53:47elmario пишет: P.S. Что за люди пошли?люди бывают разные, и я кому-то помогаю безвозмездно, а кому только за деньки, а кому-то принципиально не помогаю, все зависит от человека
                    Отредактировано InfSub (Сегодня 13:53:47)

Я написал в личку. Если не сложно ответь...

Много уважаемый InfSub То срань которую вы реализовали я давно реализовал!!!!!!!!!!!!! Это не то что нужно!
!!!!!!!!!!!!!!!

Gergi, тогда о чем же вы тут пишете?

27-11-2014 14:15:30
Gergi, поделитесь с людьми, раз реализовали - в чем сложность?
да и эта "срань" как вы выразились, просто тестовый код - написанный за 5 минут - для показа, что оно без проблем пишется и решается елементарно

Вот на скрине показано куда надо нажимать https://yadi.sk/i/RpED0eb4cxzQj А не писать на стену с открытыми комментариями.

Gergi не вижу принципиальных отличий

27-11-2014 14:28:20
а если быть точным - не вижу вообще ни каких отличий, в спойлере один из постов с видео, нажатие идет именно на "комментировать"

скрытый текст
вот группа:
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

22f7533898f90a8c4c51ffa300d08c96.png

InfSub пишет

Gergi не вижу принципиальных отличийДобавлено Сегодня 14:28:20а если быть точным - не вижу вообще ни каких отличий, в спойлере один из постов с видео, нажатие идет именно на "комментировать"скрытый текствот группа:https://vk.com/club50882217
                    Отредактировано InfSub (Сегодня 14:29:08)

Сенсей, да харе уже нас мучить!) Что касается меня, то понял после просмотра твоих видиозаписей на ютубе, что парень ты неглупый)

Хочу создать управляющий js-скрипт с ветвлениями, только не могу понять с чего начать. Помогите пожалуйста, я в Ява скрипте не очень ориентируюсь, в аймакросе на начальном этапе, но уже немного ориентируюсь. Есть готовность читать, учится, только вот не где читать. уже больше 3 дней попытки разбиваются о стену незнания.
Итак конкретные вопросы:
Не могу понять техническую часть, как в управляющий js-скрипт файл прописать действия до ветвления, которые выполнял аймакрос?
Примеры ветвления есть, не знаю как именно технически что и за чем прописывать.


Ищу наставника, хочу учится.

Ну Погоди пишет

Хочу создать управляющий js-скрипт с ветвлениями, только не могу понять с чего начать. Помогите пожалуйста, я в Ява скрипте не очень ориентируюсь, в аймакросе на начальном этапе, но уже немного ориентируюсь. Есть готовность читать, учится, только вот не где читать. уже больше 3 дней попытки разбиваются о стену незнания.
Итак конкретные вопросы:
Не могу понять техническую часть, как в управляющий js-скрипт файл прописать действия до ветвления, которые выполнял аймакрос?
Примеры ветвления есть, не знаю как именно технически что и за чем прописывать.


Ищу наставника, хочу учится.

я думаю вам проще просто инклудить iim-файлы в управляющий js-скрипт по средством iimPlay()
к примеру:

iimPlay('your_imacros_script.iim');

где your_imacros_script.iim - стандартный iim-файл с вашими действиями до ветвления
примеры, можно посмотреть в папке demo-firefox самого плагина и почитать wiki.imacros.net/iimPlay()
при ветвлении, таким же образом запускаете ваши скрипты с теми или иными действиями

С многоуважаемым InfSub Не возможно спорить! Он говорит на чёрное белое,на красное зелёное! Сто раз ему объяснил что  надо нажимать именно на надпись именно на "комментировать"  Нет он записал видео где в группе открыта стена на "комментарий" И именно туда херячит! Толи не понимает что ему люди объясняют толи что-то хочет доказать этим.

28-11-2014 02:33:27
InfSub Я уверен что вы эту чёртову проблему решите,но на данный момент вы её не решили потому что даже не понимаете о чём речь идёт! Желаю успеха и жду нового видоса от вас!:music:

Gergi пишет

надо нажимать именно на надпись именно на "комментировать"

всмотритесь внимательней - на скрине слово комментировать

комментировать
1abbd026e8f5a9fa81495d3c1659b466.png

если вы говорите о чем-то другом, будьте так любезны, изъясняйтесь так, чтобы вас понимали не только VK-SEO'шники

Не хочу больше мозг выносить себе и людям этой голимой темой про ВК !

Gergi пишет

Не хочу больше мозг выносить себе и людям этой голимой темой про ВК !

еще бы, сначала ее мусолили несколько месяцев, уверяя меня, что я только лясы точу, что такое возможно, а теперь в кусты, якобы вам пофиг и вообще я хрень какую-то записал...
говорите записал не то, будьте добры ответить за свои слова и указать на ошибку

Нихрена уважаемый InfSub вы не записали!!!!!!!! Вы записали хрень которая у меня давно записана! Запишите видео где видно что скрипт нажимает на "комментировать"

Gergi пишет

Запишите видео где видно что скрипт нажимает на "комментировать"

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


28-11-2014 04:08:16

описанное под спойлером, не имеет ни какого отношения к данной теме и является личным мнением автора
Gergi, я думаю, данное видео говорит достаточно  не прозрачно о том, что вы можете сделать со своим мнением, вы уже не в первый раз доказываете своими постами, что кроме крика, толку от вас ни какого...
Я, конечно опять малость промахнулся в видео.. и надо было поставить замедленное воспроизведение скрипта в настройках... но время позднее и мне лень, да и честно не подумал, но думаю сама группа, пример которой вы привели на скрине - это достаточное доказательство моих слов
более, ни вам, ни кому либо другому, я ни чего доказывать не буду, это 1й и последний раз, когда я попал, если можно так выразиться, под  ваше влияние... ввязался в бесполезный спор...
и, честно Gergi, за те слова, что я услышал за эти сутки... шли бы вы лесом, уважаемый, со своим мнением, как обо мне, так и обо всем остальном, что вы тут понаписали

28-11-2014 04:24:56
впрочем, вот замедленный кусок
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Вот умничка уважаемый InfSub Вот теперь наконец то показал именно то  о чём шла речь;) Ну я и никогда не сомневался что вы эту задачу решите,более того я вас уверял что именно вы эту задачу решите! Вот теперь бы огрызок кода увидеть:P

Gergi пишет

Вот теперь бы огрызок кода увидеть

тема поста кода в группы вк закрыта 25.09.14:

Gergi пишет

давайте уже закроем эту несчастную тему.

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

Здравствуйте, создаю управляющий js-скрипт.
скажите пожалуйста
if(условие){запуск 1 макроса}else{запуст 2 макроса}
как прописать условие появление капчи (сайт ВК)

скрытый текст
var i=0;
var n=prompt("Введите количество циклов",2)
for (i=1;i<=n;i++){
var q;
for (q=1;q<=1;q++){
iimDisplay("ЦИКЛ- "+i)
iimPlay("1.iim",60);
}
w=iimPlayCode("TAG POS=1 TYPE=IMG ATTR=ID:captcha") //код проверки капчи
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("2.iim")
       if (w>0){
          break

      } 
   }
  }
}

скрытый текст
iimPlay('dokap.iim')
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("razgadka_kapchi.iim")
       if (w>0){
          break
}
   }
  }

Скажите, что я не так делаю?, не запускает второй скрипт-разгадка капчи. Первый, который до появления капчи работает норм.

Вот он, без управляющего работал, но я его разделил на 2 части, до капчи, и после появления капчи

скрытый текст
VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
SET API Тут мой ключ
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch_yourfreebitcoin.gpeg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch_yourfreebitcoin.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=3
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=2

Он его запускает когда капчу найдёт. Скорее всего код проверки капчи не правильный

Gergi пишет

Он его запускает когда капчу найдёт. Скорее всего код проверки капчи не правильный

скрипт даже не пытается ее сохранить

30-11-2014 18:33:10

Маххх пишет
Gergi пишет

Он его запускает когда капчу найдёт. Скорее всего код проверки капчи не правильный

скрипт даже не пытается ее сохранить

проверил, ключ нормально вписан, и на балансе есть налик.
Думаю ошибка в самом управляющем js-скрипте.

Маххх пишет
Gergi пишет

Он его запускает когда капчу найдёт. Скорее всего код проверки капчи не правильный

скрипт даже не пытается ее сохранить

Ну так об этом и речь идёт.

скрытый текст

Выделить код

Код:

for (;;){  
iimPlay("сайт_ру.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("капча.iim")
        if (b<0){
           break
        }  
   }
}
}


Попробуй так

Gergi пишет
Маххх пишет
Gergi пишет

Он его запускает когда капчу найдёт. Скорее всего код проверки капчи не правильный

скрипт даже не пытается ее сохранить

Ну так об этом и речь идёт.

скрытый текст

Выделить код

Код:

for (;;){  
iimPlay("сайт_ру.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("капча.iim")
        if (b<0){
           break
        }  
   }
}
}


Попробуй так

Получилось, работает, только сохраняет не саму капчу, а над ней словосочитане: (введите код с картинки)

Вот мне подсказку кинули, только у меня сам код другой, и я не знаю как подправить, помогите пожалуйста

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:box_title EXTRACT=TXT
ADD EXTRACT {{!VAR1}}
var TextFor = iimGetLastExtract(1);
if (TextFor == 'Введите код с картинки') {}

Gergi теги code не для вас?

Маххх, все горазда проще

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=* FILE=vk.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:/captcha.php?* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

Подскажите пожалуйста, вот создал я управляющий js-скрипт, вот код:

скрытый текст

Выделить код

Код:

for (;;){  
iimPlay("dokap.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}
}


  for (;;){  
iimPlay("dokap10.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}
}


  for (;;){  
iimPlay("dokap11.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}
}


скажите почему он не идет дальше, почему он по кругу ходит в ("dokap.iim"), и не переходит на ("dokap10.iim"), ("dokap11.iim") и так далее???

Маххх, кроме спойлера - код разместите в теге CODE

30-11-2014 22:09:16
потому что конструкция

Выделить код

Код:

for (;;){...}

подразумевает бесконечный цикл

InfSub пишет

Маххх, кроме спойлера - код разместите в теге CODE

30-11-2014 22:09:16
потому что конструкция

Выделить код

Код:

for (;;){...}

подразумевает бесконечный цикл

Уважаемый InfSub, подскажите пожалуйста как реализовать решение этой задачи, чтобы он не был зациклен.

Маххх пишет

как реализовать решение этой задачи, чтобы он не был зациклен

а где собственно условие задачи?
сколько раз должен выполниться dokap.iim, например?

InfSub пишет
Маххх пишет

как реализовать решение этой задачи, чтобы он не был зациклен

а где собственно условие задачи?
сколько раз должен выполниться dokap.iim, например?

dokap.iim один раз, если появилась капча решить ее, и идти дальше на dokap10.iim, если капча не появилась, то без ее решения идти на dokap10.iim, и так далее. Уже неделю пытаюсь   создать это, но никак не получается.
я в каждом dokap10.iim, dokap11.iim, dokap12.iim... прописал те же действия, только ссылки разные, поскольку увидил самый легкий путь решения. (пока еще с файла ссылки не умею вытаскивать)

Маххх пишет
InfSub пишет
Маххх пишет

как реализовать решение этой задачи, чтобы он не был зациклен

а где собственно условие задачи?
сколько раз должен выполниться dokap.iim, например?

dokap.iim один раз, если появилась капча решить ее, и идти дальше на dokap10.iim, если капча не появилась, то без ее решения идти на dokap10.iim, и так далее. Уже неделю пытаюсь   создать это, но никак не получается.

так

Выделить код

Код:

iimPlay("dokap.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

iimPlay("dokap10.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

iimPlay("dokap11.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

InfSub Большое СПАСИБО!!!

30-11-2014 22:43:41
У меня прям руки опускаются. сколько бюсь об стену, всеравно не могу коректно настроить работу.
Посмотрите пожалуйста где ошибка:

это управляющий:

скрытый текст

Выделить код

Код:

iimPlay("dokap.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

iimPlay("dokap10.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

iimPlay("dokap11.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}


это докап:
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
URL GOTO=http://vk.com/club60191872
WAIT SECONDS=5
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Добавь<SP>в<SP>друзья<SP>всех<SP>приму!
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5


это докап11
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
URL GOTO=http://vk.com/v_i_p__p_i_a_r
WAIT SECONDS=5
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Добавь<SP>в<SP>друзья<SP>всех<SP>приму!
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5


это разгадка капчи
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
SET API тут мой ключ
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=vk.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:/captcha.php?* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\vk.jpg
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=3
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=2


аймакрос повторяет разгадку капчи по кругу.
как сделать так, чтобы после разгадки капчи было продолжение управляющего js файла?

скрытый текст

Выделить код

Код:

var q;
for (q=1;q<=1;q++){
iimDisplay("ЦИКЛ- "+i)
iimPlay("1.iim",60);
}
w=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title") 
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("2.iim")
       if (w>0){
          break

      }  
   }
  }

Gergi пишет

скрытый текст

Выделить код

Код:

var q;
for (q=1;q<=1;q++){
iimDisplay("ЦИКЛ- "+i)
iimPlay("1.iim",60);
}
w=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title") 
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("2.iim")
       if (w>0){
          break

      }  
   }
  }

эт че за бред?? О_о

Для кого то может и бред,но я им работаю по се день.

Gergi пишет

Для кого то может и бред,но я им работаю по се день.

ну вы и предыдущий пример - тоже рабочий, видимо - привели

Ну я хоть чем то пытаюсь человеку помочь! Не то что некоторые:sick: Жаль не могу пальцем тыкнуть:D

Маххх, замените вот этот:

бред

Выделить код

Код:

i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}


на этот код:
скрытый текст

Выделить код

Код:

do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")
    if (i==1){iimPlay("razgadka_kapchi.iim");};
}while(i==1);


01-12-2014 00:38:19

Gergi пишет

Не то что некоторые

давно ли вы перестали тут помощь выпрашивать, чтобы пальцами в других тыкать?
научитесь, хотя бы, основам js, чтобы людям дельные советы давать, а не путать своим кодом

Gergi пишет

скрытый текст

Выделить код

Код:

w=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title") 
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("2.iim")
       if (w>0){
          break
      }  
   }
}

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

01-12-2014 01:26:13
Кстати, думаю - имеет смысл разобрать данный пример, в любом случае, так что, господа форумчане, просьба отписываться, о том, кто видит какие ошибки в данном коде, а так же, как этот код можно заставить сработать некорректно, дабы наглядно продемонстрировать ошибочность и избыточность данного кода

Есть задача со звездочкой.

Дано:
- В ящике mail.ru во входящих есть "красивое" письмо(сгенерированное в одном из рассылочных сервисов с картинками, текстом, ссылками и тд в html).
Требуется:
- переслать письмо заменив ссылки в теле письма.(при каждой пересылке ссылки будут новые)

Проблема:
у imacros не получается работать с объектами в блоке редактируемого письма(хз почему).

Нужен нестандартный подход в решении задачи.(Стандартными методами скорее всего не решить).

Всё отлично получается!

Karl пишет

В ящике mail.ru во входящих есть "красивое" письмо(сгенерированное в одном из рассылочных сервисов с картинками, текстом, ссылками и тд в html).).

как минимум нужно видеть письмо

01-12-2014 01:42:35

Gergi пишет

Всё отлично получается!

что именно?

InfSub пишет
Karl пишет

В ящике mail.ru во входящих есть "красивое" письмо(сгенерированное в одном из рассылочных сервисов с картинками, текстом, ссылками и тд в html).).

как минимум нужно видеть письмо

Для наглядности:

скрытый текст
пример.png

Karl
картинку в спойлер уберите, к тому же - вы думаете она мне что-либо скажет о коде письма? =)

InfSub пишет

Karl
картинку в спойлер уберите, к тому же - вы думаете она мне что-либо скажет о коде письма? =)

Давайте так:

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

В папке "Входящие" одно письмо.
Открываем его -> жмем кнопку "Переслать"
Далее будет окно которое я прикреплял для демонстрации.

Karl пишет

Давайте так:

контактные данные в спойлер лучше спрячьте и в тег noindex

Karl, теоретически возможно, но очень геморно, мне удалось только заставить вставлять ссылку, но не туда куда надо, из-за кучи фреймов - EVENT не находит нужный объект, а через TAG POS не укажешь место вставки

01-12-2014 11:44:58
думаю, вам проще найти какой-либо движок для рассылок, нежели извращаться с имакросом в данной ситуации или используйте AutoIT

InfSub пишет

Karl, теоретически возможно, но очень геморно, мне удалось только заставить вставлять ссылку, но не туда куда надо, из-за кучи фреймов - EVENT не находит нужный объект, а через TAG POS не укажешь место вставки

01-12-2014 11:44:58
думаю, вам проще найти какой-либо движок для рассылок, нежели извращаться с имакросом в данной ситуации или используйте AutoIT

InfSub, я сильно удивился когда обнаружил что imacros не может даже заменить картинку на ссылку.
Максимум что он может это вставить ссылку в начале редактируемого письма.

Karl пишет

InfSub, я сильно удивился когда обнаружил что imacros не может даже заменить картинку на ссылку.
Максимум что он может это вставить ссылку в начале редактируемого письма.

Повторюсь - проблема в куче динамических фреймов используемых на mail.ru - сидеть и эксперементировать, честно говоря нет времени и желания, хотя думаю, эта проблема и разрешима, но в данной ситуации, это скорее аналогично забиванию гвоздей микроскопом
Тут либо поможет полная эмуляция действий пользователя, к примеру, AutoIT или аналоги, либо использования собственного домена с почтой и поддержкой php. Соответственно, с помощью php можно, как самому написать скрипт по отправке писем-рассылок, создаваемых динамически, так и использовать уже готовые решения.

доброго времяни суток!!! Уважаемые кодеры, прошу вашей помощи... Учусь кодингу совсем недавно.... Столкнулся с такой проблемой: есть куча макросов для опеделённых сайтов (заходят на сайт, распознают капчу через сервис распознавания, отправляют результат), есть js управляющий этими макросами ( включает их с определённой последовательностью и т.д. ).... ПРОБЛЕМА в том,что с недавних пор, на некоторых сайтах ( не навсех ), при заходе на нужную нам страницу, нас стало перебрасывать на страницу, где нужно так же ввести капчу ( типо доп. защита ) и тока после правильного ввода мы попадаем куда надо. Так, вот,  мне нужно, чтоб при попадании на не нужную ( доп. защита ) нам страницу, выполнялся макрос для этой доп. защиты ( макрос сам смогу написать- распознал, вставил, отправил ), иначе продолжаем выполнение по заданному алгоритму. ПОМОГИТЕ ПОЖАЛУЙСТА!!!

stars1981, так, а в чем, собственно проблема? определить был переход или нет, или создать условие в js?

InfSub пишет

stars1981, так, а в чем, собственно проблема? определить был переход или нет, или создать условие в js?

создать условие в js.

stars1981 пишет

создать условие в js.

ну так не поленитесь воспользоваться поиском или хотя бы, просмотрите последних 2 страницы темы, тут куча примеров с условным оператором if ... else ...

Я на счёт постов в контакте InfSub
Вы писали, что нужно извлечь номер поста и потом постить в комменатрии.

Вопрос.

После извлечения, без использования EVAL для удаления лишнего необойтись
или можно обойтись без этого ?

Алим пишет

Вопрос.

После извлечения, без использования EVAL для удаления лишнего необойтись
или можно обойтись без этого ?

нет, не обойтись

stars1981 пишет

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

удалите реферал из кода, пока за вас это не сделали модераторы

stars1981 пишет

Ктонить обрадует, или снова читать отправите?:/

так задавать вопрос нужно корректней, специально уточнил, что нужно определить где находится скрипт или построить условие..
по сути - вы не понимаете - ни как исправить js, ни как определить, где находится скрипт, на основной или доп. странице...
Я правильно понял?

01-12-2014 23:04:20

stars1981 пишет

с недавних пор, на некоторых сайтах ( не навсех ), при заходе на нужную нам страницу, нас стало перебрасывать на страницу, где нужно так же ввести капчу ( типо доп. защита ) и тока после правильного ввода мы попадаем куда надо.

я не вижу весь код, но если судить по тому, что вы написали и исходить из того, что переброс, на другую страницу, происходит сразу, при входе на сайт, то:

оговорюсь, это просто пример решения!
конкретно под ваш скрипт, подгонять - Вам!!

js
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


соответственно, Из 2го скрипта - нужно убрать:
iim
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

if (err_bitcoinker_I == 1){
    var first_page = "http://bitcoinker.com/"; // первоначальный адрес страницы (если отличается - меняем, на тот что в iim)
    iimPlayCode("URL GOTO="+first_page+"\nSET !EXTRACT {{!URLCURRENT}}");
    if(iimGetLastExtract(1)!=first_page){
        //здесь запускаем скрипт разгадывания капчи для доп. страницы
    }
    iimPlay("15_min/01_bitcoinker.iim",60);
    ....
}
InfSub пишет

это просто пример решения!

Спасибо, я конечно попробую, но наврядли прокатит, т. к. у страниц в адресной строке абсолютно одинаковые адреса.
Можт както можно без адреса определить на какой мы странице...?

InfSub пишет

вы не понимаете - ни как исправить js, ни как определить, где находится скрипт, на основной или доп. странице...
Я правильно понял?

js для меня- тёмный лес..., макросы тока учусь пока кодить.:)

stars1981 пишет

Можт както можно без адреса определить на какой мы странице...?

можно, но это ни где не было указано в вашем описании
в таком случае проверка на уникальные элементы на странице
к примеру на 1й есть кнопка submit а на второй ее нет или называется иначе, вот и замените SET !EXTRACT {{!URLCURRENT}} на TAG POS=... EXTRACT=TXT
и проверяйте на совпадение с #EANF#

InfSub пишет

к примеру на 1й есть кнопка submit а на второй ее нет или называется иначе, вот и замените SET !EXTRACT {{!URLCURRENT}} на TAG POS=... EXTRACT=TXT
и проверяйте на совпадение с #EANF#

Если не сложно, можно как в предыдущем посте ответили ( в коде).
вот код второй страницы:

скрытый текст

Выделить код

Код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" /><meta name="keywords" content="bitcoin, free bitcoin, faucet, bitcoin faucet, win bitcoin, get free bitcoins, win free bitcoins" /><meta name="alexaVerifyID" content="p9bjqU3N7uIefXVT4QoG-mRDCkI" /><title>
    Bitcoinker - Faucet
</title><script type="text/javascript">
//<![CDATA[
try{if (!window.CloudFlare) {var CloudFlare=[{verbose:0,p:0,byc:0,owlid:"cf",bag2:1,mirage2:0,oracle:0,paths:{cloudflare:"/cdn-cgi/nexp/dok2v=1613a3a185/"},atok:"d2e27dd3b1e15d4afe6223e92c3ac6f8",petok:"6d49b7bb34445170905a7adbf6fad3299d50143f-1417467965-1800",zone:"bitcoinker.com",rocket:"0",apps:{}}];CloudFlare.push({"apps":{"ape":"20cde68f905effeaa29ef10d846d5f03"}});!function(a,b){a=document.createElement("script"),b=document.getElementsByTagName("script")[0],a.async=!0,a.src="//ajax.cloudflare.com/cdn-cgi/nexp/dok2v=919620257c/cloudflare.min.js",b.parentNode.insertBefore(a,b)}()}}catch(e){};
//]]>
</script>
<link rel="shortcut icon" href="favicon.ico?v1" /><link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" /><link rel="stylesheet" href="css/main.css?v17" /><link href="https://fonts.googleapis.com/css?family=Michroma" rel="stylesheet" type="text/css" /><meta property="fb:app_id" content="541105082687372" /><meta property="og:title" content="Bitcoinker" /><meta property="og:type" content="website" /><meta property="og:image" content="http://bitcoinker.com/img/600x315.png" /><meta property="og:url" content="http://bitcoinker.com" /><meta property="og:description" content="Collect your free satoshi every 15 minutes!" />
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
    <script type="text/javascript" src="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
        
    <script type="text/javascript">
        //Set up Google Analytics
        (function (i, s, o, g, r, a, m) {
            i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
                (i[r].q = i[r].q || []).push(arguments)
            }, i[r].l = 1 * new Date(); a = s.createElement(o),
      m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)
        })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');

        ga('create', 'UA-49827542-2', 'bitcoinker.com');
        ga('send', 'pageview');

    </script>

    
    <meta name="description" content="Bitcoinker is a free bitcoin faucet where you can earn up to 500 satoshi every 15 minutes. Instant Microwallet payouts. 25% referral commission." />
</head>
<body>
    <form method="post" action="" onsubmit="javascript:return WebForm_OnSubmit();" id="MainForm">
<div class="aspNetHidden">
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTEyNzIzNzEzMzBkZH5n1UUDuQ8i/1kx9ljHg0vx3BBJyj+3CPPqH/JJbA36" />
</div>

<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['MainForm'];
if (!theForm) {
    theForm = document.MainForm;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
//]]>
</script>


<script src="/WebResource.axd?d=Cq2A_chajzPAiceCTE8-7pax_Igp6UEi5XjEh2Lj1hSdIKgfda6OiBk_Eqiv-TTEEYGm7lRFso_RI7DGN0ysgS3Tj19HqwQWCYBua9iOVHw1&amp;t=635147635110920824" type="text/javascript"></script>


<script src="/WebResource.axd?d=cfM1Bm9qkelaVeXBXfotaJEbFRFEiroQ_qvgO7Q4YyrOkvGRHYLQWVLRjHhnxGTzhoI2hPMeqx5gtv0jPleZA--4mQCoet1es2wNOtsPYXw1&amp;t=635147635110920824" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
function WebForm_OnSubmit() {
if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false;
return true;
}
//]]>
</script>

<div class="aspNetHidden">

    <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEdAAQWltrMqDOMM495MRHCdDlQMw/m89LP8VhZufSUN38XdC4D5onmp/R2xwOsJ2hXqEZ1G3WmFWQ9aShh+lEj+4Co3LJcJvgxaLdjYfiLfjwyt8YFe14FSh2zS9gzFr79+as=" />
</div>
        <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
            <div class="container nav-bug">
                <div class="navbar-header">
                    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                        <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span><span
                            class="icon-bar"></span><span class="icon-bar"></span>
                    </button>                                    
                    <a href="./" class="navbar-brand" style="padding:0px;float:left">                            
                        <h2 style="padding-top:2px;margin:5px;vertical-align:bottom">
                            bitcoinker
                        </h2>
                    </a>
                </div>                                                         
            </div>
        </div>
        
        <div class="row">
            <div class="col-sm-3 hidden-xs" id="lhsColumn">
                <div style="margin:10px auto auto auto;max-width:300px;" id="lhsTopAd">
                    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
                    <!-- Bitcoinker: Skyscraper LHS (responsive) -->
                    <ins class="adsbygoogle"
                         style="display:block"
                         data-ad-client="ca-pub-6522562938491188"
                         data-ad-slot="3040465557"
                         data-ad-format="auto"></ins>
                    <script>
                        (adsbygoogle = window.adsbygoogle || []).push({});
                    </script>
                </div>
            </div>
            <div class="col-sm-6 semi-trans" id="middleColumn"> 
                <div class="globalNotice">
                    Top payout increased to 500 satoshi - earn on average 266 satoshi every 15 minutes!
                </div>

                <div id="advert-space" class="advert" style="text-align:center">
                    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
                    <!-- Bitcoinker: Leaderboard Top (responsive) -->
                    <ins class="adsbygoogle"
                         style="display:block"
                         data-ad-client="ca-pub-6522562938491188"
                         data-ad-slot="9086999154"
                         data-ad-format="auto"></ins>
                    <script>
                        (adsbygoogle = window.adsbygoogle || []).push({});
                    </script>                        
                </div>
                
                <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
                <!-- Bitcoinker: Link Unit (top) -->
                <ins class="adsbygoogle"
                     style="display:inline-block;width:728px;height:15px"
                     data-ad-client="ca-pub-6522562938491188"
                     data-ad-slot="6290139957"></ins>
                <script>
                    (adsbygoogle = window.adsbygoogle || []).push({});
                </script>             

                
    <input type="hidden" id="AdBlocked" name="AdBlocked" value="false" />

    <script type="text/javascript">
        function claim() {
            if (typeof (window.google_jobrunner) == "undefined" || $('#advert-space').height() <= 30 || $('#advert-space').filter(':visible').length == 0 || $('#advert-space').filter(':hidden').length > 0) {
                $('#AdBlocked').val('true');
            }

            var iFrameBodyHtml = $("#aswift_0").contents().find("body").html();
            if (!iFrameBodyHtml || iFrameBodyHtml.toLowerCase().indexOf("google_ads_frame") == -1) {
                $('#AdBlocked').val('true');
            }

            return true;
        }        
    </script>

    <h1>Earn up to <u>500</u> satoshi - every 15 minutes!</h1>

    <p class="para">
        You can either collect a guaranteed <b>266</b> satoshi or try your luck to win <b>100, 200 or 500</b> satoshi (equal chance of each)
    </p>
    
    <div id="BodyPlaceholder_FaucetFormPanel">
    
        <div id="BodyPlaceholder_CaptchaPanel">
        
            <span id="BodyPlaceholder_SolveMediaValidator" style="visibility:hidden;"></span>
        <!-- start SolveMedia puzzle widget -->
        <script type="text/javascript">
            var ACPuzzleOptions = {
                theme:        'black',
                tabindex :    '0'
            };

        </script><script type="text/javascript" src="http://api.solvemedia.com/papi/challenge.script?k=D676hQPl31O8LzlOp8f2rl5Ag83nxnxl">

        </script>
        <noscript>
            <iframe height="300" width="500" frameborder="0" src="http://api.solvemedia.com/papi/challenge.noscript?k=D676hQPl31O8LzlOp8f2rl5Ag83nxnxl">

            </iframe><br /><textarea name="adcopy_challenge" rows="3" cols="40"></textarea><input type="hidden" name="adcopy_response" value="manual_challenge" />
        </noscript>
        <!-- end SolveMedia puzzle widget -->
            
        
    </div>
        
        <div id="BodyPlaceholder_FaucetForm">
        
            <p>
                Please enter your bitcoin address, email or microwallet username...
            </p>
            <input name="ctl00$BodyPlaceholder$MicrowalletUsernameTextbox" type="text" id="BodyPlaceholder_MicrowalletUsernameTextbox" class="microwallet-username" placeholder="Bitcoin address, email or microwallet.org username" /><br />    
            <input type="submit" name="ctl00$BodyPlaceholder$SubmitButton1" value="Collect 266 satoshi now" onclick="claim();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$BodyPlaceholder$SubmitButton1&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))" id="BodyPlaceholder_SubmitButton1" class="submit-button" />
            <input type="submit" name="ctl00$BodyPlaceholder$SubmitButton2" value="Try your luck (100, 200 or 500)" onclick="claim();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$BodyPlaceholder$SubmitButton2&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))" id="BodyPlaceholder_SubmitButton2" class="submit-button" />
        
    </div>        
    
</div>

    

             

    <div id="advert-space-3" class="advert">
        <div style="overflow:hidden;display:inline-block;margin:5px;max-width:90%;">
            <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=L3IJY60P3UX2E" style="overflow:hidden;width:468px;height:60px;margin:0px 3px;"></iframe>            
        </div>
        <div style="overflow:hidden;display:inline-block;margin:5px;max-width:90%;">
            <iframe data-aa='31036' src='//ad.a-ads.com/31036?size=468x60' scrolling='no' style='width:468px; height:60px; border:0px; padding:0;overflow:hidden' allowtransparency='true'></iframe>
        </div>
        <br />
        <a href="//adbit.co/?a=Advertise&b=View_Bid&c=L3IJY60P3UX2E" target="_blank">&#8657; Your Ad Here &#8657;</a>
    </div>    

    <h3>Referral Program</h3>

    <p class="para">
        Tell all your friends and family about Bitcoinker - and receive a massive 25<span style="font-family:Arial">%</span> lifetime commission on their earnings!!<br />
        You will see full details after making a faucet claim - including your unique referral link and banner images.
    </p>

    <h3>Bitcoin Faucets</h3>

    <p class="para">
        Here are some of our favourite bitcoin faucets that are all free to use and pay out plenty of satoshi!
    </p>

    <a href="http://faucet.bitcoinzebra.com" target="_blank" class="faucet">Bitcoin Zebra</a>
    <a href="https://www.landofbitcoin.com/?r=iFXr09IZ7KkBQZsH&tag=Bitcoinker" target="_blank" class="faucet">Land of Bitcoin</a>
    <a href="http://moonbit.co.in/?ref=bitcoinker" target="_blank" class="faucet">Moon Bitcoin</a>    
    <a href="http://moondoge.co.in/?ref=bitcoinker" target="_blank" class="faucet">Moon Dogecoin</a>    
    <a href="http://www.bitonplay.com/create?refCode=9752d873fa71c19dc602bf2a0696f9b5" target="_blank" class="faucet">BitOnPlay</a>
    <a href="http://www.pinktussy.com/?r=17c4amq8NFV8pCkC2s7iF7tqW6igTFB7Jo" target="_blank" class="faucet">Pink Tussy</a>
    <a href="http://www.flyingfaucet.com/?ref=10762" target="_blank" class="faucet">The Flying Faucet</a>
    <a href="http://www.therunningfaucet.com/?ref=12256" target="_blank" class="faucet">The Running Faucet</a>
    <a href="https://primedice.com/?ref=baztardo" target="_blank" class="faucet">Prime Dice</a>
    <a href="https://pocketdice.io/?r=ed6a46e1fc" target="_blank" class="faucet">Pocket Dice</a>
    <a href="https://ice-dice.com/en?i=236963" target="_blank" class="faucet">Ice Dice</a>
    <a href="http://faucet.9bitz.eu/?r=5622" target="_blank" class="faucet">9Bitz</a>
    <a href="http://www.pizzafaucet.com/?ref=27439" target="_blank" class="faucet">Pizza Faucet</a>
    <a href="http://freebitco.in/?r=397740" target="_blank" class="faucet">Free Bitcoin</a>
    <a href="http://freedoge.co.in/?r=2954" target="_blank" class="faucet">Free Dogecoin</a>        

    <h3>What is Bitcoin?</h3>

    <p class="para">
        Bitcoin is a payment system introduced as open-source software in 2009 by developer Satoshi Nakamoto. 
        The payments in the system are recorded in a public ledger using its own unit of account, which is also called bitcoin. 
        Payments work peer-to-peer without a central repository or single administrator, which has led the US Treasury to call bitcoin a decentralized virtual currency. 
        Although its status as a currency is disputed, media reports often refer to bitcoin as a cryptocurrency or digital currency.
    </p>

    <p class="para">
        Bitcoins are created as a reward for payment processing work in which users offer their computing power to verify and record payments into the public ledger. 
        Called mining, individuals or companies engage in this activity in exchange for transaction fees and newly created bitcoins.
        Besides mining, bitcoins can be obtained in exchange for fiat money, products, and services.
        Users can send and receive bitcoins electronically for an optional transaction fee using wallet software on a personal computer, mobile device, or a web application.
    </p>

    <p class="para">
        Bitcoin as a form of payment for products and services has seen growth,and merchants have an incentive to accept the digital currency because fees are lower than the 2-3% typically imposed by credit card processors.
        The European Banking Authority has warned that bitcoin lacks consumer protections.
        Unlike credit cards, any fees are paid by the purchaser not the vendor. 
        Bitcoins can be stolen and chargebacks are impossible.
        Commercial use of bitcoin is currently small compared to its use by speculators, which has fueled price volatility.
    </p>

    <p class="para">
        Bitcoin has been a subject of scrutiny amid concerns that it can be used for illegal activities.
        In October 2013 the US FBI shut down the Silk Road online black market and seized 144,000 bitcoins worth US$28.5 million at the time.
        The US is considered bitcoin-friendly compared to other governments.
        In China, buying bitcoins with yuan is subject to restrictions, and bitcoin exchanges are not allowed to hold bank accounts.
    </p>

    <p class="para">
        If you want to know more then check out the full <a href="https://en.wikipedia.org/wiki/Bitcoin" target="_blank">Bitcoin Wikipedia article</a> or watch the YouTube video below.
    </p>

    <p>
        <iframe id="ytplayer" type="text/html" width="600" height="390" src="//www.youtube.com/embed/Gc2en3nHxA4?fs=1&amp;hl=en_US&amp;rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe>
    </p>
 
                
                <div id="advert-space-2" class="advert" style="text-align:center">
                    
                </div>    
                
                <div style="padding-bottom:5px">
                    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
                    <!-- Bitcoinker: Link Unit 1 -->
                    <ins class="adsbygoogle"
                         style="display:inline-block;width:468px;height:15px"
                         data-ad-client="ca-pub-6522562938491188"
                         data-ad-slot="8510406353"></ins>
                    <script>
                        (adsbygoogle = window.adsbygoogle || []).push({});
                    </script>
                </div>                                                 
            </div>
            <div class="col-sm-3 hidden-xs" id="rhsColumn">
                <div style="margin:10px auto auto auto;max-width:300px" id="rhsTopAd">
                    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
                    <!-- Bitcoinker: Skyscraper RHS -->
                    <ins class="adsbygoogle"
                         style="display:inline-block;width:160px;height:600px"
                         data-ad-client="ca-pub-6522562938491188"
                         data-ad-slot="9598800350"></ins>
                    <script>
                        (adsbygoogle = window.adsbygoogle || []).push({});
                    </script>
                </div>                                
            </div>                        
        </div>        
        
        <div class="footer">
            Copyright © 2014 Bitcoinker &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <a href="/cdn-cgi/l/email-protection#c0a3afaeb4a1a3b480a2a9b4a3afa9aeaba5b2eea3afad"><span class="__cf_email__" data-cfemail="b0d3dfdec4d1d3c4f0d2d9c4d3dfd9dedbd5c29ed3dfdd">[email&nbsp;protected]</span><script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */
</script></a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <a href="privacypolicy">Privacy Policy</a>            
        </div>
        
        <!--Load adverts and move to position-->
        <!--LHS Bottom-->
        <div style="height:600px;margin:10px 0px auto auto;max-width:320px;display:none" id="lhsBottomAd">
            <!-- BEGIN TAG - DO NOT MODIFY -->
            <script type="text/javascript">
            //<![CDATA[
                epom_key = "caec0ded98c249e6104a26c42f12fa5d";
                epom_channel = "";
                epom_code_format = "ads-sync.js";
                epom_ads_host = "//www.adshost2.com";
                epom_click = "";
                epom_custom_params = {};

                document.write("<script type='text\/javascript' src='" + (location.protocol == 'https:' ? 'https:' : 'http:') + "//www.adshost2.com\/js/show_ads.js'><\/script>");
            //]]>
            </script>
            <!-- END TAG -->
        </div>
        <script type="text/javascript">
            var lhsBottomAd = $("#lhsBottomAd").detach();
            $('#lhsColumn').append(lhsBottomAd);
            $(lhsBottomAd).show();
        </script>                                
        <!--RHS Bottom-->
        <div style="height:600px;margin:10px auto auto 0px;max-width:320px;display:none" id="rhsBottomAd">
            <!-- BEGIN TAG - DO NOT MODIFY -->
            <script type="text/javascript">
            //<![CDATA[
                epom_key = "18bee76db0b7539a8f0056b61739f338";
                epom_channel = "";
                epom_code_format = "ads-sync.js";
                epom_ads_host = "//www.adshost2.com";
                epom_click = "";
                epom_custom_params = {};

                document.write("<script type='text\/javascript' src='" + (location.protocol == 'https:' ? 'https:' : 'http:') + "//www.adshost2.com\/js/show_ads.js'><\/script>");
            //]]>
            </script>
            <!-- END TAG -->
        </div>
        <script type="text/javascript">
            var rhsBottomAd = $("#rhsBottomAd").detach();
            $('#rhsColumn').append(rhsBottomAd);
            $(rhsBottomAd).show();
        </script>   
        <!--Bottom-->
        <div style="overflow:hidden;margin:5px;display:none" id="bottomAd">
            <a id="Leaderboard_Bottom" href="https://www.landofbitcoin.com/?r=iFXr09IZ7KkBQZsH&amp;tag=Bitcoinker" target="_blank"><img src="http://static.landofbitcoin.com/img/100-double.png" alt="LandOfBitcoin" /></a>
        </div>
        <script type="text/javascript">
            var bottomAd = $("#bottomAd").detach();
            $('#advert-space-2').append(bottomAd);
            $(bottomAd).css('display', 'inline-block');
        </script>        
    
<script type="text/javascript">
//<![CDATA[
var Page_Validators =  new Array(document.getElementById("BodyPlaceholder_SolveMediaValidator"));
//]]>
</script>


<script type="text/javascript">
//<![CDATA[

var Page_ValidationActive = false;
if (typeof(ValidatorOnLoad) == "function") {
    ValidatorOnLoad();
}

function ValidatorOnSubmit() {
    if (Page_ValidationActive) {
        return ValidatorCommonOnSubmit();
    }
    else {
        return true;
    }
}
        //]]>
</script>
</form>
    
    <script type="text/javascript">
        //Set up Facebook
        (function (d, s, id) {
            var js, fjs = d.getElementsByTagName(s)[0];
            if (d.getElementById(id)) return;
            js = d.createElement(s); js.id = id;
            js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1&appId=541105082687372";
            fjs.parentNode.insertBefore(js, fjs);
        } (document, 'script', 'facebook-jssdk'));

        //Load twitter widgets
        !function (d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], p = /^http:/.test(d.location) ? 'http' : 'https'; if (!d.getElementById(id)) { js = d.createElement(s); js.id = id; js.src = p + '://platform.twitter.com/widgets.js'; fjs.parentNode.insertBefore(js, fjs); } } (document, 'script', 'twitter-wjs');
    </script>    

    
<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l=document.getElementsByTagName("a"),t=document.createElement("textarea");for(i=0;l.length-i;i++){try{a=l[i].getAttribute("href");if(a&&a.indexOf("/cdn-cgi/l/email-protection") > -1  && (a.length > 28)){s='';j=27+ 1 + a.indexOf("/cdn-cgi/l/email-protection");if (a.length > j) {r=parseInt(a.substr(j,2),16);for(j+=2;a.length>j&&a.substr(j,1)!='X';j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}j+=1;s+=a.substr(j,a.length-j);}t.innerHTML=s.replace(/</g,"&lt;").replace(/>/g,"&gt;");l[i].setAttribute("href","mailto:"+t.value);}}catch(e){}}}catch(e){}})();
/* ]]> */
</script>
</body>
</html>


Я думаю так: в макросе переходим на страницу ( как сейчас сделано).... отправляем в  js уникальность этой страницы, а js решает: если страница доп., то выполнять мак. для доп.,а если стр. не доп., то далее выполнять тот мак. который отправил уникум( со строки, после проверки страницы)...
Вот как то так....:/,тока бы ещё закодить это :rolleyes:
Буду примного благодарен

как-то так:

js
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

02-12-2014 00:34:39
для iim-файла, так же актуально вышесказанное про URL GOTO=

Выделить код

Код:

if (err_bitcoinker_I == 1){
   // первоначальный адрес страницы (если отличается - меняем, на тот что в iim)
    iimPlayCode("URL GOTO=http://bitcoinker.com/\nTAG POS=1 TYPE=H2 ATTR=CLASS:cf-subheadline EXTRACT=TXT");
    if(iimGetLastExtract(1)!='#EANF#'){
        //здесь запускаем скрипт разгадывания капчи для доп. страницы
    }
    iimPlay("15_min/01_bitcoinker.iim",60);
    ....
}
InfSub пишет

js
Выделить код
Код:

if (err_bitcoinker_I == 1){
   // первоначальный адрес страницы (если отличается - меняем, на тот что в iim)
    iimPlayCode("URL GOTO=http://bitcoinker.com/\nTAG POS=1 TYPE=H2 ATTR=CLASS:cf-subheadline EXTRACT=TXT");
    if(iimGetLastExtract(1)!='#EANF#'){
        //здесь запускаем скрипт разгадывания капчи для доп. страницы
    }
    iimPlay("15_min/01_bitcoinker.iim",60);
    ....
}



Добавлено Сегодня 00:34:39
для iim-файла, так же актуально вышесказанное про URL GOTO=

СПС, буду пробовать.

InfSub пишет

как-то так:jsВыделить кодКод:if (err_bitcoinker_I == 1){
   // первоначальный адрес страницы (если отличается - меняем, на тот что в iim)
    iimPlayCode("URL GOTO=http://bitcoinker.com/\nTAG POS=1 TYPE=H2 ATTR=CLASS:cf-subheadline EXTRACT=TXT");
    if(iimGetLastExtract(1)!='#EANF#'){
        //здесь запускаем скрипт разгадывания капчи для доп. страницы
    }
    iimPlay("15_min/01_bitcoinker.iim",60);
    ....
}Добавлено Сегодня 00:34:39для iim-файла, так же актуально вышесказанное про URL GOTO=
                    Отредактировано InfSub (Сегодня 00:34:39)

Огромное спасибо, для эксперементального сайта всё заработало, буду над остальными опыты ставить!!!:lol:

Может кому интересно - расскажу немного о прокси авторизации !

далее (ПРОВЕРКА ВЕЛАСЬ НА PALE MOON 25 PORTABLE)
рыскал короче по дополнениям и глубоким настройкам и только сегодня что-то получилась , с обычными прокси без авторизации у аймакрос все супер , но с авторизацией бывают непредсказуемые глюки, причем заполнение диалога не всегда корректно срабатывает.
Есть небольшое решение с дополнением автоматической авторизацией - но там можно прописать только один логин и пароль , а в моём случае прокси заказаны с 2-х сайтов - вот чего нашёл - (Может кто подскажет решение лучше)

1 качаем и устанавливаем :Прокси авторизатор
Этот не подойдёт , так как он не реагирует на изменение глубоких настроек аналог доп. выше
2 открываем раздел дополнений и ищем установленный прокси авторизатор и вбиваем в него ваши лог и пасс от проксей
3 после заходим в about:config (иначе глубокие настройки) и ищем там extensions.proxyauth.authtoken
4 Все что написано после extensions.proxyauth.authtoken и есть зашифрованные лог и пасс (к примеру так выглядят зашифрованные лог 111 и пас 111        MTExOjExMQ== )
5 теперь копируем шифрованный лог и пасс в текстовый файл ваших прокси и говорим аймакрос использовать по нужному вам сценарию
6 используем команды изменений настроек по принципу : 
в JS

Выделить код

Код:

iimPlayCode("URL GOTO=about:config")
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);

// иначе говоря меняет параметр строка 
prefs.setCharPref("extensions.proxyauth.authtoken", 'MTExOjExMQ==');

так выглядит на iim

Выделить код

Код:

SET LOGPASS MTExOjExMQ==

URL GOTO=about:config
SET CHANGELOGPASS EVAL("prefs=Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);prefs.setCharPref("extensions.proxyauth.authtoken",'{{LOGPASS}}');")

Недостаток в том что нужно получить варианты шифрованных лог и пасс для ваших прокси -но думаю это займет не более 2-3 мин если используется 2-5 комплектов прокси


напоминаю так меняются прокси в js - но можно и в iim прикрутить через eval
если не понимаете как перекинуть в iim - смотрите пример выше "так выглядит на iim"

Выделить код

Код:

var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);

// manual proxy configuration
prefs.setIntPref("network.proxy.type", 1);

// use the proxy server for all protocols
prefs.setBoolPref("network.proxy.share_proxy_settings", true);

// HTTP Proxy
prefs.setCharPref("network.proxy.http", 'ip');
prefs.setIntPref("network.proxy.http_port", port);

// SOCKS Host
prefs.setCharPref("network.proxy.socks", 'ip');
prefs.setIntPref("network.proxy.socks_port", port);

// SSL Proxy
prefs.setCharPref("network.proxy.ssl", 'ip');
prefs.setIntPref("network.proxy.ssl_port", port);


P.s  в  идеале конечно было бы супер поковыряться в дополнении авторизации прокси и убрать шифрование логина и пароля  , ну или же иметь дополнение которое автоматически вбивает нужный лог и пас к нужному прокси (такое кстати уже есть дополнение ,но глючит с  импортом листов и  отстутствует совместимость Pale Moon RUS,( ENG работает) прокси вот оно)

kolshix, D83DDC4D.png

Уважаемые знатоки прошу немного внимания и помощи.
Задача:
Нужно чтобы макрос заходил по очереди в группы вк и оставлял коменты.
Макрос на разгадку капчи готов, работает. (razgadka_kapchi.iim)
Макрос (dokap.iim) переходит по ссылке в группу и пишет комент на стене, после нажатия кнопки отправить заканчивается (а там капча либо появляется либо нет, бывает по разному)
Переход по ссылкам групп сделал в разных ііm файлах.

Вот в Управляющем js-скрипте вызывает первую группу, а потом или зависает, или мозила падает, или по кругу в той же группе ходит.

Скажите как правильно осуществить (прописать в управляющем) поочередный переход в следующие iim файлы по очереди.

Пробовал так:

скрытый текст

Выделить код

Код:

iimPlay("dokap.iim")
do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")
    if (i==1){iimPlay("razgadka_kapchi.iim");};
}while(i==1);


iimPlay("dokap10.iim")
do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")
    if (i==1){iimPlay("razgadka_kapchi.iim");};
}while(i==1);


iimPlay("dokap11.iim")
do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")
    if (i==1){iimPlay("razgadka_kapchi.iim");};
}while(i==1);


так:

скрытый текст

Выделить код

Код:

iimPlay("dokap.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

iimPlay("dokap10.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}

iimPlay("dokap11.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}


и так:




скрытый текст

Выделить код

Код:

var q;
for (q=1;q<=1;q++){
iimPlay("dokap.iim");
}
w=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title") 
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("razgadka_kapchi.iim")
       if (w>0){
          break

      }  
   }
  }
  
  var q;
for (q=1;q<=1;q++){
iimPlay("dokap10.iim");
}
w=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title") 
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("razgadka_kapchi.iim")
       if (w>0){
          break

      }  
   }
  }
  
  var q;
for (q=1;q<=1;q++){
iimPlay("dokap11.iim");
}
w=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title") 
if (w>0){
for (w=1;w<=1;w++){
      w=iimPlay("razgadka_kapchi.iim")
       if (w>0){
          break

      }  
   }
  }

Маххх, суть этих скриптов - идентична, если не учитывать, что второй изначально содержит ошибку, и цикл проверки капчи - ни когда не будет завершен, а в третьем - отсутствие логики приводящее к тому, что при наличии капчи - она будет разгадана только один раз, и если будет не верной, скрипт отработает не корректно и не попробует разгадать капчу еще раз а продолжит свои действия дальше

Маххх пишет

Вот в Управляющем js-скрипте вызывает первую группу, а потом или зависает, или мозила падает

пробуйте более ранние версии мозиллы и имакроса

Маххх пишет

или по кругу в той же группе ходит.

если не считать 3 варианта, где присутствует совершенно бесполезный цикл for(...) то у вас ни где не присутствует ни одного элемента зацикливающего скрипт "dokap.iim"

Маххх пишет

Уважаемые знатоки прошу немного внимания и помощи.

.... или мозила падает,....

скрытый текст
падения могут быть связаны так же с различного рода дополнениями , особенно помогает падать imgLikeOpera

по поводу капчи использую такую конструкцию, она более стабильна в разных версиях imacros , mozilla и ОС

SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
две верхние команды помещаем в razgadka_kapchi.iim

получаем такой js (в примере на 3 круга , можно и до момента верной разгадки ) 
   

Выделить код

Код:

for (cklCaptcha=1;cklCaptcha<=3;cklCaptcha++){
     if (iimPlay("razgadka_kapchi.iim")<0) {break;}
}

если вдруг код js не работает , мог допустить синтаксическую ошибку )) не всегда все замечаю

и ещё по поводу команды индикатора капчи TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
Есть небольшая проблемка - но может и нет - данная команда реагирует положительно и на другие сообщения ВК (к примеру на сообщение - на ограничение количества добавлений друзей за сутки)

kolshix пишет

если вдруг код js не работает , мог допустить синтаксическую ошибку ))

в данном случае, iimPlay всегда будет == 1 из-за того, какой код находится в iim-файле разгадки капчи

03-12-2014 11:18:02
вообще, странный способ проверять - разгадана ли капча, проверкой на ошибки, хотя и будет действовать, если правильно записать iim-файл

InfSub пишет
kolshix пишет

если вдруг код js не работает , мог допустить синтаксическую ошибку ))

в данном случае, iimPlay всегда будет == 1 из-за того, какой код находится в iim-файле разгадки капчи

03-12-2014 11:18:02
вообще, странный способ проверять - разгадана ли капча, проверкой на ошибки, хотя и будет действовать, если правильно записать iim-файл

вы полностью не правы !!! iimPlay содержит команду TAG POS=1 TYPE=DIV ATTR=CLASS:box_title (капча есть) , если команда не выполнится iimPlay будет меньше нуля , а значит iimPlay выдаст ошибку и сценарий разгадки не выполнится и в js сработает break

Я уже использую данный метод более 6 месяцев, чаще всего использую без for () - предложил вариант for для тех кто хочет 100% разгадку

kolshix пишет

вы полностью не правы !!! iimPlay содержит команду TAG POS=1 TYPE=DIV ATTR=CLASS:box_title (капча есть)

kolshix, прочтите мое сообщение полностью, а не выдирайте фразы применительно к вашему куску кода, я писал о том коде, который использовал Маххх

03-12-2014 13:56:12
Могу пояснить, если не понятно почему:...
В коде Маххх для разгадывания капчи используется SET !ERRORIGNORE YES и результат этого кода, всегда будет равен 1, кроме каких-то глобальных ошибок в коде, которые не сможет проигнорить имакрос

Большое спасибо участникам форума kolshix, InfSub!! даже скажу больше - ОГРОМНОЕ!!!
задачу решил.
к стати я пользуюсь и пользовался портативной мозилой версии 27.0.1, и imacros 8.0.6 как учил kolshix в своем видео.
К стати отдельный респект kolshix за это видео, все доступно и понятно, побольше бы таких видео.
По сути есть желание учится, а не откуда.
kolshix, InfSub - спасибо что вы у нас есть и помагаете.



Рано обрадовался.
Описание:
Трудность появилась в том, что макрос даже когда капча не появляется, всеравно пытается ее разгадать. Сохраняет что попало (картинку).
Когда капчи появляются - проблем не возникает.

Управляющий: (в нем я изменил 3 на 1, поскольку мне не нужно чтобы он 3 раза разгадывал капчу при неправильной разгадке. Мне нужно чтобы он 1 раз разгадывал, неправильные разгадки бывают редко и не так страшны для меня, лучше пусть не разгадав правильно, пойдет дальше)

скрытый текст

Выделить код

Код:

iimPlay("dokap.iim")
for (cklCaptcha=1;cklCaptcha<=1;cklCaptcha++){
     if (iimPlay("razgadka.iim")<0) {break;}
}

iimPlay("dokap10.iim")
for (cklCaptcha=1;cklCaptcha<=1;cklCaptcha++){
     if (iimPlay("razgadka.iim")<0) {break;}
} и так дальше по тому же типу, просто вызывает разные iim файлы


разгадка:
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
FILTER TYPE=IMAGES STATUS=OFF
SET API тут мой ключ прописан
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=vk.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:/captcha.php?* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\vk.jpg
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=3
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=2


ссылка на группу и набор текста:
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
URL GOTO=http://vk.com/club...
WAIT SECONDS=5
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=...
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5


тоесть проблема в том, что управляющий отправляет на разгадку капчи даже тогда, когда она не появляется.

Маххх пишет

Большое спасибо участникам форума kolshix, InfSub!! даже скажу больше - ОГРОМНОЕ!!!
задачу решил.

скрытый текст
к стати я пользуюсь и пользовался портативной мозилой версии 27.0.1, и imacros 8.0.6 как учил kolshix в своем видео.
К стати отдельный респект kolshix за это видео, все доступно и понятно, побольше бы таких видео.
По сути есть желание учится, а не откуда.
kolshix, InfSub - спасибо что вы у нас есть и помагаете.



Рано обрадовался.
Описание:
Трудность появилась в том, что макрос даже когда капча не появляется, всеравно пытается ее разгадать. Сохраняет что попало (картинку).
Когда капчи появляются - проблем не возникает.

Управляющий: (в нем я изменил 3 на 1, поскольку мне не нужно чтобы он 3 раза разгадывал капчу при неправильной разгадке. Мне нужно чтобы он 1 раз разгадывал, неправильные разгадки бывают редко и не так страшны для меня, лучше пусть не разгадав правильно, пойдет дальше)
[spoiler]

Выделить код

Код:

iimPlay("dokap.iim")
for (cklCaptcha=1;cklCaptcha<=1;cklCaptcha++){
     if (iimPlay("razgadka.iim")<0) {break;}
}

iimPlay("dokap10.iim")
for (cklCaptcha=1;cklCaptcha<=1;cklCaptcha++){
     if (iimPlay("razgadka.iim")<0) {break;}
} и так дальше по тому же типу, просто вызывает разные iim файлы


разгадка:
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
FILTER TYPE=IMAGES STATUS=OFF
SET API тут мой ключ прописан
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=vk.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:/captcha.php?* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\vk.jpg
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=3
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=2


ссылка на группу и набор текста:
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
URL GOTO=http://vk.com/club...
WAIT SECONDS=5
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=...
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5


тоесть проблема в том, что управляющий отправляет на разгадку капчи даже тогда, когда она не появляется.

у вас не правильно выставлены команды в файле разгадка
нужно вот так
(обратите внимание что при конструкции ниже отсутствует для команды во второй строке пропуск ошибок , а потом присутствует, если не выполнится TAG POS=1 TYPE=DIV ATTR=CLASS:box_title - то сценарий прирвутся и перейдёт к следующему  по очереди в JS  )

скрытый текст

Выделить код

Код:

SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title

SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

FILTER TYPE=IMAGES STATUS=OFF
SET API тут мой ключ прописан
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=vk.jpg WAIT=YES

Маххх пишет

разгадка

вообще не понятно зачем строка TAG POS=1 TYPE=DIV ATTR=CLASS:box_title была помещена в разгадку, с учетом того, что ранее вы приводили код без этой строки, но если делать с ней, то - как и сказал kolshix, она должна быть до игнора ошибок

Маххх пишет

Управляющий: (в нем я изменил 3 на 1, поскольку мне не нужно чтобы он 3 раза разгадывал капчу при неправильной разгадке. Мне нужно чтобы он 1 раз разгадывал, неправильные разгадки бывают редко и не так страшны для меня, лучше пусть не разгадав правильно, пойдет дальше)

если вам нужен 1 цикл а не больше, то цикл for - вам вообще не нужен:
поменяйте с этого:

скрытый текст

Выделить код

Код:

iimPlay("dokap.iim")
for (cklCaptcha=1;cklCaptcha<=1;cklCaptcha++){
     if (iimPlay("razgadka.iim")<0) {break;}
}


на этот:
скрытый текст

Выделить код

Код:

iimPlay("dokap.iim")
iimPlay("razgadka.iim")

InfSub пишет
Маххх пишет

разгадка

вообще не понятно зачем строка TAG POS=1 TYPE=DIV ATTR=CLASS:box_title была помещена в разгадку,

Помещено для того чтоб уменьшить вариант заморозки работы imacros на различных машинах. Затрону немного тему заморозки imacros - обидно, есть замечательная команда для поиска нужного контента   CONTENT=EVENT:FAIL_IF_FOUND    дак вот обидно, что на Windows Server 2008 частенько замораживает работу!!!


Выделить код

Код:

iimPlay("dokap.iim")
iimPlay("razgadka.iim")

Кстати именно такую конструкцию я использую на буксах и считаю её максимально удобной для меня ! Но я не спец, может быть ещё что-то веселее есть...

повторюсь : "Я уже использую данный метод более 6 месяцев, чаще всего использую без for () - предложил вариант for для тех кто хочет 100% разгадку"

kolshix пишет

"Я уже использую данный метод более 6 месяцев, чаще всего использую без for () - предложил вариант for для тех кто хочет 100% разгадку"

да - я не спорю с этим вариантом, я делал акцент на то, что при наличии SET !ERRORIGNORE YES не будет срабатывать конструкция if(iimPlay(...)<0)break; в некоторых ситуациях, во всяком случае при отсутствии строки: TAG POS=1 TYPE=DIV ATTR=CLASS:box_title в коде файла-разгадки, проверять возвращаемое iimPlay'ем значение - на ошибки, ИМХО - не логично

методов и вариантов много, все зависит от сайта и необходимости разгадать там капчу

и да , ещё метод описанный выше использовал , чтоб не засирать код и сделать максимально компактным

ВСЕм здравствуйте) подскажите пожалуйста. столкнулся с таким вопросом: при запуске мкроса. (это было при запуске разных макросов) бывает зависает браузер. просто встает колом и все. кнопки не нажимаются не на макросе не на браузере. может вообще пропасть вся картинка в браузере. причем сам макрос может продолжать работу корректно. а может не корректно. грубо говоря. пройти 5 страниц и раскинуть в них сообщение. а может на шестой начать сыпать одинаковые сообщения.  Для справки: зависнуть может при условии что открыто несколько окон также и при отрытом одном окне.... также это происходит на браузерах на платформе мозилы. например на ВАТЕРФОКСЕ.  Читал в нете что такое происходит на свежих версиях аймакроса. на старых версиях такого нет.  возможно ли где скачать старые версии? откатить их как либо? В чем вообще может быть проблема?

Версии Imacros
и да, Артур ! подскажите почему именно ватерфокс, чем он так примечателен - К примеру выбирая из Mozilla FireFoxe и Pale Moon - смело могу сказать , что форумы и сайты пишут , что Палмун заточен под windows и слабенькие ресурсы - по этому мой выбор пал на палмун .

Что ЕСТЬ WATERFOX  ???

kolshix пишет

Версии Imacros
и да, Артур ! подскажите почему именно ватерфокс, чем он так примечателен - К примеру выбирая из Mozilla FireFoxe и Pale Moon - смело могу сказать , что форумы и сайты пишут , что Палмун заточен под windows и слабенькие ресурсы - по этому мой выбор пал на палмун .

Что ЕСТЬ WATERFOX  ???

Ок спс.  попробую другие версии. Почему ватерфокс?... просто потому что он тоже на платформе фаерфокса. я считал что зависания в мозиле связанны с тем что я хватанул какой то вирус.  после некоторых плясок с бубном начал перебирать браузеры где еще можно поставить аймакрос. в итоге переставил винду и понял что дело совсем не в браузере.

InfSub, снова нужна твоя помощь. В iim Делаем клик по объекту:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=EMBED ATTR=ID:adcopy-puzzle-image-image


А как сделать чёб кликал точно по центру этого объекта?
Может ещё кто подскажет....:rolleyes:

InfSub пишет

возможно записать  в другой файл, и первую и вторую колонку,

InfSub, подскажи пожалуйста, а то что-то с csv форматом не могу разобраться.
если в одну колонку, то он в кавычки берет.
если разделитель запятая - то он в две колонки информацию в csv не отображает.

Чё гадать на гуще, подскажи пжл, каким образом в две колонки ложить информацию в csv?

stars1981, еслти объект находится всегда в одном месте, можете попробовать записать клик по координатам, но не факт, что это поможет

04-12-2014 10:38:27
spy686, не совсем понял вопроса, но, если в кратце, то при экстракте, вся информация, переданная в первый экстракт идет в первый столбец, далее, если сделать еще один экстракт или использовать ADD !EXTRACT ВАШИ_данные пойдет во второй столбец и т.д.

04-12-2014 10:45:24

скрытый текст

Выделить код

Код:

' первый столбец
TAG POS= ... EXTRACT=TXT
' второй столбец
TAG POS= ... EXTRACT=TXT
SAVEAS...


04-12-2014 10:47:33
или
скрытый текст

Выделить код

Код:

SET EXTRACT "данные первого столбца"
ADD EXTRACT "данные второго столбца"
SAVEAS...

InfSub пишет

записать клик по координатам

Как координаты определить? И можно ли применить в iim вот это:

скрытый текст

Выделить код

Код:

var obj = document.getElementById ('ID вашего объекта'); 
var absTop = var absLeft = 0; 
while (obj.offsetParent); 
   { 
   absTop = obj.offsetTop; 
   absLeft = obj.offsetLeft; 
   obj = obj.offsetParent; 
   } 
alert ('По горизонтали:\t' + absLeft + '\nПо вертикали:\t' + absTop);


или это:
скрытый текст

Выделить код

Код:

<img id=i1 src=1111.gif> 
<div id=d1 onclick=alert([getPos(dID('d1'))[0]-getPos(dID('i1'))[0],getPos(dID('d1'))[1]-getPos(dID('i1'))[1]])>1111111111111111</div> 

<SCRIPT> 
dID=function(I){return document.getElementById(I);}; 

getPos=function(o){var x=y=0; 
    while(o){x+=o.offsetLeft;y+=o.offsetTop;o=o.offsetParent;} 
return[x,y]};

stars1981 document - не работает в имакросе, т.к. не является объектом имакроса

InfSub пишет

document - не работает в имакросе, т.к. не является объектом имакроса

Подскажи, пожалуйста:

скрытый текст

Выделить код

Код:

if (err_bitcoinker_I == 1){
// первоначальный адрес страницы (если отличается - меняем, на тот что в iim)
    iimPlayCode("URL GOTO=http://bitcoinker.com/faucet?ref=92bb3528126f/\nTAG POS=1 TYPE=H2 ATTR=CLASS:cf-subheadline EXTRACT=TXT");
    if(iimGetLastExtract(1)!='#EANF#'){
//здесь запускаем скрипт разгадывания капчи для доп. страницы
    iimPlay("dop_proverka/01_dop_proverka.iim",60);
    }
//здесь клик:  [img]https://pp.vk.me/c622019/v622019458/c7ba/LYppzOBLjYU.jpg[/img]       
        iimPlay("15_min/01_bitcoinker.iim",60);


Код объекта:
скрытый текст

Выделить код

Код:

<embed type="application/x-shockwave-flash" src="http://cloudfront.solvemedia.com/acmedia/f/0/f0I51krdedeMNi/b/bVOq.uTIrdedecMq.swf" style="width:100%;height:100%;padding:0;margin:0;" id="adcopy-puzzle-image-image" wmode="opaque" allowscriptaccess="always" flashvars="url=http://forcrypto.com/?r=12D1hHkL61Q1Voe62ad88rKHLPZsDddkyJ&amp;clickTAG=http://api.solvemedia.com/papi/action?c=2@Oo9Gg1JV1CkZlQNCLaQhwqI63cKPkA-c@ULViVNY0l4gENU8bgrS.539APTC4lJjo0caPjNPssBP2mGFDSmgwVQL0hKH72QScuMlJ7WQZqN3htToecVWewjEDOD0nXfeB6hh-2bFfVjN0LJGKaqfAyERkyGI5RqTL0f-KnP4wKVAVXFyIFZ.hxwB0OxO4yr3qvoUZSTyY8WDUlxos9xu2Dzuuy9UPPGht7MTmyuZ0wPsSTifyoIlkgBBRtqtqFTxTZDmnQH5nPn7mi3CYGpGRMe9iJSy3oth4axH8M1WFQhXSkbiPvKP6HnfGKCQI7SwxJkhFXIK0uoA&amp;listener=adcopy_media_listener">

stars1981, подсказать - что?

InfSub пишет

подсказать - что?

Код в место этого: //здесь клик: 

скрытый текст
LYppzOBLjYU.jpg

stars1981 пишет
InfSub пишет

подсказать - что?

Код в место этого: ...

imacros для FF не работает с flash-объектами

InfSub пишет

imacros для FF не работает с flash-объектами

А клик по корам относительно родителя, не проканает?

скрытый текст

Выделить код

Код:

2:
3:
4:
5:
6:
7:
8:
9:
function getPosition(obj) {
 var x=0, y=0;
 while(obj) {
    x+=obj.offsetLeft;
    y+=obj.offsetTop;
    obj=obj.offsetParent;
 }
 return {x: x, y:y};
}

stars1981
попробуйте, но на сколько я знаю, нет, с флешем умеет работать только имакрос браузер

Ну, что!!! Кто КОДЕР из кодеров? Сам я тока учусь, так что мозг кипит.... Канкретно для моего случая не могу реализовать.... Задача- кликнуть в цент объекта (на картинке выше).
вот что нарыл:

скрытый текст
В свойствах offset(Left|Top) хранится смещение обьекта относительно предка offsetParent, у предка в свою очередь тоже есть предок и т.д. Таким образом ты можешь вычислить положение любого элемента относительно другого элемента. Просматривать нужно до элемента HTML. Узнать на каком теге мы сейчас можно через элемент.nodeName

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

Выделить код

Код:

<!-- несущий слой, промаркирован классом container -->
<div class="container"><table><tr><td id="test">Hoi</td></tr></table></div>
<script language="Javascript" type="text/javascript">
<!--
//функция возвращает несущий слой и его координаты по заданному элементу
function getPlatf(obj) {
while(obj&&!(obj.nodeName=="DIV"&&obj.className=="container")) obj=obj.parentElement;
if(!obj) return null;
var x=0, y=0, tg=obj;
while(obj) {
   x+=obj.offsetLeft;
   y+=obj.offsetTop;
   obj=obj.offsetParent;
}
 // возвращаем обьект в полях которого: target - несущий слой, x/y - координаты
return {target: tg, x: x, y:y};
}
var r=getPlatf(document.getElementById("test")); //вычислим для ячейки таблицы
alert(r.target.nodeName+", "+r.x+", "+r.y);
//-->
</script>


сам объект:
скрытый текст

Выделить код

Код:

<!doctype html>
<html>
<head>
    <meta charset="UTF-8"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <title>ForCrypto</title>
    <meta name="description" content="ForCrytpo Faucet and Shop, 100 or 200 Satoshi every 30 minutes.  50/50 Chance! Buy Bitcoin vinyl decals plus other crytpocurrencies decals." />
    <meta name="keywords" content="bitcoin, faucet, satoshi, litecoin, infinitecoin, dogecoin, microwallet, bitchest, coinbox, shop, vinyl, decal, sticker, mining, crypto, cryptocurrency, cryptocurrencies, exhcange, btc, ltc, ifc, doge, rotator, wallet, free" />

    <link rel="icon" href="favicon.ico" type="image/x-icon" />

    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
    <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" />
    <link rel="stylesheet" href="themes/default/style.css" />
</head>

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=485204061610524&version=v2.0";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-46851431-1', 'auto');
  ga('send', 'pageview');

</script>



<body>
    
    <div align="center" class="socialme">
    
        <span class="tickers"></span>
        <span class="tickerl"></span>
            
            
            <br/>
        
        <div class="fb-like" data-href="https://www.facebook.com/pages/For-Crypto/195441103990319" data-layout="button_count" data-action="like" data-show-faces="true" data-share="true"></div>
    </div><!--socialme-->

    <div class="headerbox">
        <div>
            <center>
                <a href="http://forcrypto.com/"><img src="http://forcrypto.com/themes/default/images/ForCryptoSig.png" alt="ForCrytpo" title="ForCrypto" width="141" height="31"></a>
                <a href="http://www.forcrypto.com/blog/shop/" class="nav">Shop Cryptocurrencies Decals</a>
            </center>
        </div>
        
    </div><!--header-->
    
<div class="container">
    
    <center>
    <br/>
<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>

<br/>

<div style="background-color:#333;padding:3%;">
<center>
<span style="font-size:24px;color:#FFF;">Earn More Bitcoin!</span>
</center>
<hr/>
<br />
<span id="faurotate">MicroWallet Faucets<a id="faurotatenav" href="http://www.forcrypto.com/microwallet/bitcoinker.php" target="new">Rotator</a><a id="faurotatenav" href="http://www.faucetsurfer.com/" target="new">List</a></span>

<span id="faurotate" style="margin-left:3%;">Bitcoin-Cloud Faucets<a id="faurotatenav" href="http://www.faucetsurfer.com/bitcoincloud/win-free-bitcoins.html" target="new">Rotator</a><a id="faurotatenav" href="http://www.faucetsurfer.com/" target="new">List</a></span>
</div>

<br/>

<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>    </center>
    <div class="row faucet">
        <div class="col-sm-3">
            
            <center>
<iframe data-aa='39145' src='//ad.a-ads.com/39145?size=200x200' scrolling='no' style='width:200px; height:200px; border:0px; padding:0;overflow:hidden' allowtransparency='true'></iframe>
</center>


<center>
<div>
        <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=D8ETZ2F6KWN3J" style="overflow:hidden;width:200px;height:200px;"></iframe>
</div>
</center>
        </div>
        
        <div class="col-sm-6" style="background-color:#333;padding-top:15px;">
                        
                        <div class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">Faucet balance: 41 satoshi</div>
            <div class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">50-200 Satoshi Every 30 Minutes</div>
            <form action="" method="POST">
    <div class="text-center" id="faucet-label" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:1.5px; text-decoration:none;">Enter your Bitcoin address</div>
    <div class="form-group" id="faucet-input">
        <input class="form-control input-lg" type="text" name="username" id="username" value="" placeholder="Bitcoin address" />
    </div>                <div class="form-group" id="faucet-captcha">
        <center><script type="text/javascript" src="http://api.solvemedia.com/papi/challenge.script?k=Oo9Gg1JV1CkZlQNCLaQhwqI63cKPkA-c"></script></center>
    </div>            
            <center>
                <div>
                    <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=3IP1F6ZIAYPO3" style="overflow:hidden;width:468px;height:60px;"></iframe>
                </div>
            </center>

                <div class="form-group" id="faucet-button">
        <button class="form-control input-lg btn-success" style="background-color:#999; border:thick; font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:3px; text-decoration:none;">Claim Reward</button>
    </div>
</form>            <div class="well well-sm text-center" style="background-color:#333; border:1.5px; color:#FFF; ">Earn 10% referral bonus! Share your referral URL:<br />http://forcrypto.com/?r=Bitcoin address</div>                    </div>
        <div class="col-sm-3">
            <center>
<div>
    <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=D8ETZ2F6KWN3J" style="overflow:hidden;width:200px;height:200px;"></iframe>
</div>
</center>

<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- ForCrypto Home Side 4 -->
<ins class="adsbygoogle"
     style="display:inline-block;width:200px;height:200px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="7926547729"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>        </div>
    </div>
    <center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>    <br/>
    <p class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;"><a href="http://www.forcrypto.com/" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">&copy; 2014 ForCrytpo | <a target="new" href="http://www.freebitcoinfaucet.org/" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">Microfaucet</a> | <a href="?page=login">Admin login</a></p>
</div>

</body>
</html>


Его предок:
скрытый текст

Выделить код

Код:

<!doctype html>
<html>
<head>
    <meta charset="UTF-8"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <title>ForCrypto</title>
    <meta name="description" content="ForCrytpo Faucet and Shop, 100 or 200 Satoshi every 30 minutes.  50/50 Chance! Buy Bitcoin vinyl decals plus other crytpocurrencies decals." />
    <meta name="keywords" content="bitcoin, faucet, satoshi, litecoin, infinitecoin, dogecoin, microwallet, bitchest, coinbox, shop, vinyl, decal, sticker, mining, crypto, cryptocurrency, cryptocurrencies, exhcange, btc, ltc, ifc, doge, rotator, wallet, free" />

    <link rel="icon" href="favicon.ico" type="image/x-icon" />

    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
    <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" />
    <link rel="stylesheet" href="themes/default/style.css" />
</head>

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=485204061610524&version=v2.0";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-46851431-1', 'auto');
  ga('send', 'pageview');

</script>



<body>
    
    <div align="center" class="socialme">
    
        <span class="tickers"></span>
        <span class="tickerl"></span>
            
            
            <br/>
        
        <div class="fb-like" data-href="https://www.facebook.com/pages/For-Crypto/195441103990319" data-layout="button_count" data-action="like" data-show-faces="true" data-share="true"></div>
    </div><!--socialme-->

    <div class="headerbox">
        <div>
            <center>
                <a href="http://forcrypto.com/"><img src="http://forcrypto.com/themes/default/images/ForCryptoSig.png" alt="ForCrytpo" title="ForCrypto" width="141" height="31"></a>
                <a href="http://www.forcrypto.com/blog/shop/" class="nav">Shop Cryptocurrencies Decals</a>
            </center>
        </div>
        
    </div><!--header-->
    
<div class="container">
    
    <center>
    <br/>
<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>

<br/>

<div style="background-color:#333;padding:3%;">
<center>
<span style="font-size:24px;color:#FFF;">Earn More Bitcoin!</span>
</center>
<hr/>
<br />
<span id="faurotate">MicroWallet Faucets<a id="faurotatenav" href="http://www.forcrypto.com/microwallet/bitcoinker.php" target="new">Rotator</a><a id="faurotatenav" href="http://www.faucetsurfer.com/" target="new">List</a></span>

<span id="faurotate" style="margin-left:3%;">Bitcoin-Cloud Faucets<a id="faurotatenav" href="http://www.faucetsurfer.com/bitcoincloud/win-free-bitcoins.html" target="new">Rotator</a><a id="faurotatenav" href="http://www.faucetsurfer.com/" target="new">List</a></span>
</div>

<br/>

<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>    </center>
    <div class="row faucet">
        <div class="col-sm-3">
            
            <center>
<iframe data-aa='39145' src='//ad.a-ads.com/39145?size=200x200' scrolling='no' style='width:200px; height:200px; border:0px; padding:0;overflow:hidden' allowtransparency='true'></iframe>
</center>


<center>
<div>
        <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=D8ETZ2F6KWN3J" style="overflow:hidden;width:200px;height:200px;"></iframe>
</div>
</center>
        </div>
        
        <div class="col-sm-6" style="background-color:#333;padding-top:15px;">
                        
                        <div class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">Faucet balance: 41 satoshi</div>
            <div class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">50-200 Satoshi Every 30 Minutes</div>
            <form action="" method="POST">
    <div class="text-center" id="faucet-label" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:1.5px; text-decoration:none;">Enter your Bitcoin address</div>
    <div class="form-group" id="faucet-input">
        <input class="form-control input-lg" type="text" name="username" id="username" value="" placeholder="Bitcoin address" />
    </div>                <div class="form-group" id="faucet-captcha">
        <center><script type="text/javascript" src="http://api.solvemedia.com/papi/challenge.script?k=Oo9Gg1JV1CkZlQNCLaQhwqI63cKPkA-c"></script></center>
    </div>            
            <center>
                <div>
                    <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=3IP1F6ZIAYPO3" style="overflow:hidden;width:468px;height:60px;"></iframe>
                </div>
            </center>

                <div class="form-group" id="faucet-button">
        <button class="form-control input-lg btn-success" style="background-color:#999; border:thick; font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:3px; text-decoration:none;">Claim Reward</button>
    </div>
</form>            <div class="well well-sm text-center" style="background-color:#333; border:1.5px; color:#FFF; ">Earn 10% referral bonus! Share your referral URL:<br />http://forcrypto.com/?r=Bitcoin address</div>                    </div>
        <div class="col-sm-3">
            <center>
<div>
    <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=D8ETZ2F6KWN3J" style="overflow:hidden;width:200px;height:200px;"></iframe>
</div>
</center>

<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- ForCrypto Home Side 4 -->
<ins class="adsbygoogle"
     style="display:inline-block;width:200px;height:200px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="7926547729"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>        </div>
    </div>
    <center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>    <br/>
    <p class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;"><a href="http://www.forcrypto.com/" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">&copy; 2014 ForCrytpo | <a target="new" href="http://www.freebitcoinfaucet.org/" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">Microfaucet</a> | <a href="?page=login">Admin login</a></p>
</div>

</body>
</html>


вся страница:
скрытый текст

Выделить код

Код:

<!doctype html>
<html>
<head>
    <meta charset="UTF-8"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <title>ForCrypto</title>
    <meta name="description" content="ForCrytpo Faucet and Shop, 100 or 200 Satoshi every 30 minutes.  50/50 Chance! Buy Bitcoin vinyl decals plus other crytpocurrencies decals." />
    <meta name="keywords" content="bitcoin, faucet, satoshi, litecoin, infinitecoin, dogecoin, microwallet, bitchest, coinbox, shop, vinyl, decal, sticker, mining, crypto, cryptocurrency, cryptocurrencies, exhcange, btc, ltc, ifc, doge, rotator, wallet, free" />

    <link rel="icon" href="favicon.ico" type="image/x-icon" />

    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
    <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" />
    <link rel="stylesheet" href="themes/default/style.css" />
</head>

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=485204061610524&version=v2.0";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-46851431-1', 'auto');
  ga('send', 'pageview');

</script>



<body>
    
    <div align="center" class="socialme">
    
        <span class="tickers"></span>
        <span class="tickerl"></span>
            
            
            <br/>
        
        <div class="fb-like" data-href="https://www.facebook.com/pages/For-Crypto/195441103990319" data-layout="button_count" data-action="like" data-show-faces="true" data-share="true"></div>
    </div><!--socialme-->

    <div class="headerbox">
        <div>
            <center>
                <a href="http://forcrypto.com/"><img src="http://forcrypto.com/themes/default/images/ForCryptoSig.png" alt="ForCrytpo" title="ForCrypto" width="141" height="31"></a>
                <a href="http://www.forcrypto.com/blog/shop/" class="nav">Shop Cryptocurrencies Decals</a>
            </center>
        </div>
        
    </div><!--header-->
    
<div class="container">
    
    <center>
    <br/>
<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>

<br/>

<div style="background-color:#333;padding:3%;">
<center>
<span style="font-size:24px;color:#FFF;">Earn More Bitcoin!</span>
</center>
<hr/>
<br />
<span id="faurotate">MicroWallet Faucets<a id="faurotatenav" href="http://www.forcrypto.com/microwallet/bitcoinker.php" target="new">Rotator</a><a id="faurotatenav" href="http://www.faucetsurfer.com/" target="new">List</a></span>

<span id="faurotate" style="margin-left:3%;">Bitcoin-Cloud Faucets<a id="faurotatenav" href="http://www.faucetsurfer.com/bitcoincloud/win-free-bitcoins.html" target="new">Rotator</a><a id="faurotatenav" href="http://www.faucetsurfer.com/" target="new">List</a></span>
</div>

<br/>

<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>    </center>
    <div class="row faucet">
        <div class="col-sm-3">
            
            <center>
<iframe data-aa='39145' src='//ad.a-ads.com/39145?size=200x200' scrolling='no' style='width:200px; height:200px; border:0px; padding:0;overflow:hidden' allowtransparency='true'></iframe>
</center>


<center>
<div>
        <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=D8ETZ2F6KWN3J" style="overflow:hidden;width:200px;height:200px;"></iframe>
</div>
</center>
        </div>
        
        <div class="col-sm-6" style="background-color:#333;padding-top:15px;">
                        
                        <div class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">Faucet balance: 41 satoshi</div>
            <div class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">50-200 Satoshi Every 30 Minutes</div>
            <form action="" method="POST">
    <div class="text-center" id="faucet-label" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:1.5px; text-decoration:none;">Enter your Bitcoin address</div>
    <div class="form-group" id="faucet-input">
        <input class="form-control input-lg" type="text" name="username" id="username" value="" placeholder="Bitcoin address" />
    </div>                <div class="form-group" id="faucet-captcha">
        <center><script type="text/javascript" src="http://api.solvemedia.com/papi/challenge.script?k=Oo9Gg1JV1CkZlQNCLaQhwqI63cKPkA-c"></script></center>
    </div>            
            <center>
                <div>
                    <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=3IP1F6ZIAYPO3" style="overflow:hidden;width:468px;height:60px;"></iframe>
                </div>
            </center>

                <div class="form-group" id="faucet-button">
        <button class="form-control input-lg btn-success" style="background-color:#999; border:thick; font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:18px; font-weight:100; color:#FFF; letter-spacing:3px; text-decoration:none;">Claim Reward</button>
    </div>
</form>            <div class="well well-sm text-center" style="background-color:#333; border:1.5px; color:#FFF; ">Earn 10% referral bonus! Share your referral URL:<br />http://forcrypto.com/?r=Bitcoin address</div>                    </div>
        <div class="col-sm-3">
            <center>
<div>
    <iframe scrolling="no" frameborder="0" src="//adbit.co/adspace.php?a=D8ETZ2F6KWN3J" style="overflow:hidden;width:200px;height:200px;"></iframe>
</div>
</center>

<center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- ForCrypto Home Side 4 -->
<ins class="adsbygoogle"
     style="display:inline-block;width:200px;height:200px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="7926547729"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>        </div>
    </div>
    <center>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- For Crypto Home Bottom -->
<ins class="adsbygoogle"
     style="display:inline-block;width:970px;height:90px"
     data-ad-client="ca-pub-2584425399388276"
     data-ad-slot="5112682127"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</center>    <br/>
    <p class="text-center" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;"><a href="http://www.forcrypto.com/" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">&copy; 2014 ForCrytpo | <a target="new" href="http://www.freebitcoinfaucet.org/" style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; font-size:12px; font-weight:100; color:#FFF; letter-spacing:2px; text-decoration:none;">Microfaucet</a> | <a href="?page=login">Admin login</a></p>
</div>

</body>
</html>


:/:rolleyes::blush::)

Ребят, подскажите..
а есть какой-нибудь вариант в imacros'e (не без участия js естественно) сравнить скаченную картинку на схожесть с уже имеющейся?
Картинки не большие 90х90

Была идея СRC32 сверять, но не могу сообразить как при загрузке CHECKSUM сравнивать...

alt+ctrl+del, пакет denwer вам в помощь

InfSub пишет

alt+ctrl+del, пакет denwer вам в помощь

Да уже подумываю и про этот вариант =)

Уже заездил гугля на предмет "php сравнение изображений" :usch:

Вот так он делает через 1

скрытый текст

Выделить код

Код:

SET !LOOP 1

SET !VAR1 {{!LOOP}}
ADD !VAR1 {{!LOOP}}
ADD !VAR1 -2
TAG POS={{!VAR1}}


а как сделать в обратном направлении ?
Лень из за этого всю ветку рыть, а найти не могу.

Допустим, чтобы начал с 10 и закончил 1

Алим пишет

Допустим, чтобы начал с 10 и закончил 1

скрытый текст

Выделить код

Код:

SET !VAR1 11
ADD !VAR1 -{{!LOOP}}
PROMPT {{!VAR1}}

пробовал ставить старую версию аймакроса. не получилось. несовместимо с новыми версиями браузера. УВАЖАЕМЫЕ ГУРУ аймакроса! подскажите пожалуйста.... неужели не кто с такой проблемой не сталкивался??? в гугле тоже молчок по этому вопросу. ЗАВИСает браузер при запуске макроса и все тут. просто запускаю и он минут через 20 встает колом и не двигается. перезапуск системы иногда решает проблему. иногда нет... с чем связанно может быть? в какой стороне копать?

Artur86 пишет

пробовал ставить старую версию аймакроса. не получилось. несовместимо с новыми версиями браузера.

естественно, т.к. ставить нужно на более старую версию браузера, зависает в основном имакрос, либо из-за сбоев браузера, либо из-за сбоев в ОС. В основном, это не стабильная работа ОС, выводы - думаю, сделаете сами

InfSub
Спасибо. То что надо )
Как я сам не догадался, что extract все в однострочный массив собирает при ADD )

InfSub пишет

spy686, не совсем понял вопроса, но, если в кратце, то при экстракте, вся информация, переданная в первый ээестракт идет в первый столбец, далее, если сделать еще один экстракт или использовать ADD !EXTRACT ВАШИ_данные пойдет во второй столбец и т.д.

Да массив, собирает, скорее всего и iMacros поймет что тут две колонки, но не очень удобно пользоваться таким csv
"qqwe","http://smart.tut.by/","http://smart.tut.by/"
http://screencast.com/t/mLLH7PJ0
Код:

скрытый текст

Выделить код

Код:

[spoiler]URL GOTO=tut.by
SET !EXTRACT qqwe
ADD !EXTRACT {{!URLCURRENT}}
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=qwe.csv[/spoiler]


Мне надо что бы на  выходе получался файл для удобного использования не iMacros'om а для обработки вручную.
Т.е. в полноценном табличном виде. Вот такого вида:
http://screencast.com/t/tSemqejf0V

Есть идеи?
разобрался что должно быть в файле: "qqwe";"http://smart.tut.by/";"http://smart.tut.by/"
как только вместо запятой точку запятой запихивать?

spy686, excel - файл - открыть - выбираете ваш csv и далее настраиваете как вам обработать ваш csv-файл - все корректно импортируется без вопросов

инструкция по корректному открытию CSV-файла в Excel'e (скрины)
excel'я под рукой нет, так что скрины - с одного из проектов, поэтому не на все выделенные моменты стоит обращать внимания, но смысл они передают полностью


df07f439fea11929b1de61dbca4ff19a.png

08305a85c8c9e985cb4bb6121dae6c88.png

a7ac9bbdb06ad748e6f90b0c9071ed51.png

если данные содержат цифры, начинающиеся с нуля, то:

8f3f5a72150f604c530466d4f857cb5a.png

c08c3491942a20b15a4d399f33e67387.png

InfSub пишет

spy686, excel - файл - открыть - выбираете вас csv и далее настраиваете как вам обработать ваш csv-файл - все корректно импортируется без вопросов

Спасибо ).

Но вот еще есть команда !DATASOURCE_DELIMITER.

с помощью ее можно сразу произвести замену зпт на тxr с зпт
но вот чтото не работает
похоже или открутили в iMacros вообще эту команду или может заменили что нить?



скрытый текст

Выделить код

Код:

URL GOTO=tut.by
SET !DATASOURCE_DELIMITER ;
prompt {{!DATASOURCE_DELIMITER}}
SET !EXTRACT qqwe
ADD !EXTRACT {{!URLCURRENT}}
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=qwe.csv

spy686, она ни когда не выполняла функции замены запятой на что-то иное в сохраняемом файле и служит только для указания разделителя в считываемом файле, о чем говорит и само название команды (ее первая часть)
(актуально для FireFox)

Подскажите пожалуйста в чем может быть ошибка?:
у меня есть управляющий js-файл, и несколько iim., которые вызывает этот управляющий.
Проблема в том что когда в корневой папке это все находится в аймакросе - все работает, а при перемещении этого всего в созданую папку не работает.
Хочу порядок сделать, не получается все файлы в корневой находятся, поскольку при перемещении не работает.
Скажите как правильно сделать?

Маххх пишет

Хочу порядок сделать, не получается все файлы в корневой находятся, поскольку при перемещении не работает.
Скажите как правильно сделать?

если перемещаете iim файлы, то в js необходимо указывать путь с указанием папки где лежат iim относительно той папки которай казана в настройках в первом поле.
пример

скрытый текст

Выделить код

Код:

iimPlay("T_Tw/T_Tw_Money.iim",60);


можете написать дерево папок и файлов, вам тут помогут )

spy686
спасибо, понял

Как перезагрузить Mozilla с помощью imacros ?

скрытый текст
создал себе фаил который устанавливает глубокие настройки, хочу чтоб этот файл умудрялся ещё устанавливать дополнения (2-3 штуки) - потом перезагрузка

Подскажите пожалуйста почему не происходит рандом. Всегда вытаскивает 1ю строку с тхт.


скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
URL GOTO=http://vk.com/...
WAIT SECONDS=5
SET !DATASOURCE C:\Users\User\Documents\iMacros\Macros\New\1.txt
SET !VAR1 EVAL("Math.floor(Math.random()*101 + 1;")
SET !DATASOURCE_LINE {{!VAR1}}
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5


а и еще подскажите правильно ли расположен порядок команд, или желательно чтото поменять местами для коректной работы?

Маххх, отключи игнор ошибок - узнаешь =)

говорит тут:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*101 + 1;")
SyntaxError: missing )(Error code: -1001)


помогите пожалуйста поправить.

Маххх, ну не ужели так сложно воспользоваться переводчиком, если проблемы с английским?
SyntaxError: missing )

перед ; скобку круглую закройте

InfSub пишет

Маххх
перед ; скобку круглую закройте

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

Всем привет!
Имеется проблемма извлечения в таймере контакта,может кто что подскажет.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=NOBR ATTR=TXT:Таймер
TAG POS=1 TYPE=DIV ATTR=CLASS:datepicker_control&&TXT:
TAG POS=1 TYPE=TD ATTR=ID:day8_503247 EXTRACT=TXT


из нижней строки кода ни могу извлечь изменяемое число (шесть цифр)
Почему то EXTRACT ничего не извлекает, показывает #EANF#

При изменении настроек imacros - получается
TAG POS=1 TYPE=TD ATTR=TXT:8
но при воспроизведении скрипт не находит эту строку.

slavabest

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=ID:day8_* EXTRACT=htm


а дальше при помощи регулярки выдераешь, то что надо, чтото вроде:
скрытый текст

Выделить код

Код:

SET trimmedValue EVAL("\"{{!EXTRACT}}\".replace(/^\\s*|\\s*$/g, \"\");")

spy686
Спасибо, но я это пробывал, ничего не  извлекает. Я подставлял в EXTRACT TXT,TXTALL,HREF,HTM

Уважаемые пользователи форума и жители в просторах интернета, подскажите пожалуйста.
Не могу понять как сделать, чтобы управляющий js-скрипт вызывал постоянно тот же самый ііm макрос по кругу, а ііm вызывал ссылки по очереди с тхт файла.
можно такое реализовать както?

Маххх
Бесконечный цикл:

скрытый текст

Выделить код

Код:

for (i=1;1<=20;){
iimPlay("T_Tw/T_Tw_Money.iim",60);
}

spy686
вопрос не в этом. трудность в том, что когда js вызвет iim нужно чтобы он не с первой строки тхт файла вызывал а по очереди при каждом обращении

spy686 пишет

а ііm вызывал ссылки по очереди с тхт файла.

Маххх
вот идея InfSub:

самое простое, тут, сделать временный файл, в который будет писаться номер текущей строки, а перед следующей записью номера строки, файл будет удаляться, чтобы в файле всегда было только одно значение
на мой взгляд, это самое простое и действенное решение, без привлечения сторонних средств

Подскажите пожалуйста!!! Какой код и куда нужно вписать в иим, чтоб по завершению этого иим сохранялось в текст. файл : название иим и время затраченое на его выполнение. Заранее благодарен.

Как в переменной JS указать название имя папки (пути) правильно ?

скрытый текст

Выделить код

Код:

var rtr = "женщины" 
for (i=1;i<=2;i++){
iimPlay("макросы/компьютер_и_телефон/rtr.iim",60);
}

или так 

var rtr = "компьютер_и_телефон/женщины" 
for (i=1;i<=2;i++){
iimPlay("макросы/rtr.iim",60);
}


Не работает, а как правильно это сделать ?

Ребят, подскажите как сделать что-то в этом роде или хоть куда копать.
1. При значении TRUE в строке 10, запускается macro и увеличивается счётчик номера тега в строке 6.
2. При значении TRUE в строке 10, запускается macro2. После выполнения кода macro2, запускается macro и увеличивается счётчик номера тега в строке 6.
3. Как подключить в строке 10 значение из внешнего файла txt.
4. Как задать кол-во раз, которое должно проиграться всеь этот цикл с условиями, т.е. присвоится значение тегу в строке 6.

скрытый текст

Выделить код

Код:

1        macro =    "CODE:";
2        macro +=  "URL GOTO=http://someurl.com" + "\n"; 
3        macro +=  "SET !DATASOURCE1.txt" + "\n"; 
4        macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
5        macro +=  "SET !DATASOURCE_LINE {{!LOOP}}" + "\n"; 
6        macro +=  "TAG POS={{i}} TYPE=A ATTR=ID:someid* EXTRACT=HREF" + "\n"; 
7        var macro2;
8        macro2 =    "CODE:";
9        var text=iimGetLastExtract();
10      if(text.search("{{!COL1}}")!=-1)
11      { iimPlay("macro"); }
12      else 
13      { iimPlay("macro2"); }


09-12-2014 13:55:57

Алим пишет

Как в переменной JS указать название имя папки (пути) правильно ?

скрытый текст

Выделить код

Код:

var rtr = "женщины" 
for (i=1;i<=2;i++){
iimPlay("макросы/компьютер_и_телефон/rtr.iim",60);
}

или так 

var rtr = "компьютер_и_телефон/женщины" 
for (i=1;i<=2;i++){
iimPlay("макросы/rtr.iim",60);
}


Не работает, а как правильно это сделать ?

Я делал так:

1. Все папки и имена должны быть на англ. языке.
2. Должны быть расположены в папках с макросами
3. Пути к файлам прописываются так: iimPlay("folder/macro.iim",60);

Deamelfuse пишет

Я делал так:

1. Все папки и имена должны быть на англ. языке.
2. Должны быть расположены в папках с макросами
3. Пути к файлам прописываются так: iimPlay("folder/macro.iim",60);

Как указывать пути к макросам в скрипте, я знаю.
Я имел введу, как можно, чтобы путь к макросу брался из переменной rtr

Но в принципе, я уже обошёлся другим методом.
Задумка просто одна была.

09-12-2014 19:03:03
Тепрь у меня другой вопрос.

Вот можно сделать одно условие в скрипте так

скрытый текст

Выделить код

Код:

h= iimPlayCode("SET !TIMEOUT_STEP 1 \n ")
if (i>0 ){ //нашло слово
что тут делается
}

if (i<0 ){// не нашло слово 
что тут делается
}


Но, вот как сделать условие на проверку, которое уже происходила?

К примеру скрипт заходил на страницы пользователей в одноклассниках.
Страница обновляется и появляются новые пользователи, но среди них
имются и те пользователи, к которым уже скрипт заходил.

Как сделать так, чтобы скрипт не заходил повторно
к одним и темже пользователям?

Это надо, чтобы скрипт в процессе работы сохранял к примеру ссылки пользователей
в текстовый файл и уже от тда делал проверку на совпадение (условие) ?

Могу ошибаться, но по-мойму в js есть работа с массивами , и поиск в массиве дубликата\уже отработанного человека.  Сразу скажу что редактирование массивов в js есть - грызите учебнки , может расскажите что накопали.
Смысл таков:
1 Добавление в массив id группы
2 проверка на дубликат
3 Выбор False\true

Алим
необходимо экранировать символ /. пробуйте так:

скрытый текст

Выделить код

Код:

iimPlay("макросы\/rtr.iim",60);

stars1981 пишет

Подскажите пожалуйста!!! Какой код и куда нужно вписать в иим, чтоб по завершению этого иим сохранялось в текст. файл : название иим и время затраченое на его выполнение. Заранее благодарен.

Не кто не подскажет?:angry:

stars1981 пишет
stars1981 пишет

Подскажите пожалуйста!!! Какой код и куда нужно вписать в иим, чтоб по завершению этого иим сохранялось в текст. файл : название иим и время затраченое на его выполнение. Заранее благодарен.

Не кто не подскажет?:angry:

Поищи в поиске "Imacros {{!NOW:" - я сегодня пробовал, но получил проблему с минутами- Вероятно придется создавать переменную через  через EVAL JS в начале кода  и вогнать в неё текущее время - потом создать вторую переменную в конце кода, ну и отнять от текущего времени начальное время , на практике никогда не делал , по этому вероятно придется мудрить

Либо же ищи сразу  время в JS там все описано !

kolshix пишет

Могу ошибаться, но по-мойму в js есть работа с массивами , и поиск в массиве дубликата\уже отработанного человека.  Сразу скажу что редактирование массивов в js есть - грызите учебнки , может расскажите что накопали.
Смысл таков:
1 Добавление в массив id группы
2 проверка на дубликат
3 Выбор False\true

Я это обхожу другим методом.
Конечно на это больше времени уходит.

Сначало макрос сохраняет ссылки всех людей на странице, а
потом уже из этого тхт файла макрос открывает страницы людей
и тем самым не заходит на одни и теже профиля.

Есть ещё и другие способы проверки.
Например если это отправка сообщения, то можно обойтись одним условием
- проверка отправленого сообщения (если текст совподает, то не отправляет)

Меня уже гугл ненавидит, весь топик я этот изучил за сутки, столько интересного нашел.. Но я не понимаю логику подобных скриптов...  Здесь уже обсуждалось, но рабочего варианта я не нашел, чтобы удалить начало и конец, оставив только середину того что в {{!EXTRACT}}.
Столько всего там понаписано, что это все за символы, как понять? Где почитать? Нигде не нашел....   Хелп ми плиз.  Можно просто пример, допустим в {{!EXTRACT}}  "начало1234конец" , как оставить только цифры? Одна строчка кода спасет мою душу! [bugzilla][bugzilla][bugzilla][bugzilla][bugzilla][bugzilla][bugzilla]

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/(.*)rel=",/,\"\")
SET !VAR2 EVAL("\"{{!VAR1}}\".replace(/(.*)работает,/,\"работает\").replace(/а петя (.*)/,\"петя \")")

kanabiozzz

скрытый текст

Выделить код

Код:

SET !EXTRACT "начало1234конец"
SET !VAR2 EVAL("\"{{!EXTRACT}}\".replace(/^.*начало/,\"\").replace(/конец.*/,\"\")")
prompt {{!VAR2}}

kanabiozzz пишет

Где почитать? Нигде не нашел....

впиши в поиске "javascript replace" - ну а далее добавляй конкретики

spy686
Спасибо большое, это почти счастье, я тебя не забуду !!   Правда если код такой "начало1234" конец"  , то есть присутствуют скобки  верхние (а такие скобки в коде не редкость) то выдает ошибку, но если без этого , то работает.

скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("\"{{!EXTRACT}}\".replace(/^.*начало/,\"\").replace(/" конец.*/,\"\")")


Так не пашет..

kanabiozzz пишет

Так не пашет..

Вероятно вы столкнетесь с такими проблемами замены , с которыми сталкивался я:
читать для js экранирование и почему кавычки не работают когда есть ещё кавычки и как быть

kolshix
Спасибо за ссылку, буду пробовать.

kolshix, а теперь объясните, при чем тут экранирование?

InfSub пишет

kolshix, а теперь объясните, при чем тут экранирование?

человек выше писал про замену кавычек, а статья как раз отвечает на вопрос почему не срабатывает замена когда нужно вписать знак кавычки  (про пробел я ничего не сказал, поднимал тему кавычек)

kanabiozzz

скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("'{{!EXTRACT}}'.replace(/(\\D+)(\\d+)(\\D+)/,'$2')")


10-12-2014 21:58:23

kolshix пишет

человек выше писал про замену кавычек

если речь об этом:

kanabiozzz пишет

Правда если код такой "начало1234" конец"

то тут - проблема, совершенно не в наличии кавычки


10-12-2014 22:06:43
Маххх
думаю, вам поможет в этом, команда iimSet()


10-12-2014 22:10:48
stars1981
STOPWATCH


10-12-2014 22:14:02

Алим пишет

Не работает, а как правильно это сделать ?

скрытый текст

Выделить код

Код:

var rtr = "женщины" 
...
iimPlay("макросы/компьютер_и_телефон/"+rtr+".iim",60);

или

var rtr = "компьютер_и_телефон/женщины" 
...
iimPlay("макросы/"+rtr+".iim",60);

скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("'{{!EXTRACT}}'.replace(/(\\D+)(\\d+)(\\D+)/,'$2')")


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

Алим пишет

Как сделать так, чтобы скрипт не заходил повторно к одним и темже пользователям?

а оно Вам надо? Скрипту придется держать всю эту информацию в памяти и с каждым циклом, свободной памяти будет становиться все меньше


10-12-2014 22:24:04

kanabiozzz пишет

мне бы как то понять смысл

тыц


10-12-2014 22:44:25
Deamelfuse, вам стоит начать с пункта 3 и почитать о iimGetLastExtract()


10-12-2014 22:49:36

kanabiozzz пишет

гугл мне не помогает совсем. У него на меня зуб

смену браузера, очистку кукисов и использование прокси - ни кто не отменял

Всем привет, нужна помощь. Сколько не искал, не нашел понятного для меня ответа.
Как в POS=......CONTENT={{!VAR1}} в место{{!VAR1}} подбиралось не случайное число, а рандомное слово из списка?

Что надо прописать сюда: SET !VAR1 EVAL("var min=2; var max=19; var res=0; res=Math.floor(Math.random()*(max-min+1))+min;")

Tungen пишет

Всем привет, нужна помощь. Сколько не искал, не нашел понятного для меня ответа.
Как в POS=......CONTENT={{!VAR1}} в место{{!VAR1}} подбиралось не случайное число, а рандомное слово из списка?

Что надо прописать сюда: SET !VAR1 EVAL("var min=2; var max=19; var res=0; res=Math.floor(Math.random()*(max-min+1))+min;")

в extract поидее все что через add добавляется, образует массив.
вот я думаю, как то надо рандомный элемент массива extract и вытягивать

а если уже есть список, тогда его в eval как массив и выбираешь рандомную позицию элемента

Tungen пишет

Всем привет, нужна помощь. Сколько не искал, не нашел понятного для меня ответа.
Как в POS=......CONTENT={{!VAR1}} в место{{!VAR1}} подбиралось не случайное число, а рандомное слово из списка?

Что надо прописать сюда: SET !VAR1 EVAL("var min=2; var max=19; var res=0; res=Math.floor(Math.random()*(max-min+1))+min;")

Листайте форум в обратную сторону (5-15 страниц) - вопрос был поднят и на него уже был ответ

kolshix пишет

Листайте форум в обратную сторону (5-15 страниц) - вопрос был поднят и на него уже был ответ

Решил вопрос путем рамдомного извлечения строки с .txt. Спасибо.

Tungen, kolshix - прав, только недавно отвечал на этот вопрос тут и ранее - тут, но при большом кол-ве вариантов для рандома, действительно - правильней использовать внешний файл

Мини FAQ по iMacros for Firefox by: InfSub


Где почитать:

Версии iMacros и Firefox:


Видео по настройке и использованию:

  1. Индивидуальная/субъективная настройка браузера для работы с Imacros (video by: kolshix)
  2. Основы считывания текстовой информации в Imacros (video by: kolshix)

Как запустить один скрипт из другого:

  • запуск *.iim-файла из *.iim:
    URL GOTO=imacros://run/?m=path/file.iim
  • запуск *.js-файла из *.iim:
    URL GOTO=imacros://run/?m=path/file.js
  • запуск *.iim-файла из *.js:
    iimPlay("path/file.iim")
  • запуск *.js-файла из *.js:
    iimPlayCode("URL GOTO=imacros://run/?m=path/file.js")

где:

    path - путь до файла относительно папки Macros
    file.js или file.iim - имя файла


iMacros + JS:
Есть несколько js-функций для работы с iim-кодом:

iimDisplay ("Ваш комментарий")

iimPlay ("файл или код")
или
iimPlayCode ("код")

iimSet ("имя iim-переменной", "значение")


Описание и примеры использования:

скрытый текст
iimDisplay ()

  • iimDisplay ("текст вашего комментария") - функция выводит текст в информационном окне iMacros'a.

iimPlay () - отправляет iim-файл или iim-код на выполнение.

  1. iimPlay ("c:\\MyMacros\\macro.iim") - полный путь до iim-файла*;
  2. iimPlay ("Test\\macro") - относительный путь* от папки макросов до iim-файла (указывать расширение файла (.iim), при этом, не обязательно);
  3. iimPlay ("CODE:URL GOTO=....") - отправка iim-кода.

* При использовании в JS, обратные слеши "\" - должны быть экранированы еще одним обратным слешем (актуально для OS Windows).
   Либо, путь до файла, можно записать с помощью прямых слешей "
/", в таком случае, их не придётся экранировать.
   Например:

    "C:\\MyMacros\\macro.iim"
   и
    "C:/MyMacros/macro.iim"


iimPlayCode () - отправляет iim-код на выполнение.

  • iimPlayCode ("URL GOTO=....") - отправка iim-кода.

iimSet () - инициализирует переменные в iim-файле или iim-коде и передает им значения из js-скрипта.

  • iimSet ("MYVAR", "MYVALUE") - функция инициализирует (создает) переменную MYVAR в макросе и передает ей значение MYVALUE (аналог кода: SET MYVAR MYVALUE)**
    В связи с тем, что переменная !LOOP не работает, при запуске из js, iimSet() - позволяет её заменить

** Нельзя передать значение уже инициализированным переменным, таким как: !VAR0-!VAR9 и любым другим, начинающимся со знака !



to be continued...

Ктонить скажет, что хочет от меня js ?
[spoiler][Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 203"  data: no], line 29 (Error code: -991)[/spoiler
Запускаю js из js вот так: iimPlay("js/15_min/01_bitcoinker.js",60);

stars1981
проверяйте строку 29 - вашего скрипта (Error Code: -991 - Javascript parsing/evaluation error)

Как можно обнулить переменную в JS ?

Кусок кода загружает из тхт файла
текст поочереди и фотографии из папки

при повторном цикле продолжает загружать
фото и текст, а нужно заного с первого фото и текста

скрытый текст

Выделить код

Код:

var фото = 1;         // начинает с первой фотографии
var текст = 1;        // начинает с первой строки

for (var i=1;i<=5;i++){
iimSet("фото",фото);
iimSet("текст",текст);
iimPlay("макросы/тема.iim",60);
фото++
текст++
}

так или как ?

фото+=1
текст+=1

Алим, количество=1

InfSub пишет

Алим, количество=1

Понял, спасибо )
Оказывается просто, а я так мучился.
Теперь всё работает как надо)

Можно ли в iMacros запускать js из js если да то как это сделать? Так: iimPlay("01_bitcoinker.js",60);  не хочет. Выдаёт ошибку:

скрытый текст
[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 203"  data: no], line 29 (Error code: -991)

stars1981
читаем шапку

stars1981 пишет

Можно ли в iMacros запускать js из js если да то как это сделать? Так: iimPlay("01_bitcoinker.js",60);  не хочет. Выдаёт ошибку:

скрытый текст
[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 203"  data: no], line 29 (Error code: -991)

Так   и полистайте далее немного форум - куда не глянь , imacros у каждого работает по разному

kolshix пишет

Так   и полистайте далее немного форум - куда не глянь , imacros у каждого работает по разному

Спасибо большое!!! Так

Выделить код

Код:

iimPlay("CODE:URL GOTO=iMacros://run/?m=01_bitcoinker.js",60);

всё работает если js лежит в папке Macros, а как запустить из другой папки, подскажите пожалуйста.

kolshix, stars1981 пролистываем страницу вверх, сделана шапка форума (закреплено сообщение) с кратким FAQ, где это описано

zawuhi пишет
Edi пишет
zawuhi пишет

увы не работает, а точнее ничего не происходит
а если написать для теста вместо F2 например цифру 1, тоже ничего не получится?
или надо установить дополнительную программу, чтобы яваскрипт выполнялся? система у меня Виндовс 7

А что происходит или должно происходить при нажатии "F2"? Для чего вообще код нужен, может лучше автоитом воспользоваться?

горячая клавиша для запуска скрипта по распознаванию капчи, причём там есть возможность изменить горячую клавишу хоть на цифру 1 или другую клавишу на клавиатуре

Но меня прежде всего интересует что бы сам Макрос нажимал (эмулировал) это нажатие, сейчас у меня Макрос становится на паузу и я F2 нажимаю вручную, а потом продолжаю сценарий Макроса.

как решилос проблема zawuhi?

Как сделать, чтобы при верном условии - Закрыть
TAG POS=1 TYPE=A ATTR=TXT:Закрыть , (при совпадении) делал повторный цикл ?
Если нет совпадении, шёл дальше ?

скрытый текст

Выделить код

Код:

var количество = 1

for (i=1;i<=количество;i++){
iimPlay("макросы/меню.iim",60);

if (iimPlayCode("TAG POS=1 TYPE=A ATTR=TXT:Закрыть")<0){
iimPlay("макросы/приглашение.iim",60);

if (iimPlayCode("TAG POS=1 TYPE=LI ATTR=TXT:Вы<SP>слишком<SP>ча*")>0){
break
}else{
}
}
}

for (i=1;i<=1;i++){
iimPlay("макросы/выход.iim",60);
}


Скрипт заного не начинает цикл макроса меню, когда первое условие верное.
А мне нужно, если условие верное, чтобы заного цикл делал.

Алим, в поиск, только страницу или 2 назад обсуждали аналогичный пример

Подскажите существует ли в плагине аймакроса возможность кликать ПКМ? Если нет, то посоветуйте аналог по функционалу где это возможно. В imacros меня абсолютно все устраивает, не хватает лишь правой кнопки мыши. :cry::cry::cry:

Заранее благодарю.

extender, зачем?

InfSub пишет

extender, зачем?

Правой кнопкой мыши вызывается меню на одну из строчек которого мне нужно тыкнуть ЛКМ. При чем координаты определенные, либо объект картинка.

extender пишет
InfSub пишет

extender, зачем?

Правой кнопкой мыши вызывается меню на одну из строчек которого мне нужно тыкнуть ЛКМ.

об этом - я и так догадался, конкретно, что вы пытаетесь сделать?

InfSub пишет

об этом - я и так догадался, конкретно, что вы пытаетесь сделать

Вызвать это меню и нажать кнопку в нем, это не какая-то общая задача, а частный случай в одной онлайн игре. Более общее что-то сказать сложно, есть какие-нибудь альтернативные методы?

extender пишет
InfSub пишет

об этом - я и так догадался, конкретно, что вы пытаетесь сделать

Вызвать это меню и нажать кнопку в нем, это не какая-то общая задача, а частный случай в одной онлайн игре. Более общее что-то сказать сложно, есть какие-нибудь альтернативные методы?

эмуляции нажатия ПКМ - нет, попробуйте записать действие через event, возможно это поможет, если стандартное меню подменяется сайтом

InfSub пишет

эмуляции нажатия ПКМ - нет, попробуйте записать действие через event, возможно это поможет, если стандартное меню подменяется сайтом

Попытался записать евентом, левый клик исполняется прекрасно, правый не пишет никак.

Так же нагуглил что в imacros браузере(да да, специально браузер imacros) это правый клик пишется без проблем через Direct Screen, но там не поддерживается формат скриптов *.js, только iim....

Короче... этот продукт сильно не доработан, или я не прав?)

Посоветуйте альтернативу, если таковая имеется с реализацией ПКМ.

extender пишет

Так же нагуглил что в imacros браузере(да да, специально браузер imacros) это правый клик пишется без проблем через Direct Screen, но там не поддерживается формат скриптов *.js, только iim....

Короче... этот продукт сильно не доработан, или я не прав?)

нет не правы, в имакрос браузере можно использовать другие языки программирования, хотя и нет поддержки js

extender пишет

Посоветуйте альтернативу, если таковая имеется с реализацией ПКМ.

можно попробовать - использовать любой кликер, работающий не конкретно с веб-страницей, а с объектами и приложениями в самой операционной системе

13-12-2014 16:36:31
extender, дайте ссылку на сайт (спрятав ее в теги spoiler и noindex)

InfSub пишет

extender пишет: InfSub пишет: об этом - я и так догадался, конкретно, что вы пытаетесь сделатьВызвать это меню и нажать кнопку в нем, это не какая-то общая задача, а частный случай в одной онлайн игре. Более общее что-то сказать сложно, есть какие-нибудь альтернативные методы?эмуляции нажатия ПКМ - нет, попробуйте записать действие через event, возможно это поможет, если стандартное меню подменяется сайтом

Поковырял исходник страницы, а именно исходный код выпадающей менюшки:

<div class="entry" onclick="smoke(); server('message', { id: 1375 })">

Айди я знаю где взять остался лишь вопрос, как исполнить этот onclick на самой странице.
"smoke(); server('message', { id: 1375 })"

extender пишет

остался лишь вопрос, как исполнить этот onclick на самой странице

попробовать - можно так: TAG POS=1 TYPE=DIV ATTR=ONCLICK:*1375* или что-то в этом духе...

InfSub пишет

extender, дайте ссылку на сайт (спрятав ее в теги spoiler и noindex)

InfSub пишет

extender пишет: остался лишь вопрос, как исполнить этот onclick на самой страницепопробовать - можно так: TAG POS=1 TYPE=DIV ATTR=ONCLICK:*1375* или что-то в этом духе...InfSub пишет: extender, дайте ссылку на сайт (спрятав ее в теги spoiler и noindex)

Дело в том, что этого тега DIV до нажатия правой кнопкой нет. поэтому ваш вариант даже в теории не прокатит(

Ссылку на форуме скинуть не могу по понятным причинам.

extender пишет

Ссылку на форуме скинуть не могу по понятным причинам.

пм / мыло, на выбор

InfSub пишет
extender пишет

Ссылку на форуме скинуть не могу по понятным причинам.

пм / мыло, на выбор

а с imacros браузером знаком? там это действие вполне себе пишется, но как быть с условными переходами и прочими наворотами которые есть в JS.

extender пишет
InfSub пишет
extender пишет

Ссылку на форуме скинуть не могу по понятным причинам.

пм / мыло, на выбор

а с imacros браузером знаком? там это действие вполне себе пишется, но как быть с условными переходами и прочими наворотами которые есть в JS.

js в нем заменяют: Batch, C#, VBA, VC++, VB, VSH, .Net

InfSub пишет
extender пишет
InfSub пишет

пм / мыло, на выбор

а с imacros браузером знаком? там это действие вполне себе пишется, но как быть с условными переходами и прочими наворотами которые есть в JS.

js в нем заменяют: Batch, C#, VBA, VC++, VB, VSH, .Net

Если не сложно кинь любой пример с C#(шарп я полагаю) для имакрос браузера.

скрытый текст
Дада, в гугле забанен. Сайт с уникальной супер прогой конвертации между языками для imacros выдал 404.

extender, после установки iMacros Browser - примеры можно посмотреть в iMacros\Examples\C#\

13-12-2014 22:42:05

extender пишет

скрытый текст
Дада, в гугле забанен. Сайт с уникальной супер прогой конвертации между языками для imacros выдал 404.

не вижу взаимосвязи между "забанен в гугле" и ошибкой 404

13-12-2014 22:43:59
HTTP 404

InfSub пишет

не вижу взаимосвязи между "забанен в гугле" и ошибкой 404

Да это я пошутил :offtopic:

А на самом деле я увидел только пример запуска отдельного скрипта N количества потоков, мне бы понять где в коде прописывать путь к iim которые будут исполняться :|
Например если я хочу чтобы последовательно воспроизвелись 1.iim 2 и 3, или же сам кол макроса прописывать в C#, с которым я очень мало к сожалению знаком :(

Как воспроизвести вот такой простенький макрос?

скрытый текст

Выделить код

Код:

string macro;
macro = "CODE:" + 
    "VERSION BUILD=10002738" + "\r\n" + 
    "TAB T=1" + "\r\n" + 
    "TAB CLOSEALLOTHERS" + "\r\n" + 
    "URL GOTO=http://imacros.net/" + "\r\n" + 
    "TAG POS=2 TYPE=A ATTR=HREF:http://imacros.net/ EXTRACT=TXT" + "\r\n" + 
    "";


Из шарпа напрямую разумеется, без отдельного iim файла.

extender, я не работаю под ОС Windows, так что не знаком с реализацией iMacros Browser, т.к. она выпускается - только под Windows

Подскажите как реализовать такую команду https://yadi.sk/i/i6CJBXjGdMkXe

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

Галимов Руслан пишет

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

поиск по слову "капча" на форуме, даст достаточно подходящих ответов

InfSub пишет

Галимов Руслан пишет: Добрый вечер! Интересует такие вещи:Нужно, чтобы  JS файл находил на странице определенные слова (задаю я) и делал то, то нужно делать именно при этих словах.Если точного  ответа нет, скажите, как правильно поставить вопрос, гугл нормального (поиск по форуму тоже) не выдал.Спасибо.поиск по слову "капча" на форуме, даст достаточно подходящих ответов

То, что там выдает - перепробовал, не могу понять, как организовать поиск текста, с условиями,вроде как,разобрался

Галимов Руслан пишет

как организовать поиск текста

конкретнее

Ситуация такая.

Работает макрос до определенного момента, потом нужно сделать проверку на наличие определенных слов на странице, если они есть есть - делаем макрос с одним действием, который должен закончиться и исходный макрос должен продолжить работу, если же таких слов нет, то макрос просто продолжает работу

Галимов Руслан пишет

Ситуация такая.

Работает макрос до определенного момента, потом нужно сделать проверку на наличие определенных слов на странице, если они есть есть - делаем макрос с одним действием, который должен закончиться и исходный макрос должен продолжить работу, если же таких слов нет, то макрос просто продолжает работу

ну, так в чем проблема, взять один из примеров с капчей и подогнать под себя? Ситуация - аналогична, выполняется скрипт, проверяется наличие капчи, если она есть разгадывается, если - нет, скрипт продолжает работу

14-12-2014 19:04:49
повторюсь, то, что вы описали в последнем посте, по сути - аналогично первому вашему посту на эту тему, пока что только общие слова, ни какой конкретики с описанием того, в чем именно у вас возникла сложность...

Галимов Руслан пишет

Ситуация такая.Работает макрос до определенного момента, потом нужно сделать проверку на наличие определенных слов на странице, если они есть есть - делаем макрос с одним действием, который должен закончиться и исходный макрос должен продолжить работу, если же таких слов нет, то макрос просто продолжает работу

https://forum.mozilla-russia.org/viewto … 8806&p=107

Gergi, вопрос уже закрыт в личной переписке

Как запустить макросом бат файл?

Gergi пишет

Как запустить макросом бат файл?

а как макросом переустановить ОС или запустить программу или вирус? прежде чем спрашивать, думаем

Firefox 34, iMacros 8.8.7
Плагин работает до первого закрытия браузера, после же  - отключен и не включается.
Как решить?

А ты хочешь чтобы плагин при закрытом браузере работал? Я лично не понял твой вопрос.

elmario, попробуйте нажать Alt для показа меню, войти в раздел Справка - Информация о решении проблем - Сбросить Firefox...
После чего установите имакрос снова

InfSub пишет

Маххх, замените вот этот:

бред

Выделить код

Код:

i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК 
if (i>0){
   for (;;){
        b=iimPlay("razgadka_kapchi.iim")
        if (b<0){
       break
        }  
   }
}


на этот код:
скрытый текст

Выделить код

Код:

do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")
    if (i==1){iimPlay("razgadka_kapchi.iim");};
}while(i==1);


01-12-2014 00:38:19

Gergi пишет

Не то что некоторые

давно ли вы перестали тут помощь выпрашивать, чтобы пальцами в других тыкать?
научитесь хотя бы основам js чтобы людям дельные советы давать, а не путать своим кодом

Чето вспомнил как засирал скрипт информацией - интересно то что все работало, но код загружен был- теперь смотрю на "делать{}покуда()" и не могу понять как работает ))) как только на русский перевел, как рукой сняло, сразу все понял

kolshix пишет

вспомнил как засирал скрипт информацией - интересно то что все работало

OffTop:
Всегда есть несколько путей:
можно пойти по пути Microsoft'a и засирать переполнять избыточными и ошибочными действиями свой код
или
можно пойти по пути грамотного написания кода и по пути энтузиастов, пишущих и отлаживающих современную ОС, до последнего времени умещающуюся на 3 дюймовой дискете (KolibriOS)

Подскажите, как айМакросом удалить куки?
В описании написано, что CLEAR удалит кэш браузера, куки, сохранённые пароли, и все временные файлы.
Можно как-то пароли с кешем не трогать?

И на всякий случай...если создать новый профиль ФФ и запускать максос с CLEAR в нём, то мои пароли не потрутся?

Chehov, clear - не удаляет пароли, если они сохранены в ФФ, только куки

Всем привет! Помогите, начинающим, тоесть мне))) Вопрос вот в чем: Установила imacros, все установилось, все папки, файлы есть. Скопировала в папку некоторые команды (назовем это так), для оценок, гостей и т.п. С помощью видео, по-шагово начала учиться и делать все. После записи команды, чувак на видео, сказал удалить из папки некоторые файлы, что я и сделала - удалила все вместе с файлом #current.im.  С тех пор я раз 20 удаляла и устанавливала мозилу, раз 40 устанавливала с разных источников imacros, но файл #current.im так и не появился и папка imacros после установки пустая. Вопрос: Что я натворила? И как это исправить?

Тштщл пишет

как это исправить?

нажать - кнопку "Запись" на одноименной закладке, потом - "Стоп" или создать его с помощью любого текстового редактора

InfSub пишет
Тштщл пишет

как это исправить?

нажать - кнопку "Запись" на одноименной закладке, потом - "Стоп" или создать его с помощью любого текстового редактора

Спасибо!!!! Появился! Скажите, пожалуйста еще такое: установила заново аймакрос, сделала этот файл, но папка аймакрос пуста и мне некуда скопировать и вставить команды эти для работы. Где искать папку Demo-Firefox? В избранных ее нет, а в документах, где она появилась - пусто - нет Demo-Firefox.

Тштщл, скопируйте файл #Current.iim и встааьте его в эту же папку, переименуйте, перезапустите мозилу и редактируйте этот файл, так, как вам нужно

Ей может помочь только готовый скрипт.

InfSub пишет

Тштщл, скопируйте файл #Current.iim и встааьте его в эту же папку, переименуйте, перезапустите мозилу и редактируйте этот файл, так, как вам нужно

Ничего не поняла. Файл не копируется. В какую папку его вставлять, как и зачем редактировать.... Спасибо, что уделили мне время, но видимо эта программка не для меня(((

Тштщл, опишите нормально, что вы пытаетесь сделать

InfSub пишет

Тштщл, опишите нормально, что вы пытаетесь сделать

Устанавливаю Imacros. После установки у меня в Документах должна появиться папка " Imacros", а в ней папка "Demo-Firefox". Но у меня после установки появляется пустая папка "Imacros" и все. Но когда я захожу в мазилу, то вижу что программа установлена и слева есть проводник и там папка "Избранное", папка Demo-Firefox и все. Я обшарила на компе все диски, я не вижу этих папок, а в мазиле есть. Мне надо вставить команды в папку Demo, но ее нет! Я нифига не пойму! Прикол в том, что когда я устанавливала Imacros самый первый раз, у меня все получилось, все было, все папки, я даже начала работать, но потом сбилась и удалила все, а теперь повторно оно не устанавливается корректно. Может я в винде что-то удалила. Но я и мазилу переустанавливала... А может виндовс имеет значение. У меня 8.1.

Тштщл пишет

а в мазиле есть.

если я правильно понял, вы не можете найти, где у вас находится актуальная папка iMacros:
закладка Manage - Опции - Paths

скрытый текст
bbe4a871e5cbb6b1b208b96371a65031.png

обычно же, она находится в папке "Документы"

InfSub пишет
Тштщл пишет

а в мазиле есть.

если я правильно понял, вы не можете найти, где у вас находится актуальная папка iMacros:
закладка Manage - Опции - Paths


обычно же, она находится в папке "Документы"

ЕСТЬ!!!!!! Спасибо большущее-прибольшущее!!!   ЕЕ можно вырезать и вставить в документы или лучше скопировать или лучше не трогать?

Тштщл пишет

ЕЕ можно вырезать и вставить в документы или лучше скопировать или лучше не трогать?

вы можете переместить папку iMacros в любое место на вашем ПК, после чего зайдите снова в настройки (как описано выше) и укажите новый путь к каждой из этих папок, через кнопку обзор (желтый значек справа)

Подскажите пожалуйста, как увеличить время ожидания ответа от сервера? Ставлю SET !TIMEOUT_PAGE 240, всё равно ждёт 60 сек не больше и всё...:/

stars1981 пишет

Подскажите пожалуйста, как увеличить время ожидания ответа от сервера? Ставлю SET !TIMEOUT_PAGE 240, всё равно ждёт 60 сек не больше и всё...:/

какая версия имакроса?
с последними версиями - команда SET !TIMEOUT_PAGE xxx должна работать корректно:

скрытый текст
3f84a72304854ad43b704657938bd2b3.png

с более старыми - возможно придется использовать SET !TIMEOUT xxx

также, попробуйте поменять значения не в самом скрипте, а в настройках имакроса

Подскажите как будут выглядеть команды, если мне нужно например что бы каждый раз в менялся сайт (айди)

Пример:

URL GOTO=сайт.ру/viewtopic.php?pid=(это значение менялось по моему диапазону или из документа бралось)

Сколько копался, так и не понял как сделать.

Lendor
видимо плохо копались, это основы

Выделить код

Код:

URL GOTO=сайт.ру/viewtopic.php?pid={{!VAR1}}

Уважаемый,всезнающий InfSub Подскажите пожалуйста почему не могу реализовать это в js в iim работает просто глаз не отвести:rock: А вот в js не могу его прикрутить. Может есть проще вариант?

скрытый текст

Выделить код

Код:

macro1 += "SET !VAR0 120"+ru;
macro1 += "SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR0}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")"+ru;

Gergi пишет

Уважаемый,всезнающий InfSub Подскажите пожалуйста почему не могу реализовать это в js в iim работает просто глаз не отвести:rock: А вот в js не могу его прикрутить. Может есть проще вариант?

скрытый текст

Выделить код

Код:

macro1 += "SET !VAR0 120"+ru;
macro1 += "SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR0}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")"+ru;

могу ошибаться , но eval  при такой конструкции не работает, еще наверно двойные кавычки в кавычках не работают

Я думаю что вы не ошибаетесь и это 100% в этом дело.

18-12-2014 22:46:53
Знаю точно что есть проще варианты,но пока не соображаю как это сделать:sick:

Gergi, как уже сказано, кавычки, плюс {{!LOOP}} из js
работать не будет

Ну как то же можно это обыграть

с помощью js

Да это и ежу понятно что с помощью js  А вот вопрос как :sick:

Gergi пишет

Да это и ежу понятно что с помощью js  А вот вопрос как :sick:

кавычки надо экранировать, а вместо loop использовать счетчик js

вместо loop надо ввести счетчик
for (i=1;1<=20;){....}
и можно присваивать
!EXTRACT  значение i


вот пример:

скрытый текст

Выделить код

Код:

for (i=1;1<=20;){
.......
foto += "SET !EXTRACT "+i+""+s_n;
foto += "SET Pause EVAL(\"var s=\\\"{{!EXTRACT}}\\\".match(\/vihod\/g); if(s == \'vihod\'){Pause = 1;} else {Pause = Math.random()*(240-60)+60};\")"+s_n;  
.........
}

Gergi в теме куча примеров, суть которых в 2 словах описал spy686

Спасибо,я  знаю что куча примеров,поэтому и не могу в куче разобраться. Сейчас попробую.

19-12-2014 00:39:56
Сделал так не работает

скрытый текст
var ru = "\n";
var macro1;
macro1 = "CODE:";
macro1 += "SET !ERRORIGNORE YES"+ru;
macro1 += "SET !ERRORCONTINUE YES"+ru;
macro1 += "SET !EXTRACT_TEST_POPUP NO"+ru;
macro1 += "WAIT SECONDS=#DOWNLOADCOMPLETE#"+ru;
macro1 += "SET !REPLAYSPEED FAST"+ru;
macro1 += "SET !TIMEOUT_PAGE 60"+ru;
for (i = 1; i <= 1; i++)
macro1 += "SET !EXTRACT "+i+""+ru;
macro1 += "SET Pause EVAL(\"var s=\\\"{{!EXTRACT}}\\\".match(\/vihod\/g); if(s == \'vihod\'){Pause = 1;} else {Pause = Math.random()*(240-60)+60};\")"+ru; 
macro1 += "WAit Seconds=1"+ru;
macro1 += "SET !DATASOURCE C:\ss\sss.txt"+ru;
macro1 += "Wait Seconds=1"+ru;
macro1 += "SET !DATASOURCE_LINE {{i}}"+ru;
macro1 += "URL GOTO={{!COL1}}"+ru;

Gergi пишет

#DOWNLOADCOMPLETE#

такого параметра - нет в имакросе

Gergi пишет

macro1 += "SET !DATASOURCE C:\ss\sss.txt"+ru;

это экранировать кто будет?

19-12-2014 01:43:52
предположу, также, что должно быть так:

скрытый текст

Выделить код

Код:

macro1 += "SET !DATASOURCE_LINE {{!EXTRACT}}"+ru;

а не так:

Выделить код

Код:

macro1 += "SET !DATASOURCE_LINE {{i}}"+ru;

Низкий вам поклон Добрые люди Всё чётко заработало:music:

19-12-2014 02:23:01
Не перебирает информацию из  macro1 += "SET !DATASOURCE C:\ss\sss.txt"+ru; :angry: Одно  и тоже крутит

Привет Всем!) Кто нибудь может помочь с imacros у меня есть скрипт который вводит капчу!) А как сделать условие т.е когда ввод капчи нужен он вводит!) а когда не нужен он будет переходить на следующий сайт!)
У меня скрипт работает даже если и капча не нужна он идет на сервси и загружает капчу...
Помогите кто разбирается в условии.
Буду признателен!

Ещё хотелось бы узнать возможно ли сделать скрипт который коментирует посты в группах вк!) и возможно ли прикрипить картинкуку

moneboys поиском пользоваться не пробовали?

Надо через управляющий js скрипт запускать макросы,что то типа этого 

скрытый текст
for (i=1;i<=1;i++){
iimPlay("макрос.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   для ВК   TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
if (i>0){
   for (i=1;i<=1;i++){
        b=iimPlay("капча.iim")
        if (b<0){
           break
        } 
   }
}
}

только на последних 5 страницах, как минимум один раз про капчу писалось, да и про группы в вк, в теме описывался принцип работы

19-12-2014 09:42:28
Gergi, сколько можно постить код с кучей логических ошибок?

Как это не странно, я этим кодом  пользуюсь и он замечательно работает у меня.

InfSub пишет

moneboys поиском пользоваться не пробовали?

как им тут вообще пользоваться вбиваю ключивые слова и пуста

moneboys пишет
InfSub пишет

moneboys поиском пользоваться не пробовали?

как им тут вообще пользоваться вбиваю ключивые слова и пуста

все нормально работает, как на странице поиска, так и через панель поиска вверху страницы справа

InfSub пишет
moneboys пишет
InfSub пишет

moneboys поиском пользоваться не пробовали?

как им тут вообще пользоваться вбиваю ключивые слова и пуста

все нормально работает, как на странице поиска, так и через панель поиска вверху страницы справа

Информация
По вашему запросу ничего не найдено.
Вернуться назад
Пользльзовался быстрым поискам верху страницу написал сделать условие!
как сделать js чтобы читал imacros? в ту же папку файл заливать что и iim файл? ИЛИ как?

moneboys, это вам не google, поиск по ключевым словам подразумевает одно-два слова, которые должны обязательно встретится в искомом сообщении
поиск по слову капча должен выдать искомую вами информацию

Gergi пишет

Как это не странно, я этим кодом  пользуюсь и он замечательно работает у меня.

сделал всё, но почему то скрипт у меня даже если капча вылезла всё ровно воспроизводит iim файл где просто пост без капчи, а как сделать что если капча то второй iim воспроизводит!

на каком сайте?

moneboys пишет
Gergi пишет

Как это не странно, я этим кодом  пользуюсь и он замечательно работает у меня.

сделал всё, но почему то скрипт у меня даже если капча вылезла всё ровно воспроизводит iim файл где просто пост без капчи, а как сделать что если капча то второй iim воспроизводит!

думаю - ответом вам будет - пост выше

InfSub пишет

Gergi, сколько можно постить код с кучей логических ошибок?

19-12-2014 12:25:28
moneboys, код в студию, в спойлер и в тег код

Вот,только что тестировал,работает отлично!

скрытый текст

Выделить код

Код:

var nstroka=0
for (i=1;;i++){

iimDisplay(i)
for (;;){
    nstroka++
    iimSet("NSTROKA",nstroka)
    iimPlay("с.iim")
i=iimPlayCode("TAG POS=1 TYPE=IMG ATTR=SRC:https://www.facebook.com/captcha/tfbimage.php?captcha_challenge_code=*")
if (i>0){
for (i=1;i<=1;i++){
       iimDisplay(i)
       b=iimPlay("сс.iim")
       if (b>0){
          break

      }  
   }

}
}
}

19-12-2014 12:49:07
Многоуважаемый  InfSub Вы бы лучше эту задачу решили,я уже второй день тут втыкаю:sick:

скрытый текст

Выделить код

Код:

macro1 += "SET !VAR0 120"+ru;
macro1 += "SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR0}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")"+ru;

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

InfSub пишет

Gergi, я уже постил код решения этой задачи достаточно недавно)

Видимо вы так конкретно ответили что я даже и не заметил.

Gergi пишет
InfSub пишет

Gergi, я уже постил код решения этой задачи достаточно недавно)

Видимо вы так конкретно ответили что я даже и не заметил.

видимо этот вопрос относился не к капче, а к куску ниже

19-12-2014 13:04:00
как я понимаю - речь об этом?:

Gergi пишет

Добавлено Сегодня 02:23:01
Не перебирает информацию из  macro1 += "SET !DATASOURCE C:\ss\sss.txt"+ru;  Одно  и тоже крутит

19-12-2014 13:04:43
код в студию, я не знаю что вы там насобирали в итоге... и где ошиблись

Gergi пишет

на каком сайте?

вк

Уважаемый InfSub
В общем нарыл многое но всё же у меня не большая проблемка!

вот js код

скрытый текст

iimPlay("ka.iim")
do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   Индикатор капчи для ВК
    if (i=1){iimPlay("autokapcha.iim");};
}while(i=1);

ka файл

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !EXTRACT_TEST_POPUP NO
WAIT SECONDS=1
URL GOTO=http://vk.com/club59921851
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")
WAIT SECONDS=1
TAG POS=3 TYPE=DIV ATTR=CLASS:input_back_content
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")
WAIT SECONDS=1
TAG POS=1 TYPE=TEXTAREA ATTR=ONFOCUS:Wall.showEditPost()&&ONKEYDOWN:onCtrlEnter(event,<SP>Wall.sendPost)&&ONKEYUP:Wall.postChanged()&&CLASS:fl_l&&ID:post_field CONTENT=✔Добавь<SP>в<SP>друзья!<SP>Добавлю<SP>всех!
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post
WAIT SECONDS=3

ауто капча

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !EXTRACT_TEST_POPUP NO
TAB T=1
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=image.jpg
TAG POS=1 TYPE=IMG FORM=ACTION:http://vk.com/club13295252/ ATTR=SRC:"/captcha.php?sid=*" CONTENT=EVENT:SAVEITEM
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/panel.php
WAIT SECONDS=1
URL GOTO=http://antigate.com/panel.php?action=ocr
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:<SP>загрузка<SP>тестовой<SP>капчи<SP>&&CLASS:wButton
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:panel.php ATTR=TYPE:file&&NAME:testfile&&SIZE:40 CONTENT=C:\CAPCH\image.jpg
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:загрузить&&CLASS:wButton
WAIT SECONDS=15
URL GOTO=http://antigate.com/panel.php?action=ocr
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:panel.php ATTR=TYPE:text&&SIZE:5&&VALUE:10&&NAME:maxpage CONTENT=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:panel.php ATTR=TYPE:submit&&VALUE:<SP>показать<SP>&&CLASS:wButton
TAG POS=1 TYPE=B ATTR=* EXTRACT=TXT
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&PLACEHOLDER:Введите<SP>код<SP>сюда&&MAXLENGTH:7&&CLASS:big_text CONTENT={{!EXTRACT}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=*


В общем запускаю я js скрипт он у меня переходят по заднной группе вводит сообщение вводит капчу, но потом повторяется закиливается(на вводе капчи) а когда капчу не надо вводить он всё ровно идет на автомкапчу!
Как мне сделать, что бы он зациклил файл ka.iim (а из txt файла брал список групп и по очередности выполнял каждую т.е 1 потом 2 и тд)
и что бы когда капча не нужна он продалжал выполнять ka а если нужна идет на файл автокапчи, после удачного ввода обратно вернулся на ka уже третий день не могу организовать это, это вообще возможно?

moneboys, уберите код в спойлер и в тег code

19-12-2014 16:16:54

moneboys пишет

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG FORM=ACTION:http://vk.com/club13295252/ ATTR=SRC:"/captcha.php?sid=*" CONTENT=EVENT:SAVEITEM

очень сильно сомневаюсь, что данная строка - верна

moneboys пишет

повторяется закиливается(на вводе капчи) а когда капчу не надо вводить он всё ровно идет на автомкапчу!

прямоту рук - ни кто не отменял или вы не можете элементарно скопировать код без ошибок?

moneboys пишет

Как мне сделать...

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

удалено, избыточное цитирование
InfSub
автокапча работает! на все 100%))
я находил подобную тему но ответа так и не нашел...

повторяю еще раз, соблюдаем правила форума, пункты 2.1 и 2.10:

moneboys пишет

moneboys, уберите код в спойлер и в тег code

19-12-2014 16:35:13

moneboys пишет

автокапча работает! на все 100%))

возможно, но данный код:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG FORM=ACTION:http://vk.com/club13295252/ ATTR=SRC:"/captcha.php?sid=*" CONTENT=EVENT:SAVEITEM


не будет работать во всех группах, т.к. не универсален

19-12-2014 16:38:28

moneboys пишет

я находил подобную тему но ответа так и не нашел...

плохо искали, чуть ли не на каждой странице - примеры из этой серии, в том числе и Gergi, вам давал один из примеров зацикливания, хоть и кривой

удалено, избыточное цитирование
InfSub
тут файкл ka я добавил без него скрипт не запускается вообще

скрытый текст

Выделить код

Код:

do{i=iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:box_title")
    if (i==1){iimPlay("razgadka_kapchi.iim");};
}while(i==1);


нашел вашь код на подобную тему (что бы капча не зацикливалась, но она у меня всё ровно зацикливается

moneboys, а теперь сравните тот код, что вы процитировали сейчас, и то что написали выше:

InfSub пишет

moneboys, а теперь сравните тот код, что вы процитировали сейчас, и то что написали выше:

я думал ошибка что два знака = стоят вот и убрал!
Но одинкаво что тут капча зацикливается что там

19-12-2014 16:44:36

InfSub пишет

moneboys, а теперь сравните тот код, что вы процитировали сейчас, и то что написали выше:

Скрипт от Gergi работает, можешь написать какие там логические ошибки? Что бы исправить...

19-12-2014 16:45:47
Как мне сделать, что бы он зациклил файл ka.iim (а из txt файла брал список групп и по очередности выполнял каждую т.е 1 потом 2 и тд)
и что бы когда капча не нужна он продолжал выполнять ka а если нужна идет на файл автокапчи, после удачного ввода обратно вернулся на ka уже третий день не могу организовать это, это вообще возможно?
ответа так и не получил это возможно сделать?

moneboys, что значит - "капча зацикливается"?

InfSub пишет

moneboys, что значит - "капча зацикливается"?

повторяется работа файла autokapcha

19-12-2014 16:56:31

скрытый текст

Выделить код

Код:

for (i=1;i<=1;i++){
iimPlay("ka.iim")
i=iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:box_title")  //   для ВК   TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
if (i>0){
   for (i=1;i<=1;i++){
        b=iimPlay("autokapcha.iim")
        if (b<0){
           break
        }  
   }
}
}


попробывал этот код сдесь капча не повторяется но и файл ka не повторяется а мне надо сделать что бы он повторялся и ссылки брал из txt файла это можно организовать?

19-12-2014 16:57:33
И что бы ссылки по очередности брал 1 потом 2 и так далее выполнял работу пока не закончатся, а как закончатся ссылки возращался к первой

moneboys, что не понятного в моих словах?

InfSub пишет

повторяю еще раз, соблюдаем правила форума, пункты 2.1 и 2.10:

moneboys пишет

moneboys, уберите код в спойлер и в тег code

Есть проблемка - никак не получается отметить чебокс на фрейме, подскажите решение.
Дело в том, что параметр Name  и Id всегда меняются.

скрытый текст

Выделить код

Код:

<iframe src="https://www.google.com/recaptcha/api2/anchor?k=" name="I0_1418997677216" id="I0_1418997677216" vspace="0" tabindex="0" style="" scrolling="no" marginwidth="0" marginheight="0" hspace="0" frameborder="0" height="78" width="304"></iframe>

удалено, избыточное цитирование

InfSub
не понимаю о каком коде идет речь

19-12-2014 17:08:50

InfSub пишет

возможно, но данный код:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG FORM=ACTION:http://vk.com/club13295252/ ATTR=SRC:"/captcha.php?sid=*" CONTENT=EVENT:SAVEITEM


не будет работать во всех группах, т.к. не универсален

а какой код универсальный???

moneboys выделить iim- или js-код мышкой нажать кнопку Spoiler после, не снимая выделения с текста - нажать кнопку Code, разве так сложно?

19-12-2014 17:16:21

moneboys пишет

а какой код универсальный???

moneboys пишет

for (i=1;i<=1;i++)

поменяйте на for (i=1;i<=10;i++) - будет делать 10 проходов вместо одного

moneboys пишет

Скрипт от Gergi работает, можешь написать какие там логические ошибки? Что бы исправить...

у вас уже есть рабочий код с while, исправление кода Gergi - приведет - к такому же результату, к вечному циклу на разгадку капчи, причина банальна, некорректный код разгадки капчи

InfSub
поменял работает, а какой рабочий код разгадки капчу, чтоб работал вашь код с while?

19-12-2014 17:33:49
Теперь меня мучает вопрос как сделать чтобы ссылки на группу он брал ( из txt файла брал список групп и по очередности выполнял каждую т.е 1 потом 2 и тд как закончил повторял с 1-вой)

moneboys, на форуме, на сайте антигейта, и на других сайтах - есть примеры кода, сравните со своим, хотя бы
и прекратите избыточное цитирование, уже не понятно на что вы отвечаете....

19-12-2014 17:39:30

moneboys пишет

как сделать чтобы ссылки на группу он брал ( из txt файла

в поиск, уже в 5 раз, наверное повторяю
а с учетом того, что вам не однократно было сделано замечание и вы не выполнили ни одно из требований, обоснованных правилами форума (конкретно 2.1, 2.9 и 2.10) дальнейший диалог продолжать не буду, до выполнения оных.

InfSub пишет

moneboys, на форуме, на сайте антигейта, и на других сайтах - есть примеры кода, сравните со своим, хотя бы
и прекратите избыточное цитирование, уже не понятно на что вы отвечаете....

а можете мне на заказ написать данный скрипт!?
Если да напишите в личку сколько мне это обойдётся?

Сохраните этот код в js файл

скрытый текст

Выделить код

Код:

var nstroka=0
for (i=1;;i++){

iimDisplay(i)
for (;;){
    nstroka++
    iimSet("NSTROKA",nstroka)
    iimPlay("1T.iim")
i=iimPlayCode("TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=*")
if (i>0){
for (i=1;i<=1;i++){
       iimDisplay(i)
       b=iimPlay("2T.iim")
       if (b>0){
          break

      }  
   }

}
}
}

19-12-2014 17:49:00
этот отдельно в iim файл

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !EXTRACT_TEST_POPUP NO
WAIT SECONDS=1
URL GOTO=http://vk.com/club59921851
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")
WAIT SECONDS=1
TAG POS=3 TYPE=DIV ATTR=CLASS:input_back_content
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")
WAIT SECONDS=1
TAG POS=1 TYPE=TEXTAREA ATTR=ONFOCUS:Wall.showEditPost()&&ONKEYDOWN:onCtrlEnter(event,<SP>Wall.sendPost)&&ONKEYUP:Wall.postChanged()&&CLASS:fl_l&&ID:post_field CONTENT=✔Добавь<SP>в<SP>друзья!<SP>Добавлю<SP>всех!
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post
WAIT SECONDS=3

19-12-2014 17:50:29
и этот отдельно

скрытый текст

Выделить код

Код:

SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !EXTRACT_TEST_POPUP NO
'рандомное время после каждого шага
SET !VAR7 EVAL("var random=Math.floor(Math.random()*2 + 1); random;")
SET !VAR0 тут свой ключ пишите
SET !VAR9 C:\CAPCH\captcha.png
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=captcha.png
TAG POS=1 TYPE=IMG ATTR=SRC:*www.google.com/recaptcha/api/image?c=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/imacros.html
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{!VAR0}} 
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!VAR9}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR9 {{!EXTRACT}}
TAB T=1
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
'TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_response CONTENT={{!EXTRACT}}
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
SET !ERRORIGNORE NO
'команда ниже определяет появилась ли капча в случае неправильной разгадки
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=*

19-12-2014 17:51:33
Тут надо только свой ключ от антигея указать и всё будет чётко работать

Gergi, ни чего не забыл?))

Это ваш код,я его не трогал,в нём есть ошибки.

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !EXTRACT_TEST_POPUP NO
WAIT SECONDS=1
URL GOTO=http://vk.com/club59921851
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")
WAIT SECONDS=1
TAG POS=3 TYPE=DIV ATTR=CLASS:input_back_content
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*40 + 20); randomNumber;")
WAIT SECONDS=1
TAG POS=1 TYPE=TEXTAREA ATTR=ONFOCUS:Wall.showEditPost()&&ONKEYDOWN:onCtrlEnter(event,<SP>Wall.sendPost)&&ONKEYUP:Wall.postChanged()&&CLASS:fl_l&&ID:post_field CONTENT=✔Добавь<SP>в<SP>друзья!<SP>Добавлю<SP>всех!
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post
WAIT SECONDS=3

Gergi спасибО!) Щас всё попробую и обязательно отпишусь!

InfSub пишет

Gergi, ни чего не забыл?))

С вами не то чтобы что то забыть,а вообще можно с ума сойти:sick:

Gergi, да ну?)

ИМХО
ну вам виднее, вы же у нас такой-же не любитель что-либо искать и задавать вопросы из серии - было 2 страницы назад, но мне лень пролистнуть...

InfSub пишет

мне лень пролистнуть...

К вашему удивлению,я с удовольствием листаю данный форум когда мне что-то надо. Ну а когда там нет реального ответа а какие-то подводные камни,то тогда приходится задавать вопросы,на которых получаю ответ что уже не раз обсуждалось

Gergi пишет

Это ваш код,я его не трогал,в нём есть ошибки.

какие? можно их исправить?

Вот с этой бедой уже два дня мучаюсь,проблема в 16й строке

скрытый текст

Выделить код

Код:

while(true) { 

var macros;
var regcode;
var ru = "\n";

var macro1;
macro1 = "CODE:";
macro1 += "SET !ERRORIGNORE YES"+ru;
macro1 += "SET !ERRORCONTINUE YES"+ru;
macro1 += "SET !EXTRACT_TEST_POPUP NO"+ru;
macro1 += "WAIT SECONDS=#DOWNLOADCOMPLETE#"+ru;
macro1 += "SET !REPLAYSPEED FAST"+ru;
macro1 += "SET !TIMEOUT_PAGE 60"+ru;
macro1 += "SET !VAR0 2"+ru;
macro1 += "SET !VAR2 EVAL(\"var l={{!LOOP}};var m={{!VAR0}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")"+ru;
macro1 += "SET !DATASOURCE C:\sss\ss.txt"+ru;
macro1 += "WAit Seconds=1"+ru;
macro1 += "SET !DATASOURCE_LINE {{!VAR2}}"+ru;
macro1 += "Wait Seconds=1"+ru;


var r = window.find("before you can play for free again.");


var macro2;
macro2 = "CODE:";
macro2 += "WAIT SECONDS=3610"+ru;




       
        
        if (r)
             {
iimPlay(macro2);
    }
        else     {
    iimPlay(macro1);
    }
    
}

19-12-2014 18:20:58

moneboys пишет
Gergi пишет

Это ваш код,я его не трогал,в нём есть ошибки.

какие? можно их исправить?

Так что работает или нет? Уж любопытно очень )))

Gergi
Скрипт работает!)
Классно!) Так даже лучше!) и когда капча не нужна он ее не вводит!)) Спасибо тебе большое!!! Очень сильно помог!)
Осталось одна не решенная задача как сделать, что бы он не одну и ту же группу писал а составить txt файл написать туда список групп и он от туда брал по очередно каждую ссылку и после выполнения возращался к первой и дальше работал!
Это возможно сделать в моём случае?

Gergi пишет

мучаюсь,проблема в 16й строке

вам уже отвечали как исправить, но вы продолжаете постить код с ошибками, даже не внесли коррективы

moneboys пишет

GergiСкрипт работает!)Классно!) Так даже лучше!) и когда капча не нужна он ее не вводит!)) Спасибо тебе большое!!! Очень сильно помог!)Осталось одна не решенная задача как сделать, что бы он не одну и ту же группу писал а составить txt файл написать туда список групп и он от туда брал по очередно каждую ссылку и после выполнения возращался к первой и дальше работал!Это возможно сделать в моём случае?

Как то так

скрытый текст

Выделить код

Код:

SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
SET !VAR8 EVAL("var randomNumber=Math.floor(Math.random()*4 + 1); randomNumber;")
SET !VAR6 EVAL("var random=Math.floor(Math.random()*1 + 1); random;")
SET !VAR7 EVAL("var random=Math.floor(Math.random()*1+ 1); random;")
' КОЛИЧЕСТВО ГРУПП В ФАЙЛЕ txt
SET !VAR1 5
' ================== '
SET !VAR9 EVAL("var l={{NSTROKA}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\Vk.txt
SET !DATASOURCE_LINE {{!VAR9}}
WAIT SECONDS={{!VAR8}}
URL GOTO={{!COL1}}
WAIT SECONDS={{!VAR7}}
WAIT SECONDS=1
TAG POS=3 TYPE=DIV ATTR=CLASS:input_back_content

WAIT SECONDS=1
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=TEXTAREA ATTR=ONFOCUS:Wall.showEditPost()&&ONKEYDOWN:onCtrlEnter(event,<SP>Wall.sendPost)&&ONKEYUP:Wall.postChanged()&&CLASS:fl_l&&ID:post_field CONTENT=?Добавь<SP>в<SP>друзья!<SP>Добавлю<SP>всех!
WAIT SECONDS=1
WAIT SECONDS={{!VAR6}}
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post
WAIT SECONDS=3
WAIT SECONDS={{!VAR8}}

19-12-2014 18:42:38

InfSub пишет
Gergi пишет

мучаюсь,проблема в 16й строке

вам уже отвечали как исправить,

Так вы ответьте пожалуйста так чтобы я тоже понял.

А на мой вопрос кто-нибудь ответит?

Texas, звездочкой замени изменяемый параметр

Gergi пишет

Как то так

Сам скрипт не запускается создал текстовый файл там где прописана в скрипте, но почему то ругается

19-12-2014 19:06:09
Кривые руки не до копировал первую строку! Щас про тестю отпишусь!)

19-12-2014 19:10:06
Почему то капчу щас в не которых случает вводит не правильно раньше всегда правильно вводил...

19-12-2014 19:13:36
В общем очень благодарен Gergi за оказанную помощь всё работает!)
Хорошо когда есть отзывчивые люди!)
Так же спасибо InfSub за помощь хоть я почти ничего не понимал:D

InfSub пишет

moneboys поиском пользоваться не пробовали?

InfSub, если честно, то от поиска толку не много если особо не понимаешь что и надо.
В таких случаях лучше не в поиск отправлять, а дать ссылку на пост с подобным вопросом, вы лучше ориентируетесь чем новичок на этом форуме.
да и времени уйдет меньше на copy/past ссылки, чем написание сообщение в виде отправки в поиск )
если человек разбирается что ему надо он по примеру поймет, а если нет то поиск точно ему не поможет )
InfSub, без обид )
OFF: В Беларуси уже бяда, даляры в банках пропали ( кредиты и рассрочки заморозили (.

spy686 пишет

OFF: В Беларуси уже бяда, даляры в банках пропали ( кредиты и рассрочки заморозили (.

Приезжайте в Украину,тут всё шикарно :lol:

InfSub пишет

Texas, звездочкой замени изменяемый параметр

Одной проблемой стало меньше, за что БОЛЬШОЕ СПАСИБО! Но ... возникла другая проблема.
Когда imacros отмечает чебокс, то открывается другой фрейм, где надо ввести каптчу. Прежде, чем запускать imacros, я сначала попробовал записать презентацию и соответственно все команды для imacros были записаны. И вот какая следующая проблема - ответ каптчи не подставляется в поле, а вот сам код:

<input id="default-response" aria-label="Введите текст" placeholder="Введите текст" class="rc-response-input-field" dir="ltr" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" type="text">

Меня смущает в коде вот это - autocomplete="off", возможно imacros  не может с этим справиться.

Texas Вы хоть последнюю страницу форума читайте!

Gergi пишет

Texas Вы хоть последнюю страницу форума читайте!

Что я пропустил? Вроде прочитал несколько последних страниц этой ветки.

В общем заметил такую закономерность капча совпадает на 100% но при отправке вк мне новую капчу кидает почему так? это срабатывает из 10 ти групп примерно 3 раза

19-12-2014 19:31:05
и скрипт не вводит заного капчу, а идет дальше))

Вот код EVENTS TYPE=KEYPRESS SELECTOR="#u_jsonp_2_4" CHARS="Привет!" 
Вот этот параметр #u_jsonp_2_4 постоянно меняется. У кого есть какие-то мысли как это реализовать? Звёздочки не канают.

Gergi
У вас такая же проблема есть? Что в некоторых случае при правильной капчи, выходит новая капча

moneboys пишет

Gergi
У вас такая же проблема есть? Что в некоторых случае при правильной капчи, выходит новая капча

Это глупость

Gergi пишет

Это глупость

да вообще бред какойто почему вводится правильная капча но пост не отправлен выдает другую капчу когда скрипт нажимает отправить

moneboys
потому что - нажимает на картинку

Gergi, что я должен был найти на последней странице форума? Ткните пальцем !!!
Я не могу воткнуть каптчу, в моем случае сейчас просто слово во фрейм, где есть текстовое поле:

<input id="default-response" aria-label="Введите текст" placeholder="Введите текст" class="rc-response-input-field" dir="ltr" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" type="text">

Где про это написано?

вот код, записанный imacros, на фреймы я поставил *, как и сказали:

скрытый текст

Выделить код

Код:

FRAME NAME="*"
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:
WAIT SECONDS=3
FRAME NAME="*"
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:default-response CONTENT=ответ_каптчи
WAIT SECONDS=3
TAG POS=4 TYPE=DIV ATTR=TXT:Подтвердить

Texas, вполне возможно, что скрипт обращается не к тому фрейму, обычно первые одна или несколько букв не меняются, их и надо оставить перед *

скрытый текст
сорри, я с телефона, что-то более конкретное, сейчас написать проблематично

Значит не нажимает на  кнопку отправить

Протестил и сделал выводы в общем если нажимать на паузу во время когда скрипт вставил капчу и самому нажимать кнопнку отправить то все капчи проходят но когда же нажимает скрипт кнопку отправить новая капча вылазит! Может со скриптом что то не так!?

код

Выделить код

Код:

SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !EXTRACT_TEST_POPUP NO
'рандомное время после каждого шага
SET !VAR7 EVAL("var random=Math.floor(Math.random()*2 + 1); random;")
SET !VAR0 ключ
SET !VAR9 C:\CAPCH\captcha.png
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=captcha.png
TAG POS=1 TYPE=IMG ATTR=SRC:*www.google.com/recaptcha/api/image?c=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/imacros.html
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{!VAR0}} 
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!VAR9}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR9 {{!EXTRACT}}
TAB T=1
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
'TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:captcha_response CONTENT={{!EXTRACT}}
WAIT SECONDS={{!VAR7}}
WAIT SECONDS= 3
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
SET !ERRORIGNORE NO
'команда ниже определяет появилась ли капча в случае неправильной разгадки
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=*


19-12-2014 20:18:30

InfSub пишет

потому что - нажимает на картинку

Что изменить надо?
p.s код выше

Вообще то этот параметр TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить вообще не от Вконтакте

19-12-2014 20:23:34
Замени на этот TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post

Gergi пишет

Вообще то этот параметр TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить вообще не от Вконтакте

Я твой код копировал который давал выше

Gergi пишет

Вообще то этот параметр TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить вообще не от Вконтакте

ахахах... да, отлично, дать код, а потом сказать, да он вообще-то не для этого сайта..

InfSub пишет

обычно первые одна или несколько букв не меняются, их и надо оставить перед *

До этого так и делал и не помогало, фрейм был такой FRAME NAME="I0_2345235235235234" и я делал раньше так FRAME NAME="I0_*", а сейчас сделал так FRAME NAME="I0*" и заработало. Спасибо, помогли )))

Gergi пишет

Значит не нажимает на  кнопку отправить

Вот теперь действительно не нажимает, каптчу подставляет, но кнопка как-бы не активная пока вручную не напишешь хоть 1 букву. Как это можно обойти?

в общем проблему я исправил убрав
SET !ERRORIGNORE NO
'команда ниже определяет появилась ли капча в случае неправильной разгадки
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=*
теперь отправляется всегда

moneboys пишет

в общем проблему я исправил убрав SET !ERRORIGNORE NO'команда ниже определяет появилась ли капча в случае неправильной разгадкиTAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=*теперь отправляется всегда

Зря ты это сделал

Gergi пишет

Зря ты это сделал

ну щас работает!)
Другого решение проблемы я не знаю!) Если знаешь буду признателен если скажешь!)

Gergi, ну, мне даже интересно, сколько ж еще времени потребуется на решение такой несложной задачи, примеров, которой минимум шт 50 на форуме... готовых, под вконтакт

вот что по антигейт кптче есть:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
'Не останавливаться из-за ошибок'
SET !ERRORIGNORE YES

SET !EXTRACT_TEST_POPUP NO


'Задаем номер файла капчи imageN.jpg (менять только тут: для каждого потока свой номер файла капчи)
'SET !VAR1 1
SET !VAR1 EVAL("var RanStat = Math.round(Math.random()*(1537-1)+1);RanStat ")
'Задаем имя файла капчи (все названия файлов капчи отличаются только на номер)
SET !VAR2 image{{!VAR1}}.jpg

'Задаем переменную времени ОБЫЧНОЙ задержки для ВК (секунд)'
SET !VAR3 2

'Задаем переменную времени ДОЛГОЙ задержки для Atigate (секунд)'
'SET !VAR4 5


TAB T=2
'Указываем папку и название файла для сохранения капч
ONDOWNLOAD FOLDER={{!FOLDER_DATASOURCE}} FILE={{!VAR2}}

'Ищет картинку с капчей на VK
'Оригинал
'TAG POS=1 TYPE=IMG FORM=ACTION:http://vk.com/club13295252/ ATTR=SRC:"/captcha.php?sid=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAG POS=1 TYPE=IMG FORM=ACTION:http://vk.com/* ATTR=SRC:"/captcha.php?sid=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT




WAIT SECONDS={{!VAR3}}



' open a new tab 
TAB OPEN 
' get new tab to foreground 
TAB T=3

URL GOTO=http://antigate.com/imacros.html

'Number of the frame. (Note: F=0 indicates the main page)
FRAME F=0


WAIT SECONDS={{!VAR3}}


'
'Substitute your account key here (get it on http://antigate.com/panel.php?action=showkey)
'Your money balance must have positive value ( refill at http://antigate.com/panel.php?action=add_funds)
'вставляет ключик и путь к капче
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT=КЛЮЧ

WAIT SECONDS={{!VAR3}}

TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!FOLDER_DATASOURCE}}\{{!VAR2}}

WAIT SECONDS={{!VAR3}}

'submitting captcha
SET !TIMEOUT 60
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*

WAIT SECONDS={{!VAR3}}

FILEDELETE NAME={{!FOLDER_DATASOURCE}}\{{!VAR2}}

SET !EXTRACT 
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
TAB CLOSE 
TAB T=2

WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:captcha_key CONTENT={{!EXTRACT}}
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=VALUE:Отправить
WAIT SECONDS=3
TAB T=1


где то чтото лишнее, чтото может заменить надо, но это уже сами плжалуйста
и еще, это актуально для FF19 iMacros 8.2.4 m.vk.com

InfSub пишет

Gergi, ну, мне даже интересно, сколько ж еще времени потребуется на решение такой несложной задачи, примеров, которой минимум шт 50 на форуме... готовых, под вконтакт

Да,это действительно такая задача над которой смешно работать. moneboys Я этот скрипт набросал за 10 минут,возьми поиграйся и всё будет чётко работать.

Gergi пишет

Да,это действительно такая задача над которой смешно работать. moneboys Я этот скрипт набросал за 10 минут,возьми поиграйся и всё будет чётко работать.

:D
Хоть посмешил вас, но что то у меня реально не получается, на какой код заменить TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить что бы отправлялся как подобает

19-12-2014 20:42:19
Или что вообще изменить надо?

19-12-2014 20:49:27
Ну помогите граждане форумчане:blush::)

moneboys
самостоятельно запишите код и посмотрите, что вы каждую букву-то спрашиваете

InfSub пишет

самостоятельно запишите код и посмотрите, что вы каждую букву-то спрашиваете

вот именно что я записал! и выдал точно такой же код! Поэтому я не знаю что делать...

помогите кто знает я уже не знаю, что делать:(:(:(

19-12-2014 21:48:27
Мдааа, опять руками кривыми с первого раза не так код записал отправки капчи щас изменил всё работает:music::D

19-12-2014 21:49:59
капец не работает!:angry::angry::mad:
Он почему то прокатит то нет, почему так?? как исправить?

Gergi пишет

Замени на этот TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post

Заменил вообще на кнопу не нажимат

у меня всё отлично работает

19-12-2014 22:39:23
Попроси многоуважаемого InfSub он тебе напишет скрипт.

Gergi пишет

у меня всё отлично работает

19-12-2014 22:39:23
Попроси многоуважаемого InfSub он тебе напишет скрипт.

у меня работает только если убрать тот код который ты не советовал убирать, я так и не понял зачем он? Просто ничего не изменилось только отправлять нормально стал...

посоветуйте пожалуйста примитивный редактор iim - необходим такой, который подойдёт на windows serwer 2008 - (блокнот не предлагать )

Форумчане кто знает как сделать скрипт который бы писал комментарий в группе к первому посту и если возможно сделать условие если стена открыта писать на стене если стена закрыта писать коментарий к первому посту в группе!
Кто знает можно такую сложную задачу решить?:cool:
Разумеется так же всё с вводом автокапчи

kolshix пишет

посоветуйте пожалуйста примитивный редактор iim - необходим такой, который подойдёт на windows serwer 2008 - (блокнот не предлагать )

А чем нотепад не подходит? Можно сделать в нём чтобы подсвечивались цветные коды iim

Кто нибудь знает решение моей задачи?

kolshix пишет

посоветуйте пожалуйста примитивный редактор iim - необходим такой, который подойдёт на windows serwer 2008 - (блокнот не предлагать )

я редактирую в редакторе AutiIt

20-12-2014 16:02:08

moneboys пишет

Кто нибудь знает решение моей задачи?

попробуй в мобильной версии, там будет проще настроить и меньше глюков будет

kolshix, notepad++ portable или встроенный в имакрос
Gergi, блокнот и notepad++ это разные программы

InfSub пишет

Gergi, блокнот и notepad++ это разные программы

Спасибо что посветили меня в этом:rolleyes:

Gergi, вы пишете про подсветку в нотепаде, которой отродясь там не было, она есть в других редакторах, в т.ч. в notepad++, так что, ваша ирогия, не уместна

Это не подсветка? https://yadi.sk/i/aZRAwtnadW3kK

Gergi, а на скрине блокнот?))) зайдите во все программы - стандатные - блокнот и посмотрите о чем речь, прежде чем устраивать пустой треп не о чем

Уважаемый InfSub Я о блокноте ничего не говорил,я просто сказал что в нотепаде можно сделать подсветку макроса.

Gergi, win+R появится окно Выполнить, наберите notepad.exe и нажмите ок

InfSub пишет

Gergi, win+R появится окно Выполнить, наберите notepad.exe и нажмите ок

InfSub шарит что говорит, )))  по этому я в вопросе и написал что notePade который в T. Commander  --- но всеравно спасибо вопрос разрешил

Хочу 3 видео записать , но нет времени, но скоро сделаю ....

kolshix пишет

InfSub шарит что говорит, ))) 

Ну с этим спору нет! Я ж уже не раз писал что он самый шарющий,но вот помогает не всегда,обидно до слёз:(

Gergi пишет
kolshix пишет

InfSub шарит что говорит, ))) 

Ну с этим спору нет! Я ж уже не раз писал что он самый шарющий,но вот помогает не всегда,обидно до слёз:(

Тут если почитать форум и мои советы, то они тоже не всегда помогают , но большинство моих советов  сделаны через заднее место , так как не ищу лёгких путей ))) (на простом языке "практически ничего не знаю" )

kolshix, не стоит принимать, слова Gergi, за чистую монету, я не однократно говорил, не надо мне приписывать тех свойств, которых у меня нет
у нас с вами - разные уровни знаний, но я иду в одном направлении, а вы в другом, и сравнивать их - не верно

Помогите пожалуйста.
В текстовом файле 50 строк,надо чтобы скрипт за один цикл брал сразу три строки,на другом цикле следующие три строки и так далее

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\sss\ss\s.txt
SET !DATASOURCE_LINE {{!LOOP}}
EVENTS TYPE=KEYPRESS SELECTOR="#frааembeаt" CHARS={{!COL1}}

Gergi, помочь в чем? вспомнить математику 5 класса?

Ну если я не понимаю решение этой проблемы,значит математику не учил

элементарно, Gergi, 3x-2

InfSub пишет

элементарно, Gergi, 3x-2

А по Русски?

Gergi пишет
InfSub пишет

элементарно, Gergi, 3x-2

А по Русски?

Gergi, вы издеваетесь? вы не можете заменить х на {{!LOOP}}? а потом, после того, как получили первую строку, увеличить значение переменной на 1 и взять вторую строку и т.д.?

InfSub пишет

Gergi пишет: InfSub пишет: элементарно, Gergi, 3x-2А по Русски?Gergi, вы издеваетесь? вы не можете заменить х на {{!LOOP}}? а потом, после того, как получили первую строку, увеличить значение переменной на 1 и взять вторую строку и т.д.?
                    Отредактировано InfSub (Сегодня 18:04:46)

Чуть подробней нельзя? Или по вашему это уже подробней некуда)))

Gergi, куда уж подробнее???

что тут сложного? вы не знаете, как пользоваться eval и add?

Выделить код

Код:

SET !VAR1 EVAL("{{!LOOP}}*3-2")
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#frааembeаt" CHARS={{!COL1}}
ADD !VAR1 1
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#frааembeаt" CHARS={{!COL1}}
ADD !VAR1 1
SET !DATASOURCE_LINE {{!VAR1}}
EVENTS TYPE=KEYPRESS SELECTOR="#frааembeаt" CHARS={{!COL1}}

Я так же делал,но не работало потому что одну скобку пропустил:blush: Спасибо добрый чел

Gergi :sick: :dumb:

Уважаемый InfSub Вы мне реально помогли,скрипт работает а у меня глаза радуются :music: Спасибо ещё раз

Всем привет) такой вопрос: есть макрос для заполнения форм (логин пароль) данные использую из файла login.csv .Когда ставлю воспроизвести цикл например 6 раз. то каждый раз при заполнении формы данные берутся по очереди.мне нужно чтобы заполнилось 60 форм и через 2 часа опять по кругу. Так вот если включаю исполняющий js то заполняется первая строка из login.csv и по кругу заполняет только первую сроку из login.csv/ Может кто может советом


скрытый текст
VERSION BUILD=8820413 RECORDER=FX
CMDLINE !DATASOURCE login.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES   
TAB T=1
URL GOTO=http://сайт/login
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_name CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/process_login ATTR=NAME:commit
URL GOTO=http://сайт/logout

Нуб в javascript. умею только вызывать iim в js :(

crazy duck, iimSet()
не поленитесь поискать или хотя бы прочесть последних несколько страниц, неоднократно уже обсуждалась связка js + imacros и работа {{!LOOP}} в этой связке
код уберите в спойлер и в тег code

Этот код надо вставить в js

скрытый текст

Выделить код

Код:

var nstroka=0
nstroka++
iimSet("NSTROKA",nstroka)


и в макрос вместо !LOOP надо вставить NSTROKA

InfSub пишет

crazy duck, iimSet()
не поленитесь поискать или хотя бы прочесть последних несколько страниц, не однократно уже обсуждалась связка js + imacros и работа {{!LOOP}} в этой связке
код уберите в спойлер и в тег code

Просто только зарегистрировался и не знаю как правильно код вставлять)

crazy duck пишет

Просто только зарегистрировался и не знаю как правильно код вставлять)

для этого есть правила, которые вы должны были прочесть при регистрации
нажмите "редактировать", выделите код, после нажмите кнопку spoiler, после чего кнопку code, должно быть так:

&#91;spoiler]&#91;code]ваш код
из нескольких строк
&#91;/code]&#91;/spoiler]

Gergi пишет

Этот код надо вставить в js

скрытый текст

Выделить код

Код:

var nstroka=0
nstroka++
iimSet("NSTROKA",nstroka)


и в макрос вместо !LOOP надо вставить NSTROKA

Спасибо. попробовал,но все равно вставляет только первую строку по кругу.Может js у меня не правильный. посмотрите пожалуйста

скрытый текст
var nstroka=0
nstroka++
iimSet("NSTROKA",nstroka)
for (i=1;1<=60;){
iimPlay("main.iim",60);
}

21-12-2014 23:07:14

InfSub пишет
crazy duck пишет

Просто только зарегистрировался и не знаю как правильно код вставлять)

для этого есть правила, которые вы должны были прочесть при регистрации
нажмите "редактировать", выделите код, после нажмите кнопку spoiler, после чего кнопку code, должно быть так:

скрытый текст

Выделить код

Код:

ваш код
из нескольких строк


разобрался)))

crazy duck пишет

Спасибо. попробовал,но все равно вставляет только первую строку по кругу.Может js у меня не правильный. посмотрите пожалуйста

скорее нежелание читать FAQ

код, исправлено
for (var i=1;1<=60;i++){
    iimSet("NSTROKA",i)
    iimPlay("main.iim",60);
}

Все равно по кругу вставляет только первую строку из login.csv (((((((((

crazy duck, вы в файле main.iim заменили {{!LOOP}} на {{NSTROKA}} ?
NSTROKA - можно назвать по своему, как удобно, к примеру LOOP (без !), только менять нужно и в js и в iim

InfSub пишет

crazy duck, вы в файле main.iim заменили {{!LOOP}} на {{NSTROKA}} ?
NSTROKA - можно назвать по своему, как удобно, к примеру LOOP (без !), только менять нужно и в js и в iim

Да.конечно заменил.проблема не решается

Попробуйте этот js

скрытый текст

Выделить код

Код:

var nstroka=0
var i=0;
var n=prompt("Введите количество циклов",2)
for (i=1;i<=n;i++){
var w;
for (w=1;w<=1;w++){
iimSet("LINE",w);
var nstroka=0
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1x.iim",60);  
 }
}

Gergi пишет

Попробуйте этот js

скрытый текст

Выделить код

Код:

var nstroka=0
var i=0;
var n=prompt("Введите количество циклов",2)
for (i=1;i<=n;i++){
var w;
for (w=1;w<=1;w++){
iimSet("LINE",w);
var nstroka=0
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1x.iim",60);  
 }
}

Спасибо,что пытаетесь помочь=) Круто цикл не бесконечный,а можно выбирать кол-во. Но почему-то одну и ту же строку вставляет((((((( я наверное порядком надоел вам

Gergi
что опять за бред, сами-то хоть понимаете его смысл?

InfSub пишет

Gergi
что опять за бред, сами-то хоть понимаете его смысл?

может и бред,но я им пользуюсь и горя не знаю.

Gergi, ну да, 10 раз объявить кучу разных циклов и переменных, чтобы было...
crazy duck

iim

Выделить код

Код:

CMDLINE !DATASOURCE login.csv
SET !DATASOURCE_COLUMNS 2
SET !DATASOURCE_LINE {{ROW}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES   
TAB T=1
URL GOTO=http://сайт/login
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_name CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/process_login ATTR=NAME:commit
URL GOTO=http://сайт/logout


js

Выделить код

Код:

for (var i=1;1<=60;i++){
    iimSet("ROW",i)
    iimPlay("main.iim",60);
}

InfSub пишет

Gergi, ну да, 10 раз объявить кучу разных циклов и переменных, чтобы было...
crazy duck

iim

Выделить код

Код:

CMDLINE !DATASOURCE login.csv
SET !DATASOURCE_COLUMNS 2
SET !DATASOURCE_LINE {{ROW}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES   
TAB T=1
URL GOTO=http://сайт/login
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_name CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/process_login ATTR=NAME:commit
URL GOTO=http://сайт/logout


js

Выделить код

Код:

for (var i=1;1<=60;i++){
    iimSet("ROW",i)
    iimPlay("main.iim",60);
}

Вот это другой компот:P

InfSub пишет

Gergi, ну да, 10 раз объявить кучу разных циклов и переменных, чтобы было...
crazy duck

iim

Выделить код

Код:

CMDLINE !DATASOURCE login.csv
SET !DATASOURCE_COLUMNS 2
SET !DATASOURCE_LINE {{ROW}}
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES   
TAB T=1
URL GOTO=http://сайт/login
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_name CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/process_login ATTR=ID:user_password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/process_login ATTR=NAME:commit
URL GOTO=http://сайт/logout


js

Выделить код

Код:

for (var i=1;1<=60;i++){
    iimSet("ROW",i)
    iimPlay("main.iim",60);
}

От души благодарю!!!! все работает :)

Gergi пишет

Вот это другой компот:P

в моем "компоте" - отсутствует куча лишнего и бесполезного мусора, присутствующего в вашем, хотя - бесспорно, работать будет и ваш код

Gergi пишет

Вот код EVENTS TYPE=KEYPRESS SELECTOR="#u_jsonp_2_4" CHARS="Привет!"  Вот этот параметр #u_jsonp_2_4 постоянно меняется. У кого есть какие-то мысли как это реализовать? Звёздочки не канают.

Народ!:rock: Неужели  нет решения этой проблемы?

У меня есть два скрипта. Отличиие только на одну строчку.

Как мне объединить их по типу "если могу нажать, то вариант 1, если нет - 2". Знаю, что функции OR в аймакрос нет, поэтому вполне устроит вариант "выполняем скрипт 1, выполнился - ок, если ошибка не найденной строчки, то используем строчку из второго варианта, конец".

скрытый текст

Выделить код

Код:

TAB T=3
TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>
TAG POS=3 TYPE=DIV ATTR=TXT:Put<SP>in<SP>stack
TAB CLOSE
Выделить код

Код:

TAB T=3
TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>
TAG POS=1 TYPE=A ATTR=TXT:Put<SP>in<SP>stack
TAB CLOSE

temnyork, поиск по этой теме, по слову "капча" вам поможет, аналогия - полная, и прочтение последних 3-5 страниц форума, только обсуждали это в очередной раз

Помогите недотепе =))
Поиск пока не принес результатов (возможно и не принесет :) )

Имеется картинка, в ней всплывающая подсказка:
<img src="..." onmouseover="toolTip('Текст')">
как можно выдернуть Текст?

alt+ctrl+del пишет

Помогите недотепе =))
Поиск пока не принес результатов (возможно и не принесет :) )

Имеется картинка, в ней всплывающая подсказка:
<img src="..." onmouseover="toolTip('Текст')">
как можно выдернуть Текст?

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

alt+ctrl+del

попробуйте так:

Выделить код

Код:

... TYPE=IMG ... EXTRACT=HTM
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/(.*)\'(.*)\'(.*)/g,'$2')")

InfSub пишет

temnyork, поиск по этой теме, по слову "капча" вам поможет, аналогия - полная, и прочтение последних 3-5 страниц форума, только обсуждали это в очередной раз
                    Отредактировано InfSub (23-12-2014 18:21:58)

Если речь идет об игнорировании ошибок в скрипте, то да, достаточно выставить две строчки друг за другом и при ошибке первой - выполнится вторая. При ошибке второй, закрывается вкладка.
Но игнорирование не устраивает, т.к. остановки во время других ошибок нужны.

temnyork пишет
InfSub пишет

temnyork, поиск по этой теме, по слову "капча" вам поможет, аналогия - полная, и прочтение последних 3-5 страниц форума, только обсуждали это в очередной раз
                    Отредактировано InfSub (23-12-2014 18:21:58)

Если речь идет об игнорировании ошибок в скрипте, то да, достаточно выставить две строчки друг за другом и при ошибке первой - выполнится вторая. При ошибке второй, закрывается вкладка.
Но игнорирование не устраивает, т.к. остановки во время других ошибок нужны.

речь - о том, что там те же условия, проверка - есть ли капча, если есть - разгадываем, если - нет, идем дальше
на примере вашего сообщения:

temnyork пишет

вполне устроит вариант "выполняем скрипт 1, выполнился - ок, если ошибка не найденной строчки, то используем строчку из второго варианта, конец".

если скрипт - не вернул ошибку используем строку из 1 скрипта, если - нет, из второго

temnyork

все просто:
var n="\n";
var im="TAB T=3"+n+"TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>"+n+"TAG POS={{NUM}} TYPE=DIV ATTR=TXT:Put<SP>in<SP>stack"+n+"TAB CLOSE"+n;
iimSet('NUM',3);
if(iimPlayCode(im)!=1){
    iimSet('NUM',1);
    iimPlayCode(im);
};

InfSub пишет

alt+ctrl+del

попробуйте так:

Выделить код

Код:

... TYPE=IMG ... EXTRACT=HTM
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/(.*)\'(.*)\'(.*)/g,'$2')")

Вы гений, нечего добавить.
Снимаю шляпу :beer:

Если не затруднит, то дайте пояснение параметрам replace(), которые использовали.

alt+ctrl+del пишет

Если не затруднит, то дайте пояснение параметрам replace(), которые использовали.

в 2х словах объяснить не получится, так что - гугл по запросу "регулярные выражения"

Всем привет!
Кто работал в связке IMacros+rucaptcha.com/imacros.html
Теперь увеличен таймаут ожидания до 130 секунд и ошибка, при которой изображение распознано, а ответа Вы не получили, больше не должна появляться.

АЙМАКРОС - Три вариации работы с прокси

kolshix, отличный видео урок, добавил в шапку темы

InfSub пишет

kolshix, отличный видео урок, добавил в шапку темы

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

kolshix, в любом случае, спасибо за проделанную работу, думаю, многим поможет

kolshix пишет

Встречал отличное дополнение, но оно не доработанное было , там и импорт прокси листа был и под каждый прокси автоматом вбивались лог и пас, но повторюсь дополнение не доработано и даже бывало терялась информация, жаль аналогов не встречал

сейчас многие разработчики перестают дорабатывать и развивать свои дополнения, а под час и удаляют их, из-за того, что разрабы, в последних версиях FF, от версии к версии - меняют все на корню, а переписывать под каждую новую версию - плагин, чуть ли не с нуля, готов не каждый...

InfSub пишет

temnyork

все просто:
var n="\n";
var im="TAB T=3"+n+"TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>"+n+"TAG POS={{NUM}} TYPE=DIV ATTR=TXT:Put<SP>in<SP>stack"+n+"TAB CLOSE"+n;
iimSet('NUM',3);
if(iimPlayCode(im)!=1){
    iimSet('NUM',1);
    iimPlayCode(im);
};

Я правильно понимаю, это JS? Как его подгрузить теперь в общий скрипт? Судя по справке

Выделить код

Код:

SET !VAR1 EVAL("var content='КОД'; content;")
PROMPT {{!VAR1}}

Т.е. получается что у меня должно быть так

скрытый текст
VERSION BUILD=8070701
TAB OPEN
TAB T=2
URL GOTO=https://mail.yandex.ru/neo2/#folder/2090008878778/extra_cond=only_new
TAG POS=3 TYPE=SPAN ATTR=TXT:Something<SP>new*
TAG POS=1 TYPE=A ATTR=TXT:http://mysite.com/userdata/*
TAB T=3
SET !VAR EVAL("var content='var n="\n";
var im="TAB T=3"+n+"TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>"+n+"TAG POS={{NUM}} TYPE=DIV ATTR=TXT:Put<SP>in<SP>stack"+n+"TAB CLOSE"+n;
iimSet('NUM',3);
if(iimPlayCode(im)!=1){
    iimSet('NUM',1);
    iimPlayCode(im);
};'; content;")

TAG POS=1 TYPE=SPAN ATTR=TXT:Удалить
TAB CLOSE

Так ничего не работает. Может нужно сохранить в файл .js и как-то подргружать его? Подскажите, т.к. никогда с JS не работал. И желательно, чтобы путь был не полный, а либо с переменными, либо файл подхватывался из папки с макросами, т.к. использую портитивный браузер.

Всё далеко не так! У вас должны были получиться два раздельных файла  один js другой iim

temnyork
вставка js в iim возможна только через eval(), но js в eval'e не позволяет запускать iim-код
у вас должен быть js-файл, который запускает iim-код

your_script.js

Выделить код

Код:

var n="\n";
var pre="TAB OPEN"+n
    +TAB T=2+n
    +"URL GOTO=https://mail.yandex.ru/neo2/#folder/2090008878778/extra_cond=only_new"+n
    +"TAG POS=3 TYPE=SPAN ATTR=TXT:Something<SP>new*"+n
    +"TAG POS=1 TYPE=A ATTR=TXT:http://mysite.com/userdata/*"+n
    +"TAB T=3"+n;
var end="TAG POS=1 TYPE=SPAN ATTR=TXT:Удалить"+n+"TAB CLOSE"+n;
var im="TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>"+n+"TAG POS={{NUM}} TYPE=DIV ATTR=TXT:Put<SP>in<SP>stack"+n+"TAB CLOSE"+n;
iimPlayCode(pre);
iimSet('NUM',3);
if(iimPlayCode(im)!=1){
    iimSet('NUM',1);
    iimPlayCode(im);
};
iimPlayCode(end);

InfSub пишет

у вас должен быть js-файл, который запускает iim-код

Я так понимаю такой скрипт запускается уже не используя аймакрос. Тогда встает вопрос, как автоматизировать выполнение такого скрипта? Мне нужно к примеру повторить его Х раз. Есть ли какое-то расширение, где я указываю этот скрипт и выбираю при запуске, как в аймакрос, play loop, или тут возможно только прописать в самом скрипте (что конечно не так удобно каждый раз править) функцию loop и после запускать его?

temnyork пишет
InfSub пишет

у вас должен быть js-файл, который запускает iim-код

Я так понимаю такой скрипт запускается уже не используя аймакрос. Тогда встает вопрос, как автоматизировать выполнение такого скрипта? Мне нужно к примеру повторить его Х раз. Есть ли какое-то расширение, где я указываю этот скрипт и выбираю при запуске, как в аймакрос, play loop, или тут возможно только прописать в самом скрипте (что конечно не так удобно каждый раз править) функцию loop и после запускать его?

прежде чем спросить, можно, для начала попробовать? или почитать тему, в крайнем случае? iMacros - поддерживает js-скрипты. Как сделать цикл, многократно обсуждалось в данной теме, читаем, поиск в помощь

temnyork пишет

play loop, возможно только прописать в самом скрипте (что конечно не так удобно каждый раз править) функцию loop и после запускать его?

Play LOOP - работать не будет, как указывать кол-во циклов, выбирать вам, можно в файле, можно иначе, зависит от вашей фантазии и знания js

Подскажите, через какое расширение JS запускать? Или как мне настроить по типу аймакроса запуск?
Т.е. работаю, нужно 30 раз повторить цикл. Как мне запустить? Я не понимаю, как JS запускать в Хром. Через консоль разработчика однострочные только запускал, а как подобные длинные? Как их залупить?

еще один вопрос, нарушающий правила, а именно - не желание пролистать 2-3 страницы данной ветви форума или воспользоваться поиском и вы заработаете предупреждение
данный форум посвящен продуктам компании Mozilla и расширениям к ним, в данном случае плагина iMacros для Mozilla Firefox, обсуждение иного софта, в т.ч. Хрома - оффтопик

правила:
2.  Не рекомендуется:
2.1
  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском. Тема с данным вопросом будет перенесена модератором в форум «Архив» без каких-либо объяснений. Перенос вашей темы в данный форум служит признаком того, что вы плохо искали (или не искали вовсе) ответ на свой вопрос.
2.21  Отсылать сообщения, не соответствующие обсуждаемой теме (оффтопик). Сообщения будут удаляться без предупреждения или выделяться в отдельные темы.

поиск по слову цикл


InfSub

temnyork пишет

Или как мне настроить по типу аймакроса запуск?

temnyork, вы читать умеете?

InfSub пишет

iMacros - поддерживает js-скрипты.

и запускаются они так же, как и обычные iim-файлы

InfSub пишет

и запускаются они так же, как и обычные iim-файлы

Прежде чем написать, я проверял

SyntaxError: unknown command: VAR at line 1

script.iim -> script.js было произведено переименование.

temnyork, какой конкретно код был в вашем скрипте, который вы переименовали?

30-12-2014 02:27:19

temnyork пишет

SyntaxError: unknown command: VAR at line 1

предположу что, вы в *.js - записали iim-код в чистом виде

Нет, даже просто

скрытый текст

Выделить код

Код:

var n="\n";
var im="TAB T=3"+n+"TAG POS=2 TYPE=DIV ATTR=TXT:Accept<SP>"+n+"TAG POS={{NUM}} TYPE=DIV ATTR=TXT:Put<SP>in<SP>stack"+n+"TAB CLOSE"+n;
iimSet('NUM',3);
if(iimPlayCode(im)!=1){
    iimSet('NUM',1);
    iimPlayCode(im);
};


Выдает на VAR.

temnyork,
не знаю как вы переименовывали:

temnyork пишет

script.iim -> script.js было произведено переименование.

но, ваш файл имеет расширение *.iim а не *.js, а должен быть именно *.js
(данная ошибка возникает только при написании js-кода в iim-файл)

Доброго дня))) суть проблемы. Есть исполняющий js, вызывает 1-й iim. потом 2-й. Помогите пожалуйста организовать общий цикл. То есть работает первый потом второй потом первый и т.д.

скрытый текст
for (var a=0;a<=10;a++){
    iimSet("ROW",a)
    iimPlay("main.iim",60);
}
for (var i=1;i<=1;i++){
    iimPlay("timer.iim",60);
}

crazy duck, вы не можете пару строк местами поменять?

скрытый текст

Выделить код

Код:

for (var a=0;a<=10;a++){
    iimSet("ROW",a)
    iimPlay("main.iim",60);
    iimPlay("timer.iim",60);
}

InfSub пишет

crazy duck, вы не можете пару строк местами поменять?

скрытый текст

Выделить код

Код:

for (var a=0;a<=10;a++){
    iimSet("ROW",a)
    iimPlay("main.iim",60);
    iimPlay("timer.iim",60);
}

Так бред получается, сразу переходит к выполнению второго iim. В том примере ,что я скинул 1-й iim работает 10 циклов, потом 2-й iim отрабатывает 1 цикл. Мне нужно организовать общий цикл

Вы что написали в описании?:

crazy duck пишет

То есть работает первый потом второй потом первый и т.д.

crazy duck пишет

Мне нужно организовать общий цикл

В чем проблема сделать самому по аналогии?

InfSub пишет

Вы что написали в описании?:

crazy duck пишет

То есть работает первый потом второй потом первый и т.д.

crazy duck пишет

Мне нужно организовать общий цикл

В чем проблема сделать самому по аналогии?

Ну так я все правильно написал.Я же скинул кусок кода в котором видно ,что первый iim работает 10 циклов а второй iim - 1 цикл

crazy duck

InfSub пишет

В чем проблема сделать самому по аналогии?

03-01-2015 14:05:48

crazy duck пишет

второй iim - 1 цикл

действие выполняемое 1 раз - не является циклом и заключать его в цикл - мягко говоря - глупо

InfSub пишет

crazy duck

InfSub пишет

В чем проблема сделать самому по аналогии?

Если бы у меня получилось сделать я бы не просил у вас помощи. Вот просил помощи

offtop
Алим
назначить дваим макросам общий цикл ?
Андрей
да
Алим
а это уже за 100 руб скажу.

личную переписку не выносим на форум
InfSub

скрытый текст

Выделить код

Код:

for (var i=1;i<=10;i++){
    for (var a=0;a<=10;a++){
        iimSet("ROW",a)
        iimPlay("main.iim",60);
    }
    iimPlay("timer.iim",60);
}

InfSub пишет

crazy duck

InfSub пишет

В чем проблема сделать самому по аналогии?

03-01-2015 14:05:48

crazy duck пишет

второй iim - 1 цикл

действие выполняемое 1 раз - не является циклом и заключать его в цикл - мягко говоря - глупо

Не так изъяснил свои мысли. Суть,то не меняется.1-й iim 10циклов, потом отрабатывает 2-й iim. Между этими двумя iim нужно организовать цикл

crazy duck ответил выше

InfSub пишет

скрытый текст

Выделить код

Код:

for (var i=1;i<=10;i++){
    for (var a=0;a<=10;a++){
        iimSet("ROW",a)
        iimPlay("main.iim",60);
    }
    iimPlay("timer.iim",60);
}

facepalm/ я такой нубас ((((((((((((( спасибо вам!!!!

У меня проблема.
Imacros не всегда вставляет текст в поле. Выделяет его синим, но не вставляет. В большинстве случаев вставляет, но иногда пропускает :(
В чем может быть проблема?

qweqwe1, здесь нет экстрасенсов, догадаться, что, куда и каким образом вы пытаетесь вставить - не кому

А можно как нибудь обойти капчу на авито?)))

Duh, можно разгадать с помощью имакроса и сервиса антигейт и подобных

InfSub пишет

qweqwe1, здесь нет экстрасенсов, догадаться, что, куда и каким образом вы пытаетесь вставить - не кому

Вот, формы при добавлении объявления в яндекс директ.
Как видно второй поле выделило синим, но не заполнило. Так же может не заполнить и остальные поля. В большинстве случаев заполняет все хорошо, но бывает такая беда.
Я так понимаю есть какие-то проблемы из-за джаваскрипта.

скрин
20150106235054_82a9c5.png

Вот кусок кода. Перепробовал уже разные атрибуты, но результата никакого.
код

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://direct.yandex.ru/registered/main.*.pl ATTR=NAME:title-0 CONTENT=текст
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:https://direct.yandex.ru/registered/main.*.pl ATTR=NAME:body-0 CONTENT=текст
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://direct.yandex.ru/registered/main.*.pl ATTR=NAME:href-0 CONTENT=текст

qweqwe1, нет доступа к яндекс директу, чтобы воспроизвести вашу ситуацию, могу только предложить, попробовать использовать EVENT для ввода текста в проблемные поля

народ всем привет. нужна помощь.   
1- можноли запустить из под imacroc файлы не относящиеся к нему ни каким образом...   конкретно есть файл    123.csm  для программы clickermann . вот надо запустить этот файл из  под imacros. все перепробовал ничего не помогает, открывает его для чтения, запускать не хочет......

guzhvenko, нельзя, ни каким образом... neo.gif

okkamas_knife, спасибо, не думал что так быстро дождусь помощи.  все работает как и было сказано, только подставил путь до своего файла,  спасибо

okkamas_knife пишет
InfSub пишет

guzhvenko, нельзя, ни каким образом...

а возможно и да.
у меня имакрос не стоит и проверить не могу но если javascript может выполняться
и выполнится вот этот код(не знаю как там с правами) то можно

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


вобщем если сработает то просто указываем программу которой открывать и аргументом путь до открываемого файла

+100500.

Решил столько нерешаемых вопросов !!! это ж уже можно и bat и vbs запускать для обработки данных )

Выделить код

Код:

var prgpath="C:\\windows\\ping.exe"; // путь до исполняемого файла,не забываем про двойные косые в пути 
var args = ['-n','6', 'google.com']; // аргументы, все разделены пробелом. т.е. строка bla.exe -open "c:\program files\ololo\ololo.txt" будет иметь аргументы var args = ['-open','"c:\program', 'files\ololo\ololo.txt"'];  
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(prgpath);
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, args, args.length)

Как сделать из команды WAIT SECONDS=5 Что бы время  менялось автоматом  от 5 до 10 секунд  ???? Где взять элементарные команды скриптов  ?? Кое што нашол сдесь но почти все ненужные........                                                       

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


публикация ссылок на сторонние ресурсы, разрешена ТОЛЬКО в спойлере, в теге noindex
&#91;spoiler]&#91;noindex]&#91;url]ваша_ссылка&#91;/url]&#91;/noindex]&#91;/spoiler]

InfSub
bur2.gif

скрытый текст

Выделить код

Код:

SET !VAR7 EVAL("var random=Math.floor(Math.random()*9 + 1); random;")
WAIT SECONDS=2
WAIT SECONDS={{!VAR7}}

Gergi
Спасибо !!! как менять рандом времяни ????

в данном варианте там где стоит цифра 1 цифра 2 и цифра 9

Gergi пишет

в данном варианте там где стоит цифра 1 цифра 2 и цифра 9

А что значит цифра 7 ?


На IRC-канале #mozilla-ru можно получить техническую консультацию онлайн и, конечно же, порцию общения. Модер прислал ответ но не могу открыть ссылку.  у кого есть рабочая ???

Сергей Козырев пишет

Как сделать из команды WAIT SECONDS=5 Что бы время  менялось автоматом  от 5 до 10 секунд  ???? Где взять элементарные команды скриптов  ?? Кое што нашол сдесь но почти все ненужные........                                                       
   

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

субъективно
я бы посоветовал вам такой код для iim файлов

Выделить код

Код:

set random_seconds eval("var min=5; var max=10; var res=Math.floor(Math.random()*(max-min+1))+min;res;")
prompt {{random_seconds}}

в данном примере в этой части ...min=5;max=10... устанавливаете нужные вам минимальные и максимальные значения, все что идет по строке далее после var res ничего не трогаем

код

Выделить код

Код:

SET !VAR7 EVAL("var random=Math.floor(Math.random()*9 + 1); random;")

тоже правильный, но предложенный мной код, субъективно удобнее визуально, --- немного информации, хотя вы может и знаете её, в javascript отсчет символов ведётся с 0 и часто в вычислительных кодах если стоит цифра 1 то она может обозначать 0

kolshix пишет

javascript отсчет символов ведётся с 0 и часто в вычислительных кодах если стоит цифра 1 то она может обозначать 0

kolshix, либо вы что-то путаете, либо выражаете свою мысль несколько странно, но 1 всегда обозначает 1, а ни как не 0

Можно ли как то сделать чтобы каждый аккаунт открывать в новой вкладке? Вот картинка https://yadi.sk/i/YRcbfZo4dtWzp

InfSub пишет
kolshix пишет

javascript отсчет символов ведётся с 0 и часто в вычислительных кодах если стоит цифра 1 то она может обозначать 0

kolshix, либо вы что-то путаете, либо выражаете свою мысль несколько странно, но 1 всегда обозначает 1, а ни как не 0

Вероятно я не правильно выразился, так как не могу сказать правило на языке JS, но могу продемонстрировать , в коде 1=0 , отчет идёт с нуля , те кто понимают в js--- даже не обратят внимание, а те кто просто скопирует код --- начнутся вопросы либо недопонимания , вобщем времени уйдет на изучение и прочтение ...
а вот пример

Выделить код

Код:

SET !VAR7 EVAL("var random=Math.floor(Math.random()*1); random;")
prompt {{!VAR7}}

я не утверждаю что везде 1 это 0 , такое правило как один из примеров , работает в массивах

11-01-2015 11:25:19

Gergi пишет

Можно ли как то сделать чтобы каждый аккаунт открывать в новой вкладке? Вот картинка https://yadi.sk/i/YRcbfZo4dtWzp

С ok.ru на imacros не работал, но могу предположить :

Попробуйте извлечь id через EXTRACT=HTM  ,
после обработайте id через замену, уберите ненужное и  добавте полный адрес
ну а далее дело за простым TAB OPEN и TAB T=2  и URL GOTO=ok.ru\id....... (ну а через js уже сами определитесь с табами)

kolshix пишет

удалено
11-01-2015 11:25:19

Gergi пишет

Можно ли как то сделать чтобы каждый аккаунт открывать в новой вкладке? Вот картинка https://yadi.sk/i/YRcbfZo4dtWzp

С ok.ru на imacros не работал, но могу предположить :

Попробуйте извлечь id через EXTRACT=HTM  ,
после обработайте id через замену, уберите ненужное и  добавте полный адрес
ну а далее дело за простым TAB OPEN и TAB T=2  и URL GOTO=ok.ru\id....... (ну а через js уже сами определитесь с табами)

Я так делал,и работает,но это большой геморой.


Gergi, цитируем только то, на что отвечаем
правила, пункт 2.9
не нужно засорять форум излишне повторяющейся информацией, не относящейся к обсуждаемому вопросу

InfSub

Что случилось с одноклассниками ?Был создан срипт по он выставлял участникам пятерки ,он работал более месяца и на днях перестал работать ??? Если я записываю новый он жмет кнопки которые выше на 2 сантиметра ???


rtfm.gif
правила, пункт 2.2
экстрасенсов тут нет, догадываться что у вас за код - не кому
в следующий раз подобные посты, без приведения примера проблемного кода, будут считаться флудом, со всеми вытекающими последствиями

InfSub

Админ сорри !!!! Вот код.....сбой скрипта на первых секундах.

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
'в 6 строке 20 это начало возрастного диапазона для поиска - ОТ.
'Вместо нее можете поставить любую цифру, но не больше цифры конечного возрастного диапазона
SET !VAR1 25
'в 8 строке 37, цифра конечного возрастного диапазона - ДО
SET !VAR2 45
'в 10 строке вместо Москвы любой другой желаемый город
SET !VAR3 "нижний новгород"
TAB T=1
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=2 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=3 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=4 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=5 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=6 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=7 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=8 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=9 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=10 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=11 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=12 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=13 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=14 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=15 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=16 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=17 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=18 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=19 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=20 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Класная<SP>фотка
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=200


не забываем про тег &#91;code]ваш код&#91;/code] при публикации скриптов

kolshix пишет
InfSub пишет
kolshix пишет

javascript отсчет символов ведётся с 0 и часто в вычислительных кодах если стоит цифра 1 то она может обозначать 0

kolshix, либо вы что-то путаете, либо выражаете свою мысль несколько странно, но 1 всегда обозначает 1, а ни как не 0

... могу продемонстрировать , в коде 1=0 , отчет идёт с нуля ...

а вот пример

Выделить код

Код:

SET !VAR7 EVAL("var random=Math.floor(Math.random()*1); random;")
prompt {{!VAR7}}


я не утверждаю что везде 1 это 0 , такое правило как один из примеров , работает в массивах

вы верно написали, отсчет в массивах идет с 0, но совершенно не значит что 1 = 0, т.к. 1 = 1, а 0 = 0 и ни как иначе

для справки:
Функция Math.floor(x) - где x - число, возвращает наибольшее целое, меньшее или равное аргументу
Функция Math.random() - возвращает псевдо-случайное число с плавающей точкой в интервале [0, 1) c 0 (включительно) до, но не включая 1 (ислючительно), что в дальнейшем вы можете масштабировать до желаемого интервала.

в результате: ваш пример:

Math.random()*1
аналогичен
Math.random()
и вернет: число в интервале от 0 до 0,99999.... далее
Math.floor()
от числа меньшего 1 - вернет 0

Сергей Козырев пишет

SET !ERRORCONTINUE YES

нет такой команды в имакросе

Сергей Козырев пишет

TAG POS=1 TYPE=DIV ATTR=CLASS:zoom_w

замените на

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=ID:viewImageLinkId

Учимся читать ошибки, выдаваемые iMacros'ом!

Учимся читать ошибки, выдаваемые iMacros'ом!
Я бы научился ,но где взять пособие ?? И почему раньше скрипт работал с этими ошибками ? Я не чего не менял 100 %.
Коды заменил ,все равно скрипт не работает-то жмет не туда ,то включает таймер 100 секунд.

offtopic
Мне нужен консультант через скайп(с оплатой 10 рублей за каждую консультацию) мой скайп k.s.s.44

offtopic.gifnono.gif

InfSub

Сергей Козырев пишет

Учимся читать ошибки, выдаваемые iMacros'ом!
Я бы научился ,но где взять пособие ?? И почему раньше скрипт работал с этими ошибками ? Я не чего не менял 100 %.
Коды заменил ,все равно скрипт не работает-то жмет не туда ,то включает таймер 100 секунд.

Ссылка на описание ошибок, в FAQ, в шапке темы
да и какое пособие нужно чтобы понять текст ошибки:

скрытый текст
RuntimeError: element DIV specified by CLASS:zoom_w was not found, line 17 (Error code: -921)

разве что google.translate.ru или аналоги?

11-01-2015 22:06:29

Сергей Козырев пишет

жмет не туда

не туда это куда?

Сергей Козырев пишет

то включает таймер 100 секунд.

в вашем коде - нет такого таймера (на 100 сек)

11-01-2015 22:10:32
Сергей Козырев, в вашем скрипте 20 раз повторяется одна и та же операция, в "спойлер" в тег "код" приведите измененный вами кусок кода отображающий 1 из 20 циклов, весь код постить не надо

Спасибо за расъянения !!!

в вашем коде - нет такого таймера (на 100 сек)

Да его нету ,но когда скрипт остонавливаетя то вместо ошибки кода в верху появляется этот таймер.:cry:
может вся проблема в этом ??

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

или вот еще что нашол - lexey Semkov • 6 дней назад

А как быть если у кнопки на сайте постоянно разный код?
Например создать макрос для Одноклассников - добавления в друзья.
Код кнопки все время разный:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:na2413096229435 ATTR=ID:hook_FormButton_accept2413096229435

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:na2413095042619 ATTR=ID:hook_FormButton_accept2413095042619

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:na2413092766267 ATTR=ID:hook_FormButton_accept2413092766267

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:na2413091583035 ATTR=ID:hook_FormButton_accept2413091583035

Сергей Козырев пишет

Спасибо за расъянения !!!
в вашем коде - нет такого таймера (на 100 сек)
Да его нету ,но когда скрипт остонавливаетя то вместо ошибки кода в верху появляется этот таймер.:cry:

уберите временно

SET !ERRORIGNORE YES
или закомментируйте строку с помощью '
'SET !ERRORIGNORE YES
и у вас будут отображаться ошибки

12-01-2015 01:23:57

2 Gergi, offtopic

Gergi пишет

InfSub,вы в плохом настроении?:sick:

Gergi, я, кажется, объяснил причину модерации вашего сообщения, что именно вас в нем не устраивает? давайте начнем цитировать все подряд, пусть посты вырастут до половины страницы, чтобы вообще было бы не понятно, что к чему написано
Gergi, правила писались, не для того чтобы усложнить вам или еще кому-то жизнь, а для того, чтобы общение было легким и не перегружало форум излишней информацией, или вам так сложно потратить 2 секунды и удалить лишний текст, который не имеет совершенно ни какого отношения к вашему ответу?


12-01-2015 01:43:24
Сергей Козырев, если код разный, то он подменяется звездочкой *
в вашем случае - так:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:na* ATTR=ID:hook_FormButton_accept*

Если у пользователя нету фото или закрыт к ему доступ то опять включается 100 сек  таймер(tag witing-loading ), над командами в зеленой строке и так далее каждая команда по 100 сек.Но кода ошибки не выдает почему то...
Вот новый скрипт ...

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111
'SET !ERRORIGNORE YES
'в 6 строке 20 это начало возрастного диапазона для поиска - ОТ.
'Вместо нее можете поставить любую цифру, но не больше цифры конечного возрастного диапазона
SET !VAR1 25
'в 8 строке 37, цифра конечного возрастного диапазона - ДО
SET !VAR2 45
'в 10 строке вместо Москвы любой другой желаемый город
SET !VAR3 "нижний новгород"
TAB T=1
URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
SET !VAR7 EVAL("var random=Math.floor(Math.random()*19 + 9); random;")
WAIT SECONDS=2
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=IMG ATTR=ID:viewImageLinkId
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=можно<SP>вопрос<SP>?
'TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2

Сергей Козырев пишет

Если у пользователя нету фото или закрыт к ему доступ то опять включается 100 сек  таймер(tag witing-loading ), над командами в зеленой строке и так далее каждая команда по 100 сек.Но кода ошибки не выдает почему то...

tag waiting - включается/отображается обычно тогда, когда по той или иной причине имакрос не может найти требуемый элемент на странице и при настройках по умолчанию - равен 6 секундам, а по окончании 6 секунд, если требуемый элемент, так и не был найден, скрипт останавливается и выдает ошибку.
loading - включается/отображается тогда, когда загружается сама страница и равен по умолчанию 60 секундам (время ожидания полной загрузки страницы)

Как я понимаю, ни того, ни другого не происходит.
Попробуйте дописать в начало вашего скрипта команду SET !TIMEOUT_STEP 2 и посмотреть как будет себя вести скрипт при заблокированных анкетах (уменьшится ли таймер).

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

InfSub пишет

скрытый текст

kolshix пишет
InfSub пишет

kolshix, либо вы что-то путаете, либо выражаете свою мысль несколько странно, но 1 всегда обозначает 1, а ни как не 0

... могу продемонстрировать , в коде 1=0 , отчет идёт с нуля ...

а вот пример

Выделить код

Код:

SET !VAR7 EVAL("var random=Math.floor(Math.random()*1); random;")
prompt {{!VAR7}}


я не утверждаю что везде 1 это 0 , такое правило как один из примеров , работает в массивах


вы верно написали, отсчет в массивах идет с 0, но совершенно не значит что 1 = 0, т.к. 1 = 1, а 0 = 0 и ни как иначе

скрытый текст
для справки:
Функция Math.floor(x) - где x - число, возвращает наибольшее целое, меньшее или равное аргументу
Функция Math.random() - возвращает псевдо-случайное число с плавающей точкой в интервале [0, 1) c 0 (включительно) до, но не включая 1 (ислючительно), что в дальнейшем вы можете масштабировать до желаемого интервала.

в результате: ваш пример:

Math.random()*1
аналогичен
Math.random()
и вернет: число в интервале от 0 до 0,99999.... далее
Math.floor()
от числа меньшего 1 - вернет 0

Повторюсь !!! хоть и информация спорна, я пишу ответы для людей которые практически не владею знаниями программирования , все что Вы написали выше можно прочесть в профессиональных книгах -- но для пользователя непонято --- , я же пишу ответы для таких пользователей как и я , есть мнение что учить нужно сразу правильно, насколько я понимаю, большинство пользователей вообще не интересует философии -- они просто ищут ответ ,  а я  в ответе опираясь на собственный опыт и даю советы на будущее -- если говорить о "1=0" по вопросам человека я на 80 % определил его потребности и сразу дал ответ на будущие проблемы...

12-01-2015 06:04:06

InfSub пишет

Вообще же, на мой взгляд, у вас глючит либо мозилла, либо имакрос, рекомендую переустановить и то и другое (при этом удалив или временно забэкапив старый профиль)[/i]

Удалил ай макрос и заново загрузил,ошибка таймера 100 секунд -исчезла. Спасибо Друг за помощь !!!!! Но теперь выкикидывает из скрипта если скрипт не находит своего действия,например ; нету фото  или пользователь закрыл свои данные.   RuntimeError: element IMG specified by ID:viewImageLinkId was not found, line 23 (Error code: -921)----921     Элемент заданного командой TAG не найден

InfSub Moderator-спасибо все заработало как часы :beer::beer::beer:

Вот скрипт ;

скрытый текст

Выделить код

Код:

URL GOTO=http://odnoklassniki.ru/online
TAG POS=1 TYPE=SPAN ATTR=TXT:Выбрать<SP>другой<SP>город
SET !VAR7 EVAL("var random=Math.floor(Math.random()*19 + 9); random;")
WAIT SECONDS=2
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:st.city CONTENT={{!VAR3}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:* ATTR=NAME:st.ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=CLASS:photoWrapper
WAIT SECONDS=2
TAG POS=1 TYPE=IMG ATTR=ID:viewImageLinkId
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="#hook_Block_PopLayerViewFriendPhotoRating>UL>LI:nth-of-type(2)>A>SPAN" BUTTON=0
WAIT SECONDS=3
SET !VAR7 EVAL("var random=Math.floor(Math.random()*9 + 1); random;")
WAIT SECONDS=2
WAIT SECONDS={{!VAR7}}
'TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT=Всего<SP>вам<SP>хорошего
'TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*
TAG POS=1 TYPE=DIV ATTR=CLASS:ic<SP>ic_i_close&&TXT:
BACK
WAIT SECONDS=2

Сергей Козырев SET !ERRORIGNORE YES

12-01-2015 08:30:57

kolshix пишет

большинство пользователей вообще не интересует философии -- они просто ищут ответ

ага, и по этому - Солнце крутиться вокруг Земли mosking.gif

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

скрытый текст
приходится работать в сочетание с clickermannom/

Подскажите пожалуйста, работает у меня такой скрип перехода по ссылкам:

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO="ССЫЛКА_1"
WAIT SECONDS=12
FRAME F=2
TAG POS=1 TYPE=A ATTR=ID:skip-ad
WAIT SECONDS=3
TAB CLOSEALLOTHERS

TAB T=1
URL GOTO="ССЫЛКА_2"
WAIT SECONDS=12
FRAME F=2
TAG POS=1 TYPE=A ATTR=ID:skip-ad
WAIT SECONDS=3
TAB CLOSEALLOTHERS 
....................................

TAB T=1
URL GOTO="ССЫЛКА_N"
WAIT SECONDS=12
FRAME F=2
TAG POS=1 TYPE=A ATTR=ID:skip-ad
WAIT SECONDS=3
TAB CLOSEALLOTHERS


Ссылок очень много (около 10 тыс), как можно организовать процесс считывания ссылок с файла .csv ? Т.е. что бы макрос брал ссылки с файла и переходил по ним по очереди.


код публикуется в тегах &#91;spoiler]&#91;code]Ваш код&#91;/code]&#91;/spoiler]
как организовать процесс считывания - легко находится поиском по слову datasource правила, пункт 2.1

InfSub

guzhvenko, по флешу - ни как, остальное записываете и делаете свой макрос

Как сохранить в эксель в первой колонке - логин и вто второй - пароль.
Сохраняет всё в первой колонке. в такой формате - логин,"пароль"

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE_COLUMNS 2

логин
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:createaccount ATTR=NAME:GmailAddress EXTRACT=TXT

пароль
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:createaccount ATTR=NAME:Passwd EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\CAPTCH FILE=готовый_ящик.xls

Алим пишет

в такой формате - "логин","пароль"

Алим, это формат csv - в нем и будет сохраняться любой текст при SAVEAS
в xls - вы не сохраните, это будет не корректный файл, Excel его не поймет не откроет - правильно
как перевести csv в xls можно посмотреть тут

Посмотрел видео: Основы считывания текстовой информации - там всё предельно ясно и понятно, спасибо!
Но есть очень существенная для меня проблема!

Полностью записал скрипт, отредактировал необходимые части, всё работает!
Но перед каждым использованием в скрипте приходится менять десяток строчек URL GOTO=...
Так как каждый раз адрес меняется... Например URL GOTO=http://vk.com/id1 на  URL GOTO=http://vk.com/id2 (только вдреса страницы значительно длинще)

Каким кодом можно заменить эти "URL GOTO=http://vk.com/id1"
Чтобы URL можно было бы вписывать в .txt (SET !DATASOURC C:\Users\#Current.iim) файл и чтобы скрипт видил этот адрес в текстовом файле и переходил по нему?

Acj20se пишет

там всё предельно ясно и понятно, спасибо!

если вам все предельно ясно, в чем вопрос? тем более в своем вопросе, вы практически на свой же вопрос и ответили
поиск по данной теме на форуме - ни кто не отменял, а поиск по слову datasource выдаст достаточно примеров

Я наверно плохо искал и не нашел команды которая увеличивает изображения на странице.  Мне надо просто картинку капчи увеличивает на 200%  Можно это сделать при помощи команды в макросе?
Там такой код:

скрытый текст
TAG POS=1 TYPE=IMG ATTR=SRC:

Duh, что значит увеличить картинку? это функция есть на сайте или вам просто нужно ее укрупнить?, если второе, то нет такой опции в имакросе

InfSub, есть такое расширения Image Zoom. Если расширения Image Zoom  установлен и кликнуть по любой картинке,то ее можно увеличить на 100-400%. От и мне интересно, можно ли увеличивать картинки в макросе. Если нет такого, то жаль. Спасибо за ответ)

Duh, увеличение картинки в данном случае, функцинал определенного расширения, имакрос практически не взаимодействует с другими расширениями, если они - не подменяют самостоятельно html-код страницы, так как imacros взаимодействует в основном с ним

Хочу сделать, чтобы рандомно брались строчки из текстовго файла.
Макрос воспроизводит скрипт.

Вставляет поочерёдно, а нужно рандомно.

Вот код самого макроса

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE посты.txt
SET {{!VAR0}} EVAL("var random=Math.floor(Math.random()*{{постинг}} + 3); random;")
SET !DATASOURCE_LINE {{!VAR0}}

В крипте прописаны:

var постинг = "10"
iimSet("постинг",постинг);

а это отдельно от цикла где постинг
постинг++

Алим, RTFM как объявлять переменные в имакросе

Duh пишет

InfSub, есть такое расширения Image Zoom. Если расширения Image Zoom  установлен и кликнуть по любой картинке,то ее можно увеличить на 100-400%. От и мне интересно, можно ли увеличивать картинки в макросе. Если нет такого, то жаль. Спасибо за ответ)

как всегда пишу из фантазии
есть код миняющий  глубокие настройки может таким способом получится решить вашу проблему...

kolshix, спасибо! Можете код написать тут, на форуме для общего развития.
Я же нашел на ютубе как привязать распознание капч к сервису rucaptcha. Супер работает)
Способ с увеличением картинки будет полезен если на сайте капча сильно маленькая и если не присмотреться, не правильно увидишь символы. А так, капча сразу будет большая и проще ее будет распознать самому.

InfSub друг помаги !! как изменить срипт что бы после всех  действий команд не обновлялась страница командой URL GOTO=https://.Если эту команду комментрую- ' то скрипт не работает .(нужно чтоб скрипт делал несколько циклов без обновления страницы)    Заранее спасибо !!!

скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
TAB T=1
URL GOTO=https://follovvme.com/cab/
TAG POS=1 TYPE=A ATTR=TXT:19
TAG POS=1 TYPE=A ATTR=TXT:25
TAG POS=1 TYPE=A ATTR=TXT:31

Duh пишет

kolshix, спасибо! Можете код написать тут, на форуме для общего развития.
Я же нашел на ютубе как привязать распознание капч к сервису rucaptcha. Супер работает)
Способ с увеличением картинки будет полезен если на сайте капча сильно маленькая и если не присмотреться, не правильно увидишь символы. А так, капча сразу будет большая и проще ее будет распознать самому.

я не сильно понимаю в работе скриптов в мазиле, но точно знаю что при установке любых дополнений идут изменеения глубоких настроек , тем самым есть вероятность что в глубоких настройках есть параметр дополнения указанного выше, который увеличивает изображения
посмотрите видео https://www.youtube.com/watch?v=_TjjgOr1kns , там где-то в середине идет речь про изменение  глубоких настроек, ну а если по конкретнее то вот, работать с кодами нужно по аналогии , повторюсь в видео вопрос освещается 

скрытый текст

Выделить код

Код:

//'======^======'\\
//'===kolshix==='\\
//'==\=======/=='\\

var iphttp=   '111.111.111.111'
var ipssl=    '222.222.222.222'
var ipftp=    '333.333.333.333'
var ipsocks=  '444.444.444.444'
var socksver= '5'
var portall=  '8080'
var logAndPassProxy = 'test'

iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1")

var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);

// manual proxy configuration
prefs.setIntPref("network.proxy.type", 1);

// use the proxy server for all protocols
 prefs.setBoolPref("network.proxy.share_proxy_settings", true);
// each proxy independent
prefs.setBoolPref("network.proxy.share_proxy_settings", false);

// HTTP Proxy
prefs.setCharPref("network.proxy.http", iphttp);
prefs.setIntPref("network.proxy.http_port", portall);

// SSL Proxy
prefs.setCharPref("network.proxy.ssl", ipssl);
prefs.setIntPref("network.proxy.ssl_port", portall);

// FTP Proxy
prefs.setCharPref("network.proxy.ftp",ipftp)
prefs.setIntPref("network.proxy.ftp_port",portall);

// SOCKS Host
prefs.setCharPref("network.proxy.socks", ipsocks);
prefs.setIntPref("network.proxy.socks_port", portall);
prefs.setIntPref("network.proxy.socks_version", socksver);

// login & password proxy
prefs.setCharPref("extensions.proxyauth.authtoken",logAndPassProxy);

Сергей Козырев пишет

InfSub друг помаги !! как изменить срипт что бы после всех  действий команд не обновлялась страница командой URL GOTO=https://.Если эту команду комментрую- ' то скрипт не работает .(нужно чтоб скрипт делал несколько циклов без обновления страницы)    Заранее спасибо !!!

скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
TAB T=1
URL GOTO=https://follovvme.com/cab/
TAG POS=1 TYPE=A ATTR=TXT:19
TAG POS=1 TYPE=A ATTR=TXT:25
TAG POS=1 TYPE=A ATTR=TXT:31

один из вариантов
1.js

Выделить код

Код:

var i,maxcount = 10; // количество повторений кода
iimPlayCode('URL GOTO=https://follovvme.com/cab/');
for(var i=0;i<maxcount;i++){iimPlay('1.iim');};

1.iim

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:19
TAG POS=1 TYPE=A ATTR=TXT:25
TAG POS=1 TYPE=A ATTR=TXT:31


15-01-2015 04:20:46

kolshix пишет

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

в таком случае, как управлять данным расширением имеет смысл спросить в соответствующей ветке форума, посвященной данному расширению

Добрый день!
Как на сайте

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


нажать кнопку Get Coins! в iMacros. Через запись не работает.
Спасибо.

SVKast, имакрос для FF, не работает с флешем

Сделал авто-регистрацию гугл почты скрипт+макросы + с разгадыванием каптчи.
После ввода пароля (генерирует автоматически макрос) сохраняет их в отдельный csv файл.

Но каптча может не с первого раза разгадаться и тогда сохраняются несколько одинаковых
логинов с разными паролями.

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

----
Идея такая. Сохранять логин и пароль в текстовый файл "Черновик",
а потом, после успешной регистрации, брать из черновика последнюю
сохранённую запись (логин и пароль) и вставлять в чистовик.

Воспрос. Можно ли, с помощью макроса или скрипта юзать из одного текстового
документа .txt строку и вставлять в другой текстовый документ .csv ?


Алим, просьба - писать грамотней, даже если очень спешите =)

InfSub

Алим пишет

Воспрос. Можно ли, с помощью макроса или скрипта юзать из одного текстового
документа .txt строку и вставлять в другой текстовый документ .csv ?

а почему нет?
прочитали строку в одном файле, записали в другой
Алим, вы вроде бы не первый день на форуме и не первый день используете имакрос, не должно уже быть подобных вопросов ))))

Такое просто я ещё не делал. Из одного txt в другой.
Я думал нельзя.

Там наверно и легче было сделать.
Придётся поэкспереметировать )

я бы - сделал бы иначе, логин с паролем генерируются скриптом единожды для конкретной учетки, и сохраняются только после того как регистрация окончена.

15-01-2015 20:25:03

Алим пишет

Такое просто я ещё не делал. Из одного txt в другой.
Я думал нельзя.

код, обновлено

Выделить код

Код:

SET !DATASOURCE temp_auch.txt
SET !EXTRACT {{!COL1}}
ADD !EXTRACT {{!COL2}}
...
SAVEAS TYPE=EXTRACT FOLDER=* FILE=google_auch.txt

Спасибо InfSub, эврика )
Вроде смотрится легко, а додуматься сложно!

InfSub пишет

обновил код выше

только там не SEVEAS, а SAVEAS

опечатался, кем не бывает =)

Алим пишет
InfSub пишет

обновил код выше

только там не SEVEAS, а SAVEAS

Теперь думаю как сделать так, чтобы из temp_auch.txt
юзалась последняя сохранённая запись.

К примеру, если указано в скрипте 4 попытки для разгадывания капчи.
А капча разгадалась с 3 попытки. Всё ровно ведь 4 цикла (4 попытки)
и будет всегда 4 строку юазать из temp_auch.txt.

скрытый текст

Выделить код

Код:

var циклы = 1;

здесь разгадываются капчи и сохраняются в тхт файл temp_auch.txt

for (s=1;s<=4;s++){
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=STRONG ATTR=TXT:Подтвердите<SP>пароль")
if (i>0){
iimSet("циклы",циклы);
iimPlay("макросы/antigate.iim",60);
}
}

здесь сохраняется последние записи из temp_auch.txt в google_auch.txt

if (i<0){
iimPlay("макросы/сохранение.iim",60);
}

код макроса "сохранение"

SET !DATASOURCE temp_auch.txt
SET !DATASOURCE_LINE {{циклы}}
SET !EXTRACT {{!COL1}}
ADD !EXTRACT {{!COL2}}
SEVEAS TYPE=EXTRACT FOLDER=* FILE=google_auch.csv


Правильно ли я сделал ?

Алим пишет

Теперь думаю как сделать так, чтобы из temp_auch.txt
юзалась последняя сохранённая запись.

удали файл перед сохранением

скрытый текст

Выделить код

Код:

SET tmpfile c:\...\temp_auch.txt
' FILEDELETE - если указано только имя файла - удаляет файл из iMacros\Downloads\
FILEDELETE NAME={{tmpfile}}
' !DATASOURCE - если указано только имя файла - читает файл из iMacros\Datasources\
SET !DATASOURCE {{tmpfile}}
SET !EXTRACT {{!COL1}}
ADD !EXTRACT {{!COL2}}
' SEVEAS - если указано только имя файла - сохраняет файл в iMacros\Downloads\
SEVEAS TYPE=EXTRACT FOLDER=* FILE=google_auch.csv

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

InfSub пишет

удали файл перед сохранением

ок сейчас попробую

А всмысле, удаляет и заново создаёт файл google_auch.txt
и всегда будет первая строка ?

Алим пишет

А всмысле, удаляет и заново создаёт файл google_auch.txt

нет, удаляет временный файл и в нем всегда будет использоваться только первая строка

15-01-2015 21:36:03
естественно подразумевается, что все происходит из под управляющего js-скрипта, иначе использование временного файла теряет смысл (если, конечно, не подменять данные в extract - пустой строкой в случае неудачи с капчей, но и в этом случае особо временный файл не нужен)

15-01-2015 21:50:31

Алим пишет

Правильно ли я сделал ?

только увидел что код обновлен, сейчас гляну

15-01-2015 21:55:35
а, ну по сути - ты ни чего не изменил в нем, только добавил описание js. разве что в js прописано текстом, что есть сохранение в temp_auch.txt но отсутствует сам код, так что сам не забудь его туда добавить
а так суть верная, только удаление файла тоже должно быть в файле с сохранением в temp_auch.txt

15-01-2015 21:58:38

Алим пишет

здесь разгадываются капчи и сохраняются в тхт файл temp_auch.txt

т.е. должно быть:
здесь разгадываются каптчи, удаляется временный файл temp_auch.txt со старым логином и паролем, после чего новый логин и пароль, сохраняются в файл temp_auch.txt (при сохранении - файл создается заново)

Я думал, как это удалить перед сохранением?
Оказывается temp_auch.txt нужно создать заранее.

Поставить код удаления

Выделить код

Код:

SET tmpfile c:\темп\temp_auch.txt
FILEDELETE NAME={{tmpfile}}
SET !DATASOURCE {{tmpfile}}

а здесь код сохранения в temp_auch.txt

и когда будет идти новый цикл. Файл будет удаляться, затем
создаваться новый. Получается всегда новый файл с одной строкой.

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

т.е. структура iim-файлов должна быть следующей:

save_tmp *обновлено

Выделить код

Код:

' получение логина и пароля со страницы сайта в !EXTRACT
SET tmpfile "temp_auch.txt"
SET tmppath "c:\путь_до_папки_с_файлом\"
FILEDELETE NAME={{tmppath}}{{tmpfile}}
SEVEAS TYPE=EXTRACT FOLDER={{tmppath}} FILE={{tmpfile}}


save_google_auch

Выделить код

Код:

' сохранение правильных данных в google_auch.csv
SET tmpfile "c:\путь_до_папки_с_файлом\temp_auch.txt"
SET !DATASOURCE {{tmpfile}}
SET !EXTRACT {{!COL1}}
ADD !EXTRACT {{!COL2}}
SEVEAS TYPE=EXTRACT FOLDER=* FILE=google_auch.csv

15-01-2015 22:30:15

Алим пишет

а можно сохранить в !EXTRACT в одном макросе, а в другом макросе из !EXTRACT вставить ?
(это типа буфера обмена)

только через временную js-переменную

В общем получилось так, как я хотел, блогадаря InfSub !

Поставил код удаление файла, перед
сохранением логина и пароля

скрытый текст

Выделить код

Код:

SET tmpfile c:\темп\temp_auch.txt
FILEDELETE NAME={{tmpfile}}


Здесь код который берёт со страницы логин и пароль
и сохраняет в temp_auch.txt

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:createaccount ATTR=NAME:GmailAddress EXTRACT=TXT
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:createaccount ATTR=NAME:PasswdAgain EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\темп FILE=temp_auch.txt


При новых циклах удаляется и создаётся новый
временный файл temp_auch.txt содержащий
логин и пароль на одной строке

Дальше воспроизводится макрос, который юзает
из temp_auch.txt логин и пароль с первой строки
и сохраняет в новый файл google_auch.csv

скрытый текст

Выделить код

Код:

SET !DATASOURCE c:\темп\temp_auch.txt
SET !EXTRACT {{!COL1}}
ADD !EXTRACT {{!COL2}}
SAVEAS TYPE=EXTRACT FOLDER=c:\темп\ FILE=google_auch.csv


Всё работает как надо!

Алим, good.gif

Как сделать рандом от 1970 года до 1998

Выделить код

Код:

EVAL("var random=Math.floor(Math.random()*1970 + 28); random;")

вот если выберать месяца от 1 до 12, то так

Выделить код

Код:

EVAL("var random=Math.floor(Math.random()*11 + 1); random;")

а вот с годом, не получается

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

Алим,

скрытый текст

Выделить код

Код:

EVAL("var min=1970,max=1998;Math.floor(Math.random()*(max-min+1))+min;")

InfSub спасибо

Подскажите выдает такую ошибку: SyntaxError: unknown command: EVENT, line: 8 (Error code: -910)
вот строка
EVENT TYPE=CLICK SELECTOR="#field_male" BUTTON=0
что не так? помогите исправить

AllaViktorovna, правила, пункт 2.2 - прочтите, как правильно задать вопрос, чтобы на него ответили
где в вашем сообщении версия мозиллы и имакроса?

InfSub пишет

AllaViktorovna, правила, пункт 2.2 - прочтите, как правильно задать вопрос, чтобы на него ответили
где в вашем сообщении версия мозиллы и имакроса?

простите:blush: мозилла 21.0 имакрос 7.4.0.8.

AllaViktorovna пишет
InfSub пишет

AllaViktorovna, правила, пункт 2.2 - прочтите, как правильно задать вопрос, чтобы на него ответили
где в вашем сообщении версия мозиллы и имакроса?

простите:blush: мозилла 21.0 имакрос 7.4.0.8.

Версия 8.2.4
Версия 8.2.4
Выпущено February 20, 2013  270.4 kB
Работает с Firefox 4.0 и выше
This version features the new EVENT command. You can select this recording mode in the "Record Options" dialog on the "Rec" tab. EVENT is a new *experimental* method to automate web controls that the classic TAG command can not automate: Drag & Drop, Sliders, Tricky date controls and similar elements.

We also fixed some Firefox 18/19 compatibility issues.


EVENT - работает c версии 8.2.4

InfSub пишет
AllaViktorovna пишет
InfSub пишет

AllaViktorovna, правила, пункт 2.2 - прочтите, как правильно задать вопрос, чтобы на него ответили
где в вашем сообщении версия мозиллы и имакроса?

простите:blush: мозилла 21.0 имакрос 7.4.0.8.

Версия 8.2.4
Версия 8.2.4
Выпущено February 20, 2013  270.4 kB
Работает с Firefox 4.0 и выше
This version features the new EVENT command. You can select this recording mode in the "Record Options" dialog on the "Rec" tab. EVENT is a new *experimental* method to automate web controls that the classic TAG command can not automate: Drag & Drop, Sliders, Tricky date controls and similar elements.

We also fixed some Firefox 18/19 compatibility issues.


EVENT - работает c версии 8.2.4

БЛАГОДАРЮ:)

InfSub пишет

Алим,

скрытый текст

Выделить код

Код:

EVAL("var min=1970,max=1998;Math.floor(Math.random()*(max-min+1))+min;")

Помните я выше писал о проблемах отчета и понимания цифер (1=0 бла, бла , бла ...) , вот почему я и  говорил что данный вариант удобнее , для "относительных новичков" --- вот и Алим на примере сделал ошибки....  )) - данный пример интуитивно понятнее .

kolshix пишет

Помните я выше писал о проблемах отчета и понимания цифер (1=0 бла, бла , бла ...) , вот почему я и  говорил что данный вариант удобнее , для "относительных новичков" --- вот и Алим на примере сделал ошибки....  )) - данный пример интуитивно понятнее .

если вы считаете что между данными формулами

InfSub пишет

скрытый текст

Выделить код

Код:

EVAL("var min=1970,max=1998;Math.floor(Math.random()*(max-min+1))+min;")

Алим пишет

скрытый текст

Выделить код

Код:

EVAL("var random=Math.floor(Math.random()*1970 + 28); random;")

разница в единицу, то дальше обсуждать просто не чего dash1.gif

InfSub пишет

скрытый текст

kolshix пишет

Помните я выше писал о проблемах отчета и понимания цифер (1=0 бла, бла , бла ...) , вот почему я и  говорил что данный вариант удобнее , для "относительных новичков" --- вот и Алим на примере сделал ошибки....  )) - данный пример интуитивно понятнее .

если вы считаете что между данными формулами

InfSub пишет
Выделить код

Код:

EVAL("var min=1970,max=1998;Math.floor(Math.random()*(max-min+1))+min;")
Алим пишет
Выделить код

Код:

EVAL("var random=Math.floor(Math.random()*1970 + 28); random;")


разница в единицу, то дальше обсуждать просто не чего

то понятно, что отсчет рандома идет от 27 до 1997

но Я не о 1=0  , я о том что данный метод интуитивно понятнее для некоторых. Даже удобнее может быть такой вариант , для тех , кто с аймакрос работал не более 2-3 часов

скрытый текст

Выделить код

Код:

SET min_random 1970
SET max_random 1998
SET RANDMINMAX EVAL("var min={{min_random}},max={{max_random}};Math.floor(Math.random()*(max-min+1))+min;")

ну или

Выделить код

Код:

SET min_random 1970
SET max_random 1998
SET RANDMINMAX EVAL("var randomMinMax;Math.floor(Math.random()*({{max_random}}-{{min_random}}+1))+{{min_random}};")

Товарищи знатоки! Помогите пжл!
Есть макрос, открывает ( поиск) список людей по годам обучения в школе, заходит к первому человеку, приглашает в группу,возвращается....и вместо второго человека выбирает опять первого...как сделать чтобы при возвращении он выбирал след.анкету. Спасибо

скрытый текст

Выделить код

Код:

VERSION BUILD=7020226 RECORDER=CR
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
URL GOTO=http://m.odnoklassniki.ru/dk?st.cmd=communityMain&st.groupId=40042827939907&st.mfe=2018&st.mft=2&st.mfs=2000&st.page=1&_prevCmd=communityMain&tkn=7259
TAG POS=1 TYPE=SPAN ATTR=CLASS:usr
TAG POS=1 TYPE=A ATTR=TXT:Пригласить<SP>в<SP>группу
TAG POS=1 TYPE=SPAN ATTR=CLASS:grp
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=NAME:button_send


P/S вот в этой команде например

Выделить код

Код:

URL GOTO=http://m.odnoklassniki.ru/dk?st.cmd=usersOnline&_prevCmd=userMain&tkn=9805

при возврате, уже стоят другие люди...но тут поиск по людям онлайн просто, а мне нужно пригласить людей в группу которые учились в одной школе.

Cnikolaj2013, читаем - что такое !LOOP, поиск по данному топику в помощь

На странице регистрации почты гугл, есть параметр "Месяц"

вот код, который выбирает месяц, рандомно

скрытый текст

Выделить код

Код:

SET !VAR8 EVAL("var min=1,max=11;Math.floor(Math.random()*(max-min+1))+min;") 
EVENT TYPE=MOUSEDOWN SELECTOR="#BirthMonth>DIV" BUTTON=0
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:{{!VAR8}}>DIV" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#BirthMonth>DIV" KEY=13


Версия macros 8.8.8
Версия мазилы 33.0

Выберает несколько раз, а потом перестаёт.
Что это может быть ? Тоже из за версии аймакроса и мазилы ?

Алим, если сначала выбирает, потом нет - скорее глюки...
ошибка в вашем коде, подробнее тут

Подскажите, пожалуйста, можно ли почистить куки из iim или из js если да, то напишите код.

stars1981, wiki по имакросу и поиск по форуму для кого сделан? CLEAR

Люди, подскажите, как можно ускорить воспроизведение скрипта js ?, скрипт большой, пока переберет переменные, пока if'ы смотрит, проходит секунд 5-6, как можно ускорить ?

to kolshix

вычисление псевдослучайного числа или равен ли ноль - единице, по kolshix'у
kolshix на примере Алима:
Проблема не в путанице 1 или 0, а в не понимании принципа расчета
и в данном случае не нужно усугублять примерами вида

в js 1=0

ибо это не так, а лучше разъяснить принцип расчета:
n = Math.random() = диапазону чисел от 0 до 1 (но не включая 1) т.е. от 0 до 0.99999999.....
получаем n - некое число умноженное на разницу двух чисел (максимальное минус минимальное)
НО, т.к. n у нас ни когда не будет равна 1 (n≠1) то, чтобы закрыть диапазон, получаемых при умножении рандомных чисел, мы должны прибавить к полученному при вычитании числу еще 1
пример: min=10, max=15
n*(15-10)
получим диапазон:
от 0х5=0
до 0.99999....х5=4.99999.... (!!! заметьте не 5 для этого и нужно добавить +1 т.к. дальше мы округляем число, отбрасывая знаки после запятой и в результате, вместо 4.9999.... получаем 4)
и так получим диапазон:
от 0х(15-10+1) = 0х6 = 0
до 0.99999....х(15-10+1) = 0.99999....х6 = 5.99999....
округляем (функцией Math.floor() - она отбрасывает знаки после запятой, возвращая наименьшее целое число) Math.floor(5.9999....) = 5
и к этому диапазону прибавляем минимальное число:
получим диапазон от: 0+10=10 до 5+10=15


Вариант 2, если вы не хотите помнить постоянно о том, что требуется добавить 1, то можно использовать подобную функцию:

Выделить код

Код:

EVAL("var min=1970,max=1998;Math.round(Math.random()*(max-min)+min);")

И опять же, kolshix, Ваше объяснение 1=0 - трещит по швам, тут нет этой, не любимой Вами - единицы!!!


17-01-2015 17:48:29

Haart пишет

Люди, подскажите, как можно ускорить воспроизведение скрипта js ?, скрипт большой, пока переберет переменные, пока if'ы смотрит, проходит секунд 5-6, как можно ускорить ?

записать скрипт в 1 строку

скрытый текст
оригинал:

Выделить код

Код:

var i=0;
var j=10;
if(i<j){
    i=j;
}else{
    j=i;
};

сжатый код:

Выделить код

Код:

var i=0,j=10;if(i<j){i=j;}else{j=i;};

Haart пишет

Люди, подскажите, как можно ускорить воспроизведение скрипта js ?, скрипт большой, пока переберет переменные, пока if'ы смотрит, проходит секунд 5-6, как можно ускорить ?

я думаю легче просто убрать галочку - "Показывать JavaScript во время проигрывания"

Алим, и это тоже, про нее я как-то забыл =)

Ага, спасибо, значительно ускорилось) А теперь такой вопрос, можно ли привязать исполнение скрипта к определенной вкладке ? Т.е. я включил скрипт в первой вкладке, перешел на вторую - работаю, - и это не мешает скрипту работать в первой вкладке... ?

Haart, нет, только в новом окне

InfSub пишет

Haart, нет, только в новом окне

Плохо, и так этих браузеров 6 штук открыто... так бы чуть сэкономил) Ну ладно, спасибо за помощь)

Haart пишет
InfSub пишет

Haart, нет, только в новом окне

Плохо, и так этих браузеров 6 штук открыто... так бы чуть сэкономил) Ну ладно, спасибо за помощь)

могу посоветовать Pale Moon Portable Version: 25.1.0 - Это браузер на основе Mozilla заточенный под windows Imacros - версия 8.6.0 + Memory Fox 7.4 (сбрасывает нагрузку как и браузера так и паралельных процессов, зависит от настройки)

у меня убирается от 25 до 70 % нагрузки системы по сравнению с FFox  - все зависит от времени работы браузера - когда 2-е -3-е суток работает браузер , тогда много жрет, но достаточно перезапустить и снова мало жрёт и так по кругу

на одной машине смог запустить 10 Ffox - и на этой же смог 15-18 Pale moon

kolshix пишет

могу посоветовать Pale Moon Portable Version: 25.1.0

Спасибо, попробую.

После того как убираю галочку - "Показывать JavaScript во время проигрывания", у меня перестает работать кнопка стоп. Я ее жму, а у меня один и тот же сценарий запускается еще раз. По крайней мере такое впечатление, что на одной и той же странице крутится один и тот же скрипт, но в несколько потоков.

kolshix, попробовал, тормозит хорошенько у меня, некоторые скрипты просто не запускает. Потом вообще завис, минут через 5. Посмотрел в диспетчере и офигел, почти 800мб оперативы забрал, и росло дальше... перезагрузил, попробовал еще раз, но все та же песня.) Может просто сайт такой, у меня он только на Maxthon'e не так сильно на систему влияет, на всех других значительно подгружает. Но у Макстона нет аймакроса) Если кому интересно, сайт:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


грузит и проц и оперативу.


адреса сайтов убираем в теги spoiler и noindex

InfSub

флуд, удалено

тема не является местом для заказа скриптов, подобные предложения обсуждаются в ПМ

InfSub

привет всем помогите....

флуд запрещен, сообщение удалено

нарушение правил: 2.2, 2.6
данная тема - не посвящена заказу скриптов, если у вас проблема при написании скрипта, указываем - где именно проблема (сайт, страница), приводим пример кода, который не работает

InfSub

флуд, удалено, правила, пункт 2.7


kolharik
тут экстрасенсов нет, вас предупредили в первый раз, указав на ошибки, дав возможность исправить ваше сообщение, вы его удалили, создали новое
вас повторно предупредили, указали на ошибки в оформлении сообщения, что в вашем сообщении не так и по каким причинам оно расценено как флуд, вы снова игнорируете
создали 3 сообщение... следующее сообщение, содержащее общие слова о проблеме, но без указания адреса сайта/страницы (в тегах - spoiler и noindex), на котором/й у вас возникли проблемы - как минимум, и кода, который не работает, либо работает не корректно  - и будет бан на неделю (правила, 4.1)

InfSub

как прикрепить документ с рабочего стола  в вконтакте в сообщениях?

Уважаемые дамы и господа, ввиду специфики форума iMacros, создана тема с правилами, дополняющая основные правила поведения на форумах forum.mozilla-russia.org

scenic.gif

Сегодня запустил Pale Moon + imacros на W server 2012 - скоро отпишусь о стабильности .....
1 - Обратил внимание что при работе js + iim где идёт считывание инфы с txt  файла при получении ошибки строки или простом переходе и прочтении , скрипт не стопорится , но это только первые 30 мин и на новой OC - надеюсь все так и будет гладко
2 - ОС 64 разрядная и в диспетчере задач увидел что потребление оперативы немного больше чем на 32-х разрядном опарате , (ну это понятно почему)

Алим пишет

На странице регистрации почты гугл, есть параметр "Месяц"
вот код, который выбирает месяц, рандомно

скрытый текст

Выделить код

Код:

SET !VAR8 EVAL("var min=1,max=11;Math.floor(Math.random()*(max-min+1))+min;") 
EVENT TYPE=MOUSEDOWN SELECTOR="#BirthMonth>DIV" BUTTON=0
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:{{!VAR8}}>DIV" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#BirthMonth>DIV" KEY=13


Выберает несколько раз, а потом перестаёт.
Что это может быть ?

посмотрите код страницы, там нет числовых значений у месяцев с октября по декабрь, их заменяют буквы a,b,c - соответственно
когда в скрипте выпадает значение большее 9 - то нужный месяц не находит
к тому же у вас ошибка в формуле max должен быть равен 12, а не 11

InfSub пишет

их заменяют буквы a,b,c

Посмотрел исходный код страницы через мазилу версии 33.0, у меня цифры 01, 02, 03 и т.д.

скрытый текст
cskEm0XuZ7m2QsRCoVVFphmh9SyuPZXm8Z5rxPTUFKrF2SU2ywvM9WrnmoAZ8bUgxmYKXvN9mwHCxrS_9goFFA%3D%3D?uid=0&filename=2015-01-18_230401.png&disposition=inline&hash=&limit=0&content_type=image%2Fpng

Как нашли тогда а,b,c ?

InfSub пишет

к тому же у вас ошибка в формуле max должен быть равен 12, а не 11

я специально так сделал.

Я поставил в скрипт, if перепроверку 5 раз и ставит по любому месяц.

Алим, посмотрите свой код, вы обращаетесь к тегу option? если бы обращались, у вас работал бы код только с октябрем и ноябрем (при max=11), и с декабрем (при max=12) т.к. 1≠01 и т.д.
вы же, обращаетесь к тегу DIV

скрытый текст
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:{{!VAR8}}>DIV" BUTTON=0

18-01-2015 23:33:14

Алим пишет

Как нашли тогда а,b,c ?

да, хотя бы через запись event'a:

скрытый текст
'сентябрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:9>DIV" BUTTON=0
'октябрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:a>DIV" BUTTON=0
'ноябрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:b>DIV" BUTTON=0
'декабрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:c>DIV" BUTTON=0

18-01-2015 23:37:08
сильно сомневаюсь, что такой код у вас будет работать, о причинах написано выше
скрытый текст

Выделить код

Код:

SET !VAR8 11
' или
SET !VAR8 12
EVENT TYPE=MOUSEDOWN SELECTOR="#BirthMonth>DIV" BUTTON=0
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:{{!VAR8}}>DIV" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#BirthMonth>DIV" KEY=13

Кому интересен рандом символов Imacros, а то спохватился, а готового кода нет :


ну раскрой меня))
на iim

Выделить код

Код:

'количество символов 
set numbletters 9

'виды символов | можно добавить и пробелов , тогда наборы символов смогут идти через пробелы , причем позиции пробелов тоже будет разными
set var_letters "0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"

set letters eval("var result = ''; var words = '{{var_letters}}'; var max_position = words.length;for( i = 0; i < {{numbletters}}; ++i ) {position = Math.floor(Math.random()*(max_position));result = result + words.charAt(position);};")

 PROMPT {{letters}}

на js

Выделить код

Код:

var numbletters =5;  // количество символов
 var words  = '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'; // виды символов 

 var result       = ''; 
 var max_position = words.length ;
            for( i = 0; i < 9; ++i ) {
                position = Math.floor ( Math.random() * max_position );
                result = result + words.substring(position);
            }
alert (result)

ну и как было найдено

Выделить код

Код:

var result       = ''; 
 var words  = '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM';
 var max_position = words.length - 1;
 for ( i = 0; i < 5; ++i ) {
      position = Math.floor ( Math.random() * max_position );
      result = result + words.substring(position, position + 1);
 }

kolshix пишет
Выделить код

Код:

result = result + words.substring(position, position + 1);

так, как минимум короче:

Выделить код

Код:

result = result + words.charAt(position);

Через запись я сейчас попробывал, работает.

Просто вы писали

InfSub пишет

посмотрите код страницы, там нет числовых значений у месяцев

За пояснение 1 до 11 я понял, спасибо.

kolshix пишет
Выделить код

Код:

position = Math.floor ( Math.random() * max_position );

ну и вы сами наступили на те грабли, которые мы с вами 2 дня уже обсуждаем, забыли про +1
хотя нет, ошибка глубже, если без +1 то не будет показан последний символ, если с +1 - то первый

19-01-2015 01:44:37

kolshix пишет

Кому интересен рандом символов Imacros, а то спохватился, а готового кода нет :

для iim - исправлено, теперь берет весь диапазон

Выделить код

Код:

'количество символов 
set numbletters 100

'виды символов | можно добавить и пробелов , тогда наборы символов смогут идти через пробелы , причем позиции пробелов тоже будет разными
set var_letters "0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"

set letters eval("var result = ''; var words = '{{var_letters}}'; var max_position = words.length;for( i = 0; i < {{numbletters}}; ++i ) {position = Math.floor(Math.random()*(max_position));result = result + words.charAt(position);};")
 PROMPT {{letters}}


19-01-2015 01:51:43

Алим пишет

Через запись я сейчас попробывал, работает.

не совсем понял, что вы под этим подразумеваете.. это?:

InfSub пишет

сильно сомневаюсь, что такой код у вас будет работать, о причинах написано выше

скрытый текст

Выделить код

Код:

SET !VAR8 11
' или
SET !VAR8 12
EVENT TYPE=MOUSEDOWN SELECTOR="#BirthMonth>DIV" BUTTON=0
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:{{!VAR8}}>DIV" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#BirthMonth>DIV" KEY=13

InfSub пишет

не совсем понял, что вы под этим подразумеваете..

вот это

скрытый текст

Выделить код

Код:

'сентябрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:9>DIV" BUTTON=0
'октябрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:a>DIV" BUTTON=0
'ноябрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:b>DIV" BUTTON=0
'декабрь
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:c>DIV" BUTTON=0

19-01-2015 02:01:29
Вот ещё один код автогенерация символов для iim-макроса
Можно также добавить и цифры.

скрытый текст

Выделить код

Код:

'количество символов 
SET !VAR0 5

'на сколько размешивать
SET !VAR1 20

SET !VAR2 EVAL("var letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','w','x','y','z']; var string = ''; for(var i = 0; i < {{!VAR0}}; i++){string += letters[parseInt(Math.random() * {{!VAR1}})]}; string")

InfSub пишет
kolshix пишет
Выделить код

Код:

position = Math.floor ( Math.random() * max_position );

ну и вы сами наступили на те грабли, которые мы с вами 2 дня уже обсуждаем, забыли про +1
хотя нет, ошибка глубже, если без +1 то не будет показан последний символ, если с +1 - то первый

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

Алим пишет

вот это

это просто демонстрация наличия букв в данном списке, записанная па самом сайте, естественно она работает, речь о другом, ваш список должен быть от 1 до 9, а далее от a до с (если выражаться более грамотно, то это 16-ричная система исчисления)

19-01-2015 02:08:44

kolshix пишет

Кстати там сразу и написано что код не я писал ))

ну, вы его переделали под себя, скопировав ошибки mosking.gif

усе ! подшаманил своё сообщения ! хорошо вовремя найденные ошибки , а то наломали бы они мне дров , может быть, будущем

кстати по поводу ОС w server 2012 , я за 1 год ни разу не видел чтоб так скрипты летали !!!

kolshix, для проверки, оставьте два символа в диапазоне, например, 0 и 1

Выделить код

Код:

set var_letters "01"

и запустите, сразу увидите баг wink.gif


Алим пишет

Вот ещё один код автогенерация символов для iim-макроса

где-то я это уже видел, кажется на форуме, сам же и писал, по чьей-то просьбе mosking.gif
хотя - нет, просто похож... nea.gif


19-01-2015 02:15:25

kolshix пишет

кстати по поводу ОС w server 2012 , я за 1 год ни разу не видел чтоб так скрипты летали !!!

не думаю, чо дело в ОС, скорее в железе

InfSub пишет

kolshix, для проверки, оставьте два символа в диапазоне, например, 0 и 1

Выделить код

Код:

set var_letters "01"

и запустите, сразу увидите баг wink.gif

На счет багов , я сам хитрожопый , как только вы написали про +- символ, я сразу так сделал, сейчас уже в первом сообщении сделаны изменения и все как следует работает )

Алим пишет

Вот ещё один код автогенерация символов для iim-макроса

InfSub пишет

где-то я это уже видел, кажется на форуме, сам же и писал, по чьей-то просьбе mosking.gif
хотя - нет, просто похож...nea.gif

ну да, вот тут

Добрый всем день,уже какой день бьюсь на проблемой,ничего не выходит (( есть файл CSV в котором лежат ссылки на странички в одноклассники,от скрипта просто требуется заходить по этим ссылкам подряд,с интервалом несколько секунд. Сразу скажу,в написании скриптов я ничего толком не понимаю,но вот что получилось своять


скрытый текст

Выделить код

Код:

var i, load;

load =  "CODE:";
load +=  "set !extract null" + "\n"; 
load +=  "SET !DATASOURCE /home/roma/iMacros/Datasources/obshii.csv" + "\n"; 
load +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
load +=  "SET !DATASOURCE_LINE 1" + "\n"; 
load +=  "SET !extract {{!col1}}" + "\n";

iimPlay(load);
var s=iimGetLastExtract(0);

var index=s.indexOf("w");

if (index>0){
    for (i in s){alert(s[i])}
}


код публикуем в spoiler в теге code!


InfSub

ребят.
гуглю, но чет никак не могу найти ответ


делаю клик с помощью такой функции
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV: ...

как сделать, чтобы этот клик открылся в новой вклдаке ?

InfSub пишет

где-то я это уже видел, кажется на форуме, сам же и писал, по чьей-то просьбе
хотя - нет, просто похож...

Скорее похож.
Код копировал точно не с этого форума.
Находил на иностранном сайте.

Pshin, ни как, только extract ссылки и открытие в новой вкладке. event не позволяет использовать extract

19-01-2015 12:08:57

Алим пишет

Код копировал точно не с этого форума.
Находил на иностранном сайте.

способов реализации не так много, так что результатом, в итоге, оказывается похожий код

19-01-2015 12:36:14

romar131184 пишет

есть файл CSV в котором лежат ссылки на странички в одноклассники,от скрипта просто требуется заходить по этим ссылкам подряд,с интервалом несколько секунд

скрытый текст

Выделить код

Код:

//len - кол-во строк в файле obshii.csv
var i,s,load='',len=2;

load +=  "SET !DATASOURCE obshii.csv" + "\n"; 
load +=  "SET !DATASOURCE_LINE {{LINE}}" + "\n";
load +=  "SET !EXTRACT {{!COL1}}" + "\n";
load +=  "URL GOTO={{!COL1}}" + "\n";
load +=  "WAIT SECONDS=10" + "\n";

for(i=1;i<=len;i++){
    iimSet("LINE",i);
    iimPlayCode(load);
    //s=iimGetLastExtract(0);
    //alert(s);
};

скрытый текст

Выделить код

Код:

//len - кол-во строк в файле obshii.csv
var i,s,load='',len=2;

load +=  "SET !DATASOURCE obshii.csv" + "\n"; 
load +=  "SET !DATASOURCE_LINE {{LINE}}" + "\n";
load +=  "SET !EXTRACT {{!COL1}}" + "\n";
load +=  "URL GOTO={{!COL1}}" + "\n";
load +=  "WAIT SECONDS=10" + "\n";

for(i=1;i<=len;i++){
    iimSet("LINE",i);
    iimPlayCode(load);
    //s=iimGetLastExtract(0);
    //alert(s);
};


TypeError: name.match is not a function, line 156 (Error code: -991)

romar131184, вы уверены что код который запускаете, идентичен тому, который процитировали? (опубликованному мной после редактирования сообщения, первоначально в коде была ошибка, перепутал местами переменные в iimSet(), она как раз и приводила к этой ошибке)

Умеет ли imacros создавать папки ?

kolshix пишет

Умеет ли imacros создавать папки ?

нет, если только очередной хак, какой-нибудь найдется

InfSub пишет
kolshix пишет

Умеет ли imacros создавать папки ?

нет, если только очередной хак, какой-нибудь найдется

опять дополнения наверно долбить придётся  :(:cry: ведь при установке дополнений папки создаются , будим мудрить .....

kolshix пишет

скрытый текст

InfSub пишет
kolshix пишет

Умеет ли imacros создавать папки ?

нет, если только очередной хак, какой-нибудь найдется


опять дополнения наверно долбить придётся  :(:cry:

в FAQ'e выше:

запуск внешней программы с аргументами из js-скрипта:

используй cmd.exe или explorer.exe с параметрами

InfSub пишет

скрытый текст

kolshix пишет
InfSub пишет

нет, если только очередной хак, какой-нибудь найдется

опять дополнения наверно долбить придётся  :(:cry:

в FAQ'e выше:

запуск внешней программы с аргументами из js-скрипта:


используй cmd.exe или explorer.exe с параметрами

нужна помощь, вообще не вкурю, как в командной строке создать папку понял, а как перенести в сферу js полный стопор
в командной строку пишешь mkdir c:neeeeeeeeeeeeeew\   и создается папка в диске с:  как в js напишите пожалуйста

okkamas_knife пишет

скрытый текст
так понимаю эта часть , так как для меня большенство кодов - глухой лес --

Выделить код

Код:

function adddir(parentpath,newdir){
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(parentpath);
file.append(newdir);
if( !file.exists() || !file.isDirectory() ) {   // if it doesn't exist, create
   file.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0777);}

как тут создать переменную адреса и переменную имени файла?


Методом 30 минутного анализа ВКУРИЛ !!! :rock::rock::rock::rock::rock::rock::rock:

удалено, флуд

читаем правила, прежде чем создавать сообщения
тема посвящена вопросам связанным с iMacros для Firefox, а не по iMacros 10
просьбы типа "Напишите скрипт за меня" - запрещены
обсуждение коммерческих вопросов - тоже

InfSub

подскажите как сделать множество потоков с одного компа? именно с мозилы.

Pshin пишет

подскажите как сделать множество потоков с одного компа? именно с мозилы.

запустить несколько окон firefox, в каждом свой скрипт

21-01-2015 12:31:16
небольшое обновление
все просьбы написать скрипт и подобные, теперь будут переносится в тему iMacros Скрипты - поиск, просьбы написать, желающие помочь, подписывайтесь

InfSub,
а если нужно быть на одном сайте под несколькими разными аккаунтами?
тогда такой способ не работает

Pshin пишет

InfSub,
а если нужно быть на одном сайте под несколькими разными аккаунтами?
тогда такой способ не работает

работает, если использовать разные профили мозиллы для каждого окна

InfSub пишет
Pshin пишет

InfSub,
а если нужно быть на одном сайте под несколькими разными аккаунтами?
тогда такой способ не работает

работает, если использовать разные профили мозиллы для каждого окна

личное мнение
с профилями мазилы бывают проблемы , лучше скачать портативную версию , распокавать , и просто прокопировать папки ,сколько надо столько и запустите. Сразу предупреждение, могут стоять настройки когда запускаете браузеры с разных папок , но работает как один профиль, чтоб такого не происходило , в корневой папке браузера будет файл типа FirefoxPortable.ini - вот его нужно отредоктировать,  а вообще для данного вопроса есть другие ветви форума

Люди, укажите мне на ошибку, никак догнать не могу. Запускаю скрипт, все работает нормально. Но если я попытаюсь нажать стоп, то скрипт начинает дико чудить...

скрытый текст

Выделить код

Код:

var macro3;
var macro1;
macro1 = "CODE:";
macro1 += "TAG POS=1 TYPE=SPAN ATTR=TXT:0.00000000 EXTRACT=TXT" + "\n";

macro3 = "CODE:";
macro3 += "SET !TIMEOUT_STEP 0" + "\n";
macro3 += "SET !ERRORIGNORE YES" + "\n";
macro3 += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Stop<SP>rolling" + "\n";
macro3 += "WAIT SECONDS=5" + "\n";
macro3 += "TAG POS=1 TYPE=BUTTON ATTR=ID:spinner-auto" + "\n";
macro3 += "WAIT SECONDS=30" + "\n";
macro3 += "SET !EXTRACT NULL" + "\n";


var Ch;
var extractS;
var extract2;
var extract3;
var check;
check = 0;
for (i = 0; i < 300000; i++) {
iimPlay(macro1);
Ch = iimGetLastExtract();
extractS = Ch.charAt(7);
extract2 = Ch.charAt(8);
extract3 = Ch.charAt(9);
if((extractS == "0") && (extract2 == "0") && (extract3 == "0")) 
{ 
    iimPlay(macro3);
}
}

Haart пишет

Люди, укажите мне на ошибку, никак догнать не могу. Запускаю скрипт, все работает нормально. Но если я попытаюсь нажать стоп, то скрипт начинает дико чудить...

скрытый текст

Выделить код

Код:

var macro3;
var macro1;
macro1 = "CODE:";
macro1 += "TAG POS=1 TYPE=SPAN ATTR=TXT:0.00000000 EXTRACT=TXT" + "\n";

macro3 = "CODE:";
macro3 += "SET !TIMEOUT_STEP 0" + "\n";
macro3 += "SET !ERRORIGNORE YES" + "\n";
macro3 += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Stop<SP>rolling" + "\n";
macro3 += "WAIT SECONDS=5" + "\n";
macro3 += "TAG POS=1 TYPE=BUTTON ATTR=ID:spinner-auto" + "\n";
macro3 += "WAIT SECONDS=30" + "\n";
macro3 += "SET !EXTRACT NULL" + "\n";


var Ch;
var extractS;
var extract2;
var extract3;
var check;
check = 0;
for (i = 0; i < 300000; i++) {
iimPlay(macro1);
Ch = iimGetLastExtract();
extractS = Ch.charAt(7);
extract2 = Ch.charAt(8);
extract3 = Ch.charAt(9);
if((extractS == "0") && (extract2 == "0") && (extract3 == "0")) 
{ 
    iimPlay(macro3);
}
}

попробуй включить чек-бокс http://screencast.com/t/9MlOPatU

Здравствуйте!

Прошу помочь в использовании "EXTRACT", так как потратил изрядно времени и сил на эксперименты, a нужного результата не достиг.
Нужно получить полное значение ID "дива", зная точное значение TXT и частичное значение того самого ID.

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO

URL GOTO=http://www....
TAG POS=2 TYPE=DIV ATTR=TXT:Текст&&ID:* EXTRACT=ID 'Не нашел как вставить в атрибут частичное значение ID

SET !VAR1 {{!EXTRACT}}

EVENTS TYPE=KEYPRESS SELECTOR="#{{!VAR1}}" CHARS="Текст2"
...


Максимум, что получил на выдаче: #EANF#

Буду весьма признателен и благодарен за содействие и помощь!

stonrock86 пишет

Здравствуйте!

Прошу помочь в использовании "EXTRACT", так как потратил изрядно времени и сил на эксперименты, a нужного результата не достиг.
Нужно получить полное значение ID "дива", зная точное значение TXT и частичное значение того самого ID.

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO

URL GOTO=http://www....
TAG POS=2 TYPE=DIV ATTR=TXT:Текст&&ID:* EXTRACT=ID 'Не нашел как вставить в атрибут частичное значение ID

SET !VAR1 {{!EXTRACT}}

EVENTS TYPE=KEYPRESS SELECTOR="#{{!VAR1}}" CHARS="Текст2"
...


Максимум, что получил на выдаче: #EANF#

Буду весьма признателен и благодарен за содействие и помощь!

Пробуй 
EXTRACT=HTM
И дальше через регулярку EVAL уже выдерать то что надо

Всем привет, нужна помощь в написании кода я в этом не разбираюсь, в общем сделал чтоб макрос кликал в 3 области сайта на кнопки и иногда вылазиет жёлтая стока чуть ниже кнопок, как сделать чтобы макрос опредилил этот цвет и при появлении строки именно определённого цвета возвращался к началу работы. или это невозможно сделать?

brais, ищем аналогии через поиск, к примеру, появилась ли каптча на странице

В проекте "Мой мир" в разделе "друзья"
с помощью кода извлекается фамилия и имя и сохраняю в файл.
Но сохраняется без пробела между именем и фамилией.

Как можно сделать пробел ?

скрытый текст

Выделить код

Код:

TAG POS=3 TYPE=a ATTR=href:/mail/* EXTRACT=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=fi.csv

Алим пишет

Как можно сделать пробел ?

скрытый текст

Выделить код

Код:

TAG POS=3 TYPE=a ATTR=href:/mail/* EXTRACT=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=fi.csv

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=A ATTR=href:/mail/* EXTRACT=HTM
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/>(.*?)</g).join(' ').replace(/<|>|&nbsp;/g,'')")
SAVEAS TYPE=EXTRACT FOLDER=* FILE=fi.csv

Блогадарю InfSub, работает!

Приветствую всех!
Ни первый день мучаюсь, не могу найти код для сайта VK.COM, нужен такой код , чтоб с любой(новости , аудио и другие) страницы пользователя (самого себя,А не другой страницы)  извлечь id
Особенности:
--мне не нужно переходить по вкладкам и там извлекать , такой код у меня есть который извлекает id из кода страницы http://vk.com/settings реальный id
--меня интересует цифровой id а не придуманный пользователем
--код должен работать на любой странице VK.COM будь то новости , или домашняя...
--самое главное [код должен быть латиницей] в тегах не должно присутствовать русскоязычных символов  так как будут использоваться аккаунты пользователей разных стран, тем самым теги тоже поменяются из руских , на казахские , русские , украинские и прочие

вот что уже есть, срабатываю на любой странице аккаунта, будь то новости , главная или другие:
можно извлечь придуманный id

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=ID:myprofile_wrap EXTRACT=HTM
TAG POS=1 TYPE=LI ATTR=ID:* EXTRACT=HTM

можно извлечь id из audio тега , но недостаток что стоит в "ATTR=TXT:"  звездочка - по опыту знаю страницы генирируют инфу и теги танцуют и инфа меняется 

Выделить код

Код:

TAG POS=1 TYPE=TBODY ATTR=TXT:* EXTRACT=HTM

пока мне нравится этот , но хватает большой кусок кода и браузер тупит

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:side_bar EXTRACT=HTM


Может кто знает код с постоянными/конкретными тегами откуда можно извлечь id ???

kolshix, по моему, элементарно находится, за пару минут накидал:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=ID:head_music EXTRACT=HREF
PROMPT EVAL("'{{!EXTRACT}}'.replace(/(.*?)(\d+)(.*)/,'$2')")

скрытый текст

Выделить код

Код:

var m1,m2,m3,m4,i=1,e='#EANF#',r,pos,user=[];
user['names']='odyssey20072008';
user['mail']='odyssey20072008@mail.ua';
user['pass']='384fySivuVacYZo';
user['pass']='капча';

m='SET !ERRORIGNORE YES'
+'\n'+'SET !EXTRACT_TEST_POPUP NO'
+'\n'+'SET !TIMEOUT 5'
+'\n'+'TAB OPEN'
+'\n'+'TAB T=2'
+'\n'+'URL GOTO=https://temp-mail.ru/'
+'\n'+'TAG POS=1 TYPE=B ATTR=ID:email EXTRACT=TXT'
+'\n'+'SET !VARS {{!EXTRACT}}'
+'\n'+'TAB T=1'
+'\n'+'WAIT SECONDS=1';

m1='SET !TIMEOUT_STEP 1'+'\n'+'TAG POS={POS} TYPE=INPUT:email FORM=ACTION:*register* ATTR=DIR:ltr EXTRACT=TXT';
m2='SET !TIMEOUT_STEP 1'+'\n'+'TAG POS={POS} TYPE=INPUT:PASSWORD FORM=ACTION:*register* ATTR=CLASS:"textCtrl OptOut" EXTRACT=TXT';
m3='SET !ERRORIGNORE YES'
+'\n'+'SET !EXTRACT_TEST_POPUP NO'
+'\n'+'SET !TIMEOUT 5'
+'\n'+'TAB T=1'
+'\n'+'URL GOTO=http://windstrike.ru/board/index.php'
+'\n'+'TAG POS=1 TYPE=A ATTR=TXT:Войти<SP>или<SP>зарегистрироваться'
+'\n'+'TAG POS=1 TYPE=INPUT:RADIO FORM=ID:login ATTR=ID:ctrl_not_registered'
+'\n'+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:login ATTR=*'
+'\n'+'SET !TIMEOUT_STEP 1';

m4='TAG POS=1 TYPE=INPUT:RADIO FORM=ACTION:*register* ATTR=VALUE:male'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:*register* ATTR=NAME:dob_day CONTENT=10'
+'\n'+'TAG POS=1 TYPE=SELECT FORM=ACTION:*register* ATTR=NAME:dob_month CONTENT=%8'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:*register* ATTR=NAME:dob_year CONTENT=1992'
+'\n'+'SET !TIMEOUT_STEP 1'
+'\n'+'SET !ERRORIGNORE YES'
+'\n'+'TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:*register* ATTR=ID:ctrl_agree CONTENT=YES'
+'\n'+'WAIT SECONDS=16'
+'\n'+'ONDOWNLOAD FOLDER=C:\\CAPTCH FILE=captcha.png WAIT=YES'
+'\n'+'WAIT SECONDS=1'
+'\n'+'TAG POS=1 TYPE=IMG ATTR=SRC:"http://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'
+'\n'+'TAB OPEN'
+'\n'+'TAB T=2'
+'\n'+'URL GOTO=http://antigate.com/imacros.html'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{U_ANTICAPCHA}}'
+'\n'+'FRAME F=0'
+'\n'+'TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT=file:///C:/CAPTCH/captcha.png'
+'\n'+'WAIT SECONDS=1'
+'\n'+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=VALUE:recognize'
+'\n'+'WAIT SECONDS=30'
+'\n'+'TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT'
+'\n'+'SET !VAR3 {{!EXTRACT}}'
+'\n'+'WAIT SECONDS=1'
+'\n'+'TAB T=1'
+'\n'+'FRAME F=0'
+'\n'+'WAIT SECONDS=5'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:index.php?register/register ATTR=ID:recaptcha_response_field CONTENT={{!VAR3}}'
+'\n'+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:*register* ATTR=ID:SubmitButton'
+'\n'+'URL GOTO=https://temp-mail.ru/'
+'\n'+'TAG POS=1 TYPE=A ATTR=TXT:';


iimPlayCode(m);


user['mail']=iimGetLastExtract();
iimPlayCode(m3);
do{
iimPlayCode(m1.replace('{POS}',i));
r=iimGetLastExtract(1);
if (r==e){
pos=i-1;
};
i++;
}while(r!=e);
iimSet('U_MAIL',user['mail']);
iimPlayCode('TAG POS='+pos+' TYPE=INPUT:email FORM=ACTION:*register* ATTR=DIR:ltr CONTENT={{U_MAIL}}');

i=1;
do{
iimPlayCode(m2.replace('{POS}',i));
r=iimGetLastExtract(1);
if (r!=e)
{
pos=i;
iimSet('U_PASS',user['pass']);
iimPlayCode('TAG POS='+pos+' TYPE=INPUT:PASSWORD FORM=ACTION:*register* ATTR=CLASS:"textCtrl OptOut" CONTENT={{U_PASS}}'+'\n'+'TAG POS='+pos+' TYPE=INPUT:PASSWORD FORM=ACTION:*register* ATTR=CLASS:"textCtrl OptOut" CONTENT={{U_PASS}}');
};
i++;
}while(r!=e);

i=1;
do{
iimPlayCode(m1.replace('{POS}',i));
r=iimGetLastExtract(1);
if (r==e)
{
pos=i-1;
iimSet('U_NAME',user['names']);
iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:*register* ATTR=ID:ctrl_username CONTENT={{U_NAME}}');
iimSet('U_NAME',user['names']);
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV>FORM>DL:nth-of-type(2)>DD>INPUT" CHARS="{{U_NAME}}"');
};
i++;
}while(r!=e);

iimSet('U_NAME',user['names']);
iimSet('U_PASS',user['pass']);
iimSet('U_ANTICAPCHA',user['capc']);
iimPlayCode(m4);


Вылетает ошибка в несуществующей линии!
"TypeError: val is undefined, line 155 (Error code: -991)" - код подыхает, дайте воздуху!;)

Feraset, отписался бы в той же теме, где и начинал писать.., а то там начал, тут продолжил =)))))))

23-01-2015 00:32:24
да, нагородил огород...

23-01-2015 00:41:49

скрытый текст

Выделить код

Код:

var m,m1,m2,m3,m4,i=1,e='#EANF#',r,pos,user=[];
user['names']='odyssey20072008';
user['mail']='odyssey20072008@mail.ua';
user['pass']='384fySivuVacYZo';
user['capc']='капча';

m='SET !ERRORIGNORE YES'
+'\n'+'SET !EXTRACT_TEST_POPUP NO'
+'\n'+'SET !TIMEOUT 5'
+'\n'+'TAB OPEN'
+'\n'+'TAB T=2'
+'\n'+'URL GOTO=https://temp-mail.ru/'
+'\n'+'TAG POS=1 TYPE=B ATTR=ID:email EXTRACT=TXT'
+'\n'+'TAB CLOSE';

m1='SET !TIMEOUT_STEP 1'+'\n'+'TAG POS={POS} TYPE=INPUT:email FORM=ACTION:*register* ATTR=DIR:ltr EXTRACT=TXT';
m2='SET !TIMEOUT_STEP 1'+'\n'+'TAG POS={POS} TYPE=INPUT:PASSWORD FORM=ACTION:*register* ATTR=CLASS:"textCtrl OptOut" EXTRACT=TXT';
m3='SET !ERRORIGNORE YES'
+'\n'+'SET !EXTRACT_TEST_POPUP NO'
+'\n'+'SET !TIMEOUT 5'
+'\n'+'TAB T=1'
+'\n'+'URL GOTO=http://windstrike.ru/board/index.php'
+'\n'+'TAG POS=1 TYPE=A ATTR=TXT:Войти<SP>или<SP>зарегистрироваться'
+'\n'+'TAG POS=1 TYPE=INPUT:RADIO FORM=ID:login ATTR=ID:ctrl_not_registered'
+'\n'+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:login ATTR=*'
+'\n'+'SET !TIMEOUT_STEP 1';

m4='TAG POS=1 TYPE=INPUT:RADIO FORM=ACTION:*register* ATTR=VALUE:male'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:*register* ATTR=NAME:dob_day CONTENT=10'
+'\n'+'TAG POS=1 TYPE=SELECT FORM=ACTION:*register* ATTR=NAME:dob_month CONTENT=%8'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:*register* ATTR=NAME:dob_year CONTENT=1992'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:*register* ATTR=ID:ctrl_username CONTENT={{U_NAME}}'
+'\n'+'SET !TIMEOUT_STEP 1'
+'\n'+'SET !ERRORIGNORE YES'
+'\n'+'TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:*register* ATTR=ID:ctrl_agree CONTENT=YES'
+'\n'+'WAIT SECONDS=16'
+'\n'+'ONDOWNLOAD FOLDER=C:\\CAPTCH FILE=captcha.png WAIT=YES'
+'\n'+'WAIT SECONDS=1'
+'\n'+'TAG POS=1 TYPE=IMG ATTR=SRC:"http://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT'
+'\n'+'TAB OPEN'
+'\n'+'TAB T=2'
+'\n'+'URL GOTO=http://antigate.com/imacros.html'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT={{U_ANTICAPCHA}}'
+'\n'+'FRAME F=0'
+'\n'+'TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT=file:///C:/CAPTCH/captcha.png'
+'\n'+'WAIT SECONDS=1'
+'\n'+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=VALUE:recognize'
+'\n'+'WAIT SECONDS=30'
+'\n'+'TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT'
+'\n'+'SET !VAR3 {{!EXTRACT}}'
+'\n'+'WAIT SECONDS=1'
+'\n'+'TAB T=1'
+'\n'+'FRAME F=0'
+'\n'+'WAIT SECONDS=5'
+'\n'+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:index.php?register/register ATTR=ID:recaptcha_response_field CONTENT={{!VAR3}}'
+'\n'+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:*register* ATTR=ID:SubmitButton'
+'\n'+'URL GOTO=https://temp-mail.ru/'
+'\n'+'TAG POS=1 TYPE=A ATTR=TXT:';


iimPlayCode(m);
user['mail']=iimGetLastExtract();
iimPlayCode(m3);
do{
iimPlayCode(m1.replace('{POS}',i));
r=iimGetLastExtract(1);
if (r==e){
pos=i-1;
};
i++;
}while(r!=e);
iimSet('U_MAIL',user['mail']);
iimPlayCode('TAG POS='+pos+' TYPE=INPUT:email FORM=ACTION:*register* ATTR=DIR:ltr CONTENT={{U_MAIL}}');

i=1;
do{
iimPlayCode(m2.replace('{POS}',i));
r=iimGetLastExtract(1);
if (r!=e)
{
pos=i;
iimSet('U_PASS',user['pass']);
iimPlayCode('TAG POS='+pos+' TYPE=INPUT:PASSWORD FORM=ACTION:*register* ATTR=CLASS:"textCtrl OptOut" CONTENT={{U_PASS}}'+'\n'+'TAG POS='+pos+' TYPE=INPUT:PASSWORD FORM=ACTION:*register* ATTR=CLASS:"textCtrl OptOut" CONTENT={{U_PASS}}');
};
i++;
}while(r!=e);

iimSet('U_NAME',user['names']);
iimSet('U_PASS',user['pass']);
iimSet('U_ANTICAPCHA',user['capc']);
iimPlayCode(m4);

InfSub пишет

Feraset, отписался бы в той же теме, где и начинал писать.., а то там начал, тут продолжил =)))))))

InfSub, да как то неудобно уже стало тему накручивать :D , решил официально как все:lol:

Feraset, там вся пред история, так что проще отловить ошибку что и как делалось, только по этому

InfSub, ок буду писать туда.

Задача

нужно загрузить фото на аватарку группы.
Где-то читал на этот форуме, что чистым аймакросом такое нельзя сделать.

реализовал с помощью такого когда

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=ID:page_load_photo

TAG POS=1 TYPE=BUTTON ATTR=TXT:Выбрать<SP>файл
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT={{путь к файлу}}
TAG POS=1 TYPE=BUTTON ATTR=ID:owner_photo_done_edit
TAG POS=1 TYPE=BUTTON ATTR=ID:owner_photo_done


Он нормально работает, но после прикрепления остается окно выбора файла.

Как его можно убрать?  я так понимаю только java'ой.

Pshin пишет

Как его можно убрать?  я так понимаю только java'ой.

Сам спросил - сам отвечу :)

вообщем, оказывается просто нужно убрать строчку

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Выбрать<SP>файл


:dumb:

offtop
Pshin
:rock:

InfSub пишет

romar131184, вы уверены что код который запускаете, идентичен тому, который процитировали? (опубликованному мной после редактирования сообщения, первоначально в коде была ошибка, перепутал местами переменные в iimSet(), она как раз и приводила к этой ошибке)

Все,заработало,спасибо )))

offtop
но анкету банят...причем пробовал разные скрипты,просто прогулка по анкетам(через какое то время ты просто перестаешь отображаться в гостях) проставляешь пятерки на аватарках так и вовсе блокируют анкету навсегда ((( Может кто то в курсе,как правильно привлекать внимание к страничке в одноклассниках,сколько профилей можно посещать и через какой интервал времени,сколько оценок можно ставить в сутки,или в неделю,или в час,в общем по какому принципу там блокируют?

rtfm.gif offtop, данный вопрос не входит в рамки данной темы, убрал в spoiler

InfSub

как узнать расположение кнопки по осям: X= Y=   ?
т.е. мне нужно узнать X= Y=

buben88 пишет

как узнать расположение кнопки по осям: X= Y=   ?
т.е. мне нужно узнать X= Y=

записать нажатие на кнопку с настройками записи "use X/Y position..."
если же, вы пытаетесь заставить скрипт, определять позицию кнопки по координатам, то сделать это не возможно

удалено
финансовые вопросы на форуме НЕ обсуждаются

правила 2.15

InfSub

offtop
Уважаемый InfSub  :whiteflag: :dumb:

Gergi, правила действуют для всех, без исключения
Правила форума iMacros - согласованы с администрацией форума, что-то не устраивает, жалуйтесь, данная тема ТОЛЬКО для обучения и помощи в ошибках при написании скриптов, все просьбы о "покупке"/"продаже"/"просьбе написать за вас" и т.д. будут удаляться!
Для первых двух - есть ПМ участников данной темы, для последнего - отдельная тема
Пока что, это устное предупреждение, без занесения в профиль, продолжайте в том же духе и будет отметка в профиле

P.S.: пункт 2.15, правил, был приведен именно, из-за того, что данный вопрос, вы можете обсудить в ПМ с участниками форума iMacros, Вы считаете его не верным? могу поменять на 3.6  Вести разговор на «вольные темы», что будет более точно характеризовать ваше поведение

InfSub

Люди, не подскажете, как сохранить капчу solve media ? Что-то она у меня не сохраняется, я уже запарился над ней биться...
код ее выглядит так..

скрытый текст

Выделить код

Код:

<img style="outline: 1px solid blue;" src="//api-secure.solvemedia.com/papi/media?c=2@eznXa5J62dmqYTMuSS0DM9TcPAN-56t6@UP3-JNZ8C.gENU8bgrS8GH9APTC4lJjorT2pdgBPFwTodOWnaslrENkGPT-VQOkVgPRRQWUSgj1DTh2iirOb3oy3MI6KNT5.JT3CinrTv-DwUmPjDfKCT3PI7aYnxccGbIgvd2bjGTm7FKCgdOO-Y-hgvGezbf2KIWz0694iMCA9ioWeQXnRx.95CTZLEeu8oA0.ynekFFbR4DXWlsF5squt0ZWVTisTYQO9T4Pr8Bs7NVRSsWeI2E1kiNgJzfnShRvuMvn7XcUNAPEVTH-5R37lnj4f03g2JkhFXIK0uoA;w=300;h=150;fg=000000;bg=f8f8f8" alt="Solve Media Puzzle Challenge" id="adcopy-puzzle-image-image" width="300" height="150">


ну а мой код, которым пытаюсь сохранить

Выделить код

Код:

macro5 += "ONDOWNLOAD FOLDER=d:\\ FILE=captcha1.jpg" + "\n";
macro5 += "TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image CONTENT=EVENT:SAVEPICTUREAS" + "\n";

Пробовал и под другими форматами, все одна фигня... собственно, даже вручную через раз сохраняет. То картинку, то вот эту фигню
https://api-secure.solvemedia.com/media/media-error.gif

Haart, ссылку на страницу с капчей напишите, в спойлере в теге ноиндекс

InfSub пишет

Haart, ссылку на страницу с капчей напишите, в спойлере в теге ноиндекс

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Haart, кроме реферала в iframe там больше ни чего нет, страница пуста

InfSub пишет

Haart, кроме реферала в iframe там больше ни чего нет, страница пуста

:) А можно по русски, что-бы и китаец понял ? В смысле, вызываете каптчу и... ее нет ? Или нельзя ее никак сохранить ?

Haart пишет

А можно по русски,

по русски, страница пустая

28-01-2015 17:32:41

Haart пишет

В смысле, вызываете каптчу и... ее нет ? Или нельзя ее никак сохранить ?

в смысле - белый лист, нет там ни чего, в коде только блок iframe

html-код страницы
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

<!DOCTYPE html><body style="padding:0; margin:0;"><html><body><iframe src="http://mcc.godaddy.com/park/L2I2raS2pUVhpTW6" style="visibility: visible;height: 100%; position:absolute" allowtransparency="true" marginheight="0" marginwidth="0" frameborder="0" width="100%"></iframe></body></html>
InfSub пишет

в смысле - белый лист, нет там ни чего, в коде только блок iframe

А, а я подумал что что-то недопонял.
Посмотрел под свой спойлер, у меня в ссылке ошибка. Сори.
Ниже, в спойлере скрин, и показана где кнопка.

скрытый текст
5b15145fe774.jpg

Haart пишет

Посмотрел под свой спойлер, у меня в ссылке ошибка. Сори.

ну а что ж не исправили?... исправил сам

на данном сайте используется flash-капча, с ней, вы, к сожалению, ни чего сделать не сможете, во всяком случае, при использовании iMacros for FF
с флешем умеет работать только полноценная платная версия iMacros

captcha
af5534ef36ab3c6494d0bc47a3faa694.png

привет всем.
подскажите как записать такой макрос
если не выполняться команда 1 выполнялось команда 2, если выполняется команда 1 не выполняться команда 2
пример:

скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
URL GOTO=https://forum.mozilla-russia.org/index.php
'команда 1
TAG POS=1 TYPE=A ATTR=TXT:Новости
'команда 2
TAG POS=1 TYPE=A ATTR=TXT:Firefox

Подскажите кто знает как сделать, если макрос останавливается из-за ошибки, то чтобы начинал заново или или с какой-то определенной строки? Если запустить через цикл то при первой ошибке он останавливается, а если прописать SET !ERRORIGNORE NO то он не находит какой-то элемент на странице и тоже останавливается.

Помогите пожалуйста!
Есть сайт с капчей.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Как сделать сохранение капчи в конкретную папку (правильно прописать путь папки) с переименованием капчи?
Дело в том, что при рефреше страницы каждый раз одно и то-же название - image.jpeg,а нужно сохранять капчи с разными именами.

Вот что получилось при записи:


скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
TAB T=1
URL GOTO=https://freebitco.in/?op=home
ONDOWNLOAD FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}} WAIT=YES
TAG POS=1 TYPE=IMG ATTR=ID:recaptcha_challenge_image CONTENT=EVENT:SAVEPICTUREAS
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:free_play_form ATTR=ID:recaptcha_response_field CONTENT=305
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:free_play_form ATTR=ID:free_play_form_button


Вместо одной капчи, к тому-же сохраняет кучу ненужных файлов



P.S. С названиями разобралась-название-текущее время, но как сделать, чтобы сохранялись только капчи?
Спасибо!

InfSub пишет

Pshin, ни как, только extract ссылки и открытие в новой вкладке. event не позволяет использовать extract

от чего же только extract у меня допустим работает

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#content>DIV>DIV>DIV>UL>LI:nth-of-type(1)>A" BUTTON=1

надо смотреть на странице :rolleyes:

29-01-2015 20:55:33

swetaustinova пишет

Как сделать сохранение капчи в конкретную папку (правильно прописать путь папки) с переименованием капчи?
Дело в том, что при рефреше страницы каждый раз одно и то-же название - image.jpeg,а нужно сохранять капчи с разными именами.

можно поинтересоваться,а зачем её переименовывать?

pahan27 пишет

от чего же только extract у меня допустим работает

pahan27, вы внимательно читаете что написано? в команду EVENT вы EXTRACT=TXT/HREF.... - не вставите, EXTRACT=... можно использовать только в TAG POS......

вот в принцыпе рабочий участок кода,секундные паузы  по опыту обязательны возможно и  более,всё зависит от железа

скрытый текст

Выделить код

Код:

URL GOTO=http://freebitco.in
WAIT SECONDS=1
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE={{!NOW:dd.mm.yyyy<SP>hh:nn:ss}}.jpg WAIT=YES
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=ID:recaptcha_image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1


но не вижу смысла можно после использования изображения удалять его

pahan27 пишет

29-01-2015 20:55:33

swetaustinova пишет

Как сделать сохранение капчи в конкретную папку (правильно прописать путь папки) с переименованием капчи?
Дело в том, что при рефреше страницы каждый раз одно и то-же название - image.jpeg,а нужно сохранять капчи с разными именами.

можно поинтересоваться,а зачем её переименовывать?

Всё, разобралась :) Большое спасибо

А как теперь сделать, чтобы макрос по имени файла вводил его название в поле ввода?

pahan27 пишет

{{!NOW:dd.mm.yyyy<SP>hh:nn:ss}}

интересно, когда это в Windows двоеточие в названии файла или папки - стало рабочим?

vkyurii1 пишет

привет всем.
подскажите как записать такой макрос
если не выполняться команда 1 выполнялось команда 2, если выполняется команда 1 не выполняться команда 2
пример:

скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
URL GOTO=https://forum.mozilla-russia.org/index.php
'команда 1
TAG POS=1 TYPE=A ATTR=TXT:Новости
'команда 2
TAG POS=1 TYPE=A ATTR=TXT:Firefox

Кури js команду if

https://forum.mozilla-russia.org/viewto … 37#p672137

InfSub пишет

pahan27, вы внимательно читаете что написано? в команду EVENT вы EXTRACT=TXT/HREF.... - не вставите, EXTRACT=... можно использовать только в TAG POS......

полностью согласен внимательным чтением,вопрос стоял как по диву отрыть ссылку во второй вкладке,для элементарности поясняю кликом колёсика мышки,,а не сохранением информации и переносе её во вторую вкладку

29-01-2015 21:13:34

InfSub пишет

интересно, когда это в Windows двоеточие в названии файла или папки - стало рабочим?

не изучал историю когда и откуда,факт что работает

29-01-2015 21:19:27

swetaustinova пишет

А как теперь сделать, чтобы макрос по имени файла вводил его название в поле ввода?

читай ЛС , готовый код

pahan27, да сорри, что нажатие средней кнопкой - не заметил

pahan27 пишет

не изучал историю когда и откуда,факт что работает

оно работает, но заменяет в файле двоеточие на _
как дальше вы собираетесь с данным файлом работать?

29-01-2015 21:31:14
с учетом, что в переменной - у вас : -> 29.01.2015 21:26:43.jpg
а файл -> 29.01.2015 21_26_43.jpg
да, можно заменить в переменной : на _ но зачем? не проще ли сразу дать нормальный код: {{!NOW:dd.mm.yyyy<SP>hh.nn.ss}} избежав ненужных ошибок

InfSub пишет

как дальше вы собираетесь с данным файлом работать?

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

29-01-2015 21:40:07

InfSub пишет

не проще ли сразу дать нормальный код: {{!NOW:dd.mm.yyyy<SP>hh.nn.ss}} избежав ненужных ошибок

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

pahan27 пишет

изучил ту функцию которой ты меня проигнорировал

о чем речь, конкретнее?

29-01-2015 21:54:28

pahan27 пишет

я задал направление,остальное другой вопрос,а не разведение демогогии,типа зачем тебе казино,и т.д.

данный пример поставит перед человеком кучу новых вопросов, даете ответ, будьте добры, как минимум проверьте

29-01-2015 21:55:48

pahan27 пишет

отправить по назначению допустим в антигейт

а вы попробуйте это сделать, прежде чем говорить

InfSub пишет

о чем речь, конкретнее?

воспользуйся своим же советом-'учитесь пользоваться поиском' с тем учётом что и сообщений у меня не много,до свидания или прощайте

29-01-2015 21:58:16

InfSub пишет

а вы попробуйте это сделать, прежде чем говорить

прежде чем что-то говорить я проверяю на личном опыте

pahan27 пишет

что-то говорить я проверяю на личном опыте

вот пример кода без eval, он будет работать?

скрытый текст

Выделить код

Код:

URL GOTO=http://freebitco.in
WAIT SECONDS=1
SET !VAR1 {{!NOW:dd.mm.yyyy<SP>hh:nn:ss}}.jpg
ONDOWNLOAD FOLDER={{!FOLDER_DATASOURCE}} FILE={{!VAR1}} WAIT=YES
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=ID:recaptcha_image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

URL GOTO=http://antigate.com/imacros.html
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!FOLDER_DATASOURCE}}\{{!VAR1}}


29-01-2015 22:08:02
offtop

pahan27 пишет

воспользуйся своим же советом-'учитесь пользоваться поиском'

не вижу смысла отвечать на вопрос заданный полгода назад, если вы о нем, элементарных знаний html достаточно для понятия того, как работает type=

29-01-2015 22:10:19

InfSub пишет

вот пример кода без eval, он будет работать?

уточню, он будет работать на linux-платформе, в Windows - нет

InfSub пишет

вот пример кода без eval, он будет работать?

код то работать будет,вот только по последней строке вылетит  по отсутствию ,файла,повторяю я задал направление,предложил более простое решение,не  копить кучу не нужных капч,и избегать ошибок в случие захвата ложных капч,просто удалять их,а не развивать до невероятной сложности код

pahan27,

offtop
я не в курсе, для чего требуется сохранять кучу капч, и решение использовать 1 файл для этого - оптимально, я вам просто указал на ошибку, которая вызовет очередной вопрос: "почему не грузится капча", который можно было избежать в зародыше и не разводить эту дискуссию
все, думаю - вопрос закрыт

29-01-2015 22:17:20

InfSub пишет

код то работать будет,вот только по последней строке вылетит  по отсутствию

и кстати не вылетит, сайт выдаст ошибку

Спасибо за ответы.
Всё-таки ешё раз спрошу.

Site:поле ввода

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрин
H4Oq4TK.png

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

(без антигейта)?

swetaustinova пишет

к тому-же без расширения .jpeg, только само имя файла

зачем?

Надо именно так :)

swetaustinova пишет

Как сделать, чтобы в поле ввода вводить название файла с локального диска

пример выше вас не устраивает расширением файла? удалите расширение из переменной {{!VAR1}}:

скрытый текст

Выделить код

Код:

SET !VAR1 {{!NOW:dd.mm.yyyy<SP>hh.nn.ss}}
ONDOWNLOAD FOLDER={{!FOLDER_DATASOURCE}} FILE={{!VAR1}}.jpg WAIT=YES
WAIT SECONDS=1
TAG POS=1 TYPE=DIV ATTR=ID:recaptcha_image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

URL GOTO=http://antigate.com/imacros.html
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT={{!FOLDER_DATASOURCE}}\{{!VAR1}}


вот только смысл этого совершенно не ясен, т.к. вы не загрузите файл с расширением, не указав расширения

30-01-2015 00:58:32
т.е. если сохранен файл any_file_name.jpg то вы не загрузите его как any_file_name

Мне файл загружать не надо никуда, нужно название файла caps1.jpeg ввести в строку ввода чтобы в строке было: caps1

как-то так:
egaOpd8.png

Т.е. iMacros  выбиpает с локального диска нужный мне файл и вводит имя этого файла без расширения в строку ввода на сайте.

swetaustinova пишет

Т.е. iMacros  выбиpает с локального диска нужный мне файл и вводит имя этого файла без расширения в строку ввода на сайте.

swetaustinova пишет

название файла caps1.jpeg ввести в строку ввода чтобы в строке было: caps1

вообще ввод в строку текста делается так (на примере этого сайта):

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ID:free_play_form ATTR=ID:recaptcha_response_field CONTENT=caps1


только не понятно откуда вы собираетесь брать имя файла (или точнее, как имакрос должен догадаться, имя какого файла вам нужно вставить, если же имя всегда одно, то при чем тут файл)

30-01-2015 01:24:32
swetaustinova, опишите проблему полностью, что и как вы пытаетесь сделать и зачем
это, как минимум, даст возможность нормально ответить на ваш вопрос

Все файлы с разными именами, парсер имён файлов я сама попробую написать на jScript . Я новичёк в iMacros, Web  (моё- classic C )

Поэтому вопрос актуален - как ввести в поле ввода именно название файла без расширения.

Скажем, считать название файла c:\caps1.jpeg и отправить его имя (без расширения) caps1 в поле ввода.

Дайте, пожалуйста, пример для iMacros

swetaustinova, странный вопрос, для человека готового написать парсер на js.. тем же js и разбейте на имя и расширение, либо в самом js-скрипте, либо через eval()

30-01-2015 01:30:54

swetaustinova пишет

Поэтому вопрос актуален - как ввести в поле ввода именно название файла без расширения.

как отправить имя - я написал выше
как разбить, да тем же replace() к примеру

Спасибо, буду разбираться, только сегодня познакомилась с iMacros

пример с eval()

Выделить код

Код:

SET !VAR1 caps1.jpeg
SET !VAR1 EVAL("'{{!VAR1}}'.replace('.jpeg','')")
PROMPT {{!VAR1}}

Подскажите, пожалуйста, где вo встроенном редакторе iMacros можно заменить шрифт по умолчанию с 10 на 12, чтобы всё время не переключать, а то для меня 10 мелковат, зрение уже не то.

swetaustinova, не проще ли использовать внешний, например, notepad++ ?

У меня win на виртуальной машине под linux специально поставила для iMacros windows.
Не хочется осваивать кучу специфических программ под окна, так как не пользовалась окнами последних лет двенадцать.

swetaustinova пишет

специально поставила для iMacros windows.

если уж используете windows, то notepad++ - оптимален, есть подсветка синтаксиса для iim (правда не из коробки), что-то нового там узнавать не придется, все остальное стандартно, да и настраивается легко под себя (во всяком случае, во много раз лучше встроенной "поделки" на редактор)
но зачем?, на linux - iMacros работает не хуже, чем на Windows, и указать можно любой удобный вам редактор

30-01-2015 02:38:56

InfSub пишет

на linux - iMacros работает не хуже, чем на Windows

речь о плагине для FF, естественно

offtop
впрочем, говорят, что платная версия, нормально работает через wine

30-01-2015 02:41:15

swetaustinova пишет

где вo встроенном редакторе iMacros можно заменить шрифт по умолчанию с 10 на 12

скорее всего где-то в конфигах самого плагина, через настройки - это, точно не меняется, более точно сказать не могу

Это понятно, но на рабочую машину не хочется ничего ставить, т.к. отладчик ядра будет показывать ненужные процессы :)

Привет.
Пишу один скрипт, возникла проблемма

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#reply_field" CHARS="Ссылка на картинку"

Картинка загружается , но остается её некрасивая ссылка, совершенно не нужная.

Вопрос как удалить эту ссылку ? Кто подскажет.

Как сделать, чтобы первый LOOP прибавлялся по 1, а 2-ой по 4
Второй LOOP сначала 4, при втором цикле 8 и т.д. ?

скрытый текст

Выделить код

Код:

Первый loop прибавлялся по 1 

SET !LOOP 1
TAG POS={{!LOOP}} TYPE=SPAN ATTR=CLASS:Txql0d<SP>t-Pa-mb-c-ha-oa CONTENT=EVENT:MOUSEOVER

Второй loop по 4

SET !VAR1 {{!LOOP}}
ADD !VAR1 {{!LOOP}}
ADD !VAR1 2
TAG POS={{!VAR1}} TYPE=DIV ATTR=ROLE:presentation&&CLASS:b-P-Tb&&TXT:

Есть макрос который регистрируется на сайте т.е. вводит логин, пароль и т.д. Эти данные сохраняю в csv. Иногда сайт на котором регистрируюсь подглючивает и цикл в макросе останавливается. Как можно помечать в том же csv рядом с сохраненными данными, что эти данные сохранились с ошибкой (т.е макрос не выполнился до конца)?

Craftsman пишет

Есть макрос который регистрируется на сайте т.е. вводит логин, пароль и т.д. Эти данные сохраняю в csv. Иногда сайт на котором регистрируюсь подглючивает и цикл в макросе останавливается. Как можно помечать в том же csv рядом с сохраненными данными, что эти данные сохранились с ошибкой (т.е макрос не выполнился до конца)?

extract какого нибудь уникального тега, который характерен только для страницы на которую попадает пользователь после успешной регистрации и помещаешь куда надо, либо его обрабатываешь и помещаешь ok или NoOk

есть ли возможность генерировать числа в диапазоне от 1 до 30 (напр. есть выбор от 1 до 30, нужно выбрать (случайное число ) ) только imacros  без использования JS????.....или с ним (с JS)

sjworld, поиском пользоваться не пробовали?

удалено
31-01-2015 18:01:39

InfSub пишет

sjworld, поиском пользоваться не пробовали?

не помогает(((( help me!!!!

удалено
правила, 2.1, 2.8


InfSub

sjworld пишет

не помогает(((( help me!!!!

что именно вам не помогает

При сохранении данных в файл всегда есть кавычки в начале и в конце.

Может есть вариант сохранять без них или простой вариант от них избавиться, не запуская доп. файла?

Выделить код

Код:

SET !EXTRACT "SET !EXTRACT {{!FOLDER_DATASOURCE}}"
SAVEAS TYPE=EXTRACT FOLDER=* FILE=FOLDER_DATASOURCE.iim

И еще вопросец.
Есть возможность запуска js через GOTO

Выделить код

Код:

запуск *.js-файла из *.iim:
URL GOTO=imacros://run/?m=path/file.js

Может есть вариант, через указание полного пути к файлу?

Вариант:

Выделить код

Код:

URL GOTO=imacros://run/?m=z:\Mozilla\Firefox\00.iMacros\20.00.Functions\02.zap\02.3.0.priv.js

Не прокатывает :(

spy686 пишет

Вариант:

Выделить код

Код:

URL GOTO=imacros://run/?m=z:\Mozilla\Firefox\00.iMacros\20.00.Functions\02.zap\02.3.0.priv.js

Не прокатывает :(

еще бы... либо используй прямой слеш / в пути, либо экранируй обратный \\


проверил, действительно не запускает при полном пути... возможно баг в последней версии... spy686 какую версию имакроса и мозиллы используешь?

InfSub пишет
spy686 пишет

Вариант:

Выделить код

Код:

URL GOTO=imacros://run/?m=z:\Mozilla\Firefox\00.iMacros\20.00.Functions\02.zap\02.3.0.priv.js

Не прокатывает :(

еще бы... либо используй прямой слеш / в пути, либо экранируй обратный \\


проверил, действительно не запускает при полном пути... возможно баг в последней версии... spy686 какую версию имакроса и мозиллы используешь?

FF 19 + iMacros 7.6.0.2

хотя нет, это я перепутал теплое с мягким =) полные пути, действительно не воспроизводились, полный путь можно указать только до файла в самом макрос-скрипте (при загрузке/сохранении файла)

01-02-2015 20:09:29
spy686,

ИМХО
в таком случае, только подгонять под имакрос, так чтобы твои папки, были в папке iMacros\Macros, а где уже расположить последнюю, решать тебе
к примеру, можно указать путь z:\Mozilla\Firefox\00.iMacros\ как путь до папки с макросами, и тогда постоянные пути не потребуются

spy686 пишет

И еще вопросец.
Есть возможность запуска js через GOTO

Выделить код

Код:

запуск *.js-файла из *.iim:
URL GOTO=imacros://run/?m=path/file.js

Может есть вариант, через указание полного пути к файлу?

Вариант:

Выделить код

Код:

URL GOTO=imacros://run/?m=z:\Mozilla\Firefox\00.iMacros\20.00.Functions\02.zap\02.3.0.priv.js

Не прокатывает :(

т.е. в данном случае будет работать только относительный путь? прямой путь в таких случаях не работает?

либо создать жестную ссылку на директорию z:\Mozilla\Firefox\00.iMacros\ внутри iMacros\Macros
для понимания что такое жесткие и символические ссылки:

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


01-02-2015 20:19:00

spy686 пишет

т.е. в данном случае будет работать только относительный путь? прямой путь в таких случаях не работает?

да, именно, везде в офф. документации написано только про использование относительных путей

spy686 пишет

При сохранении данных в файл всегда есть кавычки в начале и в конце.

Может есть вариант сохранять без них или простой вариант от них избавиться, не запуская доп. файла?

Выделить код

Код:

SET !EXTRACT "SET !EXTRACT {{!FOLDER_DATASOURCE}}"
SAVEAS TYPE=EXTRACT FOLDER=* FILE=FOLDER_DATASOURCE.iim

А для этого есть какие-нить варианты решения?

01-02-2015 20:39:35
И еще вопрос:
путь папки данных можно получить через {{!FOLDER_DATASOURCE}}
А через что можно получить папку макросов ?

см. http://screencast.com/t/Ea2Q1csVI

spy686 пишет

А для этого есть какие-нить варианты решения?

не проще ли генерировать iim-файл в js, без сохранения физически?

01-02-2015 21:04:13

spy686 пишет

А через что можно получить папку макросов ?

на сколько мне известно - imacros-переменных для этих путей нет, если только вытягивать из настроек мозиллы (about:config) - переменная extensions.imacros.defsavepath

InfSub пишет

spy686 пишет:

А для этого есть какие-нить варианты решения?
не проще ли генерировать iim-файл в js, без сохранения физически?

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

InfSub пишет

spy686 пишет:

А через что можно получить папку макросов ?
на сколько мне известно - imacros-переменных для этих путей нет, если только вытягивать из настроек мозиллы (about:config) - переменная extensions.imacros.defsavepath

буду пробовать. спасибо

spy686 пишет

В этом случае будет создаваться каждый раз доп. файл #Current.iim

исправлено в последних версиях

01-02-2015 21:22:09

spy686 пишет

буду пробовать. спасибо

как-то так:

на iMacros+JS

Выделить код

Код:

URL GOTO=about:config
SET MPATH EVAL("prefs=Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);prefs.getCharPref("extensions.imacros.defsavepath");")
prompt {{MPATH}}


01-02-2015 21:25:53
на js

Выделить код

Код:

iimPlayCode("URL GOTO=about:config")
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
var mpath = prefs.getCharPref("extensions.imacros.defsavepath");

alert(mpath);

InfSub пишет

как-то так:

СПАСИБО :)

01-02-2015 21:38:01

InfSub пишет

исправлено в последних версиях

А с какой версии? может есть информация?

spy686 пишет

А с какой версии? может есть информация?

точный номер версии, не скажу, в истории версий это не отразилось, но кажется, с 8 версии, js создает временные скрипты не в iMacros\Macros\#Current.iim, а во временной директории (в temp) с рандомным именем, что позволяет скриптам не конфликтовать

Всем привет!
Как сделать так чтобы в окне дисплея отображались три строчки,и было видно какой макрос сколько циклов сделал. Спасибо за ответ.

скрытый текст

Выделить код

Код:

for (w=1;w<=7;w++){
iimDisplay("Цикл="+w)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("12akl.iim",60);  
}
var x;
for (x=1;x<=5;x++){
iimDisplay("Цикл="+x)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("11kl.iim",60);
 }
var z;
for (z=1;z<=16;z++){
iimDisplay("Цикл="+z)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1kl.iim",60);

Gergi

скрытый текст

Выделить код

Код:

var w;
for (w=1;w<=7;w++){
iimDisplay("Цикл 1="+w)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("12akl.iim",60);  
}
var x;
for (x=1;x<=5;x++){
iimDisplay("Цикл 1="+w+"\nЦикл 2="+x)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("11kl.iim",60);
 }
var z;
for (z=1;z<=16;z++){
iimDisplay("Цикл 1="+w+"\nЦикл 2="+x+"\nЦикл 3="+z)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1kl.iim",60);
};

Пишет ошибочку в 14й строке

Gergi пишет

Пишет ошибочку в 14й строке

+ добавь, пропустил
iimDisplay("Цикл 1="+w+"\nЦикл 2="+x)

InfSub Вы Гений! Получилось круче чем я задумывал :rock:

InfSub Возник вопрос. При первом цикле всего скрипта js  всё отлично работает,но при втором цикле весь дисплей сбрасывается и начинаются показы опять новых циклов.

Gergi, не понимаю о каком сбросе идет речь, скрин в студию и код тоже, явно опять, что-то намудрили

вот что показывает в дисплее при первом цикле
Цикл 1=6
Цикл 2=6
Цикл 3=7
Потом когда скрипт вызвал все эти  макросы и они выполнили свои действия,скрипт начинает опять всё заново вызывать первый макрос,и тогда дисплей  не продолжает дальше считать а обнуляется

Gergi пишет

Потом когда скрипт вызвал все эти  макросы и они выполнили свои действия,скрипт начинает опять всё заново вызывать первый макрос,и тогда дисплей  не продолжает дальше считать а обнуляется

естественно, если у вас, приведенные выше циклы, находятся еще в одном цикле, то значения переменных x,w,z у вас сбрасываются, в каждом новом шаге "глобального" вышестоящего цикла

02-02-2015 12:24:03
создайте другие переменные до всех циклов, для отображения значений на дисплее и увеличивайте их значение в каждом из циклов

Чё то у меня с руками:angry:
Общий цикл показывает как было задумано,а циклы 1,2,3 обнуляются.

скрытый текст

Выделить код

Код:

var nstroka=0
var i;
var n=prompt("Введите количество циклов",200)
for (i=1;i<=n;i++){
iimDisplay("Общий цикл 1="+i)
var w;
for (w=1;w<=2;w++){
iimDisplay("Общий цикл 1="+i+"\nЦикл 1="+w)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1d.iim",60);  
}
var x;
for (x=1;x<=2;x++){
iimDisplay("Общий цикл 1="+i+"\nЦикл 1="+w+"\nЦикл 2="+x)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1d.iim",60);
 }
var z;
for (z=1;z<=2;z++){
iimDisplay("Общий цикл 1="+i+"\nЦикл 1="+w+"\nЦикл 2="+x+"\nЦикл 3="+z)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1d.iim",60);
 } 
}

перечитайте сообщение выше acute.gif

не получается

Gergi пишет

не получается

не вижу ни каких изменений, чтобы получилось

Вот мне не понятно почему Цикл 1 обнуляется

скрытый текст

Выделить код

Код:

var nstroka=0
var i;
var n=prompt("Введите количество циклов",200)
for (i=1;i<=n;i++){
iimDisplay("Общий цикл 1="+i)
var w;
for (w=1;w<=2;w++){
iimDisplay("Общий цикл 1="+i+"\nЦикл 1="+w)
nstroka++
iimSet("NSTROKA",nstroka)
iimPlay("1d.iim",60);  
}
}

Gergi, мозг включаем, наверное потому что: w=1 внутри другого цикла
выражусь иначе - цикл с w=1, повторяется несколько раз, за счет другого цикла

а как сделать чтобы не обнулялся?

ответ был дан выше, если он вам не понятен, google в помощь по основам js

InfSub пишет

ответ был дан выше

Спасибо за такой прозрачный ответ!!! :dumb:

Gergi, я в последний раз Вам повторяю, данная тема НЕ посвящена проблемам: как научиться водить автомобиль, как научиться писать на еврите и в том числе, как научиться программировать на JS!
Данная тема - посвящена проблемам с iMacros и в более тяжелых случаях, связки iMacros+JS и не более того!
Проблемы вида: я не знаю как сложить a+b в js - не относятся к обсуждаемым проблемам и являются offtop'ом. Где конкретно у вас проблема, вам указали, для остального, в данном случае, есть google

Gergi - это последнее устное предупреждение!

02-02-2015 18:41:42
Gergi, не однократно говорилось, весь код должен быть в тегах code, как минимум для отсутствия смайлов и удобства чтения и копирования кода!

02-02-2015 18:45:18

offtop: Gergi, пример аналогии с вашим кодом
есть 7 кубиков, вы их разложили в линию 3 раза (собрали - разложили, собрали - разложили....), сколько кубиков стало?
Ответ: 7
Ответ по Gergi: 15

надеюсь, аналогия понятна..

InfSub пишет

offtop: Gergi, пример аналогии с вашим кодом
есть 7 кубиков, вы их разложили в линию 3 раза (собрали - разложили, собрали - разложили....), сколько кубиков стало?
Ответ: 7
Ответ по Gergi: 15

надеюсь, аналогия понятна..

)))))))))))))))))

kolshix пишет
InfSub пишет

offtop: Gergi, пример аналогии с вашим кодом
есть 7 кубиков, вы их разложили в линию 3 раза (собрали - разложили, собрали - разложили....), сколько кубиков стало?
Ответ: 7
Ответ по Gergi: 15

надеюсь, аналогия понятна..

)))))))))))))))))

suicide2.gif

Как можно реализовать следующее

Чтобы при запуске макрос кликал на определенном месте по странице, потом нажимал ctrl A, ctrl C, и после этого сохранял текст в файл

Прочитал много инфы но так и не понял =\

Есть команды имитирующие нажатие кнопок

KEY=13   интер
KEY=46   удалить

Где можно увидеть полный список? Скиньте ссылку у кого есть.

Как-то задумывался , потом забыл, а сейчас опять столкнулся , КАК сделать переменную в переменной , конкретно так :
первый проход

SET NUMB 1
....  {{!COL{{NUMB}}}}
второй проход
SET NUMB 2
....  {{!COL{{NUMB}}}}

и так далее ...


Есть код (не мой, мне не проблема такой создать),  на короткие дистагции пойдёт, а если 20-30 столбиков - то уже не пойдет

Выделить код

Код:

SET API EVAL ("var SERV=\"{{!COL1}}\"; if(SERV == 1) \"{{!COL2}}\"; else if(SERV == 2) \"{{!COL3}}\"; else \"{{!COL4}}\";")

kolshix пишет

КАК сделать переменную в переменной

на имакросе - ни как, в нем нет парсера встроенных переменных

kolshix пишет

на короткие дистагции пойдёт, а если 20-30 столбиков - то уже не пойдет

пойдет на любое количество столбцов, только редактировать не удобно
для этого и дан управляющий js, чтобы можно было написать:

Выделить код

Код:

macros = "... {{!COL"+i+"}}"

и не ломать голову

Нужно чтобы после того как произойдет нажатие по координатам в буфер обмена копировался текст.

Но вместо этого вылезает ошибка #EANF#
Может кто подскажет где в коде ошибка ?

скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
TAB T=1
TAG POS=2 TYPE=SPAN ATTR=TXT:Bundles<SP>library
TAG POS=1 TYPE=SPAN ATTR=TXT:Indiegala<SP>Giveaways
TAG POS=1 TYPE=DIV ATTR=ID:bundle-title
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=DIV ATTR=CLASS:icon-string<SP>order-button-profile&&TXT:
CLICK X=701 Y=437
TAG POS=1 TYPE=SELECT ATTR=TXT:*&&NAME:quantity&&VALUE:* EXTRACT=TXT


Jakral, правила читаем, как правильно оформлять пост!


InfSub

ИМХО

kolshix пишет
Выделить код

Код:

SET API EVAL ("var SERV=\"{{!COL1}}\"; if(SERV == 1) \"{{!COL2}}\"; else if(SERV == 2) \"{{!COL3}}\"; else \"{{!COL4}}\";")

использовать для таких целей (особенно для большого кол-ва вариантов) if .. else .. - нубство не правильно, для этого есть массивы, или хотя бы case

04-02-2015 21:18:53

Jakral пишет

Нужно чтобы после того как произойдет нажатие по координатам в буфер обмена копировался текст.

Но вместо этого вылезает ошибка #EANF#
Может кто подскажет где в коде ошибка ?

во-первых, EXTRACT=TXT - не копирует текст в буфер обмена
Во-вторых, тут нет экстрасенсов, чтобы догадаться где именно у Вас #EANF# т.к. проверять вы можете как переменную {{!EXTRACT}} так и {{!CLIPBOARD}}
В третьих, вполне возможно, что вы пытаетесь получить данные от туда, где их нет

InfSub пишет

скрытый текст

kolshix пишет

КАК сделать переменную в переменной

на имакросе - ни как, в нем нет парсера встроенных переменных

kolshix пишет

на короткие дистагции пойдёт, а если 20-30 столбиков - то уже не пойдет

пойдет на любое количество столбцов, только редактировать не удобно
для этого и дан управляющий js, чтобы можно было написать:

Выделить код

Код:

macros = "... {{!COL"+i+"}}"


и не ломать голову

Я так и предполагал, просто человек задал вопрос , аж самому стало интересно, мож че есть )

Кто работал, кто понимает , объясните как работать с таймерами (на офф. сайте ничего толком не понял)
интересует измерение общего количества времени работы одного iim (другие примеры тоже интересуют ) и перенос из iim в js без создания текстовых файлов ??

что в iim должно быть ? и поясните по каждой команде , по каждому отдельному случаю ?
test.iim

Выделить код

Код:

'можно ли обойтись одной командой  (скрипт конечно будет побольше и состоять из нескольких iim)
SET !FILESTOPWATCH YES 
URL GOTO=http://demo.imacros.net/Automate/StopWatchDemo

' или же так и скажите после ID=  любое слово , которое обозначает имя таймера для нижеидущих команд??? 
STOPWATCH ID=Firstpage 
URL GOTO=http://demo.imacros.net/Automate/StopWatchDemo

и как теперь перетянуть в JS
jswork.js

Выделить код

Код:

iimPlay("test.iim")  // нужно ли в начале присваивать переменную ?
iimGetStopwatch()  //  что сюда нужно добавить ?
alert ()

чтоб не ходить вокруг да около - скрипт будет делаться(ДЛЯ СЕБЯ) на сайт по сбору криптовалюты (там таймеры) выполнять действия (нужно узнать время выполнения действий) - потом перейдёт на  подобный сайт , там поработает и в конце будет считаться время работы (1-го сайта(подгрузка.iim+капча.iim+ переходы.iim) + 2-го сайта(подгрузка.iim+капча.iim+ переходы.iim)) - 1 час = время до возобнавления работы на первом сайте


Желательно привести маленький пример кода , такого типа
1 - одна команда переходим на ВК
2-алерт с временем выполнения перехода

Макрос извлекает ссылку из адресной строки
потом текст со страницы
затем эти данные должен сохранить в одной строке, но сохраняет отдельно.

На первой строке ссылку и на второй строке текст.
Как сделать, чтобы ссылка и текст на одной строке были ?


скрытый текст

Выделить код

Код:

SET !EXTRACT {{!URLCURRENT}}
TAG POS=1 TYPE=HEADER ATTR=CLASS:single-item-header<SP>b-with-padding EXTRACT=TXT
ADD !EXTRACT {{!COL2}}
SAVEAS TYPE=EXTRACT FOLDER=c:\папка\ FILE=save.csv

kolshix, похоже что работает только в полной версии iMacros:

ReferenceError: iimGetStopwatch is not defined (Error code: -991)

SET !FILESTOPWATCH YES
не верный синтаксис - это указатель на имя файла, а не включение/выключение опции (аналогично SET !DATASOURCE имя_файла.txt)

kolshix пишет

Желательно привести маленький пример кода , такого типа
1 - одна команда переходим на ВК
2-алерт с временем выполнения перехода

скрытый текст

Выделить код

Код:

STOPWATCH ID=FULL
STOPWATCH ID=MYTIME1
URL GOTO=https://vk.com/
TAG POS=1 TYPE=BUTTON ATTR=TXT:Войти
WAIT SECONDS=10
TAG POS=1 TYPE=A ATTR=TXT:выйти
STOPWATCH LABEL=MYTIME1

STOPWATCH ID=MYTIME2
URL GOTO=https://vk.com/
TAG POS=1 TYPE=BUTTON ATTR=TXT:Войти
WAIT SECONDS=10
TAG POS=1 TYPE=A ATTR=TXT:выйти
STOPWATCH LABEL=MYTIME2

STOPWATCH ID=MYTIME3
URL GOTO=https://vk.com/
TAG POS=1 TYPE=BUTTON ATTR=TXT:Войти
WAIT SECONDS=10
TAG POS=1 TYPE=A ATTR=TXT:выйти
STOPWATCH LABEL=MYTIME3
STOPWATCH LABEL=FULL


далее смотришь в папке Downloads файл с названием performance_ИМЯ_СКРИПТА.csv если не задавал другой путь
STOPWATCH ID= - установка таймера,
STOPWATCH LABEL= - время с момента установки

06-02-2015 14:15:24

Алим пишет

эти данные должен сохранить в одной строке, но сохраняет отдельно.

извлеченный текст, явно многострочный, потому и распологается на нескольких строках ниже, имея вид:

"ссылка","текст
текст текст
текст"

06-02-2015 14:25:20

Алим пишет

Как сделать, чтобы ссылка и текст на одной строке были ?

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\\n/g,' ')")

Спасибо InfSub удалил все отступы одним разом!

Простой вопрос, но поставил в тупик.

скрытый текст
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}

У меня в макросе три таких одинаковых кода, которые берут информацию из трёх текстовых файлов.
мне надо взять информацию из  одного  ---  {{!COL1}}
как указать конкретно на нужный?
Можно допустим поменять номера кулов, правда у меня везде текст в одну колонку.

slavabest пишет

как указать конкретно на нужный?

на нужный файл? или о чем речь?

06-02-2015 15:03:55

если речь о смене файлов, то так:

Выделить код

Код:

SET !DATASOURCE file1.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

SET !DATASOURCE file2.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

SET !DATASOURCE file3.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

InfSub пишет
slavabest пишет

как указать конкретно на нужный?

на нужный файл? или о чем речь?

06-02-2015 15:03:55

если речь о смене файлов, то так:

Выделить код

Код:

SET !DATASOURCE file1.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

SET !DATASOURCE file2.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

SET !DATASOURCE file3.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

Так три одинаковых {{!COL1}} , а мне надо в четвертом месте поставить (одну из этих переменных), макрос не поймет из какого конкретно места брать.
Может нужному  {{!COL1}} присвоить переменную, допустим  SET !VAR1 ?

Спасибо Вам InfSub про ответ про таймер , вероятно для меня выходом из ситуации будет создание динамического  текстового файла с последующей отправкой в EXTRACT , ну  либо же создание общего текстового файла , в которой после всей работы обратится iim файл и посчитает общие затраты ! СПАСИБО - Немного ясного света никогда не помешает !

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

slavabest пишет

Так три одинаковых {{!COL1}} , а мне надо в четвертом месте поставить (одну из этих переменных), макрос не поймет из какого конкретно места брать.
Может нужному  {{!COL1}} присвоить переменную, допустим  SET !VAR1 ?

я же привел пример как указывать из какого файла брать переменную, да можно присваивать и другой переменной значение

InfSub

Так вы привели тоже три одинаковых кода.
Я сейчас подумал, так и переменную нельзя задать.
А если поставить {{!COL1}} {{!COL2}} {{!COL3}} , второй и третий будут работать?

slavabest пишет

Так вы привели тоже три одинаковых кода.

там не три одинаковых кода, там разные файлы
объясняю, указываешь файл из которого читать, потом строку и получаешь значение переменной {{!COL1}}

Я ваш код полностью понимаю.
Я знаю из какого файла брать,знаю какая там информация.
Мне нужно просто {{!COL1}} вставить в строчку определенного кода, а их три штуки.,хоть выбрасывай лишние(шутка)
Макрос не может самостоятельно выбрать из трех одинаковы тего один.

slavabest пишет

Мне нужно просто {{!COL1}} вставить в строчку определенного кода, а их три штуки.,хоть выбрасывай лишние(шутка)
Макрос не может самостоятельно выбрать из трех одинаковы тего один.

что тут не понятного? идет код, нужно вставить строку из третьего файла, указываешь файл, указываешь строку, вставляешь значение
какой-то код
дальше из первого файла нужно вставить строку, по аналогии выше, файл, строка, значение
дальше пошел код
из второго файла нужно вставить значение, аналогию повторять?

Уважаемые форумчане, помогите найти решения на ява скрипте.
Есть файл excel с 1000+ с разными строчками из слов и цифр.
Задача сделать проверку перенесенной по базе строчок.
Если переменная уникальна, дописать в базу + 1 строку.


Вопросы:
1. как подключить файл базы в ява?
2. как сделать в подключенном файле поиск по строчкам?
3. как выписать условие - если есть совпадение то запустить макрос снова?
4. как выписать условие - если нет совпадение то записать +1 сточку в базу и запустить другой макрос?

Спасибо.

Я в ява скрипте только начинаю разбираться,  потому такие вещи сам еще не знаю как делать...

InfSub, должен получится фильтр базы данных.
К примеру надо собрать все заголовки к статьям в файл список. Но так собрать, чтобы не один заголовок не повторялся.
Мне нужен только код в который можно завести переменную из которой будут браться та самые заголовки.
В коде надо сделать поиск по локальному фалу. В случае если совпадения не найдено,  дописать переменною в последнею строчку.

Такое можно сделать?

Duh пишет

1. как подключить файл базы в ява?

не путайте яву и яваскрипт, два совершенно разных языка программирования
так же как и в iMacros'e, считать построчно, есть хаки для считывания файла полностью, но использование их не рекомендуется, по причине возможных багов и глюков, в зависимости от версии браузера

Duh пишет

2. как сделать в подключенном файле поиск по строчкам?

если данные считать в массив, сравнить массив методом перебора

Duh пишет

3. как выписать условие - если есть совпадение то запустить макрос снова?
4. как выписать условие - если нет совпадение то записать +1 сточку в базу и запустить другой макрос?

поиск по теме или в гугле, условный оператор if, обсуждалось многократно


Duh пишет

должен получится фильтр базы данных.

если выгружаете эту информацию с сайта, не проще ли фильтр написать на php и запустить на самом сайте?

InfSub пишет

если выгружаете эту информацию с сайта, не проще ли фильтр написать на php и запустить на самом сайте?

Нет. Надо только обирать заголовки. Ладно. Спасибо а ответ. Пойду гуглить команды для яваскрипт.

Duh пишет

1. как подключить файл базы в ява?

скрытый текст

Выделить код

Код:

var result=[],r,i=1;
do{
    r=iimPlayCode("SET !DATASOURCE your_file.csv"+"\n"+"SET !DATASOURCE_LINE "+(i++)+"\n"+"SET !EXTRACT {{!COL1}}");
    if(r<0){break;};
    
    result.push(iimGetExtract());
}while(true);
alert(result);

Duh пишет

2. как сделать в подключенном файле поиск по строчкам?
3. как выписать условие - если есть совпадение то запустить макрос снова?
4. как выписать условие - если нет совпадение то записать +1 сточку в базу и запустить другой макрос?

скрытый текст

Выделить код

Код:

var result=[],r,i=1;
do{
    r=iimPlayCode("SET !DATASOURCE your_file.csv"+"\n"+"SET !DATASOURCE_LINE "+(i++)+"\n"+"SET !EXTRACT {{!COL1}}");
    if(r<0){break;};
    
    result[iimGetExtract()]='';
}while(true);

var str='текст, искомой строки';
if(result[str]==undefined){'дописываем строку в файл';}else{'иные действия/запуск другого макроса';};

InfSub, а поиск сразу по всему файлу можно сделать?
По строчкам будет долго подбирать...

Duh, сделай сводную таблицу в excel'e и не изобретай велосипед

Работал с таймером , спалил себе мозг , причем жарил  наверно почти час ((((  это для тех кто в будущем будет работать с таймерами )))))

Был код

Выделить код

Код:

SET !FILESTOPWATCH {{RANDOM_NAME}}.txt

STOPWATCH ID=START
' какой-то код //////////////////////////////////////////////
STOPWATCH LABEL=START 

CMDLINE !DATASOURCE {{RANDOM_NAME}}.txt
SET !DATASOURCE_LINE 2
SET TIME_WORK {{!COL1}}

PROMPT {{TIME_WORK))


Начинаю считывать фаил команды  !FILESTOPWATCH   , а буфер imacros пуст!!!!
Выясняется: при команде  FILESTOPWATCH  создаёт txt файл записи, но полностью пустой, и как бы команда по идее STOPWATCH LABEL= должна наполнить txt, но фигушки , FILESTOPWATCH файл заполняется только по завершению работы всего iim  --- очень обидно , хотел создать динамический текстовый файл обойдясь одним iim , придётся двумя !!!

kolshix пишет

файл заполняется только по завершению работы всего iim

в принципе - это отслеживается в первые же минуты работы со STOPWATCH, где вы потеряли почти час? dirol.gif

07-02-2015 19:01:36
kolshix, {{!NOW:формат_времени}} и SAVEAS - ни кто не отменял, сделать при желании можно и динамику, STOPWATCH - для иных целей

InfSub пишет
kolshix пишет

файл заполняется только по завершению работы всего iim

в принципе - это отслеживается в первые же минуты работы со STOPWATCH, где вы потеряли почти час? http://smiles.kolobok.us/light_skin/dirol.gif

07-02-2015 19:01:36
kolshix, {{!NOW:формат_времени}} и SAVEAS - ни кто не отменял, сделать при желании можно и динамику, STOPWATCH - для иных целей

с NOW - не хочу морочится , потом пересчеты делать , ТАЙМЕР сразу в секундах делает , (не сказать что сложно (перевести все в секунды , и потом отнять друг от дружки))

Насчет прослеживается , не так уж просто , когда прогоняешь код , вроде бы есть ошибка , проверяешь , а файл заполнен + особенности кода, начинаешь синтаксис названий  и прочее перерабатывать . Могу ошибаться , но NOW привязан к времени компьютера, а это ещё головняки , я на 2-х машинах работаю, + частенько со временем всякие проблемы случаются !

Что STOPWATCH - для иных целей , это понятно , но Imacros тоже для иных целей ))) а мы его тут для монетизации используем )

STOPWATCH так же отталкивается от времени пк

kolshix пишет

с NOW - не хочу морочится

элементарно, Ватсон

Выделить код

Код:

SET !VAR1 EVAL("var i,r='{{!NOW:hh:nn:ss}}'.split(':');for(i in r){r[i]=Number(r[i]);};(r[0]*60+r[1])*60+r[2]")
WAIT SECONDS=10
SET !VAR2 EVAL("var i,r='{{!NOW:hh:nn:ss}}'.split(':');for(i in r){r[i]=Number(r[i]);};(r[0]*60+r[1])*60+r[2]")
PROMPT EVAL("{{!VAR2}}-{{!VAR1}}")



Ещё один прикол , ранее не тестировал , но сегодня столкнулся , опять чуть не убил время в пустую
в iim использую такую конструкцию буфера iim (1 и 2 позиции)

SET !EXTRACT freedoge[EXTRACT]{{ERR_CAPTCHA}}

js  команда iimGetExtract(1) и iimGetExtract(2)  видет один и тот же буфер
"freedoge[EXTRACT]     freedoge[EXTRACT]"

а js iimGetLastExtract(1)
"freedoge "   
js iimGetLastExtract(2)
"капча разгадана "



Вроде бы ерунда , но в заблуждения вгоняет , хотя на офф. сайте указано "4  iimGetExtract (old: iimGetLastExtract())"  -- протестировать на новых версиях нет никакого интереса  , вероятно на новых ысе нормально перекидывает из iim в js !&

InfSub пишет

элементарно, Ватсон

Ты хочешь чтоб я закипел )))  В БЛОКНОТИК ЗАПИСАЛ )))

kolshix пишет

js  команда iimGetExtract(1) и iimGetExtract(2)  видет один и тот же буфер

буфер - или точнее извлеченные данные, всегда одни и те же и равны сумме строк извлеченных со страницы и разделенных [EXTRACT] и команда iimGetExtract(), аналогично iimGetLastExtract() - их возвращает в полном объеме
использование цифры - указание на то, какой из извлеченных элементов вернуть (аналогично использованию индекса в массиве)
По каким причинам возврат конкретной части - не работает в iimGetExtract() - не знаю, скорее очередной баг, не сталкивался ранее, т.к. до сих пор юзаю iimGetLastExtract()

07-02-2015 20:16:46

kolshix пишет

в блокнотик записал )))

рекомендую все же, чуть доработать приведенный мной пример, добавив туда дату переведенную в секунды, иначе получите минусовые значения на стыке двух суток, либо юзать js-функцию date()

только что на всякий пожарный перепроверил "js  команда iimGetExtract(1) и iimGetExtract(2)  видет один и тот же буфер"

Да , какой то баг , вот проверка

скрытый текст
js

Выделить код

Код:

iimPlay("#Current.iim")
one=iimGetExtract(1)
two=iimGetExtract(2)
alert (one)
alert (two)

iimPlay("#Current.iim")
one=iimGetLastExtract(1)
two=iimGetLastExtract(2)
alert (one)
alert (two)

где #Current.iim

Выделить код

Код:

SET !EXTRACT 'один'[EXTRACT]'два'


Глючит на ура , буду пока пользоватся старым добрым iimGetLastExtract()

АЙМАКРОС - Источники текстов 1.1 "Источник контента - IIM файл"

добавил в FAQ:

FAQ - теперь полностью вынесен из темы и находится в корне форума iMacros
обновил шапку dirol.gif

Запутался в этих условиях.
Пишу скрипт для Вконтакте.

Скрипт запускаем на странице поиска - Люди.

1. Макрос "01" заходит поочерёдно в профиля к людям.
2. Макрос "Отправка" отправляет сообщение
3. Макрос "02" возвращает на страницу поиск Люди

Не могу сделать, такое условие.
После захода в профиль, скрипт когда нажимает кнопку "Добавить в друзья", он должен воспроизвести макрос "Отправка"
Если кнопки "Добавить в друзья" не будет, то скрипт должен воспроизвести макрос "02", затем "01"

Надо, чтобы скрипт не засчитал цикл и занова начал с 5.
Указал 5 циклов. Значит скрипт должен добавить 5 друзей, не засчитывая тех, которые в друзях уже есть.

скрытый текст

Выделить код

Код:

for (var i=1;i<=5;i++){
iimSet("а",а);
iimPlay("vk_druziya/01.iim",60);

if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья")<0){
iimSet("текст",текст);
iimPlay("vk_druziya/отправка.iim",60);
}

if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Вы<SP>отправили<SP>заявку<SP>*")>0){
iimPlay("vk_druziya/02.iim",60);
break
}
}else{i--;}
}

Алим, как минимум определитесь с фигурными скобками, в приведенном примере 1 закрывающая скобка - лишняя
цикл for() - не имеет параметра else, а у вас - он есть:

скрытый текст

Выделить код

Код:

for (var i=1;i<=5;i++){
...
}else{i--;}

Запутался в этих условиях.
Пишу скрипт для Вконтакте.

1 не знаю что у Вас в первом коде, но 1 вкладка должна быть постоянной и не закрывать
2 переход к другу в новой вкладке в случае удачи возврат к вкаладке с друзьями и + 1 к удачным попыткам || в случае неудачи возврат к вкладке с друзьями

примерно так

скрытый текст

Выделить код

Код:

var friendAdd  // переменная удачных добавлений 
var friends=5  // количество друзей 
 
for (i=1;;i++){

    iimSet("POSTAG",i) 
    if (iimPlay("SET !ERRORIGNORE YES \n !TIMEOUT_STEP 0\n TAB T=0\ TAB T=-1\n  TAB !CLOSEALLOTHERS \n  TAG POS={{POSTAG}} EXTRACT адреса и переход к другу на новой вкладке  \n TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья ..... сюда же запихнуть "текст текст" ну и в конце SET !ERRORIGNORE NO\n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Вы<SP>отправили<SP>заявку<SP>*")>0){
    friendAdd++  // если друг добавился то увеличиваем счетчик удачных попыток в друзья // если не удалось , то меняем позицию , возвращаемся на вкладку с друзьями и переходим к следующему  
   }   


    if (friendAdd>=friends){breaK}

}

kolshix, переменная, friendAdd должна иметь начальное значение, например 0, иначе получите вечный цикл

09-02-2015 18:41:02
и нет такого оператора, как breaK, есть break

InfSub пишет

kolshix, переменная, friendAdd должна иметь начальное значение, например 0, иначе получите вечный цикл

09-02-2015 18:41:02
и нет такого оператора, как breaK, есть break

Переменную прозивал , а синтаксис я думаю для Алима не главное , он не первый месяц, Я идейку хотел подкинуть, по этому на скорую руку клипал !

Я лучше пойду другим путём )
Буду добавлять к циклу +1 когда нет кнопки "Добавить в друзья"

kolshix, синтаксис не главное, говоришь? rofl.gif acute.gif

09-02-2015 19:54:48
Алим, думаю, ваш код должен быть вот таким (если исходить из описания):

скрытый текст

Выделить код

Код:

for (var i=1;i<=5;i++){
    iimSet("а",а);
    iimPlay("vk_druziya/01.iim",60);

    if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья")<0){
        iimSet("текст",текст);
        iimPlay("vk_druziya/отправка.iim",60);
    };

    if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Вы<SP>отправили<SP>заявку<SP>*")>0){
        iimPlay("vk_druziya/02.iim",60);
        i--;
    };
};

Алим пишет

Я лучше пойду другим путём )
Буду добавлять к циклу +1 когда нет кнопки "Добавить в друзья"

если вы о моём варианте , Тогда на странице с друзьями скрипт при ошибке будет проскакивать 1-го человека, но думаю вам рандом только плюсом



InfSub пишет

kolshix, синтаксис не главное, говоришь? rofl.gif acute.gif

В  случае который я описывал , синтаксис не важен , break мог и кирилицей напечатать - главное в примере была идея ! Исполнителем был другой человек , и уже он будет заниматься вопросами синтаксиса .

Хотя конечно понятно , чем лучше синтаксис тем лучше!! 

Забыл, что нужно разагадывать капчу после нажатия кнопки "добавить в друзья", и пришлось по-другому сделать.
В общем, у меня получилось. Указал в скрипте 4 заявки в друзья.
Четвёртый был уже в друзьях. При заходе на 4-ую станицу поставил условие "* у Вас в друзьях".
При обнаружении "* у Вас в друзьях" прибавляет цикл++
При неверном условии, возвращается обратно на страницу, пропуская цикл++

Зашёл к пятому пользователю, добавил в друзья и скрипт завершил свои действия. Ура! )

Ребята!!! Помогите!! Пишу здесь потому что надо очень быстро.

мне нужен макрос, который будет нажимать кнопку пробел со  скоростью света ))
есть сайт, на сайте есть флешролик, в определенном месте ролика нужно как можно быстрее
нажимать пробел.
помогите с макросом1

буду очень благодарен1
спасибо.

InfSub пишет

на данном сайте используется flash-капча, с ней, вы, к сожалению, ни чего сделать не сможете, во всяком случае, при использовании iMacros for FF
с флешем умеет работать только полноценная платная версия iMacros

captcha
af5534ef36ab3c6494d0bc47a3faa694.png

Только что спалил себе мозги ,

Каптча работает в 3-х форматах (есть ещё варианты , но на сайте котором работал было только 3)
1-Картинка - тут все просто (отключаешь отображение изображений ,картинка не отображается  и выкачиваешь картинку с сылки)
2-Написаны слова, можно просто вытащить через EXTRACT - даже сервис разгадки не нужно вызывать (при отключении изображений слова продолжают отображаться )
3- 2 часа сидел долбил ,как решить была идейка , проверил идейку не сработало, оказывается ошибся в команде (при отключении изображений , картинка показывается , но при её копировании , копируется пустая область ) использовал

2кода

Выделить код

Код:

TAG POS=1 TYPE=* ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVEPICTUREAS

ну а нужно было 

Выделить код

Код:

TAG POS=1 TYPE=*ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

Обидно , попутал/ не нашёл / помнил что было что-то подобное SAVEPICTUREAS с SAVE_ELEMENT_SCREENSHOT


Так что относительно вопрос решён

Всем привет, подскажите почему зависает браузер после кода

Выделить код

Код:

SET !DATASOURCE 1.txt
SET !DATASOURCE_LINE 1

Какую версию браузера вы используете и какая версия у вас imacros'a ?

Anton82, это скорее к вам вопрос, какая у вас версия, в основном используется последняя, кроме каких-то исключений
проверяйте кодировку файлов, должна быть utf-8

Браузер у меня 35.0.1, imacros 8.8.8

Anton82 пишет

Браузер у меня 35, imacros 8.8.8

InfSub пишет

проверяйте кодировку файлов, должна быть utf-8

переустановите имакрос

Вот такая вот ерунда

скрытый текст
pbya1KPhTkq9uEN4rsSSUg.jpg

кавычки в файле есть?

Да вот

скрытый текст
e8AmO0yiEenOQLFYCwTCA.jpg

Anton82, выложите этот файл, куда-либо оставив в нем эту строку или иную другую, и сам скрипт, как минимум с запросом к файлу (datasource); именно сами файлы

скрытый текст
***
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Anton82, скорее проблема, либо в самом имакросе, либо в мозилле, попробуйте снести мозиллу полностью с профилем, и поставить с нуля.
скрипт отрабатывает без проблем, единственные ошибки присутствуют в файле start.js в строках 5 и 6 - это одинарные кавычки в конце строк

12-02-2015 00:19:20

и код:

Выделить код

Код:

var akk=1

for (;;){
...    
akk++
}


лучше записать
так:

Выделить код

Код:

for (var akk=1;;akk++){
...    
}

InfSub
Благодарю, браузер снес и поставил...работает.

Столкнулся с такой проблемой:
сайт рукапча немного изменился, и теперь всю работу макроса стопорит всплывающее сообщение в самой мозиле:
когда макрос пытается отправить на комп сохраненную капчу на сайт рукапча всплывает вот такое сообщение:

Предупреждение системы защиты:
Хотя эта страница и зашифрована, отправленная вами информация будет передана по незашифрованному соединению и может быть легко доступна третьей стороне.
Вы действительно хотите отправить эту информацию?

Дело в том, что если остановить макрос и в ручную нажать отправить - оно вылазит поверх всех окон, и когда нажать продолжить, все работает на ура.
загвоздка в том, что когда макрос идет, это сообщение выскакивает, и сразу прячется, а файл на разгадку не отправляет.
если бы это сообщение не пряталось, то я бы запрограмировал макрос принимать, а так как оно прячется не могу это осуществить.
перерыл инет как убить это сообщение раз и навсегда, но у меня в мозиле портабле 27.0.1 такой возможности нет, убрали разработчики такую настройку. поставил Palemoon-Portable-25.1.0 та же беда.
Может кто знает как через about:config решить этот вопрос, или посоветуйте выход какойто, например другую версию мозилы, или другой проводник. только чтобы аймакрос корректно работал.
Заранее спасибо.
Пожалуйста, пожалуйста, пожалуйста :)

Вроде можно юзать старую версию сайта

Маххх

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

ее недавно обновили.

RuCaptcha — официальная группа пишет

Новость для заказчиков, работающих через iMacros:
Обновлён файл rucaptcha.com/imacros.html
Готовим крупное обновление функционала для iMacros, ориентировочно - на следующей неделе будет релиз.

26 янв в 11:59

ее обновили, не только у меня трудности возникли...

помогите пожалуйста, подскажите как решить проблему

Маххх, повторяю еще раз, все отлично разгадывается, не вижу ни каких сложностей, если они есть, скрины в студию, адрес используемой страницы для разгадывания, тоже

12-02-2015 23:14:42

Маххх пишет

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

сравните свою ссылку и ту, что я дал, есть разница? отвечу за вас - есть
разница в том, что вы используете https://, вместо http:// - надеюсь объяснять, как исправить - не нужно?

и, кстати, это, совершенно ни как не связано с обновлением rucaptcha

флуд
вконтакте.
Макрос на комп сохраняет картинку капчи, вводит ключ в форму антикапчи, но когда нажимает recognize на долю секунды появляется и исчезает окно:

Предупреждение системы защиты:
Хотя эта страница и зашифрована, отправленная вами информация будет передана по незашифрованному соединению и может быть легко доступна третьей стороне.
Вы действительно хотите отправить эту информацию?

и 2 кнопки продолжить или отменить.

после этого разгадка капчи не происходит, поскольку файл на разгадку не попадает.

Скрины чего вам сделать?


скрины ошибки, к тому же, прежде чем постить, читаем что ответили выше - флуд


InfSub

Маххх пишет

вконтакте.

вконтакте - нет такой ссылки, это раз
во вторых, речь шла о ссылке на rucaptcha

12-02-2015 23:29:24

вот ваша ошибка, почему возникает и как бороться - [url=https://forum.mozilla-russia.org/viewtopic.php?pid=675466#p675466
объяснил выше[/url]]1bdd88c6c01add21a22836ac0b31c073.png

скрины
90582cdf5eda38f5cf26de9c7607b134.png  cc66abe198abccd198b08e5773b43f0f.png  5ffdb6e196a0940f410244370f441c66.png  53ee276f9f51d3d8c1912b04bc091611.png  1127aec08570bdf61cd839fe50dc7ea3.png

удалено, флуд

InfSub

12-02-2015 23:45:14
Включил мозги, перечитал нашу переписку, прошу извинить меня, все заработало. Спасибо вам!!! InfSub

Блин, всю голову сломал, подскажите пожалуйста есть к примеру код:

скрытый текст

Выделить код

Код:

iimPlay("CODE:SET !EXTRACT_TEST_POPUP NO\n SET !ERRORIGNORE YES\n SET !ERRORCONTINUE YES\n SET !TIMEOUT_STEP 0\n FILTER TYPE=IMAGES STATUS=OFF");
for (;;){

var var1 = "!EXTRACT.iim";
   iimPlay("CODE:TAB T=1\n TAG POS=1 TYPE=A ATTR=TXT:pull-left&&TXT:*.* EXTRACT=TXT");
   
alert(var1);
iimPlay("CODE:SET !EXTRACT NULL");

throw "stop";
}


как написать, чтоб алерт выдавал "текст взятый со страницы.iim"
заранее благодарен!!!

сколько раз можно повторять:

SET !EXTRACT_TEST_POPUP NO

не нужна в js, ибо не будет у вас всплывающих окон при extract'е, если вы сами их не вызовете с помощью prompt или alert()

SET !ERRORCONTINUE YES

нет такого параметра


stars1981 пишет

нечто....

Выделить код

Код:

var var1 = "!EXTRACT.iim";
   iimPlay("CODE:TAB T=1\n TAG POS=1 TYPE=A ATTR=TXT:pull-left&&TXT:*.* EXTRACT=TXT");
   
alert(var1);
iimPlay("CODE:SET !EXTRACT NULL");

throw "stop";

что это за бред? //прошу прощения за мой "английский"
будьте добры, просмотрите, хотя бы, последних 5-10 страниц данной ветви форума, на предмет того, как вообще извлекаются данные из iMacros'a в js

FAQ по iimGetLastExtract(), iimPlay() / iimPlayCode() и !EXTRACT - вам в помощь, а так же поиск по этой теме, по этим же, командам

InfSub пишет

что это за бред? //прошу прощения за мой "английский"
будьте добры, просмотрите, хотя бы, последних 5-10 страниц данной ветви форума, на предмет того, как вообще извлекаются данные из iMacros'a в js

Это просто пример!!! А форум почти весь просмотрел.... Мне нужно, чтобы  в js, текст извлечённый кодом

Выделить код

Код:

iimPlay("CODE:TAB T=1\n TAG POS=1 TYPE=A ATTR=TXT:pull-left&&TXT:*.* EXTRACT=TXT");

встал в название iim  и далее этот iim выполнился:

Выделить код

Код:

iimPlay("папка где лежит iim/извлечённый текст.iim",60);

Напишите решение этой проблемы пожалуйста!!!

stars1981 пишет

Напишите решение этой проблемы пожалуйста!!!

stars1981, я уже написал выше:

InfSub пишет

Здравствуйте. При использовании прокси частенько сайты выдают ошибку. Подскажите какой командой в скрипте можно при возникновении ошибки скрипт не останавливался и не игнорировал ее, а перезапускался (начинал свою работу заново или просто перезагружал данную страницу заново). Спасибо. Жду ответа.

ottec, нет такой команды, только отлов событий через js и соответственно, перезапуск скрипта

ottec пишет

Здравствуйте. При использовании прокси частенько сайты выдают ошибку. Подскажите какой командой в скрипте можно при возникновении ошибки скрипт не останавливался и не игнорировал ее, а перезапускался (начинал свою работу заново или просто перезагружал данную страницу заново). Спасибо. Жду ответа.

пишу по собственному опыту
1 с публичными прокси далеко не уедешь
2 сразу нужно писать дополнительный код к главному коду , либо отдельный либо сразу встраивать в главный - Задачей дополнительного кода будет тест на работоспособность прокси
3 нужно будет в каждом скрипте установить команду отлова диалога  про ввод логина и пароля прокси -- вместо диалога можно установить дополнение close proxy -- оно будит закрывать диалоги, пока  соединение с сайтом не прекратится, тем самым ваш скрипт не затормозит

4 используйте js

kolshix, InfSub    Спасибо за ответы.

Всем привет, есть пару вопросов. Как из класса выделить текстовую информацию ?

Выделить код

Код:

TAG POS=2 TYPE=SPAN ATTR=class:UserBalance

Пробовал так, но ничего не делает.

Выделить код

Код:

macro5 += "TAG POS=2 TYPE=SPAN ATTR=class:UserBalance EXTRACT=TXT" + "\n";

И к этому же второй вопрос, как можно эту текстовую информацию, если ее можно выделить - вставить в переменную ?

P.s если хочется наглядно посмотреть то,

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Как заходишь со своей учетки, вверху есть надпись счет и цифры, вот цифры и надо забить в переменную.

Haart пишет

Пробовал так, но ничего не делает.

значит не то извлекаете, предположу что: POS должен быть равен не 2 а 1

InfSub пишет

значит не то извлекаете, предположу что: POS должен быть равен не 2 а 1

Спасибо, работает. Раз знаю инфу выраженную в цифрах, забить это в переменную по старинке можно. Но гемор страшный, специальной функции нет никакой ?

Haart пишет

Раз знаю текстовую инфу, забить это в переменную по старинке можно. Но гемор страшный, специальной функции нет никакой ?

она и так у вас в переменной {{!EXTRACT}} после извлечения
если нужно перекинуть в другую переменную
SET YOUR_VAR {{!EXTRACT}}

InfSub пишет

она и так у вас в переменной {{!EXTRACT}} после извлечения
если нужно перекинуть в другую переменную
SET YOUR_VAR {{!EXTRACT}}

Хм, неверно описал, я имел в виду, извлечь в переменную js скрипта.

Haart, ну не уже ли так сложно воспользоваться поиском по теме. или хотя бы прочесть 2-3 страницы темы... только перед вами отвечал...

offtop: Подскажите сервис разгадки каптчи
Подскажите сервис разгадки каптчи, не могу вспомнить есть antigate , rucaptcha и ещё один, как раз он то и нужен , хочу потестировать

после разгадывания капчи втавляет чапчу и слово Close

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:recaptcha_response_field CONTENT={{!EXTRACT}}

как убрать слово Close

14-02-2015 16:43:56

kolshix пишет

offtop: Подскажите сервис разгадки каптчи
Подскажите сервис разгадки каптчи, не могу вспомнить есть antigate , rucaptcha и ещё один, как раз он то и нужен , хочу потестировать

сервисы
socialink.ru
9kv

sandr777 пишет

после разгадывания капчи втавляет чапчу и слово Close

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:recaptcha_response_field CONTENT={{!EXTRACT}}

как убрать слово Close

попробуй так

Выделить код

Код:

SET !EXTRACT EVAL("\"{{!EXTRACT}}\".replace(/Close/,'')")
PROMPT {{!EXTRACT}}
kolshix пишет

попробуй так

Спасибо! работает.

Можно ли запретить всплывающие окна в iim, если да, то как?

Написал скрипт и не воспроизводится.
Несколько раз перепроверял не могу понять из-за чего.

Ошибку выдаёт

SyntaxError: expected expression, got '}', line NaN (Error code: -991)

Может, что-то не так в скрипте написал. Кто может сказать.

скрытый текст

Выделить код

Код:

// С какого по чёту паблика начать ?
var ссылки = 1;

// Какое количество пабликов будем проходить?
var а = 4;

// Укажите точное количество ключей в "keys_antigate.txt"
var кол = 5;

var в = 30;    // Время на разгадывание капчи в секундах
var г = 5;    // Кол-во попыток для разгадывания капчи

////////// Дальше не меняем

var ключи = 1;

for (var z=1;z<=а;z++){

for (i=1;i<=1;i++){
iimSet("ссылки",ссылки);
ссылки++
iimPlay("макросы/паблики.iim",60);
}

i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Анна<SP>Ивончак")
if (i>0){
iimSet("д",д);
д++
iimPlay("макросы/выход.iim",60);
iimPlay("макросы/вход.iim",60);
}
}

if (i<0){
}
}

i= iimPlayCode("SET !TIMEOUT_STEP 1 \n EVENT TYPE=CLICK SELECTOR="#subscribe_button" BUTTON=0")
if (i>0){
}
}

if (i<0){
iimPlay("макросы/отписка.iim",60);
}

for (i=1;i<=г;i++){
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
if (i>0){
iimSet("t",в);
iimSet("кол",кол);
ключи++
iimSet("ключи",ключи);
iimPlay("макросы/antigate.iim",60);
}
}

if (i<0){
}

iimDisplay(z);    
iimSet("z", z);
}


Переменные все на русской раскладке написал
скобки проверил
содержимое макросов проверил
пути, названия, всё проверил.
Но не вопроизводится.

По ошибке, думаю, проблема в скобке. Не поставил скобку где-то или лишняя.

вот скобки подправил и такая ошибка

SyntaxError: illegal character, line NaN (Error code: -991)

скрытый текст

Выделить код

Код:

// С какого по чёту паблика начать ?
var ссылки = 1;

// Какое количество пабликов будем проходить?
var а = 4;

// Укажите точное количество ключей в "keys_antigate.txt"
var кол = 5;

var в = 30;    // Время на разгадывание капчи в секундах
var г = 5;    // Кол-во попыток для разгадывания капчи

////////// Дальше не меняем

var ключи = 1;

for (var z=1;z<=а;z++)
{

for (i=1;i<=1;i++){
iimSet("ссылки",ссылки);
ссылки++
iimPlay("макросы/паблики.iim",60);
}

h= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Анна<SP>Ивончак")
if (h>0){
iimSet("д",д);
д++
iimPlay("макросы/выход.iim",60);
iimPlay("макросы/вход.iim",60);
}

if (h<0){
}

h= iimPlayCode("SET !TIMEOUT_STEP 1 \n EVENT TYPE=CLICK SELECTOR="#subscribe_button" BUTTON=0")
if (h>0){
}

if (h<0){
iimPlay("макросы/отписка.iim",60);
}

for (s=1;s<=г;s++){
k= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
if (k>0){
iimSet("t",в);
iimSet("кол",кол);
ключи++
iimSet("ключи",ключи);
iimPlay("макросы/antigate.iim",60);
}
}

if (k<0){
}

iimDisplay(z);    
iimSet("z", z);
}


Убрал EVANT с этой строки и без ошибки начал воспроизводиться

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#subscribe_button" BUTTON=0

с этой строки 
h= iimPlayCode("SET !TIMEOUT_STEP 1 \n EVENT TYPE=CLICK SELECTOR="#subscribe_button" BUTTON=0")


Значит в iimPlayCode нельзя ставить EVENT ?

мои ошибки повторяешь )))

нужно

Выделить код

Код:

//либо так нужно 
iimPlayCode('SET !TIMEOUT_STEP 1 \n EVENT TYPE=CLICK SELECTOR="#subscribe_button" BUTTON=0') // конструкция   ('....."команда".....')
//либо так нужно 
iimPlayCode("SET !TIMEOUT_STEP 1 \n EVENT TYPE=CLICK SELECTOR=\"#subscribe_button\" BUTTON=0")// конструкция  ("....\"команда\"....")


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

kolshix сработало! Буду теперь знать, спасибо большое :)

Алим пишет

kolshix сработало! Буду теперь знать, спасибо большое :)

Не мне, а InfSub нужно говорить )))

Воспроизвожу макрос через скрипт
поставил SET !DATASOURCE_DELIMITER : в макросе
Задача переходить по ссылкам из текстового файла .txt

в файле

ссылка:слова
ссылка:слова

скрытый текст

Выделить код

Код:

SET !DATASOURCE_DELIMITER :
CMDLINE !DATASOURCE паблики.txt
URL GOTO={{!COL1}}


Если убрать SET !DATASOURCE_DELIMITER :
и в файле заменить : на , то всё как надо идёт

открывает страницу

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


интересно, почему так происходит?

Алим пишет

открывает страницу

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


интересно, почему так происходит?

потому что ссылка имеет вид http://адрес

15-02-2015 02:41:00

stars1981 пишет

Можно ли запретить всплывающие окна в iim, если да, то как?

что подразумевается под всплывающими окнами? тестовые окна при екстракте? (... EXTRACT=TXT)
тогда:

SET !EXTRACT_TEST_POPUP NO

но они всплывают только при разовом воспроизведении скрипта, т.е. если вы запустите скрипт в цикле, их не будет (сделано для отладки скриптов)

15-02-2015 02:51:15

Алим пишет

Переменные все на русской раскладке написал

!!! не рекомендуется использовать имена переменных на "местных" языках, точнее рекомендуется использовать только чистый английский язык в именах переменных и ни какого транслита

InfSub пишет

что подразумевается под всплывающими окнами? тестовые окна при екстракте? (... EXTRACT=TXT)

Нет, не тестовые, а всплывающие окна на страницах сайтов ( реклама ). Можно ли без использования сторонних расширений ( NoScript и т.п. ) из iim блокировать различные не нужности?

stars1981, иМаскос, плагин для автоматизации, а не для блокировки рекламы

Всем привет. Интересует такой вопрос: можно ли средствами imacros+js добавить куки, или подружить их с каким либо дополнением, напр. advanced cookies manage . ?

чьи куки вы собираетесь добавить? куки ставит сайт, если не подразумевается подделка куков..
разрабами - точно такое не подразумевалось, гуглите, может найдете обходное решение через js, что, впрочем, вряд ли, js в имакросе сильно порезан

InfSub пишет

чьи куки вы собираетесь добавить? куки ставит сайт, если не подразумевается подделка куков..
разрабами - точно такое не подразумевалось, гуглите, может найдете обходное решение через js, что, впрочем, вряд ли, js в имакросе сильно порезан

хоть через загрузку файлов FF куки подсовывай, смысл в авторизации через FB, с двух аккаунтов, на неком сайте (ну типо нажал кнопку и залогинился ), куки то есть, что бы такое теперь придумать)))

sjworld, что мешает использовать 2 или более профилей FF?

InfSub пишет

sjworld, что мешает использовать 2 или более профилей FF?

много чего) я так понимаю дополнениями FF, макросом тоже не получится управлять?

sjworld, нужно полное управление FF - AutoIT - и подобный софт в помощь, имакрос предназначен для выполнения однотипных операций с самим сайтом, не больше и не меньше, все остальное, по сути, хаки, добавляющие функционал, через дыры не закрытые разрабами

sjworld пишет

Всем привет. Интересует такой вопрос: можно ли средствами imacros+js добавить куки, или подружить их с каким либо дополнением, напр. advanced cookies manage . ?

кстати  меня тоже такой вопрос интересовал , к примеру есть 2-сайта и автоматизации там на 2  минуты  , хотелось бы чтоб imacros перетягивал куки одного (1-20) профелей чтоб не запускать несколько браузеров , каждый раз заходить по новой на сайт не подходит , нужна каптча

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

InfSub пишет

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

конечно!!! посмотри  на Алим , тот вообще скрипты наура продает
могу ошибаться, так как тестил 7 и 9 версии  iopus, сейчас imacros FULL -- то они глючные

kolshix пишет

то они глючные

offtop
полноценные триальные не пробовал, про ломаные же писали, что действительно глючат

sjworld пишет

Всем привет. Интересует такой вопрос: можно ли средствами imacros+js добавить куки, или подружить их с каким либо дополнением, напр. advanced cookies manage . ?

в теории достаточно скопировать в портативной версии папку user, я так когда лень ссылки копировать делаю, а вот на практике все всегда веселее

Всем здравствуйте!
Кого интересовал скрипт по разгадыванию капчи - вот пример для Рукапчи:
удалено

скрипт для рукапчи - ни кого не интересовал, ибо идентичен скрипту для антикапчи и доступен для скачивания, в примерах, на обоих сервисах - флуд

А у меня есть вопросик к уважаемому сообществу:
Необходимо сделать запись в csv нескольких значений в несколько колонок, две из которых дата и время. То есть алгоритм следующий:
1. Извлекаем определенное значение с сайта (это делаю без проблем)
2. Записываем в первую колонку csv дату на момент извлечения (она равна, в принципе, текущей, несколько секунд роли не играют)
3. Записываем во вторую колонку время на момент извлечения, ну или так же текущее

Как реализовать второй и третий пункт? С первым проблем нет, а вот второй и третий...
Считать-то легко из csv, а вот записать туда как по колонкам вообще не нашел...

плохо искали или не искали вовсе, элементарно находится поиском по запросу сохранить
правила, пункт 2.1

InfSub

Доброго времяни суток!!! Подскажите пожалуйста, можно ли в iim имитировать нажатие клавиши "пробел"? Если да, то как?

stars1981 пишет

Доброго времяни суток!!! Подскажите пожалуйста, можно ли в iim имитировать нажатие клавиши "пробел"? Если да, то как?

смотря что вы под этим понимаете
опишите, проблему подробнее, чтобы получить более конкретный ответ

InfSub пишет

смотря что вы под этим понимаете

Есть поле ввода капчи.....при простой вставке текста в поле:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}

кнопка отправки не активируется, если даже перед вставкой текста имитирую клик по полю ввода:

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#default-response" BUTTON=0

,
а вот если после имитации клика нажимаю пробел на клаве, потом вставляется текст, то всё ок!!! Так вот, как имитировать нажатие пробела?

stars1981 пишет

а вот если после имитации клика нажимаю пробел на клаве, потом вставляется текст, то всё ок!!! Так вот, как имитировать нажатие пробела?

вы сами же ответили на свой вопрос, запишите нажатие на пробел через EVENT

InfSub пишет

нажатие на пробел через EVENT

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

stars1981 пишет
InfSub пишет

нажатие на пробел через EVENT

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

так же как и TAG POS... EVENT - работает с определенным htrml-элементом сайта, что именно я вам должен записать? то что не будет у вас работать?
нет просто нажатия на пробел или на иную клавишу, есть нажатие, в определенном теге, на странице

InfSub пишет

что именно я вам должен записать?

ну, вот строка кода имитации клика мышью на поле ввода капчи:

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#default-response" BUTTON=0

А, как выглядит код для имитации нажатия пробела, в этом же поле?

stars1981, если вы думаете, они будут -похожи, вы ошибаетесь, повторяю, либо запишите сами, либо читаем правила раздела имакрос, пункт 1.2.8

16-02-2015 23:59:32
впрочем, в шапке темы, этот пункт тоже имеется, разве что, без номера

17-02-2015 00:04:33
возможно, что будет выглядеть так, но только возможно, а не факт:

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="#default-response" CHAR=" "
InfSub пишет

возможно, что будет выглядеть так

Понял, а в CHAR="? " что писать?

stars1981 пишет
InfSub пишет

возможно, что будет выглядеть так

Понял, а в CHAR="? " что писать?

ты просил пробел, он там и записан

InfSub пишет

а не факт:

Да, не факт!!! Работает- вставляет в поле то что укажешь в CHAR=" ", но, нажатие клавы не имитирует соответственно кнопка ввода не активируется.
Вот сайт

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


в середине страницы капча "я не робот", жмём квадратик слева от слов "я не робот", всплывает окно с капчей и полем ввода, так вот в это поле нужно имитировать нажатие клавиши пробел, чтоб активировалась (засветится ярко синим цветом) кнопка "подтвердить". Как это решить? Мозг уже закипает.....

17-02-2015 01:12:04
Фиг с ним, с iim!!! Можно сделать так:

скрытый текст

Выделить код

Код:

URL GOTO=imacros://run/?m=I_robot.js


Тогда как это в js решить?

stars1981, сорри, но на этом сайте, у меня вообще капча не всплывает, при том не важно через какой браузер заходишь

Добрый день! Просьба помочь, больше надежды нигде нет, кроме как у вас на форуме. А сам я уже все перепробовал. Имеется блок:

скрытый текст

Выделить код

Код:

div id="ok-e-d" class="ok-e"


Это блок вставки комментария. Прописываю в imacrose-
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV:TEXT ATTR=ID:ok-e-d CONTENT="Кря-Кря"


Ничего не происходит, хотя хотелось бы, что бы макрос прописал комментарий. Тэг:
скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-d" CHARS="Кря-Кря"


Не подходит, хоть "EVENT" и работает, но при длинных текстах макрос затупляет и начинает писать очень медленно, либо вообще firefox тупит. Поэтому хотелось бы через тег - "TAG POS". Как правильно прописать строку, чтобы оставить комментарий?

сайт
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Допустим такой... Оставить комментарий под фотографией

mnemon84 пишет

Оставить комментарий под фотографией

например, так

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT="текст сообщения"
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*

InfSub пишет
mnemon84 пишет

Оставить комментарий под фотографией

например, так

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:field_comment CONTENT="текст сообщения"
TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*

Получилось!!! Вообще от души :)

Я правда сам так и не нашел этот "ID". А если ссылка будет вот такой:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Как прописать код? какой ID использовать?

mnemon84 пишет

А если ссылка будет вот такой:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Как прописать код? какой ID использовать?

там только EVENT

скрытый текст

Выделить код

Код:

URL GOTO=http://ok.ru/profile/91163034559/forum
TAG POS=1 TYPE=A ATTR=TXT:"написать сообщение"
WAIT SECONDS=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-d" CHARS="Здравствуйте! "
FRAME F=0
EVENT TYPE=CLICK SELECTOR="#ok-e-d_button" BUTTON=0

Ммм... "EVENT" тупит при длинных текстах.

mnemon84 пишет

Ммм... "EVENT" тупит при длинных текстах.

конкретно, в данном окне, на данной странице, работает только event из-за iframe, ищите альтернативы

Спасибо за объяснения буду пробовать дальше. Правда не понятно про какие альтернативы вы говорите

mnemon84 пишет

Правда не понятно про какие альтернативы вы говорите

отвечу отрывком из стихотворения Сергея Михалкова «Происшествие в горах»: "умный в гору не пойдет, умный - гору обойдет" (с)
но:
"Но свою голову на чужие плечи не посадишь." (с) так что, экспериментируйте

InfSub пишет

сорри, но на этом сайте, у меня вообще капча не всплывает

Вот здесь глянь:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Ну не как не могу найдти, как победить эту капчу.... Вот что у меня получается:
скрытый текст

Выделить код

Код:

TAB T=1
'я не робот нажать на квадрат
FRAME NAME="I0_*"
EVENT TYPE=CLICK SELECTOR=".recaptcha-checkbox-checkmark" BUTTON=0
WAIT SECONDS=5
//Здесь идёт скриншот капчи

//Потом распознавание через сервис распознавания

'Ввод полученого результата
FRAME NAME="I1_*"
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:default-response CONTENT={{!EXTRACT}}

//Здесь надо имитировать нажатие на клаве пробела.

'клик по кнопке подтверждения
EVENT TYPE=CLICK SELECTOR="#recaptcha-verify-button" BUTTON=0
WAIT SECONDS=5


Может как нибудь через js это можно решить, если с iim нет решения?

stars1981 пишет

скрытый текст

InfSub пишет

сорри, но на этом сайте, у меня вообще капча не всплывает

Вот здесь глянь:[spoiler]

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Ну не как не могу найдти, как победить эту капчу.... Вот что у меня получается:
скрытый текст

Выделить код

Код:

TAB T=1
'я не робот нажать на квадрат
FRAME NAME="I0_*"
EVENT TYPE=CLICK SELECTOR=".recaptcha-checkbox-checkmark" BUTTON=0
WAIT SECONDS=5
//Здесь идёт скриншот капчи

//Потом распознавание через сервис распознавания

'Ввод полученого результата
FRAME NAME="I1_*"
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:default-response CONTENT={{!EXTRACT}}

//Здесь надо имитировать нажатие на клаве пробела.

'клик по кнопке подтверждения
EVENT TYPE=CLICK SELECTOR="#recaptcha-verify-button" BUTTON=0
WAIT SECONDS=5


Может как нибудь через js это можно решить, если с iim нет решения?[/spoiler]

тестил каптчу на вашем сайте, так как тоже осваиваю тему криптовалюты


вот что показал скрипт

Выделить код

Код:

TAB T=1
' без фрейм команды, скрипты не пашут , ну это  понятно 
FRAME NAME="I*"
' раскрывает показ каптчи 
TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark
' тоже без фрейма не пашит  
FRAME NAME="I1_*"
' ниже 2 команды которые дополняют друг друга без них работать не будет 
EVENT TYPE=CLICK SELECTOR="#default-response" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#default-response" CHARS="текст каптчи"
wait seconds=2
' ну и само нажатие ENTER 
EVENT TYPE=KEYPRESS SELECTOR="#default-response" KEY=13


тестил на показаном сайте , вроде все работало

kolshix пишет

тестил каптчу на вашем сайте, так как тоже осваиваю тему криптовалюты

Блин, а вот две предпоследние команды вместе не пробовал, ща затестю.....

kolshix пишет

тестил на показаном сайте , вроде все работало

Да!!! Мы её сделали!!!:rock:( одна голова хорошо, а много лучше), благодарю за оказаную помощь. Вот ещё бы хумановскую капчу победить....( никто не заморачивался?), но наскока я знаю iMacros не дружит со флеш.....:/

stars1981 пишет
kolshix пишет

тестил на показаном сайте , вроде все работало

Да!!! Мы её сделали!!!:rock:( одна голова хорошо, а много лучше), благодарю за оказаную помощь. Вот ещё бы хумановскую капчу победить....( никто не заморачивался?), но наскока я знаю iMacros не дружит со флеш.....:/

оффтоп
Это там где вещи всякие перемещать ? если да , то заметил закономерность, если удалить с браузера все дополнения , кеш и куки  и впервые регистрироваться на сайте , то он определит ваш браузер как примитивный и не будет запрашивать такого рода капчи а будет запрашивать от solve media , хотя эта закономерность может быть связана с ip страны , но закономерность есть это 100%

kolshix пишет

Это там где вещи всякие перемещать ?

Она самая!!!

Доброго времени суток!!! И снова я :blush:. Долго наблюдал за своим сборщиком крипты, всё отлично работает, но оказывается, что почти половина капч не распознаётся ( пишут хрень всякую ), а бабло минусуется. Так как работаю с рукапчей, нашол такую команду "отправка жалобы на неправельно разгаданую капчу"

скрытый текст

Выделить код

Код:

code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=reportbad&id=' + capthId + n;

но вот до конца не могу вкурить, как её использовать в js. С apikey понятно- вставляем так же как и при отправке скрина на распознание(если конечно я правильно думаю), а вот с capthId как быть, что писать, где брать? Всё это дело нужно вставить в условие:

Выделить код

Код:

var s = ("ru.ifaucet.net/"+iimGetLastExtract()+".iim");
//alert(s)
var err_s = 1

if (err_s == 1){
iimPlay("CODE:SET !EXTRACT NULL");
        iimPlay(s,60);
        err=iimGetLastExtract();//это текст на странице, оповещающий что капча неверна
        //alert(err)
        while (err !== '' && err != '#EANF#' && err_s <= max_err)
              {
                  //здесь нужно отправить жалобу!!!
        iimPlay("CODE:WAIT SECONDS=2");
                err_s++;
                iimPlay(s,60);
                err=iimGetLastExtract(); //это текст на странице, оповещающий что капча неверна
                }
    
        iimPlay("CODE:WAIT SECONDS=3\n TAB CLOSEALLOTHERS");
        }

отредактировано, InfSub


Покажите пожалуйста ученнику, как это оформить!!! :)

Правила, пункт 3.3
Запрещено: Использовать мат, а также оскорбления и/или грубые выражения (в том числе в замаскированной форме)

InfSub

stars1981 пишет

а вот с capthId как быть, что писать, где брать?

читаем ман на оффсайте, есть два вида возврата капчи, есть просто возврат текста, используется большинством, есть возврат id-капчи и возврат текста по id и т.д.

InfSub пишет

читаем ман на оффсайте

На офсайте чего? На рукапче всё перечитал( и не токо на рукапче), я ещё плохо понимаю (иногда ваще не понимаю) что и как применять. Мне примеры нужны с коментами, тогда уж я допру со временем ( методом проб и ошибок) как этот пример к своему коду прикрутить. Черканите примерчики если не сложно. Может в моём горе коде, чегото нехватает для наглядности, чтоб накидать, хотябы приблизительное решение отправки этой жалобы.....:/

stars1981 пишет

На рукапче всё перечитал( и не токо на рукапче)

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

не видел ни одного примера на imacros чтоб отсылал жалобы ,  хотя может и существует .

Для отправки жалоб нужно знать ID каптчи, а форма отправки каптчи для imacros не получает id /  я на одном из сайтов для разгадки каптчи попросил создать вариант получения текста каптчи и его id  за  одно разгадывание через примитивную форму для imacros /  рукаптча пишет , что пока работает для imacros некоректно  , ведутся работы по усовершенствованию сайта , вот такая вот информация

Скрипт выше от stars1981 я уже встречал , там много недаработок // imacros такая штука , что за ним нужно постоянно следить // если imacros работает более чем на 5 сайтах , нужен мониторинг через iimDisplay  // пишу из собственногго опыта , так как с imacros работаю более чем на 25 сайтах , и везде постоянно нахожу собственноручные баги + баги из-за обновления сайтов !!!

общение с ТП rucaptcha по проблеме (цитата):

Я ----
уже достало данное сообщение от рукапчи, разгадка 55-60 секунд , потом опять ошибка ,
Тестировал работу на
2-х компьютерах (МОСКВА и ДОНЕЦК)
3-х браузерах(Firefo, Pale moon, Хромиум ) и на
3-х независимых ip
Везде такая фигня!! а когда заходишь в кабинет, то сообщения что капча разгадана за 70-90 секунд как мне обойти эту надоевшую ошибку я получается выкидываю деньги на ветер, так как не могу ожидать эту разгадку 90 секунд ??? !!!
https://yadi.sk/i/_-P7bAcfecUEs

Поддержка -----
Добрый день.
В данный момент мы перерабатываем страницу imacros.html, что бы устранить эту проблему. На днях выйдет обновление

Я ----
о отлично, а то отклик 60 секунд это полный провал !!

Поддержка----
отклик в 60 секунд некоторое время сохранится. А вот то, что после 60 секунд 404 появляется это сегодня должны исправить

отредактировано близко к тексту, использовать грубые выражения, даже в цитатах - не рекомендуется, InfSub

kolshix пишет

Для отправки жалоб нужно знать ID каптчи, а форма отправки каптчи для imacros не получает id /  я на одном из сайтов для разгадки каптчи попросил создать вариант получения текста каптчи и его id  за  одно разгадывание через примитивную форму для imacros /  рукаптча пишет , что пока работает для imacros некоректно

по поводу rucaptcha, возможно и так, писал скрипт для antigate, там работает, хотя тоже не всегда корректно, в тот момент, выдавало не корректный ответ, позже не проверял (но предполагаю, что проблема была в работниках, которые решили подзаработать денег, такое бывает на всех сервисах)

kolshix пишет

не могу ожидать эту разгадку 90 секунд ??? !!!

По этому поводу я с ними общался 4-ре месяца назад......Переписка растянулась на 3-4 дня в итоге пообещали тоже что и тебе, больше я их пока не долбил....Походу с нова придётся поматериться :mad:...

InfSub пишет

писал скрипт для antigate, там работает, хотя тоже не всегда корректно

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

скрытый текст

Выделить код

Код:

var keyApi = new Array();
keyApi['Recaptha'] = 'СЮДА_КЛЮЧ_РУКАПЧА';
keyApi['Socialink'] = 'СЮДА_КЛЮЧ_СОЦИАЛИНК';

var antiGateSystem = '2'; //Выбор ситемы распознавания капч. Вставте на 1 если Socialink или 2 если ruCaptcha

var xapoWallet = 'СЮДА_EMAIL_XAPO_КОШЕЛЬКА'; //Ваш XAPO кошелек

var passFreebitco = 'СЮДА_ПАРОЛЬ_ДЛЯ_ВХОДА_НА_САЙТ';  //Пароль для сайта Freebitco.in

var faucetOn = new Array();
// ВКЛ-ВЫКЛ сбор с определённых сайтов 1 = ВКЛ , 0 = ВЫКЛ (просто меняйте цыфру)
    faucetOn['01_freebitco'] = 1;                  // freebitco.in
    faucetOn['02_bitcoinker'] = 1;                 // bitcoinker.com
    faucetOn['03_moonbit'] = 1;                    // moonbit.co.in
    faucetOn['04_motherfaucet'] = 1;               // motherfaucet.com  
    
//=========================================================================================================================

var n = '\n';
var code = '';
var start_macro = '';
var date = new Date();

start_macro +='CODE:' + n;
start_macro +='SET !EXTRACT_TEST_POPUP NO' + n;
start_macro +='SET !ERRORIGNORE YES' + n;
start_macro +='SET !ERRORCONTINUE YES' + n;
start_macro +='SET !TIMEOUT_STEP 0' + n;

last_sbor = new Array();
last_sbor['freebitco'] = 0;
last_sbor['bitcoinker'] = 0;
last_sbor['moonbit'] = 0;
last_sbor['motherfaucet'] = 0;

function time(){
    return parseInt(new Date().getTime()/1000);
}

function SaveCapthaRecaptha (file_name){
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE=' + file_name + ' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + n;
    
    iimPlay(code, 60);
}

function SaveCapthaSolve (file_name){
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE=' + file_name + ' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + n;
    
    iimPlay(code, 60);
}

function GetRucaptcha (file_name,apikey){
    
    var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=file:///C:/FMACROS/form_api.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\' + file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract();

    var capthId = str.replace('OK|','');

    switch (capthId){
        case 'ERROR_NO_SLOT_AVAILABLE':
            code = '';
            code += start_macro;
            code += 'TAB T=1' + n;
            code += 'WAIT SECONDS=10' + n;        
            return GetRucaptcha (file_name,apikey);    
            break;
        default:    
            result['c_text'] = GetRucaptchaTEXT (capthId,apikey,file_name);
            result['c_id'] = capthId;
    }
    
    return result;
    
}

function GetRucaptchaTEXT (capthId,apikey,file_name){
    
    var result = 'ERROR';
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=get&id=' + capthId + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
            
    iimPlay(code,60);
    var str = iimGetLastExtract();

    var capth = str.replace('OK|','');
            
    switch (capth){
    case 'CAPCHA_NOT_READY':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=10' + n;
        iimPlay(code,60);
        
        result = GetRucaptchaTEXT (capthId,apikey);
        break;
    case 'ERROR_KEY_DOES_NOT_EXIST':

        return result = 'ERROR';
    
        break;
    case 'ERROR_WRONG_ID_FORMAT':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_WRONG_CAPTCHA_ID':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_CAPTCHA_UNSOLVABLE':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'REFRESH' + n;
        iimPlay(code,60);
        
        return result = GetRucaptcha (file_name,apikey);
        
        break;
    default:
        var result = capth;
    }
    
    return result;
}

function reportRucaptcha(apikey,capthId){
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=reportbad&id=' + capthId + n;
    code += 'WAIT SECONDS=5' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
}

function GetSocialink (file_name,apikey){
    
    var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=file:///C:/FMACROS/form_api_socialink.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\' + file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract();

    var capthId = str.replace('OK|','');

    switch (capthId){
        case 'ERROR_NO_SLOT_AVAILABLE':
            code = '';
            code += start_macro;
            code += 'TAB T=1' + n;
            code += 'WAIT SECONDS=1' + n;        
            iimPlay(code,60);
            return GetSocialink (file_name,apikey);    
            break;
        default:    
            result['c_text'] = GetSocialinkTEXT (capthId,apikey,file_name);
            result['c_id'] = capthId;
    }
    
    return result;
    
}

function GetSocialinkTEXT (capthId,apikey,file_name){
    
    var result = 'ERROR';
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://www.socialink.ru/res.php?key=' + apikey + '&action=get&id=' + capthId + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
            
    iimPlay(code,60);
    var str = iimGetLastExtract();

    var capth = str.replace('OK|','');
            
    switch (capth){
    case 'CAPCHA_NOT_READY':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=10' + n;
        iimPlay(code,60);
        
        result = GetSocialinkTEXT (capthId,apikey);
        break;
    case 'ERROR_KEY_DOES_NOT_EXIST':

        return result = 'ERROR';
    
        break;
    case 'ERROR_WRONG_ID_FORMAT':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_WRONG_CAPTCHA_ID':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_CAPTCHA_UNSOLVABLE':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'REFRESH' + n;
        iimPlay(code,60);
        
        return result = GetSocialink (file_name,apikey);
        
        break;
    default:
        var result = capth;
    }
    
    return result;
}

function reportSocialink(apikey,capthId){
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://www.socialink.ru/res.php?key=' + apikey + '&action=reportbad&id=' + capthId + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
}

function GetCaptcha(antigate,file_name,keyApi){
    switch(antigate){
    case '1':
        return GetSocialink (file_name,keyApi['Socialink']);
    case '2':
        return GetRucaptcha (file_name,keyApi['Recaptha']);
    default: 
        return GetSocialink (file_name,keyApi['Socialink']);
    }
}

function reportCaptcha(antigate,keyApi,cId){
    switch(antigate){
    case '1':
        reportSocialink (keyApi['Socialink'],cId);
        break;
    case '2':
        reportRucaptcha (keyApi['Recaptha'],cId);
        break;
    default: 
        reportSocialink (keyApi['Socialink'],cId);
        break;
    }
}

function Faucet_01_freebitco(antiGateSystem){
    

        var file = 'test1.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/MwW6cV' + n;
    
        iimPlay(code, 60);
    
        code = 'CODE:';
        code += 'TAB T=1' + n;
        code += 'TAG POS=1 TYPE=BUTTON ATTR=ID:switch_to_login_button' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:login_form ATTR=ID:login_form_btc_address CONTENT=' + xapoWallet + n;
        code += 'SET !ENCRYPTION NO' + n;
        code += 'TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:login_form ATTR=ID:login_form_password CONTENT=' + passFreebitco + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:login_form ATTR=ID:login_button' + n;
        
        iimPlay(code, 60);
    
        SaveCapthaRecaptha (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        iimDisplay(captha);
    
        if(captha=='ERROR'){
            return;
        }
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:free_play_form ATTR=ID:recaptcha_response_field CONTENT=' + captha + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:free_play_form ATTR=ID:free_play_form_button' + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
        
        iimPlay(code, 60);

        iimPlay("CODE:TAG POS=1 TYPE=P ATTR=ID:free_play_error EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err == 'Incorrect captcha entered') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_01_freebitco(antiGateSystem);
        }
}

function Faucet_02_bitcoinker(antiGateSystem){
    

        var file = '02_bitcoinker.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/Yf0Idp' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:MainForm ATTR=*' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:BodyPlaceholder_XapoEmailTextbox CONTENT=' + xapoWallet + n;
    
        iimPlay(code, 60);
    
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        
        iimDisplay(captha);
    
        if(captha=='ERROR'){
            return;
        }
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:SubmitButton1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
    
        iimPlay(code, 60);
        
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessage EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err !== '' && err !== '#EANF#') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_02_bitcoinker(antiGateSystem);
        }
}

function Faucet_03_moonbit(antiGateSystem){
    

        var file = '03_moonbit.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/bmKzfI' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:BodyPlaceholder_PaymentAddressTextbox CONTENT=' + xapoWallet + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:BodyPlaceholder_SignInButton' + n;
        code += 'TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:MainForm ATTR=ID:SubmitButton' + n;
    
        iimPlay(code, 60);
    
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        
        iimDisplay(captha);
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:PagePopupPlaceholder_ClaimButton' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
    
        iimPlay(code, 60);
        
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessage EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err !== '' && err !== '#EANF#') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_03_moonbit(antiGateSystem);
        }
}

function Faucet_04_motherfaucet(antiGateSystem){
    

        var file = '04_motherfaucet.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/ojB0a0' + n;
    
        iimPlay(code, 60);
    
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        
        iimDisplay(captha);
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:earn_form ATTR=ID:username CONTENT=' + xapoWallet + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:earn_form ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=SPAN ATTR=TXT:Claw-lect<SP>your<SP>prize!' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
    
        iimPlay(code, 60);
        
        iimPlay("CODE:TAG POS=1 TYPE=SPAN ATTR=CLAS:alertFailure EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err == 'Wrong captcha, try again!') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_04_motherfaucet(antiGateSystem);
        }
}

while (100>0){
    
    var sec = time();
    
    report='';
    report+='Сейчас        ' + sec + n;
    report+='bitcoinker -  ' + (last_sbor['bitcoinker']+900) + n;
    report+='motherfaucet -     ' + (last_sbor['motherfaucet']+900) + n;
    report+='freebitco -   ' + (last_sbor['freebitco']+3600) + n;
    report+='moonbit -     ' + (last_sbor['moonbit']+3600) + n;
    iimDisplay(report);
    
    if ((last_sbor['freebitco']+3600) < sec && faucetOn['01_freebitco'] == 1){
        Faucet_01_freebitco(antiGateSystem);
        last_sbor['freebitco'] = time();
    }
    
    if ((last_sbor['bitcoinker']+900) < sec && faucetOn['02_bitcoinker'] == 1){
        Faucet_02_bitcoinker(antiGateSystem);
        last_sbor['bitcoinker'] = time();
    }
    
    if ((last_sbor['moonbit']+3600) < sec && faucetOn['03_moonbit'] == 1){
        Faucet_03_moonbit(antiGateSystem);
        last_sbor['moonbit'] = time();
    }
    
    if ((last_sbor['motherfaucet']+900) < sec && faucetOn['04_motherfaucet'] == 1){
        Faucet_04_motherfaucet(antiGateSystem);
        last_sbor['motherfaucet'] = time();
    }
    
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'URL GOTO=file:///C:/FMACROS/pause.html' + n;
    code += 'WAIT SECONDS=30' + n;
    iimPlay(code, 60);
    
    
}


кто, что скажет....?

stars1981 пишет

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

скрытый текст

Выделить код

Код:

var keyApi = new Array();
keyApi['Recaptha'] = 'СЮДА_КЛЮЧ_РУКАПЧА';
keyApi['Socialink'] = 'СЮДА_КЛЮЧ_СОЦИАЛИНК';

var antiGateSystem = '2'; //Выбор ситемы распознавания капч. Вставте на 1 если Socialink или 2 если ruCaptcha

var xapoWallet = 'СЮДА_EMAIL_XAPO_КОШЕЛЬКА'; //Ваш XAPO кошелек

var passFreebitco = 'СЮДА_ПАРОЛЬ_ДЛЯ_ВХОДА_НА_САЙТ';  //Пароль для сайта Freebitco.in

var faucetOn = new Array();
// ВКЛ-ВЫКЛ сбор с определённых сайтов 1 = ВКЛ , 0 = ВЫКЛ (просто меняйте цыфру)
    faucetOn['01_freebitco'] = 1;                  // freebitco.in
    faucetOn['02_bitcoinker'] = 1;                 // bitcoinker.com
    faucetOn['03_moonbit'] = 1;                    // moonbit.co.in
    faucetOn['04_motherfaucet'] = 1;               // motherfaucet.com  
    
//=========================================================================================================================

var n = '\n';
var code = '';
var start_macro = '';
var date = new Date();

start_macro +='CODE:' + n;
start_macro +='SET !EXTRACT_TEST_POPUP NO' + n;
start_macro +='SET !ERRORIGNORE YES' + n;
start_macro +='SET !ERRORCONTINUE YES' + n;
start_macro +='SET !TIMEOUT_STEP 0' + n;

last_sbor = new Array();
last_sbor['freebitco'] = 0;
last_sbor['bitcoinker'] = 0;
last_sbor['moonbit'] = 0;
last_sbor['motherfaucet'] = 0;

function time(){
    return parseInt(new Date().getTime()/1000);
}

function SaveCapthaRecaptha (file_name){
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE=' + file_name + ' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + n;
    
    iimPlay(code, 60);
}

function SaveCapthaSolve (file_name){
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE=' + file_name + ' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + n;
    
    iimPlay(code, 60);
}

function GetRucaptcha (file_name,apikey){
    
    var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=file:///C:/FMACROS/form_api.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\' + file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract();

    var capthId = str.replace('OK|','');

    switch (capthId){
        case 'ERROR_NO_SLOT_AVAILABLE':
            code = '';
            code += start_macro;
            code += 'TAB T=1' + n;
            code += 'WAIT SECONDS=10' + n;        
            return GetRucaptcha (file_name,apikey);    
            break;
        default:    
            result['c_text'] = GetRucaptchaTEXT (capthId,apikey,file_name);
            result['c_id'] = capthId;
    }
    
    return result;
    
}

function GetRucaptchaTEXT (capthId,apikey,file_name){
    
    var result = 'ERROR';
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=get&id=' + capthId + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
            
    iimPlay(code,60);
    var str = iimGetLastExtract();

    var capth = str.replace('OK|','');
            
    switch (capth){
    case 'CAPCHA_NOT_READY':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=10' + n;
        iimPlay(code,60);
        
        result = GetRucaptchaTEXT (capthId,apikey);
        break;
    case 'ERROR_KEY_DOES_NOT_EXIST':

        return result = 'ERROR';
    
        break;
    case 'ERROR_WRONG_ID_FORMAT':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_WRONG_CAPTCHA_ID':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_CAPTCHA_UNSOLVABLE':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'REFRESH' + n;
        iimPlay(code,60);
        
        return result = GetRucaptcha (file_name,apikey);
        
        break;
    default:
        var result = capth;
    }
    
    return result;
}

function reportRucaptcha(apikey,capthId){
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=reportbad&id=' + capthId + n;
    code += 'WAIT SECONDS=5' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
}

function GetSocialink (file_name,apikey){
    
    var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=file:///C:/FMACROS/form_api_socialink.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\' + file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract();

    var capthId = str.replace('OK|','');

    switch (capthId){
        case 'ERROR_NO_SLOT_AVAILABLE':
            code = '';
            code += start_macro;
            code += 'TAB T=1' + n;
            code += 'WAIT SECONDS=1' + n;        
            iimPlay(code,60);
            return GetSocialink (file_name,apikey);    
            break;
        default:    
            result['c_text'] = GetSocialinkTEXT (capthId,apikey,file_name);
            result['c_id'] = capthId;
    }
    
    return result;
    
}

function GetSocialinkTEXT (capthId,apikey,file_name){
    
    var result = 'ERROR';
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://www.socialink.ru/res.php?key=' + apikey + '&action=get&id=' + capthId + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
            
    iimPlay(code,60);
    var str = iimGetLastExtract();

    var capth = str.replace('OK|','');
            
    switch (capth){
    case 'CAPCHA_NOT_READY':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=10' + n;
        iimPlay(code,60);
        
        result = GetSocialinkTEXT (capthId,apikey);
        break;
    case 'ERROR_KEY_DOES_NOT_EXIST':

        return result = 'ERROR';
    
        break;
    case 'ERROR_WRONG_ID_FORMAT':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_WRONG_CAPTCHA_ID':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_CAPTCHA_UNSOLVABLE':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'REFRESH' + n;
        iimPlay(code,60);
        
        return result = GetSocialink (file_name,apikey);
        
        break;
    default:
        var result = capth;
    }
    
    return result;
}

function reportSocialink(apikey,capthId){
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=http://www.socialink.ru/res.php?key=' + apikey + '&action=reportbad&id=' + capthId + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
}

function GetCaptcha(antigate,file_name,keyApi){
    switch(antigate){
    case '1':
        return GetSocialink (file_name,keyApi['Socialink']);
    case '2':
        return GetRucaptcha (file_name,keyApi['Recaptha']);
    default: 
        return GetSocialink (file_name,keyApi['Socialink']);
    }
}

function reportCaptcha(antigate,keyApi,cId){
    switch(antigate){
    case '1':
        reportSocialink (keyApi['Socialink'],cId);
        break;
    case '2':
        reportRucaptcha (keyApi['Recaptha'],cId);
        break;
    default: 
        reportSocialink (keyApi['Socialink'],cId);
        break;
    }
}

function Faucet_01_freebitco(antiGateSystem){
    

        var file = 'test1.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/MwW6cV' + n;
    
        iimPlay(code, 60);
    
        code = 'CODE:';
        code += 'TAB T=1' + n;
        code += 'TAG POS=1 TYPE=BUTTON ATTR=ID:switch_to_login_button' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:login_form ATTR=ID:login_form_btc_address CONTENT=' + xapoWallet + n;
        code += 'SET !ENCRYPTION NO' + n;
        code += 'TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:login_form ATTR=ID:login_form_password CONTENT=' + passFreebitco + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:login_form ATTR=ID:login_button' + n;
        
        iimPlay(code, 60);
    
        SaveCapthaRecaptha (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        iimDisplay(captha);
    
        if(captha=='ERROR'){
            return;
        }
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:free_play_form ATTR=ID:recaptcha_response_field CONTENT=' + captha + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:free_play_form ATTR=ID:free_play_form_button' + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
        
        iimPlay(code, 60);

        iimPlay("CODE:TAG POS=1 TYPE=P ATTR=ID:free_play_error EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err == 'Incorrect captcha entered') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_01_freebitco(antiGateSystem);
        }
}

function Faucet_02_bitcoinker(antiGateSystem){
    

        var file = '02_bitcoinker.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/Yf0Idp' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:MainForm ATTR=*' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:BodyPlaceholder_XapoEmailTextbox CONTENT=' + xapoWallet + n;
    
        iimPlay(code, 60);
    
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        
        iimDisplay(captha);
    
        if(captha=='ERROR'){
            return;
        }
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:SubmitButton1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
    
        iimPlay(code, 60);
        
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessage EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err !== '' && err !== '#EANF#') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_02_bitcoinker(antiGateSystem);
        }
}

function Faucet_03_moonbit(antiGateSystem){
    

        var file = '03_moonbit.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/bmKzfI' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:BodyPlaceholder_PaymentAddressTextbox CONTENT=' + xapoWallet + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:BodyPlaceholder_SignInButton' + n;
        code += 'TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:MainForm ATTR=ID:SubmitButton' + n;
    
        iimPlay(code, 60);
    
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        
        iimDisplay(captha);
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:MainForm ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:PagePopupPlaceholder_ClaimButton' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
    
        iimPlay(code, 60);
        
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessage EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err !== '' && err !== '#EANF#') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_03_moonbit(antiGateSystem);
        }
}

function Faucet_04_motherfaucet(antiGateSystem){
    

        var file = '04_motherfaucet.png';
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://goo.gl/ojB0a0' + n;
    
        iimPlay(code, 60);
    
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        
        iimDisplay(captha);
    
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:earn_form ATTR=ID:username CONTENT=' + xapoWallet + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:earn_form ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'TAG POS=1 TYPE=SPAN ATTR=TXT:Claw-lect<SP>your<SP>prize!' + n;
        code += 'WAIT SECONDS=2' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
    
        iimPlay(code, 60);
        
        iimPlay("CODE:TAG POS=1 TYPE=SPAN ATTR=CLAS:alertFailure EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err == 'Wrong captcha, try again!') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_04_motherfaucet(antiGateSystem);
        }
}

while (100>0){
    
    var sec = time();
    
    report='';
    report+='Сейчас        ' + sec + n;
    report+='bitcoinker -  ' + (last_sbor['bitcoinker']+900) + n;
    report+='motherfaucet -     ' + (last_sbor['motherfaucet']+900) + n;
    report+='freebitco -   ' + (last_sbor['freebitco']+3600) + n;
    report+='moonbit -     ' + (last_sbor['moonbit']+3600) + n;
    iimDisplay(report);
    
    if ((last_sbor['freebitco']+3600) < sec && faucetOn['01_freebitco'] == 1){
        Faucet_01_freebitco(antiGateSystem);
        last_sbor['freebitco'] = time();
    }
    
    if ((last_sbor['bitcoinker']+900) < sec && faucetOn['02_bitcoinker'] == 1){
        Faucet_02_bitcoinker(antiGateSystem);
        last_sbor['bitcoinker'] = time();
    }
    
    if ((last_sbor['moonbit']+3600) < sec && faucetOn['03_moonbit'] == 1){
        Faucet_03_moonbit(antiGateSystem);
        last_sbor['moonbit'] = time();
    }
    
    if ((last_sbor['motherfaucet']+900) < sec && faucetOn['04_motherfaucet'] == 1){
        Faucet_04_motherfaucet(antiGateSystem);
        last_sbor['motherfaucet'] = time();
    }
    
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'URL GOTO=file:///C:/FMACROS/pause.html' + n;
    code += 'WAIT SECONDS=30' + n;
    iimPlay(code, 60);
    
    
}


кто, что скажет....?

Ненавижу когда без пояснения создают скрипт ,  для меня относительно понятно , сам подобного рода пытаюсь написать , вот только  я не понял , где часть отправки сообщения о ошибочной разгадке ?

kolshix пишет

я не понял , где часть отправки сообщения о ошибочной разгадке ?

Выделить код

Код:

function reportRucaptcha(apikey,capthId)...
function reportSocialink(apikey,capthId)...

18-02-2015 16:05:40

kolshix пишет

Ненавижу когда без пояснения создают скрипт

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

А всеравно , не дорос я ещё , что скрипт делает я понял , но откуда id каптчи берет не понял,
что где-то тут id присваевается понял

скрытый текст

Выделить код

Код:

function GetRucaptcha (file_name,apikey){
  var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO=file:///C:/FMACROS/form_api.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT=' + apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\' + file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract();
    var capthId = str.replace('OK|','')

че это за команда ?
URL GOTO=file:///C:/FMACROS/form_api.html

и откуда id на рукаптче, никогда вроде бы не высвечивалась после разгадки , или id это сам 'key' + 'текст разгадки' ну гдето так ?!

Выделить код

Код:

URL GOTO=http://rucaptcha.com/res.php?key=ключ_рукапчи&action=get&id=refrtg


Поясните для меня далёкого, если не сложно

InfSub пишет

разобраться можно достаточно быстро

Сможешь на основе этого скрипта нарисовать эту грёбаную отправку жалобы для моего условия вот пример iim с которым работает условие выложеное выше:

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
CMDLINE !DATASOURCE dann.csv

SET SERV {{!COL1}}
SET SERVICE EVAL("var SERV=\"{{!COL1}}\"; if(SERV == 1){\"http://rucaptcha.com/imacros.html\";} else \"http://antigate.com/imacros.html\";")
SET API EVAL ("var SERV=\"{{!COL1}}\"; if(SERV == 1) \"{{!COL2}}\"; else \"{{!COL3}}\";")

SET BTC {{!COL5}}
SET PASS {{!COL8}}
SET EMAIL {{!COL7}}
SET LOGIN {{!COL6}}

TAB OPEN
TAB T=2
URL GOTO=http://goo.gl/tB3e5N
WAIT SECONDS=#DOWNLOADCOMPLETE#
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:bitcoin CONTENT={{BTC}}
WAIT SECONDS=1
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch.png
TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1

TAB OPEN
TAB T=3
SET !TIMEOUT_PAGE 240
URL GOTO={{SERVICE}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\capch.png
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://rucaptcha.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=1
TAB CLOSE

TAB T=2
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=ID:claim-btn
WAIT SECONDS=1
FILEDELETE NAME=C:\CAPCH\capch.png
TAB T=2
SET !EXTRACT NULL
TAG POS=1 TYPE=DIV ATTR=TXT:Captcha<SP>incorrect. EXTRACT=TXT
TAB T=1
TAB CLOSEALLOTHERS

если я правильно понимаю, то запрос capthId нужно делать в iim, или отдельном js который будет вызываться из этого iim


ПОЖАЛУЙСТА!!!:cry:

kolshix пишет

че это за команда ?
URL GOTO=file:///C:/FMACROS/form_api.html

форма сохранена локально, на компе, скорее всего та, что macros.html

kolshix пишет

и откуда id на рукаптче

говорю же, по аналогии с антигейтом, должно включаться в настройках сервиса

InfSub пишет

форма сохранена локально, на компе, скорее всего та, что macros.html

Да форма на компе..

код:

Выделить код

Код:

var str = iimGetLastExtract();
var capthId = str.replace('OK|','')

возвращает ID в виде:
OK|цифровой_id_капчи

18-02-2015 16:31:31

stars1981 пишет

Сможешь на основе этого скрипта нарисовать эту грёбаную отправку жалобы для моего условия

включи id для начала, а там по аналогии - ни чего сложного, самому написать минут 5, ну от силы пол часа со всеми условиями

18-02-2015 16:33:31

stars1981 пишет

если я правильно понимаю, то запрос capthId нужно делать в iim, или отдельном js который будет вызываться из этого iim

и естественно, если вы собираетесь делать проверку на валидность капчи, это должен делать js, в iim вы цикла, работающего на условиях - не создадите

InfSub пишет

код:

Выделить код

Код:

var str = iimGetLastExtract();
var capthId = str.replace('OK|','')

возвращает ID в виде:
OK|цифровой_id_капчи

... говорю же, по аналогии с антигейтом, должно включаться в настройках сервиса...

Этот ответ именно то , что нужно , отрубил разом 50 вопросов которые я хотел задать , теперь я так понимаю когда получил id,  мне достаточно сделать так ???

код

Выделить код

Код:

тут разгадать  
code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=get&id=' + capthId + n;
тут пожаловаться 
code += 'URL GOTO=http://rucaptcha.com/res.php?key=' + apikey + '&action=reportbad&id=' + capthId + n;


18-02-2015 16:40:29

InfSub пишет

и естественно, если вы собираетесь делать проверку на валидность капчи, это должен делать js, в iim вы цикла, работающего на условиях - не создадите

--- а я теоретически знаю как через iim создавать циклы с условиями, через eval (if else) url goto= {{}} на iim файл:

относительно все просто
1 поставить пропуск ошибок
2 создать код разгадки с сохранением результата каптчи в документ YES.txt
3 создать !extract EVAL  в котором будет такие варианты к примеру на true  и false   (captca='{{EXTRACT}}' if (captca=='true'){captca=yes};if (captca==false){captca=NO} )
4 создать файл для повторной разгадки, назовем его NOFile.iim и в него нужно поместить сохранение каптчи в текстовый документ под названием NO.txt
5 команда URL GOTO=imacros://run/?m=path/{{!EXTRACT}}File.iim -------если будет YES{{!EXTRACT}}File.iim, то команда пропустится
6 считывание информации с текстового документа  либо YES.txt либо NO.txt  все зависит что содержит !EXTRACT
7 Удаление текстовых документов NO и YES

Это если есть желание  заняться ерундой , то можно и накалякать , можно ещё и циклы написать

но гемору будет , даже не хочу пробовать , так если побаловаться охото )))


Примечание: объединил часть постов, убрал лишнее (event/eval), не относящееся к обсуждаемой проблеме, InfSub

да - все верно

18-02-2015 16:51:51

InfSub пишет

отрубил разом 50 вопросов которые я хотел задать

вообще, если мне не изменяет память, то на антигейте - не плохой ман на эту тему, в отличии от рукапчи

18-02-2015 16:53:30

kolshix пишет

но гемору будет , даже не хочу пробовать , так если побаловаться охото )))

это действительно, очень кривой вариант, по этому, управляющий js, в данном случае - предпочтительней

Походу на рукаптче нет настройки отображения id каптчи ? либо я чегото не нашёл ?

kolshix пишет

Походу на рукаптче нет настройки отображения id каптчи ? либо я чегото не нашёл ?

спросите у ТП, скорее всего "100%"-ное распознование и есть опция, для включения этой настройки

Рукаптча
Добрый день.
Лучше настроить автоматическую проверку правильности ответа и, если ответ не подошёл, отправлять reportbad на этот ответ.
Возможности потом руками выбрать и отправить ошибки - нет.
2015-02-18 15:27:42
Вы
только час назад нашёл параметр reportbad , как id каптчи получит ?
2015-02-18 17:31:29
Поддержка
он отдаётся на загрузку капчи через API, если грузите через IMACROS, то только в новой версии imacros.html будет эта возможность

ЧЁ такое  imacros.html ???

Раз настала тишина, значит наверное все кубатурят над "отправкой жалобы", так же как и я.... Вопрос- вызов iim из js выглядит так:

Выделить код

Код:

iimPlay("path/file.iim")

можно ли запустить этот iim с определённой строки, если да, то как это выглядит? Анологично, можно ли js запустить с определённой строки?:rolleyes:

Подскажите как правильно в iim объявить переменную, чтобы значением была строка кода iim, потом в js выполнить этот код. Возможно ли ваще такое?

подскажите что за ошибка
не могу вкурить
[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 192"  data: no], line: 188 (Error code: 991)



как же я долго мучился , - был большой код и где ошибка тяжеловато найти -- короче ошибка из-за несуществующего файла

Есть такой код:

Выделить код

Код:

iimPlay('CODE:URL GOTO=сайт');    
    iimPlay('CODE:TAG POS=1 TYPE=B ATTR=TXT:0.000* EXTRACT=TXT');    
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:amount CONTENT={{!EXTRACT}}');

не срабатывает эта конструкция CONTENT={{!EXTRACT}}
как можно по-другому реализовать этот код?

попробуй так 
    iimPlay('CODE:TAB T=1 \n TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:amount CONTENT={{!EXTRACT}}');

kolshix пишет

не могу вкурить

Функции куришь? :lol:. У меня тож вылазят подобные после окончания работы js, или когда iim не существует, который исполнить надо...
А ты вот мне подскажи (я знаю, что ты знаешь, :) больше меня) Как правильно передать значения переменных из iim в js? Пробую вот так:

скрытый текст
iim

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
CMDLINE !DATASOURCE dann.csv
'==================================================================================================================
SET SERV {{!COL1}}
SET SERVICE EVAL("var SERV=\"{{!COL1}}\"; if(SERV == 1){\"http://rucaptcha.com/imacros.html\";} else if(SERV == 2){\"http://antigate.com/imacros.html\";} else \"http://socialink.ru/imacros.html\";")
SET API EVAL ("var SERV=\"{{!COL1}}\"; if(SERV == 1) \"{{!COL2}}\"; else if(SERV == 2) \"{{!COL3}}\"; else \"{{!COL4}}\";")
SET BTC {{!COL5}}
SET PASS {{!COL8}}
SET EMAIL {{!COL7}}
SET LOGIN {{!COL6}}
SET DOGE {{!COL9}}
SET LITE {{!COL10}}
'===================================================================================================================
ADD !EXTRACT {{SERVICE}}
ADD !EXTRACT {{API}}
ADD !EXTRACT {{BTC}}
ADD !EXTRACT {{PASS}}
ADD !EXTRACT {{EMAIL}}
ADD !EXTRACT {{LOGIN}}
ADD !EXTRACT {{DOGE}}
ADD !EXTRACT {{LITE}}

js

Выделить код

Код:

var SERVICE = iimGetLastExtract(SERVICE);
var API = iimGetLastExtract(API);
var BTC = iimGetLastExtract(BTC);
var PASS = iimGetLastExtract(PASS);
var EMAIL = iimGetLastExtract(EMAIL);
var LOGIN = iimGetLastExtract(LOGIN);
var DOGE = iimGetLastExtract(DOGE);
var LITE = iimGetLastExtract(LITE);


Чёт не робит!!! Где я тупанул?:/

stars1981 пишет

Пробую вот так:

скрытый текст
iim

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
CMDLINE !DATASOURCE dann.csv
'==================================================================================================================
SET SERV {{!COL1}}
SET SERVICE EVAL("var SERV=\"{{!COL1}}\"; if(SERV == 1){\"http://rucaptcha.com/imacros.html\";} else if(SERV == 2){\"http://antigate.com/imacros.html\";} else \"http://socialink.ru/imacros.html\";")
SET API EVAL ("var SERV=\"{{!COL1}}\"; if(SERV == 1) \"{{!COL2}}\"; else if(SERV == 2) \"{{!COL3}}\"; else \"{{!COL4}}\";")
SET BTC {{!COL5}}
SET PASS {{!COL8}}
SET EMAIL {{!COL7}}
SET LOGIN {{!COL6}}
SET DOGE {{!COL9}}
SET LITE {{!COL10}}
'===================================================================================================================
ADD !EXTRACT {{SERVICE}}
ADD !EXTRACT {{API}}
ADD !EXTRACT {{BTC}}
ADD !EXTRACT {{PASS}}
ADD !EXTRACT {{EMAIL}}
ADD !EXTRACT {{LOGIN}}
ADD !EXTRACT {{DOGE}}
ADD !EXTRACT {{LITE}}

js

Выделить код

Код:

var SERVICE = iimGetLastExtract(SERVICE);
var API = iimGetLastExtract(API);
var BTC = iimGetLastExtract(BTC);
var PASS = iimGetLastExtract(PASS);
var EMAIL = iimGetLastExtract(EMAIL);
var LOGIN = iimGetLastExtract(LOGIN);
var DOGE = iimGetLastExtract(DOGE);
var LITE = iimGetLastExtract(LITE);

Попробуй вот так :

Выделить код

Код:

iim 
SET !EXTRACT NULL   <=============== это нужно чтоб по 50 раз не смотреть что в буфере imacros 
SET !EXTRACT {{SERVICE}}
ADD !EXTRACT {{API}}
ADD !EXTRACT {{BTC}}
ADD !EXTRACT {{PASS}}
ADD !EXTRACT {{EMAIL}}
ADD !EXTRACT {{LOGIN}}
ADD !EXTRACT {{DOGE}}
ADD !EXTRACT {{LITE}}
js 
var SERVICE = iimGetLastExtract(1);
var API = iimGetLastExtract(2);
var BTC = iimGetLastExtract(3);
var PASS = iimGetLastExtract(4);
var EMAIL = iimGetLastExtract(5);
var LOGIN = iimGetLastExtract(6);
var DOGE = iimGetLastExtract(7);
var LITE = iimGetLastExtract(8);

или так , практически одно и тоже , только iim быстрее работать будет , но есть нюансы в работе с iimGetExtract (- это новая команда которая заменяет iimGetLastExtract , но работает не корректно)

Выделить код

Код:

iim
SET !EXTRACT NULL   <=============== это нужно чтоб по 50 раз не смотреть что в буфере imacros 
SET !EXTRACT {{SERVICE}}[EXTRACT]{{API}}[EXTRACT]{{BTC}}[EXTRACT]{{BTC}}[EXTRACT]{{PASS}}[EXTRACT]{{EMAIL}}[EXTRACT]{{LOGIN}}[EXTRACT]{{DOGE}}[EXTRACT]{{LITE}}
js 
var SERVICE = iimGetLastExtract(1);
var API = iimGetLastExtract(2);
var BTC = iimGetLastExtract(3);
var PASS = iimGetLastExtract(4);
var EMAIL = iimGetLastExtract(5);
var LOGIN = iimGetLastExtract(6);
var DOGE = iimGetLastExtract(7);
var LITE = iimGetLastExtract(8);

Texas пишет

не срабатывает эта конструкция CONTENT={{!EXTRACT}}
как можно по-другому реализовать этот код?

экстрасенсов тут нет, причины, по которым не срабатывает данный код, нужно искать на сайте, для этого и прописано в правилах данного раздела:

1.  Не рекомендуется:
1.2  Задавать вопрос без указания:
  1.2.4  Адреса сайта и страницы, на которой возникла проблема.

kolshix пишет

попробуй так      iimPlay('CODE:TAB T=1 \n TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:amount CONTENT={{!EXTRACT}}');

это ни чего не изменит

InfSub пишет
kolshix пишет

попробуй так      iimPlay('CODE:TAB T=1 \n TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:amount CONTENT={{!EXTRACT}}');

это ни чего не изменит

А вот и изменит (не всегда конечно), ни первый день такие приколы ловлю , понятно что и фреймы и прочие нюансы важны  , но одной из проблем вставки контента бывает из-за TAB T=1,2,3 ... - буквально дней 5 назад  по icq человеку помог решить аналогичную проблему

kolshix, какой нафиг TAB=2 в отдельно взятом iimPlay()?

19-02-2015 18:21:43
для открытой вкладки, будь она хоть TAB=10, в предыдущем iimPlay(), в новом, она будет TAB=1

InfSub пишет

kolshix, какой нафиг TAB=2 в отдельно взятом iimPlay()?

Бывают команды по табам перекидыват , a через iimPlay("CODE:") , каждая команда читается с нуля начинал на 1 , перекинуло на 2 , короче решал проблему добавлением tab t=? я просто не могу на видио записывать все приколы  с которыми сталкиваюсь

kolshix, читаем выше, повторяете мои слова - впрочем - нет, не повторяете... не знаю уж, что за приколы такие, но скорее ошибки в коде

19-02-2015 18:23:54
нет такого TAB=0

19-02-2015 18:27:31

can not parse macro line: TAB=0 (Error code: 910)

19-02-2015 18:28:53
и соответственно, код начинающийся на:

TAB=1
какой-то код

равнозначен:

какой-то код

по причине того, хотя бы, что загнан в отдельный iimPlay() т.е. по сути, является отдельным макросом, работающим с текущей закладкой, как с 1 (т.е. как с TAB=1)

kolshix пишет

Попробуй вот так :

спс!!! пашет!!! Едем дальше....;)


исправлено
рекомендую почитать правила, 2.3, 2.4 и 2.16

InfSub

по поводу TAB T=0 такие есть команды , ещё и TAB T=-1   все работает если несколько окон открыть и начать к примеру с 3 окна

у меня другой вопрос , где бы в исходниках поковырятся чтоб iimDispley был таким , ну или хотябы увеличить на 25-50 % , чтоб скролинга не было 

скрытый текст
12b0ae8a102ee719b40885109ef85c22.png

kolshix пишет

каждая команда читается с нуля начинал на 1 , перекинуло на 2

в общем, без конкретных примеров бага, не смотря на ваш опыт, считаю, что это не до конца отлаженный скрипт

kolshix пишет

TAB T=0 такие есть команды , ещё и TAB T=-1

да, такие есть, сорри, не заметил собственную опечатку (не TAB=0 a TAB T=0)

19-02-2015 18:59:55

kolshix пишет

где бы в исходниках поковырятся

не думаю, что это в открытом виде где-то лежит, впрочем, можете обратиться в раздел разработчиков расширений, может там кто-то что-то подскажет

да бывает , вот как я  имя файла попутал , со вчерашнего дня искал ошибку , которая выскакивала примерно в 400 строках  и каждый раз в другом месте , (особенность скрипта такая) , сначала пытался в левом окошке увидеть строку ошибки , но оно не показывало , а открывало редактор файла ,+ проблема , что нужно было за скриптом минут 15 следить (запустил 6 копий) ---- потом всеравно нашёл решение  как  отловить баг , создал ряд файлов
iimPlay("CODE:' строка 1")
iimPlay("CODE:' строка 2")
iimPlay("CODE:' строка 3")
iimPlay("CODE:' строка 4")

при ошибке , открывал редактор через нижнюю клавишу (там 3 штуки редактор , иконка вопросительный знак , и красный значек отмены в виде крестика)
ну и смотрел что в редакторе  строка 3
знал бы ранее такую хитрость , отловил бы за мин 40

19-02-2015 19:04:30

InfSub пишет
kolshix пишет

где бы в исходниках поковырятся

не думаю, что это в открытом виде где-то лежит, впрочем, можете обратиться в раздел разработчиков расширений, может там кто-то что-то подскажет

я уже imacros дополнение ковырял , просто слабо шарю , и может уже  кто-то тоже ковырял, предпологаю что в установочном файле можно поменять диапозон

offtop
Подскажите, пожалуйста,есть ли возможность

1) получить для дальнейшего использования значение
CONTENT=
без использования JavaScript, так как файерфокс не понимает команду IMAGECLICK



Что-то не получается:

скрытый текст

Выделить код

Код:

IMAGECLICK POS=1 IMAGE=amihappy.png CONFIDENCE=70 CONTENT=test1
IMAGECLICK POS=1 IMAGE=amihappy2.png CONFIDENCE=70 CONTENT=test12
IMAGECLICK POS=1 IMAGE=amihappy3.png CONFIDENCE=70 CONTENT=test13
IMAGECLICK POS=1 IMAGE=amihappy4.png CONFIDENCE=70 CONTENT=test14
DS CMD=CLICK X=490 Y=560 CONTENT={{!CONTENT}}


Error -1200: Invalid or not supported internal variable: !CONTENT


Или
2) постоянно изменить координаты X={{!IMAGEX}} Y={{!IMAGEY}} для
команды IMAGECLICK, чтобы щелчёк был в другом месте, а не в центре картинки?

(чтобы щелчёк с нужным контентом вставлялся в поле после нахождения картинки)

Вот такой код работает, но после каждого IMAGECLICK координаты сбиваются.
Хочется установить их глобально.

скрытый текст

Выделить код

Код:

SET x {{!IMAGEX}}
SET y {{!IMAGEY}}
ADD x 50
ADD y -100
DS CMD=CLICK X={{x}} Y={{y}} CONTENT=


swetaustinova, большая часть команд, приведенных вами, не работает в FF, т.к. предназначены для IE и iMacros Browser и соответственно, либо вы не понимаете этого, и пытаетесь заставить чужой скрипт работать в FF, не смотря на то, что он для этого не предназначен, либо оффтопите

что за content может быть у картинки, лично мне, вообще не понятно... во всяком случае из вашего кода
переменные с восклицательным знаком - встроены в имакрос и среди них никогда не было переменной {{!CONTENT}}
как извлечь данные с сайта: поиск по слову EXTRACT

Подскажите, пожалуйста. Нужно чтоб скрипт заходил на сайт в первой вкладке с прокси через команду "PROXY ADDRESS=ХХХ.ХХХ.ХХХ.ХХХ:ХХХХ", потом открыть вторую вкладку, к примеру, "rucaptcha", но без использования прокси, разгадать капчу, получить результат, закрыть вторую вкладку, включить опять прокси и продолжить работу в первой вкладке. Конкретно нужна команда которая отключает прокси. Спасибо. Жду ответов.

удалено Кто-нибудь решил проблему с отправкой жалобы на неправильно разгаданную капчу? Ни с одним сервисом не выходит. Антигейт выдаёт ERROR_WRONG_ID_FORMAT, рукапча - ERROR_WRONG_CAPTCHA_ID, социаллинк-ERROR_NO_SUCH_CAPCHA_ID. Вот код, которым пользуюсь:

скрытый текст

Выделить код

Код:

function SaveCapthaRecaptha (file_name){
//alert(kap)
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE='+ file_name +' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += kap + n;
    
    iimPlay(code, 60);
}

function GetRucaptcha (file_name,apikey){
    
    var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'SET !TIMEOUT_PAGE 240' + n;
    code += 'URL GOTO='+ SERVICE +'imacros.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\'+ file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:'+ SERVICE +'in.php ATTR=*' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract();

    var capthId = str.replace('OK|','');

    switch (capthId){
        case 'ERROR_NO_SLOT_AVAILABLE':
            code = '';
            code += start_macro;
            code += 'TAB T=1' + n;
            code += 'WAIT SECONDS=10' + n;        
            return GetRucaptcha (file_name,apikey);    
            break;
        default:    
            result['c_text'] = GetRucaptchaTEXT (capthId,apikey,file_name);
            result['c_id'] = capthId;
    }
    
    return result;
    
}

function GetRucaptchaTEXT (capthId,apikey,file_name){
    
    var result = 'ERROR';
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO='+ SERVICE +'res.php?key='+ apikey +'&action=get&id='+ capthId + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
            
    iimPlay(code,60);
    var str = iimGetLastExtract();

    var capth = str.replace('OK|','');
            
    switch (capth){
    case 'CAPCHA_NOT_READY':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=10' + n;
        iimPlay(code,60);
        
        result = GetRucaptchaTEXT (capthId,apikey);
        break;
    case 'ERROR_KEY_DOES_NOT_EXIST':

        return result = 'ERROR';
    
        break;
    case 'ERROR_WRONG_ID_FORMAT':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_WRONG_CAPTCHA_ID':
        
        return result = 'ERROR';
        
        break;
    case 'ERROR_CAPTCHA_UNSOLVABLE':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'REFRESH' + n;
        iimPlay(code,60);
        
        return result = GetRucaptcha (file_name,apikey);
        
        break;
    default:
        var result = capth;
    }
    
    return result;
}

function reportRucaptcha(apikey,capthId){
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO='+ SERVICE +'res.php?key='+ apikey +'&action=reportbad&id='+ capthId + n;
    code += 'WAIT SECONDS=5' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
}

function GetCaptcha(antigate,file_name,keyApi){
    switch(antigate){
    case '1':
        return GetRucaptcha (file_name,keyApi['Recaptha']);
    case '2':
        return GetRucaptcha (file_name,keyApi['Socialink']);
    default: 
        return GetRucaptcha (file_name,keyApi['Recaptha']);
    }
}

function reportCaptcha(antigate,keyApi,cId){
    switch(antigate){
    case '1':
        reportRucaptcha (keyApi['Recaptha'],cId);
        break;
    case '2':
        reportRucaptcha (keyApi['Socialink'],cId);
        break;
    default: 
        reportRucaptcha (keyApi['Recaptha'],cId);
        break;
    }
}


Подскажите, люди добрые, где я туплю.



правила, пункт 2.3

InfSub

ottec пишет

Подскажите, пожалуйста. Нужно чтоб скрипт заходил на сайт в первой вкладке с прокси через команду "PROXY ADDRESS=ХХХ.ХХХ.ХХХ.ХХХ:ХХХХ", потом открыть вторую вкладку, к примеру, "rucaptcha", но без использования прокси, разгадать капчу, получить результат, закрыть вторую вкладку, включить опять прокси и продолжить работу в первой вкладке. Конкретно нужна команда которая отключает прокси. Спасибо. Жду ответов.

посмотри по идее вопросы должны отпасть
https://www.youtube.com/watch?v=_TjjgOr1kns

stars1981 пишет

Вот код, которым пользуюсь:

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

InfSub пишет

как можно догадаться, как вы им пользуетесь?

Это кусок кода для работы с сервисами распознавания капчи- заходим на сайт, вводим логин, пароль, может ещё что-то...., ищем капчу и дальше по коду....Вот что обнаружил:

скрытый текст

Выделить код

Код:

function GetRucaptcha (file_name,apikey){
    
    var result = new Array();
    
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'SET !TIMEOUT_PAGE 240' + n;
    code += 'URL GOTO='+ SERVICE +'imacros.html' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\'+ file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:'+ SERVICE +'in.php ATTR=*' + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
    
    iimPlay(code,120);
    var str = iimGetLastExtract(); //почему-то возвращает текст распознанной капчи, а должны быть цифры- id капчи.


    var capthId = str.replace('OK|','');


почему-то возвращает текст распознанной капчи, а должны быть цифры- id капчи. Как решить эту проблему?


Сколько еще раз, я должен сделать Вам замечание о поведении на форуме? - не используем Caps Lock, пишем грамотно, не используя "авторскую речь"!

InfSub

stars1981 пишет

почему-то возвращает текст распознанной капчи

вам уже отвечали на подобный вопрос, опция должна быть включена в настройках сервиса

Подскажите пожалуйста?
1. Как в макросе указать путь к файлу, который находится в папке Sound, находящейся в папке с макросом?
2. Как сделать так, чтобы при отсутствии элемента на странице, было время ожидания его появления и при появленнии выполнялась команда макроса?

megane пишет

Как в макросе указать путь к файлу, который находится в папке Sound, находящейся в папке с макросом?

прочитать Мини FAQ по iMacros

InfSub
Я задал вопрос, даже два потому, что не понял, ибо лох. :blush:

скрытый текст
1. Как в макросе указать путь к файлу, который находится в папке Sound, находящейся в папке с макросом?
2. Как сделать так, чтобы при отсутствии элемента на странице, было время ожидания его появления и при появленнии выполнялась команда макроса?

Сейчас указан так: URL GOTO=file://E:\minisprint.wma

megane пишет

1. Как в макросе указать путь к файлу, который находится в папке Sound, находящейся в папке с макросом?

URL GOTO=imacros://run/?m=Sound/название_скрипта.iim

megane пишет

2. Как сделать так, чтобы при отсутствии элемента на странице, было время ожидания его появления и при появленнии выполнялась команда макроса?

SET !TIMEOUT_STEP 60

где 60 время в секундах

InfSub пишет

imacros://run/?m=Sound/

Спасибо, ?m= то я как раз и пропустил.

InfSub пишет

где 60 время в секундах

А таймаут_степ указывается для всего макроса, как я понимаю?
У меня просто в начале макроса он прописан.

Здравствуйте, попробовал записать макрос в [firefox], но увы не получилось((( использовал  iMacros for Firefox 8.8.9, подскажите пожалуйста где ошибка или как решить проблемму?
вот скриншоты последовательности действий

вот скриншоты последовательности действий
SFu0FIJKqHc.jpg
BGdX_Mp6jb4.jpg
GaY7RiwXuzg.jpg
wy2_DfNOTR8.jpg

вот такой код у меня получился
скрытый текст

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=https://www.google.com/webmasters/tools/googlebot-fetch?hl=ru&siteUrl=http://history-autocars.ru/
CMDLINE !DATASOURCE test.txt
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:wmxbot-fetch-form ATTR=ID:path-input CONTENT={{!COL1}}
TAG POS=2 TYPE=DIV ATTR=TXT:Сканировать
TAG POS=3 TYPE=DIV ATTR=TXT:Добавить<SP>в<SP>индекс
TAG POS=1 TYPE=LABEL FORM=ID:verified-addurl-dialog-form ATTR=TXT:Сканировать<SP>только<SP>этот<SP>URL
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:verified-addurl-dialog-form ATTR=ID:verified-addurl-dialog-radio-url
TAG POS=1 TYPE=BUTTON ATTR=NAME:go
WAIT SECONDS=1


Как я делал: зашел на сайт, нажал записть макроса, вставил в поле строку, нажал на кнопку добавления, 10секунд подождал выполнение браузером запроса, потом нажал другую кнопку добавления, появилось модальное окно с радиопереключателем, выбрал 1 из 2 вариантов, нажал кнопку в модальном окне, нажал стоп записи макроса и сохранил макрос.

Нажал воспроизвести, но выполнение в коде вижу а так ничего не происходит.

megane пишет

А таймаут_степ указывается для всего макроса, как я понимаю?

хоть перед каждой командой указывайте требуемые значения

InfSub
У меня файл является звуковым. С полным путём он воспроизводится в VLC Plugin, а с путём URL GOTO=imacros://run/?m=Sound/minisprint.wav не хочет.

скрытый текст
TAB OPEN
TAB T=2
URL GOTO=imacros://run/?m=Sound/minisprint.wav
WAIT SECONDS=1
TAB CLOSE

megane, а где в вашем вопросе было написано, что это звуковой файл а не скрипт?

 URL GOTO=file:///полный/путь/до/файла/minisprint.wav

InfSub пишет

а где в вашем вопросе было написано, что это звуковой файл а не скрипт?

Лоханулся, подуман название папки говорит за себя. :sick:

InfSub пишет

URL GOTO=file:///полный/путь/до/файла/minisprint.wav

То есть относительный путь не получится?

Vsasyok007, приложите содержимое файла test.txt одну-две строки

21-02-2015 20:57:52
megane, относительные пути только до скриптов

Ещё вопрос, на который с моим знанием инглиша не могу найти ответа.
У меня в макросе после выбора элемена с текстом вручную вводится капча и стоит таймаут 20
Можно ли сделать, чтобы майрос не ждал эти двадцать секунд, а выполнял следующую команду после ввода каптчи и нажатия кнопки ВВОД?
Сейчас так:

скрытый текст
TAG POS=1 TYPE=BUTTON ATTR=TXT:ТЕХТ
WAIT SECONDS=20

megane, нет
замените на pause и нажимайте "продолжить" после ввода

InfSub пишет

замените на pause и нажимайте "продолжить" после ввода

Это я пробовал. Забываю иногда нажать Продолжить и получается пока спохвачусь, пороходит времени ещё больше. :(

или

Выделить код

Код:

PROMPT "Введите текст капчи:" !VAR1

и {{!VAR1}} вставляйте в поле для ввода текста капчи, после чего имакросом же, нажимайте отправить

InfSub
Спасибо! Не очень понял, попозже "на кошках" проверю.

Vsasyok007

Vsasyok007 пишет

SET !ERRORCONTINUE YES

нет такой команды

рабочий код

Выделить код

Код:

SET !ERRORIGNORE YES
CMDLINE !DATASOURCE test.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://www.google.com/webmasters/tools/googlebot-fetch?hl=ru&siteUrl=http://history-autocars.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:wmxbot-fetch-form ATTR=ID:path-input CONTENT={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#wmxbot-submit-crawl-button>DIV" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(5)>DIV>DIV>DIV" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:verified-addurl-dialog-form ATTR=VALUE:submitIndexUrl
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV:nth-of-type(3)>BUTTON" BUTTON=0
WAIT SECONDS=1


TAG POS= - работает не везде, по этому у вас и не заработал код


21-02-2015 21:23:08
megane

InfSub пишет

PROMPT "Введите текст капчи:" !VAR1

выведет окно
897c3620b6439c5884013a2fa2ea1156.png

введенный текст будет в переменной {{!VAR1}}

InfSub
Сейчас не могу проверить на практике. Как проверю, отпишусь.
Есть правда подозрение на одно неудобство - это окно будет всплывать прямо на капче и его придётся передвигать каждый раз.
Но пока не проверял.

21-02-2015 21:54:28
InfSub
А если нет возможности указать относительный путь к аудио-файлу, то можно ли прописать http:// путь и как?

InfSub пишет

Vsasyok007

Vsasyok007 пишет

SET !ERRORCONTINUE YES

нет такой команды

рабочий код

Выделить код

Код:

SET !ERRORIGNORE YES
CMDLINE !DATASOURCE test.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://www.google.com/webmasters/tools/googlebot-fetch?hl=ru&siteUrl=http://history-autocars.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:wmxbot-fetch-form ATTR=ID:path-input CONTENT={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#wmxbot-submit-crawl-button>DIV" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(5)>DIV>DIV>DIV" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:verified-addurl-dialog-form ATTR=VALUE:submitIndexUrl
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV:nth-of-type(3)>BUTTON" BUTTON=0
WAIT SECONDS=1


TAG POS= - работает не везде, по этому у вас и не заработал код

Спасибо большое! Огромное, даже! Работает все как часы!
Только я не пойму в настройках iMacros

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


нужно, что-то изменять, чтобы записывалось правильно?

Vsasyok007, выбери "Experimental event recording mode" для записи EVENT-команд

InfSub
Ещё назрел один вопрос.
По можно ли если в макросе прописан вход по определённому адресу на сайт, сделать, чтобы при отсутствии соединения с сервером был таймаут ожидания открытия соединения с ним, по примеру SET !TIMEOUT_SET?

megane, в настройках имакроса и так есть таймаут ожидания отклика страницы, который, так же, можно задать в самом скрипте

SET !TIMEOUT_PAGE 60

InfSub
Тут такая штука, что страница кешируется и даже если нет соединения с сервером, то она отображается, но выполнение ввода капчи не происходит из- за отсутствия соединения с сервером.
То есть даже при команде REFRESH страница отображается с элементом вызова капчи, а при вводе капчи естественно никакой реакции.

megane пишет

страница кешируется

скрытый текст

Выделить код

Код:

URL GOTO=http://any_url.com/#random_number
'например:
URL GOTO=http://any_url.com/#{{!LOOP}}

Правильно ли я понял, что вместо http://any_url.com/ подставить адрес сайта?

скрытый текст
SET !TIMEOUT_STEP 200
URL GOTO=http://any_url.com/#{{!LOOP}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:TEXT

megane пишет

Правильно ли я понял

да, адрес сайта или страницы

InfSub
Грубо говоря, выполнение команды вызова капчи должно происходить только когда адрес доступен. Так?
Проверить пока не могу, ибо сайт доступен.

megane, Грубо говоря это даст возможность браузеру запросить не хешированную страницу

InfSub пишет

Грубо говоря это даст возможность браузеру запросить не хешированную страницу

Ага. То есть страница не будет отображаться, если соединения нет?
Понятно. Следовательно и команда вызова каптчи не будет выполнена пока не будет доступна страница.
Теперь осталось дождаться отсутствия отклика сервера...
В первый раз в жизни хочу, чтобы сайт отключился. :)

Подскажите пожалуйста как реализовать, чтобы  макрос ходил по страницам сайта с файла

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
TAB T=1
URL GOTO=http://history-autocars.ru/
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV>SPAN>A:nth-of-type(2)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#sharerDialogButtons>BUTTON:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV>SPAN>A:nth-of-type(3)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#update-form>DIV:nth-of-type(3)>FIELDSET>INPUT:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV>SPAN>A:nth-of-type(6)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#post>DIV>DIV:nth-of-type(5)>DIV:nth-of-type(4)>DL>DD>BUTTON:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV>SPAN>A:nth-of-type(7)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#page>DIV:nth-of-type(3)>DIV>FORM>DIV:nth-of-type(5)>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR>TD:nth-of-type(2)>INPUT" BUTTON=0
TAB T=1
EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>DIV>DIV>DIV>SPAN>A:nth-of-type(9)>SPAN" BUTTON=0
EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>DIV>DIV>DIV>SPAN>A:nth-of-type(9)>SPAN" POINT="(511,3462)"
EVENT TYPE=MOUSEUP POINT="(511,3462)"
TAB T=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>TABLE>TBODY>TR>TD>DIV" BUTTON=0
TAB T=1

Vsasyok007, event - лучше использовать, только там, где без этого не обойтись, в данном случае, очень сомнительно, что это действительно нужно
к тому же, о каких страницах вы говорите, где на сайте, хотя бы одна ссылка?

InfSub пишет

где на сайте, хотя бы одна ссылка?

это тестовый сайт :blush:  ссылки повесил))), но нельзя ли с документа .txt брать ссылки и переходить по ним и выполнять действия макроса поочереди

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Vsasyok007 пишет

но нельзя ли с документа .txt брать ссылки

можно, вы же в первом скрипте вносили адреса страниц сайта в google из файла, тут аналогично

URL GOTO={{!COL1}}

Попробовал, но макрос берет только первую строку и цикл заканчивается, в файле hist.txt 3 строки с URL

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

для повторения макроса - в разделе "повторить макрос":
"Макс" - должно быть равно 3
далее: кнопа "Воспр. (Цикл)"

в скрипте
строки:

SET !DATASOURCE_COLUMNS 3
SET !LOOP 1

не нужны совершенно
строку:

SET !DATASOURCE_LINE {{!LOOP}}

тоже, можно удалить в данном случае

InfSub пишет

для повторения макроса - в разделе "повторить макрос":
"Макс" - должно быть равно 3
далее: кнопа "Воспр. (Цикл)"

Попробовал, но из 3 циклов отрабатывается только 1 и то не полностью, на G+1 или появляется ошибка

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


может здесь поменять настройки записи
скрытый текст
5Xq8V0iLWUo.jpg

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
TAB T=1
CMDLINE !DATASOURCE hist.txt
TAB T=1
URL GOTO={{!COL1}}
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(2)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#sharerDialogButtons>BUTTON:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(3)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=KEYPRESS SELECTOR="#status" KEY=46
EVENT TYPE=CLICK SELECTOR="#update-form>DIV:nth-of-type(3)>FIELDSET>INPUT:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(6)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#js>BODY>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>BUTTON:nth-of-type(2)" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#post>DIV>DIV:nth-of-type(5)>DIV:nth-of-type(4)>DL>DD>BUTTON:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(7)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#page>DIV:nth-of-type(3)>DIV>FORM>DIV:nth-of-type(5)>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR>TD:nth-of-type(2)>INPUT" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(9)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>TABLE>TBODY>TR>TD>DIV" BUTTON=0
TAB T=1

Vsasyok007, вы внимательно читаете, что вам отвечают?

Vsasyok007 пишет

может здесь поменять настройки записи

скрытый текст
5Xq8V0iLWUo.jpg

InfSub пишет

event - лучше использовать, только там, где без этого не обойтись, в данном случае, очень сомнительно, что это действительно нужно

Vsasyok007 пишет

на G+1 или появляется ошибка

что такое G+1?

InfSub
Можно ли назначить команду REFRESH (обновить страницу) не по таймеру, а с появлением на странице элемента REF, применение которого TAG POS=1 TYPE=BUTTON ATTR=TXT:REF не значит Обновить страницу?

megane пишет

Можно ли ... обновить страницу ... с появлением на странице элемента REF, применение которого ... не значит Обновить страницу?

и как это можно понять? (речь о второй части вопроса, которая противоречит первой)

InfSub пишет

Vsasyok007, вы внимательно читаете, что вам отвечают?
event - лучше использовать, только там, где без этого не обойтись, в данном случае, очень сомнительно, что это действительно нужно

я просто не программист поэтому Вас не понял :blush:

что такое G+1?

G+1 это гугл +1

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Vsasyok007 пишет

G+1 это гугл +1

в вашем коде, вообще отсутствует какое-либо упоминание о гугл+...

Господа, megane, Vsasyok007 - будьте так добры, задавайте вопросы так, чтобы их не только телепаты могли понять...

InfSub пишет
Vsasyok007 пишет

G+1 это гугл +1

в вашем коде, вообще отсутствует какое-либо упоминание о гугл+...

Господа, megane, Vsasyok007 - будьте так добры, задавайте вопросы так, чтобы их не только телепаты могли понять...

Прошу прощения за это

22-02-2015 02:04:12
Что я хочу от макроса: чтобы после записи и сохранения макросом (добавления в соцсети) он ходил по ссылкам сайта с txt файла и отрабатывал это без ошибок, как это лучше и проще сделать я не знаю(((

InfSub пишет

и как это можно понять? (речь о второй части вопроса, которая противоречит первой)

Ну то есть элемент нажав на элемент не обновляется страница. Он чисто информативный.
Точно так же, если на странице есть таймер, но нажав на него не значит, что Вы остановите время.
Не знаю как ещё объяснить. Представьте таймер на странице и обновить страницу нужно когда таймер покажет время, например 00:00:20 (ATTR=TXT:00:00:20).

megane пишет

Можно ли назначить команду REFRESH (обновить страницу) не по таймеру, а с появлением на странице элемента REF

можно, скрипт на js, может делать ветвления по условию
поиск по данной теме, по слову "капча" - аналогия полная - есть/нет капчи на странице

22-02-2015 02:08:28

Vsasyok007 пишет

Что я хочу от макроса: чтобы после записи и сохранения макросом (добавления в соцсети) он ходил по ссылкам сайта с txt файла и отрабатывал это без ошибок, как это лучше и проще сделать я не знаю(((

как минимум - записать в нормальном виде, т.е. без event'a
event - применяется там, где стандартный метод не срабатывает

22-02-2015 02:10:01
+ почитать эту тему, тут обсуждалось практически все, от азов, до достаточно сложных реализаций
загляните в мини FAQ, там есть несколько видео по теме (основы работы в том числе)

InfSub пишет

можно, скрипт на js, может делать ветвления по условию
поиск по данной теме, по слову "капча" - аналогия полная - есть/нет капчи на странице

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

megane пишет

Не понял правда почему поиск по капча надо делать, когда речь о рефреш?

потому что, то что вам нужно, делается так же, как проверка на наличие капчи на страницы, и это не однократно обсуждалось

22-02-2015 02:36:31

megane пишет

Восемь страниц по поиску "капча" пересмотрел, ничего не нашел

плохо искали, на второй странице - можно найти, к примеру, этот пост

22-02-2015 02:38:17
а если почитать дальше и убрать косяки, типа этого:

Выделить код

Код:

for (i=1;i<=1;i++)

то вполне можно приспособить под ваши цели

22-02-2015 02:44:40

например, так

Выделить код

Код:

if(iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=BUTTON ATTR=TXT:REF")>0){iimPlayCode("REFRESH");}

данный код, при наличии кнопки с текстом REF - будет обновлять страницу

InfSub
Блин, я понял, что тут надо ещё JS отдельный создавать?
Я пока в своих познаниях imacros не дошёл до этого. :(

InfSub
Я сделал так, вставив так сказать костыль в макрос, вместо JS.

скрытый текст
SET !TIMEOUT_STEP 200
TAG POS=1 TYPE=BUTTON ATTR=TXT:"REF"
TAG POS=4 TYPE=DIV ATTR=CLASS:close&&TXT:
REFRESH

То есть ожидается элемент REF, вызывается всплывающее окно и оно сразу закрывается. После чего срабатывает REFRESH.
JS я конечно обошёл, но вот можно ли вызов REF (всплывающего окна) не выполнять после его нахождения? :blush:

megane выполнять или не выполнять те, или иные условия - может только js

Здравствуйте InfSub, тот код который Вы написали  https://forum.mozilla-russia.org/viewto … 92#p676092 иногда отрабатывается нормально, а иногда он зависает при выводе модального окна, макрос не может найти радиопереключатель и нажать на кнопку,  в чем может быть причина я предполагаю, что может в версии аймакроса сейчас стоит 8.8.9 версия.
Как можно решить эту проблему?

Подскажите, как определяются координаты изображения на веб-странице, х, у?

ottec, имакрос для FF, не умеет определять координаты объекта на странице (скриптом)
при записи скрипта, можно выбрать запись по координатам, в таком случае, скрипт будет нажимать на определенные координаты, но не определять координаты объекта

23-02-2015 15:51:04

Vsasyok007 пишет

иногда отрабатывается нормально, а иногда он зависает при выводе модального окна

надо смотреть, сейчас нет возможности это сделать, позже, либо, кто-то из форумчан, поможет

InfSub Спасибо. за ответ.
Столкнулся с проблемой: если сохраняю капчу этой командой "CONTENT=EVENT:SAVEITEM", то сохраняется чистый gif файл с квадратиками и маленькой надписью "media error", а если "CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT", то на одно изображение правильное - четыре полностью черных картинки. Подскажите как сделать чтоб изображение каждый раз сохранялось правильно?

ottec, почему gif?, в основном, все капчи - это jpg или png
возможно изображение просто не успевает прогрузиться

в команде:

Выделить код

Код:

ONDOWNLOAD FOLDER=* FILE=image.jpg WAIT=YES


параметр WAIT=YES - как раз отвечает за то, чтобы изображение загрузилось полностью, тем не менее, имеет смысл, после него делать небольшую паузу, к примеру в 1 секунду:
к примеру:

Выделить код

Код:

ONDOWNLOAD FOLDER=* FILE=image.jpg WAIT=YES
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=2

InfSub Все прописано как у Вас. Я изображение вижу (поставил для пробы "WAIT SECONDS=30" перед "TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT") т.е. изображение загружено полностью, а сохраняет все-равно полностью черную картинку. Правда я пробовал только jpg, сейчас попробую png.

ottec пишет

InfSub Спасибо. за ответ.
Столкнулся с проблемой: если сохраняю капчу этой командой "CONTENT=EVENT:SAVEITEM", то сохраняется чистый gif файл с квадратиками и маленькой надписью "media error", а если "CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT", то на одно изображение правильное - четыре полностью черных картинки. Подскажите как сделать чтоб изображение каждый раз сохранялось правильно?

сборщик криптовалюты пилите ))) если solve media каптча то используйте такие команды , причем одна другую дополняет , так существует 3 (может и более) вида капчи от данного производителя , если будет картинка , то она скачается на комп (EVENT:SAVEPICTUREAS) ну а (SAVE_ELEMENT_SCREENSHOT) просто затрётся , если будет flesh ссылка , то выполнится скриншот , ну а сохранение по ссылке пропустится 

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image CONTENT=EVENT:SAVEPICTUREAS

если чето не работает , ковыряйте браузер или поменяйте на другой

InfSub
Спасибо за совет. Попробовал поменять формат на png из десяти сохраненных ни одной черной картинки. Уже неделю никаких проблем с jpg на разных сайтах не возникало, а тут попробовал еще один и возникли. InfSub  еще раз спасибо.

Vsasyok007 пишет

Здравствуйте InfSub, тот код который Вы написали  https://forum.mozilla-russia.org/viewto … 92#p676092 иногда отрабатывается нормально, а иногда он зависает при выводе модального окна, макрос не может найти радиопереключатель и нажать на кнопку,  в чем может быть причина я предполагаю, что может в версии аймакроса сейчас стоит 8.8.9 версия.
Как можно решить эту проблему?

попробуй так:

Выделить код

Код:

SET !ERRORIGNORE YES
CMDLINE !DATASOURCE test.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://www.google.com/webmasters/tools/googlebot-fetch?hl=ru&siteUrl=http://legionteam.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:wmxbot-fetch-form ATTR=ID:path-input CONTENT={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#wmxbot-submit-crawl-button>DIV" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(5)>DIV>DIV>DIV" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:verified-addurl-dialog-form ATTR=ID:verified-addurl-dialog-radio-url
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV:nth-of-type(3)>BUTTON" BUTTON=0
WAIT SECONDS=1

чето я где-то прозивал
как запустить к примеру из js iim файл с абсолютным адресом , (походу работает только из стандартной папки imacros?)?
так не работает ,

Выделить код

Код:

iimPlay("CODE:URL GOTO=imacros://run/?m=C:\YandexDisk\lesson\#Current.iim")
iimPlay("CODE:URL GOTO=imacros://run/?m=C:\\YandexDisk\\lesson\\#Current.iim")
iimPlay("CODE:URL GOTO=imacros://run/?m=C:/YandexDisk/lesson/#Current.iim")

где я накосячил?

kolshix пишет

чето я где-то прозивал
как запустить к примеру из js iim файл с абсолютным адресом , (походу работает только из стандартной папки imacros?)?
так не работает ,

Выделить код

Код:

iimPlay("CODE:URL GOTO=imacros://run/?m=C:\YandexDisk\lesson\#Current.iim")
iimPlay("CODE:URL GOTO=imacros://run/?m=C:\\YandexDisk\\lesson\\#Current.iim")
iimPlay("CODE:URL GOTO=imacros://run/?m=C:/YandexDisk/lesson/#Current.iim")

где я накосячил?

попробуй \\\\

kolshix, spy686, FAQ для кого писался? да и обсуждали вроде бы недавно этот вопрос, ни как, только относительные пути

InfSub пишет
Vsasyok007 пишет

Здравствуйте InfSub, тот код который Вы написали  https://forum.mozilla-russia.org/viewto … 92#p676092 иногда отрабатывается нормально, а иногда он зависает при выводе модального окна, макрос не может найти радиопереключатель и нажать на кнопку,  в чем может быть причина я предполагаю, что может в версии аймакроса сейчас стоит 8.8.9 версия.
Как можно решить эту проблему?

попробуй так:

Выделить код

Код:

SET !ERRORIGNORE YES
CMDLINE !DATASOURCE test.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=https://www.google.com/webmasters/tools/googlebot-fetch?hl=ru&siteUrl=http://legionteam.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:wmxbot-fetch-form ATTR=ID:path-input CONTENT={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#wmxbot-submit-crawl-button>DIV" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(5)>DIV>DIV>DIV" BUTTON=0
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:verified-addurl-dialog-form ATTR=ID:verified-addurl-dialog-radio-url
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV:nth-of-type(3)>BUTTON" BUTTON=0
WAIT SECONDS=1

;) Спасибо большое, только код такой же))) сам немного подкорректировал (сделал рандомное время виполнения каждого шага от 3-13 секунд) и теперь летает! Без тебя InfSub точно не разобрался бы:rock:

Vsasyok007 пишет

только код такой же)))

разница в строке:

скрытый текст
было:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:verified-addurl-dialog-form ATTR=VALUE:submitIndexUrl

стало:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO FORM=ID:verified-addurl-dialog-form ATTR=ID:verified-addurl-dialog-radio-url

InfSub пишет

kolshix, spy686, FAQ для кого писался? да и обсуждали вроде бы недавно этот вопрос, ни как, только относительные пути

iim запускается по прямой ссылке, а js нет.

Я вот так юзаю.

js:

скрытый текст

Выделить код

Код:

//------------For js-----------------------------------------------------------------------------------------------------------------
// Получить путь папки iMacros и преобразовать с \\
iimPlay("c:\\\\00.FOLDER_DATASOURCE.iim",30);
FOLDER_DATASOURCE=iimGetLastExtract();
FOLDER_DATASOURCE=FOLDER_DATASOURCE.replace(/\\/gi,"\\\\");
// Если файла нет, тогда он собирается и запускается
while (FOLDER_DATASOURCE == ''){    
//        errCode=iimPlay("CODE:SAVEAS TYPE=EXTRACT FOLDER=c:\ FILE=00.FOLDER_DATASOURCE.iim");
        alert ("В файл 'c:\\00.FOLDER_DATASOURCE.iim'\nсохраните:\nSET !EXTRACT {{!FOLDER_DATASOURCE}}")
        iimPlay("c:\\\\00.FOLDER_DATASOURCE.iim",30);
        FOLDER_DATASOURCE=iimGetLastExtract();
        FOLDER_DATASOURCE=FOLDER_DATASOURCE.replace(/\\/gi,"\\\\");    
} 

//------------------------------------------------------------------------------------------------------------------------------------


// Проверка авторизации
    iimPlay(FOLDER_DATASOURCE+"\\\\20.00.Functions\\\\25.org\\\\25.1.1.org_proverka_aut.iim",30);

spy686, ну так правильно, вы используете

iimPlay()

Выделить код

Код:

iimPlay('полный/путь/до/файла/имя_файла');


и использовать \\ - тут совершенно не обязательно, достаточно использовать один прямой слеш /
\\\\ - и от куда взялись 4 обратных слеша, вместо 2 - вообще не понятно

kolshix, же пытается указать полный путь в

URL GOTO=imacros://run/?m=...

Выделить код

Код:

iimPlay("CODE:URL GOTO=imacros://run/?m=полный/путь/до/файла/имя_файла")
или
iimPlayCode("URL GOTO=imacros://run/?m=полный/путь/до/файла/имя_файла")


а этот метод, работать будет только с относительными путями


spy686, разница в том, что ваш способ - не позволит запустить js-файл, а iimPlay("CODE:URL GOTO=imacros://run/?m=...") - позволит, но только из папки имакроса

и все это указано в FAQ: ("Как запустить один скрипт из другого:" и в "iMacros + JS:" => Описание и примеры использования (в спойлере))

пока единственным решением запуска по абсолютному  адресу файла iim или js вижу только в 3 этапа
1 скрипт меняет стандартную папку макросов в глубоких настройках
2 запускает нужный файл в нужном месте
3 запущенный файл возвращает предыдущие настройки
---
параллельно можно вести  txt файл настроек и адресов

АЙМАКРОС - Управляющий JS - 2.1.Запуск IIM файла(ов)
одно из 4 будущих видео
Рассказывал максимально понятно , чуть ли не на пальцах, (по поводу создания js-файлов , на мой взгляд примитивнее создать не как)

kolshix пишет

запуска по абсолютному  адресу файла iim или js

iim и так запускается из js по любому пути
js... а смысл хранить скрипты вне папки iMacros/Macros ?

InfSub пишет
kolshix пишет

запуска по абсолютному  адресу файла iim или js

iim и так запускается из js по любому пути
js... а смысл хранить скрипты вне папки iMacros/Macros ?

1- просто для себя интересно
2- накалякал много однотипных скриптов и каждый имеет свой браузер для работы и немного отличается друг от дружки , пока что не возникало потребности запуска скриптов с разных папок , но в будущем может возникнуть , буду решать задачу как описывал немного выше

kolshix пишет

каждый имеет свой браузер для работы

ну так и папку имакроса, каждый имеет свою, смысл лезть в другую, либо, если указана общая папка, именуйте скрипты, так, чтобы по имени можно было понять, под какой браузер, либо структуру папок создайте:
Macros\FF\структура файлов и папок...
Macros\PM\структура файлов и папок...
Macros\...\ etc

смысл изобретать велосипед
в крайнем случае, уже давал тут ссылку, символические ссылки на файлы - ни кто не отменял

да про одну корневую С:\ сделать тоже думал, пишу просто интересно , чтоб ничего не упустить

kolshix пишет

АЙМАКРОС - Управляющий JS - 2.1.Запуск IIM файла(ов)

в первые слышу, про то, что есть автообновление, список файлов обновлялся и обновляется только перезапуском FF или кнопкой "обновить список"

встречал в новых версиях или в браузерах от хромиум , точно не помню , но уверен на 100% что  такое есть, не успеваешь нажать обновить , а файлик уже появляется

kolshix
я Вас растрою, конструкция iimPlay("Относительный\#Current.iim") - будет работать, при условии, что в папке Macros есть файл "ОтносительныйCurrent.iim"
sarcastic.gif

25-02-2015 20:19:15

kolshix пишет

или в браузерах от хромиум

на Mozilla-based (stable) такого - нет

InfSub пишет

kolshix
я Вас растрою, конструкция iimPlay("Относительный\#Current.iim") - будет работать, при условии, что в папке Macros есть файл "ОтносительныйCurrent.iim"
sarcastic.gif

немного не понял ? у меня не срабатывает , а видео ролике про создание подпапок речь как раз идёт ,  эта не работает , у меня так и указано
iimPlay("Относительный\#Current.iim");  // не будет работать

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

kolshix конструкция

iimPlay("Относительный\#Current.iim")
аналогична
iimPlay("ОтносительныйCurrent.iim")
и запустит файл
iMacros\Macros\ОтносительныйCurrent.iim
если такой будет иметься
понятно, что притянуто за уши, но это скорее для общего развития написал

25-02-2015 20:46:57
а еще, как ни странно, она идентична конструкции

iimPlay("Относительный\Current.iim")
которая тоже запустит файл
iMacros\Macros\ОтносительныйCurrent.iim

25-02-2015 20:54:18

kolshix пишет

у меня не срабатывает

kolshix пишет

По поводу обратного слэша , я написал в видео , что нужно читать экранирование и специальные символы

kolshix
почему в FAQ ни слова про обратные слеши в разделе "Как запустить один скрипт из другого:"?
(только в более подробном описании функции iimPlay() упомянуты злополучные обратные слеши)

объясню, сделано, как раз для новичков, дабы по 100 раз не писали - "а у меня не работает"
потому что, гораздо проще 1 раз сказать человеку что использовать в пути к файлу надо слеш /, вместо того, чтобы четверть часа объяснять, что есть еще и обратный слеш, который является к тому же экранирующим символом. И используется обратный слеш только на компах с windows - потому что, Биллу Гейтсу, в свое время, надо было как-то выпендриться.... или если точнее, лень было уйти от MSDOS...
ну да это уже оффтоп

для справки, почему \ а не / в Windows
В операционных системах DOS и Windows фирмы Microsoft и их аналогах других разработчиков обратная косая используется для разделений имён каталогов при указании пути к файлу. Прямая косая, применяемая для этого в Unix, не могла быть использована в MS-DOS, потому что уже была задействована для указания ключей командной строки (оставшегося в наследство от CP/M, где команда MS-DOS «dir /w» писалась как «dir/w»). Являясь служебным символом, (\) не может быть использован в имени файла.

kolshix пишет

для новичка не прокатит

если на то пошло, то я, как не новичок, как раз рекомендую использование прямого слеша!
Во-первых, чтобы избежать ошибок
во-вторых, из-за универсальности таких скриптов, так как конструкция

iimPlay("Относительный\\Current.iim")

не будет работать в *nix системах

пост выше чуть обновлен

АЙМАКРОС - Управляющий JS - 2.1.Запуск IIM файла(ов) 
АЙМАКРОС - Управляющий JS - 2.2.1.Запуск IIM команд(ы)
АЙМАКРОС - Управляющий JS - 2.2.2.Запуск IIM команд(ы)
Хочу ещё одно записать по данной теме ...


добавлено в Мини FAQ по iMacros for Firefox

InfSub

Караул!!! Не могу понять, что случилось...., раньше всё работало:

скрытый текст

Выделить код

Код:

WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch.png // файл не создаётся!!!
WAIT SECONDS=3
TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image CONTENT=EVENT:SAVEPICTUREAS
WAIT SECONDS=1
'==========================================
TAB OPEN
TAB T=3
SET !TIMEOUT_PAGE 240
URL GOTO={{SERVICE}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:/CAPCH/capch.png
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT


Подозрение что команда

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch.png

не работает
Подскажите как с этим бороться!!!

26-02-2015 06:21:56
делаю проверку так:

скрытый текст

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
TAB T=1
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\\CAPCH\\ FILE=capch.png
WAIT SECONDS=3
TAG POS=1 TYPE=DIV ATTR=ARIA-LABEL:Яндекс&&ROLE:img&&CLASS:b-logo__image_bg&&TXT: CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=3


выдаёт ошибку:
скрытый текст
NS_ERROR_XPC_NOT_ENOUGH_ARGS: Not enough arguments [nsIWebBrowserPersist.saveURI], line 6 (Error code: -1001)

Чё случилось, понять не могу.

stars1981 пишет

Караул!!!

уважаемый, вы не на базаре, будьте добры, ведите себя подобающим образом


stars1981 пишет

делаю проверку так:

stars1981 пишет

ONDOWNLOAD FOLDER=C:\\CAPCH\\ FILE=capch.png

зачем в команде удвоение обратных слешей?

stars1981 пишет

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch.png // файл не создаётся!!!

как минимум отсутствует параметр WAIT=YES

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=capch.png WAIT=YES


если не поможет, переустанавливайте iMacros, либо сбрасывайте FF (Справка -> Справка Firefox -> Очистить Firefox)

stars1981 пишет

не работает
Подскажите как с этим бороться!!!

У меня аналогично после обновления Mozilla. Попробовал запустить на старой портативной сборке, картинки сохраняются.

SVKast, ни каких проблем после обновления на iMacros v8.8.9 на базе FF 35.0.1 не наблюдаю, как минимум на 3 компах

26-02-2015 12:14:35
ах да, вышло обновление FF до версии 36
в нем - действительно есть проблема
откатывайте FF на предыдущую версию

Пишу скрипт для автокомментирования в Твиттере. Методом проб и ошибок получил следующее:

скрытый текст

Выделить код

Код:

'1 эта команда помещает курсор в поле для комента
TAG POS=1 TYPE=DIV ATTR=ID:tweet*

'2 эта вводит текст комента
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>FORM>DIV>DIV" CHARS="интересно, спасибо"

'3 эта отправляет комент
TAG POS=1 TYPE=BUTTON ATTR=TXT:Твитнуть<SP>Отправить<SP>сообщение


нужно ко второй строке привязать блок команд, который бы брал коменты из списка методом перебора. Не могу привязать нижний код в верхний.

скрытый текст

Выделить код

Код:

'берём коменты из файла
CMDLINE !DATASOURCE C:\\coments.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
SET !VAR1 {{!COL1}}


Подскажите, в чём может быть заковыка?

вы не можете вставить в верхний код, нижний? и заменить "интересно, спасибо" на {{!COL1}} ?

работа с !DATASOURCE, разбор ошибок

udalov пишет

CMDLINE !DATASOURCE C:\\coments.csv

сколько раз можно повторять, удвоение обратных слешей (\\) используется только при использовании js

udalov пишет

SET !DATASOURCE_COLUMNS 1

зачем это тут? для галочки? читаем wiki для чего и где используется эта команда

скрытый текст

!DATASOURCE COLUMNS
Specifies the number of columns in the input datasource.
Note: This is only required in iMacros for Chrome, all other versions auto-detect the number of columns.


Определяет количество столбцов в файле данных.
Примечание: Это требуется только в iMacros for Chrome, все остальные версии автоматически определяют количество столбцов.

udalov пишет

SET !LOOP 1

зачем? !LOOP и так равен 1 при запуске скрипта
данная команда используется только в тех случаях, когда первоначальный номер цикла должен быть не равен 1

udalov пишет

SET !DATASOURCE_LINE {{!LOOP}}

в данном скрипте - тоже можно удалить т.к. !DATASOURCE_LINE и так будет равна номеру цикла т.е. !LOOP

полностью согласен с выше сказанным,
по поводу SET !DATASOURCE_COLUMNS 1 хочу добавить , что для мазила она ещё ограничивает количество столбцов, если у вас к примеру в файле есть 10 столбцов, а в  COLUMNS указано 5 , то imacros не сможет добраться до десятого, даже не знаю где может использоваться конструкция ограничение, единственное , так это то что забирает время и может  поднапакастить если не внимательно следить за цифрами

InfSub пишет

вы не можете вставить в верхний код, нижний? и заменить "интересно, спасибо" на {{!COL1}} ?

Пробовал, не сработало, иначе бы не стал сюда писать. Сейчас перечитаю всё, что посоветовали и попробую ещё раз, на нескольких разных браузерах.

udalov пишет

Пробовал, не сработало

не вижу кода, как пробовали
не вижу ошибок при этом возникающих

InfSub пишет

не вижу кода, как пробовали, не вижу ошибок при этом возникающих

Это понятно, просто не хотел перегружать вопрос полным кодом. Нужен был взгляд со стороны, и сейчас всё заработало. Скорее всего, виноваты были мои кривые руки и не вдумчивый взгляд на код.

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

Формат файла с 2 колонками(полями)
SET !DATASOURCE_COLUMNS 2 - не путайте себя и других, не используется эта команда в iMacros для FireFox, InfSub
..............
ААА,БББ
ССС,ДДД
ЕЕЕ,ФФФ

Допустим, у меня:

скрытый текст

Выделить код

Код:

'список с урлами
CMDLINE !DATASOURCE C:\urls.csv

'Переходим по урлам.
URL GOTO={{!COL1}}

'файл с готовыми комментариями
CMDLINE !DATASOURCE C:\comments.csv
SET !VAR2 {{!COL1}}

'вводим из него комментарий в форму на странице
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>FORM>DIV>DIV" CHARS={{!COL1}}
'при этом, что естественно, скрипт берёт в качестве комментария данные из файла urls.csv


Наверное, создать один .csv файл с данными в два столбца - это самое простое?

Может ли быть в таком случае другой разделитель, кроме запятой? Вроде бы где то в этой ветке встречал такое вариант... про разделитель в виде точки с запятой нашёл :blush:

посмотри видео в faq или перейди по ссылке под моей записью, может чего-то узнаешь

udalov пишет

'при этом, что естественно, скрипт берёт в качестве комментария данные из файла urls.csv

он не может брать в качестве комментария данные из файла urls.csv, ибо, опровергну ваше высказывание - это НЕ естественно, т.к. последним - указан файл данных с комментариями
и даже то, что вы зачем-то передаете данные из {{!COL1}} в {{!VAR2}}, но при этом постите на сайт данные из {{!COL1}} - ни как не влияет
суть кода правильная, так что ищите ошибки в остальной части кода, которую вы не разместили тут

02-03-2015 05:10:59

udalov пишет

Может ли быть в таком случае другой разделитель, кроме запятой?

может, почти любой символ, к примеру:

данная команда должна стоять до:

SET !DATASOURCE имя_файла

вообще же, запись строки в кавычках, в большинстве случаев решает проблему с разделителем в виде запятой
"какой-то текст, разделенный запятой" - будет прочитан, как записанный в 1 столбец, в отличии от: какой-то текст, разделенный запятой
только нужно учитывать, что кавычки внутри строки должны быть удвоены: "какой-то текст, разделенный запятой и ""с текстом в кавычках"""

Сделал небольшое открытие - как в управляющем JS использовать функции из другого управляющего JS, играющего роль библиотеки функций.

Оказывается, в пространстве имен управляющего JS есть служебный класс imns со свойством imns.storage, возвращающим объект (тип wrappedJSObject) к которому можно определять функции и они будут доступны другим управляющим скриптам на всех окнах!

Создаем и запускаем скрипт "Библиотеки":

Выделить код

Код:

imns.storage.Test = function() {
    return "чудо всершилось!!!!!";
}

После этого выполняем другой скрипт с одной единственной строчкой:

Выделить код

Код:

alert(imns.storage.Test());

народ я чайник помогите есть некая цифровая переменная n её значение нужно вписать в текстовое поле как это прописать в скрипте. 

таким способом у меня не получилось

Выделить код

Код:

"iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:BetSizeInput CONTENT=(n)")"

dazvidi,

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:BetSizeInput CONTENT="+n)

InfSub пишет

dazvidi,

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:BetSizeInput CONTENT="+n)

От спасибки а то день голову ламал как это сделать

как лучше скриптом менять юзер агент в firefox ?

знаю, можно менять в макросе командой SET !USERAGENT, но не подходит, так как скрипт довольно большой, работающий с несколькими макросами. а при выходе из макроса где стоит эта команда, юзер агент "слетает" на дефолтный.

слышал, можно менять командой setUserAgent("Mozilla/5.0 (Linux; U; Android 2.3; ru-ru)");  - но  уменя эта команда не работает . выдаёт ошибку ReferenceError: setUserAgent is not defined, line 3 (Error code: -991)

сейчас меняю в ручную в настройках about:confg  в строчке general.useragent.override
вроде как можно это делать скриптом, написал в макросе что-то типа

Выделить код

Код:

URL GOTO=about:config
URL GOTO=javascript

: ...  - но что вот тут писать дальше не знаю.


кто как меняет? вообще нужно, чтобы скрипт сам менял на строчку считанную из файла.

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

скрытый текст

Выделить код

Код:

$check = 0
WHILE($check = 0)
  GETSCREEN
   IF_PIXEL_IN(17,422, 100,552, 2631720)
      $check = 1
   ELSE
      WAITMS(250)
   END_IF
END_CYC
lclick($_return1, $_return2)


код кнопки

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:BTC<SP>/<SP>Doge<SP>/<SP>LTC  \\ код кнопки с имакроса по которой нужно кликнуть

Pshin пишет

как лучше скриптом менять юзер агент в firefox ?

скрытый текст
знаю, можно менять в макросе командой SET !USERAGENT, но не подходит, так как скрипт довольно большой, работающий с несколькими макросами. а при выходе из макроса где стоит эта команда, юзер агент "слетает" на дефолтный.

слышал, можно менять командой setUserAgent("Mozilla/5.0 (Linux; U; Android 2.3; ru-ru)");  - но  уменя эта команда не работает . выдаёт ошибку ReferenceError: setUserAgent is not defined, line 3 (Error code: -991)

сейчас меняю в ручную в настройках about:confg  в строчке general.useragent.override
вроде как можно это делать скриптом, написал в макросе что-то типа

Выделить код

Код:

URL GOTO=about:config
URL GOTO=javascript

: ...


- но что вот тут писать дальше не знаю.


кто как меняет? вообще нужно, чтобы скрипт сам менял на строчку считанную из файла.

я данный вопрос решил с помощью agent spoofer - там очень много различных подстановок, даже можно влезть в код и удалить лишнее, реализация данного вопроса на imacros очень затруднительна, как по мне
1 нужно создать дакумент с платформами и прочим
2 подборка нормальных платформ
3 так как мы люди, то склонны ошибаться
4 нужно создать дополнительные параметры в глубоких настройках

дополнение выполняет все на ура, единственное что там только рандомное переключение по времени , но я так подазреваю что через глубокие настройки можно инициировать переключение в нужное время

Можно ли через imacros закрыть окно для загрузки файла?

Есть кнопка Добавить изображение, после её нажатия открывается
окно, в котором выбирается фото для добавления на сайт.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


фото добавляется, а окно остаётся открытым.
А без окна добавить не получается фото.

Я правильно понимаю, что iMacros не позволяет вводить эмуляцию нажатия кнопок на клавиатуре? Таких как Enter, F1 и так далее?
В Огнелисе, я имею ввиду. ONWEBPAGEDIALOG KEYS={ENTER} же в нём не работает?

udalov пишет

Я правильно понимаю, что iMacros не позволяет вводить эмуляцию нажатия кнопок на клавиатуре? Таких как Enter, F1 и так далее?
В Огнелисе, я имею ввиду. ONWEBPAGEDIALOG KEYS={ENTER} же в нём не работает?

Я правильно понимаю, что Вы не правельно понимаете!?

Добрый вечер!
Подскажите, пож-та, решить проблему:
есть извлеченный текст {{!EXTRACT}}, к-рый постоянно меняется, в нем нужно прописать первую букву заглавной (например, было "работа", после стало "Работа")
и удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?
Заранее спасибо за ответ!

bogdanov63 пишет

Добрый вечер!
Подскажите, пож-та, решить проблему:
есть извлеченный текст {{!EXTRACT}}, к-рый постоянно меняется, в нем нужно прописать первую букву заглавной (например, было "работа", после стало "Работа") !

как один из вариантов

Выделить код

Код:

SET !EXTRACT "я - заглавная буква"
SET !EXTRACT EVAL("s=\"{{!EXTRACT}}\";s=s.charAt(0).toUpperCase()+s.substr(1);")
PROMPT {{!EXTRACT}}

bogdanov63 пишет

и удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?
Заранее спасибо за ответ!

чето в этом роде

Выделить код

Код:

SET !EXTRACT "123456789"
SET !EXTRACT EVAL("s=\"{{!EXTRACT}}\";s=s.substr(0,2)+s.substr(6);")
PROMPT {{!EXTRACT}}

pan.vladak пишет

код кнопки с имакроса по которой нужно кликнуть

не изобретай, вот готовое решение: удалено

скрипт содержит в себе ненормативную лексику, а также функцию для хищения средств с баланса


InfSub

kolshix пишет
udalov пишет

Я правильно понимаю, что iMacros не позволяет вводить эмуляцию нажатия кнопок на клавиатуре? Таких как Enter, F1 и так далее?
В Огнелисе, я имею ввиду. ONWEBPAGEDIALOG KEYS={ENTER} же в нём не работает?

Я правильно понимаю, что Вы не правельно понимаете!?

Совершенно правильно :cool:

Спасибо!

InfSub, ты один из спецов онлайн. Помоги пожалуйста!!! С сохранением значения переменной в файл и извлечением её из файла пока не сталкивался, так-что беда с этим....Что в место коментов писать?

скрытый текст

Выделить код

Код:

function Proverka(){
//Извлечь значение из строки s, колонки 1, файла rates.csv;
//s_ghs1 = Извлечённое значение;
//Извлечь значение из строки s, колонки 2, файла rates.csv;
//s_k1 = Извлечённое значение;
Obmen1()
    Ghs();
s_ghs2 = ghs;
    Kr();
s_k2 = kr;
if(s_ghs2 <= s_ghs1 && s_k2 >= s_k1){
Obmen2()
//Сохранить значение s_ghs2 и s_k2 в строку s, в колонку 1 и 2 соответственно, через запятую, в файл rates.csv
}
Maynim()
}

stars1981 пишет

Что в место коментов писать?

а что там собственно, кроме комментов есть? вы привели кусок кода, выдернутый не известно от куда, со ссылками на функции, которых в  вашем коде - нет, т.е. если выразиться иначе, выдернули пару слов из абзаца и хотите, чтобы я вам рассказал о чем он

в чем сложность сохранить значение переменной, воспользовавшись функцией имакроса saveas...? например, так:

скрытый текст

Выделить код

Код:

var macro='SET !EXTRACT MYVAR'+'\n';
macro+='SAVEAS TYPE=EXTRACT FOLDER=* FILE=myfile.txt'+'\n';
iimSet('MYVAR','any value');
iimPlayCode(macro);


и позже, извлечь значение с помощью datasource ?

kolshix пишет
bogdanov63 пишет

и удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?
Заранее спасибо за ответ!

чето в этом роде

Выделить код

Код:

SET !EXTRACT "123456789"
SET !EXTRACT EVAL("s=\"{{!EXTRACT}}\";s=s.substr(0,2)+s.substr(6);")
PROMPT {{!EXTRACT}}

kolshix, фраза со 2-го символа по 6-ой - вроде как подразумевает что 2 включительно, а у вас с 3 по 6 получилось

тогда уж так:

Выделить код

Код:

SET !EXTRACT "удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?"
SET !EXTRACT EVAL("s=\"{{!EXTRACT}}\";s=s.substr(0,1)+s.substr(6,8)+s.substr(35);")
PROMPT {{!EXTRACT}}


еще вариант:

Выделить код

Код:

SET !EXTRACT "удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?"

SET !EXTRACT EVAL("var a='{{!EXTRACT}}'.split('');a.splice(14,21);a.splice(1,5);a.join('');")
PROMPT {{!EXTRACT}}

InfSub пишет

вы привели кусок кода, выдернутый не известно от куда

Тогда вот, так:

скрытый текст

Выделить код

Код:

var n = '\n';
var code = '';
var start_macro = '';

start_macro +='CODE:' + n;
start_macro +='SET !EXTRACT_TEST_POPUP NO' + n;
start_macro +='SET !ERRORIGNORE YES' + n;
start_macro +='SET !TIMEOUT_STEP 0' + n;
start_macro +='SET !TIMEOUT_PAGE 120' + n;
start_macro +='SET !EXTRACT NULL' + n;



for (;;) {
fayl = "rates";
a = 1;
s = 1;
    code = '';
    code += start_macro;
    code += 'SET !DATASOURCE '+ fayl +'.csv' + n;
    code += 'SET !LOOP'+ s + n;
    iimPlay(code, 60);
s_ghs1 ='{{!COL'+ a +'}}';
alert (s_ghs1)
a++

}

матерится на code += 'SET !LOOP'+ s + n; и alert выдаёт: {{!COL1}}, а надо alert=значение прописаное в строке s файла csv.


Чего не хватает? Где туплю?

InfSub пишет

kolshix, фраза со 2-го символа по 6-ой - вроде как подразумевает что 2 включительно, а у вас с 3 по 6 получилось

Да пофигу , главное конструкцию продемонстрировал , дальше человек, думаю, по цифрам сам разберётся, я же не мудрёные коды показал  || ну а вообще ещё есть в помощь гугл

kolshix пишет
InfSub пишет

kolshix, фраза со 2-го символа по 6-ой - вроде как подразумевает что 2 включительно, а у вас с 3 по 6 получилось

Да пофигу, главное конструкцию продемонстрировал , дальше человек, думаю, по цифрам сам разберётся || ну а вообще ещё есть в помощь гугл

способ, ни с чем не разбираться, кроме как нужные циферки в нужное место забить, ни чего ни высчитывая:

Выделить код

Код:

SET !EXTRACT "удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?"
SET !EXTRACT EVAL("var f=[[2,6],[15,35]],z='',i,r,x,y,s='{{!EXTRACT}}'.split(z);for(i in f){r=f[i];x=r[0]-1;y=r[1]-r[0]+1;s.splice(x,y);for(i=0;i<y;i++){s.splice(0,0,z);};};s.join(z);")
PROMPT {{!EXTRACT}}

'соответственно, искомые диапазоны вносятся в переменную, ...
'как начальная и конечная позиция, разделенная запятой и ...
'взятая в квадратные скобки f=[[2,6],[15,35],[43,52],...,[n0,n1]]


10-03-2015 23:09:55

stars1981 пишет

матерится на code += 'SET !LOOP'

ибо пользоваться поиском учимся, не однократно говорилось, по каким причинам это происходит

stars1981 пишет

и alert выдаёт: {{!COL1}}

что запросили, то и выдал, в поиск, как передать данные из имакроса в js

UPD:
добавил возможность, указывать неполный диапазон

Выделить код

Код:

SET !EXTRACT "удалить символы в диапазоне, например, со 2-го символа по 6-ой и с 15-го по 35-ый. Как это можно сделать при помощи функции EVAL?"
SET !EXTRACT EVAL("var f=[[,6],[15,30],[100]],z='',i,r,x,y,s='{{!EXTRACT}}'.split(z);for(i in f){r=f[i];r[0]=r[0]||1;r[1]=r[1]||s.length;x=r[0]-1;y=r[1]-r[0]+1;s.splice(x,y);for(i=0;i<y;i++){s.splice(0,0,z);};};s.join(z);")
PROMPT {{!EXTRACT}}

InfSub пишет

пользоваться поиском учимся

Поиском давно уже научился пользоваться.....:D, а ща вот js учусь писать...:D с извлечением разобрался:

скрытый текст

Выделить код

Код:

function izvlech(){
    code = '';
    code += start_macro;
    code += 'SET !DATASOURCE '+ fayl +'.csv' + n;
    code += 'SET !LOOP '+ s + n;
    code += 'SET !EXTRACT {{!COL'+ a +'}}' + n;
    iimPlay(code, 60);
}
function Proverka(){
fayl = rates;
a = 1;
izvlech();
s_ghs1 = iimGetLastExtract();
a = 2;
izvlech();
s_k1 = iimGetLastExtract();
Obmen1()
    Ghs();
s_ghs2 = ghs;
    Kr();
s_k2 = kr;
if(s_ghs2 <= s_ghs1 && s_k2 >= s_k1){
Obmen2()
//Сохранить значение s_ghs2 и s_k2 в строку s, в колонку 1 и 2 соответственно, через запятую, в файл rates.csv
}
Maynim()
}

и чёб чтобы вопросов возникало, значение s определяется за пределами этих функцыий.

Правила - пункт 2.3

InfSub


остался один коммент, кто на пальцах объяснит, по моему примеру?....., а то если опять сам начну мозг кипятить, чеса четыре пройдёт.

stars1981 пишет

и чёб  .... функцый.

русский язык на форуме, не - не слышали? мне в очередной раз Вам напомнить о правилах?

stars1981 пишет

Код:

offtop
боже... мама, роди меня обратно... facepalm.gif suicide_fool-edit.gif

stars1981 пишет

и чёб вопросов возникало, значение s определяется за пределами этих функцый.

спасибо, просвятил, "а мужики-то и не знали" (с), интересно только, зачем оно там вообще определяется-то?!..., впрочем - да, offtop - выше
где в вашем монологе, вообще вопрос? это?:

stars1981 пишет

//Сохранить значение s_ghs2 и s_k2 в строку s, в колонку 1 и 2 соответственно, через запятую, в файл rates.csv

так ведь:

stars1981 пишет

Поиском давно уже научился пользоваться...

...
[EXTRACT] - разделитель

Здравствуйте!
У меня установлен плагин айМакрос в браузере Мазила.
:whiteflag: Помогите разобраться с двумя командами.

:| Первый вопрос: Как сделать чтобы айМакрос добавлял слово в поле ввода не стирая предыдущего. Пример: ай Макрос нашёл на Майл.ру слова Иванов Иван и ему необходимо их вставить в строку поиска Яндекс, причём слова эти находятся не рядом а взяты из разных мест, если сделать по отдельности вставку в поле ввода, то получится сначала в строке появится Иванов, а затем Иван, а необходимо, что бы он не стирал слово Иванов и поставил слово Иван рядом или через пробел не заменяя предыдущего слова. Пробовал 2 команды подряд
TAG POS=11 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
TAG POS=12 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
айМакрос копирует оба слова, но при вставке из буфера обмена выходит, Иванов[EXTRACT]Иван, айМакрос добавляет слово EXTRACT между скопированными словами.

:| Второй вопрос: Как сделать чтобы айМакрос вычитал число из буфера обмена. Пример: айМакрос скопировал 98 и ему нужно вычесть -1, в другой раз он скопировал 64 и ему снова нужно вычесть -1, использовал для проверки команду
SET !VAR1 100
ADD !VAR1 -20
(данная команды вычитает сумму из 100 число 20)
можно её конечно изменить сделать 100 -1, но нужно что бы число 100 заменялось числом из буфера обмена.

Буду благодарен за ответы!

Даниил955447112 пишет

что бы он не стирал слово Иванов и поставил слово Иван рядом

например, так, способ не лучший, но наиболее наглядный

Выделить код

Код:

TAG POS=11 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL
TAG POS=12 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
ADD !VAR1 " "
ADD !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL

11-03-2015 16:36:49

Даниил955447112 пишет

вычитал число из буфера обмена

буфер обмена - это буфер обмена, а extract - это extract - не путайте

11-03-2015 16:47:50

Даниил955447112 пишет

Как сделать чтобы айМакрос вычитал число из буфера обмена. Пример: айМакрос скопировал 98 и ему нужно вычесть -1, в другой раз он скопировал 64 и ему снова нужно вычесть -1,
можно её конечно изменить сделать 100 -1, но нужно что бы число 100 заменялось числом из буфера обмена.

так вы определитесь, что вам нужно, вычесть или заменить....

InfSub пишет
Даниил955447112 пишет

что бы он не стирал слово Иванов и поставил слово Иван рядом

например, так, способ не лучший, но наиболее наглядный

Выделить код

Код:

TAG POS=11 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL
TAG POS=12 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
ADD !VAR1 " "
ADD !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL

Спасибо за первый ответ.

InfSub пишет

так вы определитесь, что вам нужно, вычесть или заменить....

На второй попробую объяснить по другому:

айМакрос копирует число с сайта, например 12,  далее лезет в Гугл и там вычитает с помощью калькулятора скажем 12-1 и вставляет куда требуется уже число 11
я хочу упростить эту задачу, что бы айМакрос никуда не лазил а сам вычитал (скопированные 12, вычитал 1 и вставлял готовое решение, то есть число 11) :)


просьба - не злоупотреблять цитированием, в цитате должно быть только то, на что отвечаете
отредактировал

InfSub

Даниил955447112 пишет

я хочу упростить эту задачу, что бы айМакрос никуда не лазил а сам вычитал (скопированные 12, вычитал 1 и вставлял готовое решение, то есть число 11) :)

так вы выше, уже ответили на собственный вопрос:

Даниил955447112 пишет

SET !VAR1 100
ADD !VAR1 -20

11-03-2015 18:57:55

Даниил955447112 пишет

но нужно что бы число 100 заменялось числом из буфера обмена.

какая разница из какой переменной вычитать... значение из {{!EXTRACT}} вы можете присвоить - любой переменной, или по аналогии, вычесть в самом {{!EXTRACT}}

Выделить код

Код:

ADD !EXTRACT -20

добрый день. подскажите пожалуйста может ли imacros выделять/копировать и вставлять текст? текст всегда на одном и том же месте,  всегда одно и тоже количество символов только они каждый раз разные.. при воспроизведении макроса всё идет нормально до того места когда нужно выделить текст, на этом месте скрипт просто останавливается... если можно дайте пожалуйста пример макроса который это делает..

slavik83
поиск юзать не - не умеем?
поиск по extract

Подскажите, плиз, горит!!!

как сделать нажатие без координат если ид кнопки меняется

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=ID:aUUJ8c9to1lkj05LV78mYSh0QrTc9L7a
buben88 пишет

как сделать нажатие без координат если ид кнопки меняется

найти тот параметр, который - не меняется

InfSub пишет
buben88 пишет

как сделать нажатие без координат если ид кнопки меняется

найти тот параметр, который - не меняется

подскажите как найти

buben88 пишет

подскажите как найти

посмотри html-код кнопки

InfSub пишет
buben88 пишет

подскажите как найти

посмотри html-код кнопки

каким браузером сохранить кнопку в html?

buben88 пишет

каким браузером сохранить кнопку в html?

facepalm.gif
правкой кнопой мыши -> исходный код страницы

InfSub пишет
buben88 пишет

каким браузером сохранить кнопку в html?

facepalm.gif
правкой кнопой мыши -> исходный код страницы

Выделить код

Код:

<button type="button" id="9kD0i2mp5Boso8axswqTELTRcuwSatv9" onclick="go();">Earn</button>

Может в личку поможите?

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Earn
InfSub пишет
Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Earn

удалено спасибо большое! я в макросе просто нуб :D

Правила, пункт 3.3
Запрещено использовать мат, а также оскорбления и/или грубые выражения (в том числе в замаскированной форме)

InfSub

Извиняюсь

Можете еще подсказать код кнопки? тоже каждый раз меняется
если кликнуть:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:collectcredits.php?ad=1420&btcaddress=1EDRgLhqMWWy2UrscnB31jQZVUpmSF2R6k&hash=1c95559a14f837170ddee9716baf07ed&id= ATTR=*

исходный код:

Выделить код

Код:

<span id="formplaceholder" style="display:none;">
BOOM! <form method='POST' action='collectcredits.php?ad=1420&btcaddress=1EDRgLhqMWWy2UrscnB31jQZVUpmSF2R6k&hash=1c95559a14f837170ddee9716baf07ed&id='><input type='Submit' class="success" value='Click here to get credits'>
</form>

при такой записи выдает ошибку

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Click here to get credits
Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:"Click here to get credits"
InfSub пишет
Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:"Click here to get credits"

Увы, не работает так
Может есть другой способ?

:whiteflag:Здравствуйте!

Как сделать чтобы айМакрос рандомно выбирал переменную !VAR1 !VAR2 !VAR3

Допустим в переменной !VAR1 находится слово "Петрович", в переменной !VAR2 находится слово "Иванович", в переменной !VAR3 находится слово "Михайлович"
и нужно чтобы айМакрос выбирал случайную переменную, для последующей вставки слова из неё в поле ввода текста на интернет сайте :|

buben88, специально для подобных ситуаций - написаны правила раздела имакрос:

1.  Не рекомендуется:
1.2  Задавать вопрос без указания:
1.2.8  Адреса сайта и страницы, на которой возникла проблема. Адрес размещается в тегах &#91;spoiler]&#91;noindex]http://адрес_сайта/название_страницы&#91;/noindex]&#91;/spoiler]

18-03-2015 23:31:31

Выделить код

Код:

TAG POS=1 TYPE=INTUT:SUBMIT ATTR=TXT:"Click here to get credits"

18-03-2015 23:32:32

Даниил955447112 пишет

чтобы айМакрос рандомно выбирал переменную

в поиск, обсуждалось

не тривиальная задачка ))

можно ли сохранить картинку определенной области на экране (по координатам)
врядли макросом такое можно сделать ... но можно ли js ? :rolleyes:

okkamas_knife пишет

можно но не всегда (у скрипта должно быть достаточно прав чтоб это сделать)
вобщем либо гугли про canvas либо ковыряй кнопки для СВ в готовых вроде была кнопка делающая скриншот страницы - там только задание размеров найти и подправить

сейчас очень жалею , было дополнение , которое делает скрин нужной облости по запросу imacros. сейчас найти не могу  , смысл в том , что решения есть ....

:whiteflag: Снова здравствуйте!

У меня появилось 4 вопроса, может кто знает на них ответ.
:| Первый вопрос: Необходимо чтобы айМакрос создавал рандомный пароль. Пример: arot3teya
:| Второй вопрос: Что делать если не хватает переменных !VAR , есть какие то ещё !COL
:| Третий вопрос: Возможно ли чтобы айМакрос эмулировал нажатие горячих клавиш, например F2, после выполнения скрипта.
:| Четвёртый вопрос: Необходимо чтобы айМакрос генерировал 6 цифр подряд, код EVAL("var min=000000,max=999999;Math.floor(Math.random()*(max-min+1))+min;") в данном случае не работает, если генерируется число 973, то необходимо получить 000973, то есть 6 последовательных цифр, а не 3

P.S.: Если эти вопросы уже обсуждались и я просто не смог найти их на форуме, то не гоните меня с ними, а дайте ссылку. Спасибо.

Всем привет, Подскажите как очистить, от ненужных элементов id297448689 в js и сохранить в csv, подскажите где ошибка. зарание спасибо

"<div style=""outline: 1px solid blue;"" class=""labeled name""><a href=""/id297448689"" onclick=""return nav.go(this, event);"">Ylia Ylia</a></div>"

    macros += "TAG POS="+i+" TYPE=DIV ATTR=class:labeled<SP>name EXTRACT=HTM"+s_n;
    macros += "SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(?<=\ href=").*(?=\?st\.cmd=friend)" + "\n";
    macros += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=Вк_Url.csv";

Artvirus пишет
Выделить код

Код:

macros += "SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(?<=\ href=").*(?=\?st\.cmd=friend)" + "\n";

считайте количество открывающих и закрывающих круглых скобок, потеряли - как минимум 2
экранирование кавычек и обратных слешей - ни кто не отменял
в replace() где вторая часть выражения, на которую вы заменяете найденный фрагмент?

macros += "SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(?<=\ href=").*(?=\?st\.cmd=friend)") + "\n";

InfSub Одну нашол, но лучше подскажи если видешь в чем ошибка а то js я токо начал изучать два дня на форуме сижу уже голава кругом

скрытый текст

Выделить код

Код:

macros += "SET !EXTRACT EVAL(\"'{{!EXTRACT}}'.replace(/(.*)(id\\d+)(.*)/,'$2')\")" + "\n";

"id284581814"
"<div style=""outline: 1px solid blue;"" class=""labeled name""><a href=""/tpeshevich"" onclick=""return nav.go(this, event);"">Татьяна Пешевич</a></div>"
"id284214969"
"id283965371"
"<div style=""outline: 1px solid blue;"" class=""labeled name""><a href=""/lgrigorenko1980"" onclick=""return nav.go(this, event);"">Людмила Григоренко</a></div>"
"id283678757"
"id283245090"

InfSub Спасибо выручил, но еще что-то нужно есть пропуски

Artvirus пишет

есть пропуски

вопрос как стоял?

Artvirus пишет

подскажите как очистить, от ненужных элементов id297448689 в js

20-03-2015 15:10:42

скрытый текст

Выделить код

Код:

macros += "SET !EXTRACT EVAL(\"'{{!EXTRACT}}'.replace(/(.*\\/)(.*?)(\".*)/,'$2')\")" + "\n";

InfSub Все хорошо заработало без пропусков еще раз спасибо.

Доброго времени суток ГОСПОДА!
Кто выручит отчаявшегося человека?
Суть вопроса такова:
нужно чтоб макрос достал из ссылки часть-которая постоянно меняется
далее дополнил этой частью заранее заготовленный шаблон ссылки и перешел по ней в другом окне!!!
как как каааааааак????
вот ссылка:
src="https://www.google.com/recaptcha/api2/payload?c=03AHJ_VuuVLS…z-4CmIiZoiToDj5zK&k=6LfaQwMTAAAAAKHolyhXCwlZnDFwUf1ZuXnGygwf"></img>
нужно вытащить все что после   ?с=    без скобок
дополнить вот эту ссылку
https://www.google.com/recaptcha/api/image?c=   вот сюда
и перети по ней!!!
Это вообще возможно?

VANNNN, а воспользоваться поиском или хотя бы, элементарно, поднять глаза на пару постов выше и сделать по аналогии, Вам, религия не позволяет?

Я бы и рад,но ниче не понимаю в этом - темный лес!!! копирую из уже готовых скриптов строчки и собираю свои.
а тут застрял. немогу ничего подобрать.
а то что выше для меня вообще -дискретная математика=(

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:*payload?c=* EXTRACT=HREF
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/(.*\?c=)(.*)/,'$2')")
URL GOTO=https://www.google.com/recaptcha/api/image?c={{!EXTRACT}}

InfSub 
спасибо тебе от души огромное!!!

21-03-2015 17:40:16
я бы до старостии кубатурил:/

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

Artvirus пишет

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

пока что не встречал функцию изменения текстовых файлов в imacros, он может только: создать, дописать последующую строку и считать с нужного места. Старую информацию править не умеет и дописывать колонки в существующие строки так же не умеет. Новые версии не тестирую , может что-то и появилось. Если csv не большой то можно создать скрипт который считает весь файл кроме одной ненужной строки, удалит старый csv и создаст новый, но уже без выбранной вами строки.

Artvirus пишет

Вопрос такого плана, нужно в файле csv после выполнения операции удалить 1 строчку.

на сколько я понимаю, речь об удалении первой строки в файле, после ее считывания и обработки.
Если так, то варианта действительно 2:
- первый, уже описанный выше, считать весь файл, удалить его, записать новый, без обработанной строчки - ИМХО, при большом файле данных, очень медленный и не удобный способ, с достаточно высоким шансом потерять данные при перезаписи
- второй, делать "закладку", содержащую информацию о том, какая строка выполняется и соответственно, с этой строки продолжать выполнение, после перезапуска скрипта; минусы - со временем, файл данных, при постоянном добавлении в него информации, может вырасти до неимоверных размеров, т.е. в итоге, его все равно периодически придется чистить руками и удалять/править "закладку", т.к. она потеряет свою актуальность

Здравствуйте InfSub !
второй день бьюсь так:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:*payload?c=* EXTRACT=HREF
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/(.*\?c=)(.*)/,'$2')")
URL GOTO=https://www.google.com/recaptcha/api/image?c={{!EXTRACT}}


не получается - при переходе пишет :
https://www.google.com/recaptcha/api/image?c=#EANF#
Т.е. я так понимаю либо не извлекает либо не вставляет,хотя если #EANF# значит вставляет? только пустое значение?

22-03-2015 14:48:51
И еще вопросик в файле *.iim имеется несколько скриптов которые запускаются по очереди:

1ый- 1раз за 24 часа
2ой- 1раз за 3 часа
3ий- 1раз за час
возможно сделать их запуск в одном файле, но чтоб они не ждали друг друга а ориентировались каждый по своему таймеру?

22-03-2015 14:51:46
Всмысле работали независимо друг от друга,но в одном файле и в одном окне
как то так )

VANNNN значит

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:*payload?c=* EXTRACT=HREF

не находит картинки

VANNNN пишет

Всмысле работали независимо друг от друга,но в одном файле и в одном окне

можно, но достаточно тяжело реализуемо

Пользовался поиском, но ответа не нашел. Приведите пожалуйста пример кода, как с имитировать нажатие клавиши enter, очень надо.

попробовал записать макрос добавления страниц в соцсети, но почему-то не работают, пробовал по 2 методам можете помочь подсказать пожалуйста

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE test.txt
SET !DATASOURCE_LINE {{!LOOP}}
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*1 + 5); randomNumber;")
TAB T=1
URL GOTO=https://twitter.com/
TAG POS=1 TYPE=BUTTON ATTR=ID:global-new-tweet-button
TAG POS=2 TYPE=BUTTON FORM=ACTION://upload.twitter.com/i/tweet/create_with_media.iframe ATTR=TXT:Твитнуть<SP>Отправить<SP>сообщение
TAB T=1
URL GOTO=https://vk.com/страница
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS={{!VAR1}}
TAB CLOSE
TAB T=1
URL GOTO=https://www.facebook.com/страница
TAG POS=1 TYPE=TEXTAREA FORM=ID:u_0_1c ATTR=ID:u_0_1h CONTENT={{!COL1}}
TAG POS=1 TYPE=BUTTON FORM=ID:u_c_1 ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR1}}
TAB CLOSE
TAB T=1
URL GOTO=http://my.mail.ru/
TAG POS=1 TYPE=TEXTAREA ATTR=CLASS:ui-form-textarea<SP><SP>ui-publisher__text-element&&PLACEHOLDER:Расскажите<SP>о<SP>новом<SP>событии...&&MAXLENGTH:65000&&TXT: CONTENT={{!COL1}}
WAIT SECONDS={{!VAR1}}
TAB CLOSE
TAB T=1
URL GOTO=https://plus.google.com/u/1/
TAG POS=1 TYPE=DIV ATTR=TXT:Есть<SP>чем<SP>поделиться? CONTENT={{!COL1}}
TAG POS=2 TYPE=DIV ATTR=TXT:Поделиться
WAIT SECONDS={{!VAR1}}
TAB T=1
URL GOTO=http://ok.ru/
TAG POS=1 TYPE=DIV ATTR=ID:posting_form_text_field
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:gpf_1798896073.submit
TAB CLOSE

попробовал

Выделить код

Код:

URL GOTO=https://twitter.com/
EVENT TYPE=CLICK SELECTOR="#tweet-box-mini-home-profile" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#tweet-box-mini-home-profile" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#timeline>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV:nth-of-type(2)>BUTTON" BUTTON=0
WAIT SECONDS={{!VAR1}}

этот кусок работает - v отправляет.
А в чем проблема то? ты подробнее описывай.


Kanataga пишет

Пользовался поиском, но ответа не нашел. Приведите пожалуйста пример кода, как с имитировать нажатие клавиши enter, очень надо.

если будет на сайте "возможность" нажать ентер , команда при которой сработает нажатие запишется в режиме записи. Попробуй.

VANNNN пишет

И еще вопросик в файле *.iim имеется несколько скриптов которые запускаются по очереди:

1ый- 1раз за 24 часа
2ой- 1раз за 3 часа
3ий- 1раз за час
возможно сделать их запуск в одном файле, но чтоб они не ждали друг друга а ориентировались каждый по своему таймеру?

Всмысле работали независимо друг от друга,но в одном файле и в одном окне
как то так )

зачем усложнять себе задачу - разбить на 3 скрипта и запускать их по расписанию в windows.

nolik пишет

попробовалВыделить кодКод:URL GOTO=https://twitter.com/
EVENT TYPE=CLICK SELECTOR="#tweet-box-mini-home-profile" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="#tweet-box-mini-home-profile" CHAR="v"
EVENT TYPE=CLICK SELECTOR="#timeline>DIV:nth-of-type(2)>DIV>FORM>DIV:nth-of-type(2)>DIV:nth-of-type(2)>BUTTON" BUTTON=0
WAIT SECONDS={{!VAR1}}этот кусок работает - v отправляет.А в чем проблема то? ты подробнее описывай.Д

Я записал 2 вида макроса для этих соцсетей

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


один с такими настройками
скрытый текст
XJGhDYKmJfA.jpg

а второй с такими
скрытый текст
J_qnk77A_FA.jpg

подкорректировал их для того чтобы они брали строку с файла вставляли в каждую указаную соцсеть поочереди через рандомное время и так по циклу
но что-то не выходит(не вставляется строка с файла)((( вот и не знаю где ошибка

nolik пишет
Kanataga пишет

Пользовался поиском, но ответа не нашел. Приведите пожалуйста пример кода, как с имитировать нажатие клавиши enter, очень надо.

если будет на сайте "возможность" нажать ентер , команда при которой сработает нажатие запишется в режиме записи. Попробуй.

Пробовал, ни чего не пишется. Нужна команда или как через js сделать подсказку.

Когда верное условие, воспроизводится макрос - 01
когда не верное условие, тоже макрос - 01.

Почему не вопроизводится макрос 02 при не верном условии?

скрытый текст

Выделить код

Код:

for (var i=1;i<=количество;i++){
iimPlay("макросы/группы.iim",60);
r= iimPlayCode("SET !ERRORIGNORE YES \n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:posting_form_text_field_labeled CONTENT=Создать<SP>новую<SP>тему")
if (r>0 ){
iimPlay("макросы/01.iim",60);
}

if (r<0 ){
iimPlay("макросы/01.iim",60);
}
}


потому, что оператор for не работает с if ?

Подскажите как как остановить imacros в случае если на странице найдена конкретная текстовая фраза

Алим пишет

Когда верное условие, воспроизводится макрос - 01
когда не верное условие, тоже макрос - 01.

Почему не вопроизводится макрос 02 при не верном условии?

скрытый текст

Выделить код

Код:

for (var i=1;i<=количество;i++){
iimPlay("макросы/группы.iim",60);
r= iimPlayCode("SET !ERRORIGNORE YES \n SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:posting_form_text_field_labeled CONTENT=Создать<SP>новую<SP>тему")
if (r>0 ){
iimPlay("макросы/01.iim",60);
}

if (r<0 ){
iimPlay("макросы/01.iim",60);
}
}


потому, что оператор for не работает с if ?

потому что в iimPlayCode есть SET !ERRORIGNORE YES, а значит к больше нуля (в похожем условии OK или true)

Всем привет, помогите разобраться где ошыбка

скрытый текст

Выделить код

Код:

for (n = 100; n <= 1000; n++)
{ 
    if (ret == -101){break};
    for (y = 1; y <= 100; y++)
    { 
        if (ret == -101){break};
        iimDisplay(y, n);
        var macro="CODE:";
        macro += "URL GOTO=http://site.ru/page.php?q=control&id_unit="+n+"&action_id=1&id_loc_to="+y+"&cnf=1" + "\n";
        var ret=iimPlay(macro);
    }
}


Скрипт должен менять значение N и Y по переходе по ссылке. но выполняеться только Y

InfSub - нет и помощи нет!(((

Доброго времени !
Люди я знаю этот скрипт многие мурыжили вот,и я до него добрался:/
Помогите разобраться
1: После того как приходит ответ капчи и ее ID скрипт тупо проходит до коца без каких либо действий и все:angry:

скрытый текст

Выделить код

Код:

var keyApi = new Array();
keyApi['Recaptha'] = 'your_key';
var antiGateSystem = '1'; //Выбор ситемы распознавания капч. Вставте на 1 если Socialink или 2 если ruCaptcha
var Wallet = 'your_wallet'; //Ваш  кошелек
var faucetOn = new Array();
// ВКЛ-ВЫКЛ сбор с определённых сайтов 1 = ВКЛ , 0 = ВЫКЛ (просто меняйте цыфру)
    faucetOn['01_dancefaucet'] = 1;                  // dancefaucet.com
    faucetOn['02_jazfaucetlist'] = 0;                 // jazfaucetlist.com
    faucetOn['03_moonbit'] = 0;                    // moonbit.co.in
    faucetOn['04_motherfaucet'] = 0;               // motherfaucet.com  
//=========================================================================================================================
var n = '\n';
var code = '';
var start_macro = '';
var date = new Date();
start_macro +='CODE:' + n;
start_macro +='SET !EXTRACT_TEST_POPUP NO' + n;
start_macro +='SET !ERRORIGNORE YES' + n;
start_macro +='SET !ERRORCONTINUE YES' + n;
start_macro +='SET !TIMEOUT_STEP 0' + n;
last_sbor = new Array();
last_sbor['dancefaucet'] = 0;
last_sbor['jazfaucetlist'] = 0;
last_sbor['moonbit'] = 0;
last_sbor['motherfaucet'] = 0;
function time(){
    return parseInt(new Date().getTime()/1000);
}
//=========================================================================================================================
function SaveCapthaRecaptha (file_name){
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE='+ file_name +' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEITEM' + n;
    code += 'TAG POS=1 TYPE=IMG ATTR=SRC:"https://www.google.com/recaptcha/api/image?c=*" CONTENT=EVENT:SAVEITEM' + n;
    iimPlay(code, 60);
}
//=========================================================================================================================
function SaveCapthaSolve (file_name){
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'SET !ENCRYPTION NO' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'ONDOWNLOAD FOLDER=C:\\FMACROS\\ FILE=' + file_name + ' WAIT=YES' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT' + n;
    
    iimPlay(code, 60);
}
//=========================================================================================================================
function GetRucaptcha (file_name,apikey){
    var result = new Array();
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'SET !TIMEOUT_PAGE 240' + n;
    code += 'URL GOTO=http://imacros2.rucaptcha.com/' + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n;
    code += 'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\FMACROS\\'+ file_name + n;
    code += 'TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:getcapcha.php ATTR=NAME:get_id CONTENT=YES' + n;
    code += 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize' + n;

    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += '' + n;
    iimPlay(code,60);
    var str = iimGetLastExtract();
    var capthId = str.replace('OK|','');
    switch (capthId){
        case 'ERROR_NO_SLOT_AVAILABLE':
            code = '';
            code += start_macro;
            code += 'TAB T=1' + n;
            code += 'WAIT SECONDS=10' + n;        
            return GetRucaptcha (file_name,apikey);    
            break;
        default:    
            result['c_text'] = GetRucaptchaTEXT (capthId,apikey,file_name);
            result['c_id'] = capthId;
    }
    return result;
}
//=========================================================================================================================
function GetRucaptchaTEXT (capthId,apikey,file_name){
    var result = 'ERROR';
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO='+ SERVICE +'res.php?key='+ apikey +'&action=get&id='+ capthId + n;
    code += 'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT='+ apikey + n;
    code += 'WAIT SECONDS=2' + n;
    code += 'TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT' + n;
    code += 'WAIT SECONDS=1' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
    var str = iimGetLastExtract();
    var capth = str.replace('OK|','');
    switch (capth){
    case 'CAPCHA_NOT_READY':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=10' + n;
        iimPlay(code,60);
        result = GetRucaptchaTEXT (capthId,apikey);
        break;
    case 'ERROR_KEY_DOES_NOT_EXIST':
        return result = 'ERROR';
        break;
    case 'ERROR_WRONG_ID_FORMAT':
        return result = 'ERROR';
        break;
    case 'ERROR_WRONG_CAPTCHA_ID':
        return result = 'ERROR';
        break;
    case 'ERROR_CAPTCHA_UNSOLVABLE':
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'REFRESH' + n;
        iimPlay(code,60);
        return result = GetRucaptcha (file_name,apikey);
        break;
    default:
        var result = capth;
    }
    return result;
}
//=========================================================================================================================
function reportRucaptcha(apikey,capthId){
    code = '';
    code += start_macro;
    code += 'TAB OPEN' + n;
    code += 'TAB T=2' + n;
    code += 'URL GOTO='+ SERVICE +'res.php?key='+ apikey +'&action=reportbad&id='+ capthId + n;
    code += 'WAIT SECONDS=5' + n;
    code += 'TAB CLOSE' + n;
    iimPlay(code,60);
}
//=========================================================================================================================
function GetCaptcha(antigate,file_name,keyApi){
    switch(antigate){
    case '1':
        return GetRucaptcha (file_name,keyApi['Recaptha']);
    default: 
        return GetRucaptcha (file_name,keyApi['Recaptha']);
    }
}
//=========================================================================================================================
function reportCaptcha(antigate,keyApi,cId){
    switch(antigate){
    case '1':
        reportRucaptcha (keyApi['Recaptha'],cId);
        break;
    default: 
        reportRucaptcha (keyApi['Recaptha'],cId);
        break;
    }
}
//=========================================================================================================================
function Faucet_01_dancefaucet(antiGateSystem){
        var file = '{{test1}}.png';
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'URL GOTO=http://dancefaucet.com/index' + n;
        iimPlay(code, 60);
        code = 'CODE:';
        code += 'TAB T=1' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:bitcoin CONTENT=' + Wallet + n;
        iimPlay(code, 60);
        SaveCapthaSolve (file);
        var str = GetCaptcha (antiGateSystem,file,keyApi);
        var cText = str['c_text'];
        var captha = cText.replace(/\s/g,'<SP>');
        iimDisplay(captha);
        if(captha=='ERROR'){
            return;
        }
       
        code = '';
        code += start_macro;
        code += 'TAB T=1' + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT=' + captha + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=ID:claim-btn' + n;
        code += 'WAIT SECONDS=3' + n;
        code += 'FILEDELETE NAME=C:\\FMACROS\\'+ file + n;
        code += 'TAB T=1' + n;
        iimPlay(code, 60);
        iimPlay("CODE:TAG POS=1 TYPE=P ATTR=ID:free_play_error EXTRACT=TXT");
        err=iimGetLastExtract();
        if(err == 'Incorrect captcha entered') {
            reportCaptcha(antiGateSystem,keyApi,str['c_id']);
            Faucet_01_dancefaucet(antiGateSystem);
        }
}
//========================================================================================================================= 
while (100>0){
    var sec = time();
    report='';
    report+='Сейчас        ' + sec + n;
    report+='dancefaucet -  ' + (last_sbor['dancefaucet']+3600) + n;
    report+='motherfaucet -     ' + (last_sbor['motherfaucet']+900) + n;
    report+='freebitco -   ' + (last_sbor['freebitco']+3600) + n;
    report+='moonbit -     ' + (last_sbor['moonbit']+3600) + n;
    iimDisplay(report);
    if ((last_sbor['dancefaucet']+3600) < sec && faucetOn['01_dancefaucet'] == 1){
        Faucet_01_dancefaucet(antiGateSystem);
        last_sbor['dancefaucet'] = time();
    }
    if ((last_sbor['bitcoinker']+900) < sec && faucetOn['02_bitcoinker'] == 1){
        Faucet_02_bitcoinker(antiGateSystem);
        last_sbor['bitcoinker'] = time();
    }
    if ((last_sbor['moonbit']+3600) < sec && faucetOn['03_moonbit'] == 1){
        Faucet_03_moonbit(antiGateSystem);
        last_sbor['moonbit'] = time();
    }
    if ((last_sbor['motherfaucet']+900) < sec && faucetOn['04_motherfaucet'] == 1){
        Faucet_04_motherfaucet(antiGateSystem);
        last_sbor['motherfaucet'] = time();
    }
    code = '';
    code += start_macro;
    code += 'TAB T=1' + n;
    code += 'URL GOTO=file:///C:/FMACROS/pause.html' + n;
    code += 'WAIT SECONDS=30' + n;
    iimPlay(code, 60);
}


Поменял путь загрузки формы на :
code += 'URL GOTO=http://imacros2.rucaptcha.com/' + n;
2: Т.к. понятия не имею что такое :
///C:/FMACROS/form_api.html
3: Также не ясно "мне" что это(/C:/FMACROS/pause.html),где взять,куда положить?

Rafe_McCouley пишет

Скрипт должен менять значение N и Y по переходе по ссылке. но выполняеться только Y

неужели никто не знает в чем проблема :(

Rafe_McCouley пишет

неужели никто не знает в чем проблема

Ну так у тебя цикл в цикле, первая итерация n это сотня итераций y. Так что будет сначала изменяться y, дойдет до 101 и дальше будет n изменяться. А y естественно застрянет на 101. Вроде не ошибаюсь)
Еще, на будущее, выкладывай код подредактированным, что-бы его прочесть можно было нормально.

Вот так

Выделить код

Код:

for (n = 100; n <= 1000; n++)
{ 
    if (ret == -101){break};
    for (y = 1; y <= 100; y++)
    { 
        if (ret == -101){break};
        iimDisplay(y, n);
        var macro="CODE:";
        macro += "URL GOTO=http://site.ru/page.php?q=control&id_unit="+n+"&action_id=1&id_loc_to="+y+"&cnf=1" + "\n";
        var ret=iimPlay(macro);
    }
}

Vsasyok007 пишет

InfSub - нет и помощи нет!(((

OFFTOP: я тут как-бы не один - кто может ответить на вопросы...
ну а если ни кто не может, то прошу прощения, но в данный момент, у меня просто физически нет времени, если вопросы останутся актуальными, то полноценно смогу ответить недели через 2


Rafe_McCouley пишет

Скрипт должен менять значение N и Y по переходе по ссылке. но выполняеться только Y

собственно, в чем проблема :)
запись:

Выделить код

Код:

iimDisplay(y, n);

ни когда не отобразит значение n, должно быть:

Выделить код

Код:

iimDisplay(y+', '+n);

в остальном, Haart прав, код верен

VANNNN пишет

1: После того как приходит ответ капчи и ее ID скрипт тупо проходит до коца без каких либо действий и все

в приведенном коде, как минимум отсутствуют несколько функций, к тому же не объявлены некоторые переменные, что приводит к ошибке и остановке скрипта

VANNNN пишет

2: Т.к. понятия не имею что такое :
///C:/FMACROS/form_api.html

это сохраненная страница http://imacros2.rucaptcha.com

VANNNN пишет

3: Также не ясно "мне" что это(/C:/FMACROS/pause.html),где взять,куда положить?

замените ///C:/FMACROS/pause.html на about:blank

Ребята, хочу подключить imacros2.rucaptcha.com, приходит ответ ввиде: ОK| ID номер|капча, а теперь как сделать что бы только капча в окно вбивалось. Все это сохраняется в переменной extract = txt.

Kanataga, открыть глаза и убрать галочку в форме или соответствующую запись в скрипте facepalm.gif

InfSub пишет
Vsasyok007 пишет

InfSub - нет и помощи нет!(((

OFFTOP: я тут как-бы не один - кто может ответить на вопросы...
ну а если ни кто не может, то прошу прощения, но в данный момент, у меня просто физически нет времени, если вопросы останутся актуальными, то полноценно смогу ответить недели через 2

рабочий код

скрытый текст

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE hist.txt
SET !DATASOURCE_LINE {{!LOOP}}
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*1 + 5); randomNumber;")
TAB T=1
URL GOTO=https://twitter.com/профиль
WAIT SECONDS={{!VAR1}}
EVENT TYPE=CLICK SELECTOR="#global-new-tweet-button" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#global-tweet-dialog-dialog>DIV:nth-of-type(2)>DIV:nth-of-type(4)>FORM>DIV:nth-of-type(2)>DIV:nth-of-type(2)>BUTTON" BUTTON=0
TAB T=1
URL GOTO=http://my.mail.ru/
WAIT SECONDS={{!VAR1}}
EVENT TYPE=CLICK SELECTOR="#centerColumn>DIV>DIV>DIV>DIV:nth-of-type(2)>TEXTAREA" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#centerColumn>DIV>DIV>DIV>DIV:nth-of-type(2)>TEXTAREA" CHARS={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#centerColumn>DIV>DIV>DIV>DIV:nth-of-type(4)>DIV:nth-of-type(3)>DIV>DIV" BUTTON=0
TAB T=1
URL GOTO=https://vk.com/страница
WAIT SECONDS={{!VAR1}}
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#send_post" BUTTON=0


но как сделать еще и в этих соцсетях
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


не получается(((, не публикует запись или только первый символ вбивает и идет дальше без нажатия кнопки

Всем привет.
Люди, подскажите, можно ли с помощью imacros сделать скриншот страницы ?

Haart

можно

Выделить код

Код:

SAVEAS TYPE=PNG FOLDER=* FILE={{!NOW:yyyymmdd_hhnnss}}.png

Подскажите плиз, можно ли настроить скрипты для удаленного обновления? У меня задача поставить пару макросов на 150 компов, но в дальнейшем нужно будет допилить их. не хочется заново ставить.

myaso пишет

Подскажите плиз, можно ли настроить скрипты для удаленного обновления? У меня задача поставить пару макросов на 150 компов, но в дальнейшем нужно будет допилить их. не хочется заново ставить.

я реализовал данный способ через яндекс диск
авторизировался на трех машинах , как только меняется\обновляется скрипт на одной на всех тоже меняется
Есть очень большие недостатки данного способа:
1 - ЯД медленно работает
2 - могут создаваться вместо замены файлы с именем "файл(2).txt" и так далее, т.е. плохая работа с динамическими файлами
3 - переодически тупит , закономерности нет
4 - жрет, парядошно жрет ресурсы компа
5 - тупит при обновлении базы файлов
6 - в общем, если схема работы налажина все работает более менее нормально
если использовать, то только под iim и js  и ничего более

Спасибо всем кто помог чем смог:)
Отдельное спасибо InfSub !

Kanataga пишет

Ребята, хочу подключить imacros2.rucaptcha.com, приходит ответ ввиде: ОK| ID номер|капча, а теперь как сделать что бы только капча в окно вбивалось. Все это сохраняется в переменной extract = txt.

Выделить код

Код:

var str = iimGetLastExtract();
    var capth = str.replace('OK|','');

Как то так - вроде:/

Хм, хочу сохранить страницу через imacros, но ничего не получается. Так же и с скриншотом. Кто подскажет в чем проблема.

скрытый текст

Выделить код

Код:

И так пробовал.
SAVEAS TYPE=CPL FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}}

И так.
SAVEAS TYPE=CPL FOLDER=d:\primedice FILE=+_{{!NOW:12323}}
WAIT SECONDS=5

И скриншот.
SAVEAS TYPE=PNG FOLDER=* FILE={{!NOW:yyyymmdd_hhnnss}}.png


Ничего не работает. Юзаю на firefox 36.0.4. Imacros v8.8.9

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

скрытый текст

Выделить код

Код:

var poiskfraz1="Фраза 1";
 var poiskfraz2="Фраза 2";
 var poiskfraz3="Фраза 3";
 iimPlay("CODE:TAB OPEN\nTAB T=2\nSET !TIMEOUT 30\nURL GOTO=http://www.google.ru/");
 iimPlay("CODE:SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:* CONTENT= ???

HuKoJIau4, для этого есть поиск, вопрос как минимум несколько раз обсуждался

например, так:

Выделить код

Код:

var poiskfraz=[];
poiskfraz.push("Фраза 1");
poiskfraz.push("Фраза 2");
poiskfraz.push("Фраза ...");
poiskfraz.push("Фраза n");
var num=Math.floor(Math.random()*poiskfraz.length);
iimPlay("CODE:TAB OPEN\nTAB T=2\nSET !TIMEOUT 30\nURL GOTO=http://www.google.ru/");
iimPlay("CODE:SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:* CONTENT="+poiskfraz[num]);

Значит я не умею пользоваться поиском. Я искал, но находил только математические варианты, а как переделать под мой случай придумать не смог, извиняюсь.
Спасибо за помощь!
А подскажите, по идее этот кусочек скрипта, что вы мне написали, должен работать если поместить его его в отдельный файлик?
Просто при попытке сделать вышеописанное в файле .js вылетает ошибка:

скрытый текст
SyntaxError: wrong format of TAG command, line: 2

в файле .iim-вылетает ошибка:
скрытый текст
SyntaxError: unknown command: VAR, line: 1

Прошу прощения за глупые вопросы, я только начинаю изучать сие интересное приложение:angry::angry:

HuKoJIau4 пишет

Просто при попытке сделать вышеописанное в файле .js вылетает ошибка:

скрытый текст
SyntaxError: wrong format of TAG command, line: 2

я показал принцип, естественно - если фраза состоит из нескольких слов, то она должна быть обрамлена в двойные кавычки

скрытый текст

Выделить код

Код:

iimPlay('CODE:SET !TIMEOUT 30\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:* CONTENT="'+poiskfraz[num]+'"');

Здравствуйте. Подскажите пожалуйста как сделать :
  1. Когда нужно сохранить картинку(капчи), картинка не всегда сохраняется, как сделать так что бы когда картинка не сохранялась макрос повторялся от определённой строки. Капча такого вида

скрытый текст
2543217c6f1d.gif

2. Так же само с ошибками, которая возникает  на сайте
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


,как сделать так чтобы после ошибки макрос повторялся от определённой строки.
  3.Не копирует текст(TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT) , в чом ошибка
скрытый текст

Выделить код

Код:

TAB T=1

SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*60 + 3680); randomNumber;")
'ключ рукапча
SET !VAR2 
'биткоин кошелёк
SET !VAR3 
'лайткоин кошелёк
SET !VAR4 
'догикоин кошелёк
SET !VAR5 


URL GOTO=http://www.coinfree.pl/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://www.coinfree.pl/litecoin-signup ATTR=NAME:litecoinWallet CONTENT={{!VAR4}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://www.coinfree.pl/litecoin-signup ATTR=NAME:password CONTENT=1234
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://www.coinfree.pl/litecoin-signup ATTR=*
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://www.coinfree.pl/bitcoin-signup ATTR=NAME:password CONTENT=1234
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://www.coinfree.pl/bitcoin-signup ATTR=NAME:bitcoinWallet CONTENT={{!VAR3}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://www.coinfree.pl/bitcoin-signup ATTR=*
TAG POS=1 TYPE=BUTTON ATTR=TXT:Собирайте<SP>Биткоины
SET !EXTRACT NULL
'Support Captcha
FILEDELETE NAME=C:\CAPCH\image.jpg
ONDOWNLOAD FOLDER=C:\CAPCH FILE=image.jpg
TAG POS=1 TYPE=IMG ATTR=ID:captcha CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

TAB OPEN
TAB T=2
URL GOTO=https://rucaptcha.com/imacros.html
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://rucaptcha.com/in.php ATTR=NAME:key CONTENT={{!VAR2}}
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://rucaptcha.com/in.php ATTR=NAME:file CONTENT=C:\CAPCH\image.jpg
WAIT SECONDS=1
ONDIALOG POS=1 BUTTON=OK CONTENT=
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://rucaptcha.com/in.php ATTR=*
WAIT SECONDS=1
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
TAB CLOSE

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://www.coinfree.pl/litecoin-pay ATTR=NAME:captcha CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://www.coinfree.pl/bitcoin-pay ATTR=*


Зарание спасибо!

Не пробовали vbs + iMacros ?
Нужен минимальный пример и как его запускать.

Пример есть:
http://wiki.imacros.net/Random-Numbers.vbs

При запуске vbs -

скрытый текст
2015-03-28_0841.png

ошибка на: set iim1= CreateObject ("imacros")

т.е. я понимаю не создается объект?

Подскажите, как лучше реализовать задачу:
Нужно чтобы скрипт войдя на сайт по очереди рандомно переходил на одну из ссылок сайта и так несколько раз (ну чтобы просто погулял по сайту).
На ум приходит 2 варианта:
1.

скрытый текст
TAG POS=1 TYPE=A ATTR=HREF:http://сайт.ру*
SET !TIMEOUT 30
TAG POS=1 TYPE=A ATTR=HREF:http://сайт.ру*
SET !TIMEOUT 45
и т.д. Будет ли он выбирать разные ссылки со страницы и переходить по ним или постоянно будет выбирать самую первую на сайте?

2. Чтобы скрипт извлек все ссылки с сайта по маске сайт.ру* в текстовый файл, а затем рандомно выбирал из файла одну и ссылок и переходил по ней.
Но с реализацией этого проблемы, знаний не хватает. Если можно подскажите или ткните носом  в соответствующий материал.

HuKoJIau4 пишет

Подскажите, как лучше реализовать задачу:Нужно чтобы скрипт войдя на сайт по очереди рандомно переходил на одну из ссылок сайта и так несколько раз (ну чтобы просто погулял по сайту).На ум приходит 2 варианта:1. скрытый текстTAG POS=1 TYPE=A ATTR=HREF:http://сайт.ру*SET !TIMEOUT 30TAG POS=1 TYPE=A ATTR=HREF:http://сайт.ру*SET !TIMEOUT 45и т.д. Будет ли он выбирать разные ссылки со страницы и переходить по ним или постоянно будет выбирать самую первую на сайте?2. Чтобы скрипт извлек все ссылки с сайта по маске сайт.ру* в текстовый файл, а затем рандомно выбирал из файла одну и ссылок и переходил по ней.Но с реализацией этого проблемы, знаний не хватает. Если можно подскажите или ткните носом  в соответствующий материал.

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1)
TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру*
SET !TIMEOUT 30
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1)
TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру*
SET !TIMEOUT 45

spy686 пишет

SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1)

Извиняюсь за глупый вопрос, а что значит *10+1?

HuKoJIau4 пишет

Извиняюсь за глупый вопрос, а что значит *10+1?

Это такой метод есть в языке Java: Math.floor(Math.random() * (max - min) + min)
Возвращает случайное целое число между min (включительно) и max (не включая max).

То есть, случайное целое между 1 (min) и 11(max), не включая 11 или, если окончательно, то:
Math.floor(Math.random() * (11 - 1) + 1) или Math.floor(Math.random() * 10 + 1) - это выражение возвращает случайное целое число в промежутке от 1 до 10.

Я бы написал даже как то так:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1);")
SET !VAR2 EVAL("Math.floor(Math.random()*15 + 25);")
TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру*
WAIT SECONDS={{!VAR2}}


И в циклическое воспроизведение.

А вот у меня есть еще готовый макрос автосерфинга по заданному сайту, если нет желания самому выдумывать:

скрытый текст

Выделить код

Код:

VERSION BUILD=7601105 RECORDER=FX

'URL GOTO=адрес сайта, на котором будет работать макрос;
'SET !VAR2 - время в секундах, которое скрипт будет ожидать следующего перехода;
'SET !VAR3 - чем выше число вы поставите, тем больше ссылок сверху вниз кликнет макрос;

TAB T=1
URL GOTO=http://pay-money.org.ua
SET !VAR2 15
SET !VAR3 10
SET !ERRORIGNORE YES
SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}

SET !VAR1 EVAL("Math.floor(Math.random()*{{!VAR3}} + 1);")
TAG POS={{!VAR1}} TYPE=A ATTR=TXT:*
WAIT SECONDS={{!VAR2}}


А... так чего я, собственно, зашел?

VANNNN пишет

Спасибо всем кто помог чем смог

Я так и не понял, чем все закончилось :| Заработал скрипт?

Подскажите, может кто уже писал скрипты для работы с rucaptcha (а именно, дождаться пока на сайте появится капча, отправить ее на rucaptcha, дождаться ответа и ввести его в форму)?
Не поделитесь?

kolshix
Скачал я твой скрипт. Но у меня выдаёт ошибку в 9й строке :( Смотрел твоё  видео у тебя шикарно работает.

скрытый текст

Выделить код

Код:

'======^======'
'===kolshix==='
'==\=======/=='

' Заполнение и подтверждение прокси аутентификации
ONLOGIN USER=user PASSWORD=password

' установка нужного прокми 
PROXY ADDRESS=77.247.243.243:8080 

' установка прокси и списка сайтов на которых будет рвботать реальный IP (BYPASS)
PROXY ADDRESS=77.247.243.243:8080 BYPASS="yandex.ru 2ip.com.ua"

' установка прокси и отключение BYPASS списка сайтов 
PROXY ADDRESS=77.247.243.243:8080 BYPASS=NULL


Помоги пожалуйста

29-03-2015 20:09:08
От версии мазилы,ймакроса или от чего может быть? Или скорее всего от моих рук :lol:

Kanataga пишет
Kanataga пишет

Пользовался поиском, но ответа не нашел. Приведите пожалуйста пример кода, как с имитировать нажатие клавиши enter, очень надо.

Вопрос в силе.

попробуй такие варианты
287f079b6f254ba868b77d7c1145df81.png

29-03-2015 20:49:23

Gergi пишет

kolshix
Скачал я твой скрипт. Но у меня выдаёт ошибку в 9й строке :( Смотрел твоё  видео у тебя шикарно работает.

скрытый текст

Выделить код

Код:

'======^======'
'===kolshix==='
'==\=======/=='

' Заполнение и подтверждение прокси аутентификации
ONLOGIN USER=user PASSWORD=password

' установка нужного прокми 
PROXY ADDRESS=77.247.243.243:8080 

' установка прокси и списка сайтов на которых будет рвботать реальный IP (BYPASS)
PROXY ADDRESS=77.247.243.243:8080 BYPASS="yandex.ru 2ip.com.ua"

' установка прокси и отключение BYPASS списка сайтов 
PROXY ADDRESS=77.247.243.243:8080 BYPASS=NULL


Помоги пожалуйста

29-03-2015 20:09:08
От версии мазилы,ймакроса или от чего может быть? Или скорее всего от моих рук :lol:

ответ даже немного смешной , в 9 строке после  "8080 " стоит пробел , убираете пробел , все работает , сейчас исправлю на youtube

Спасибо,я сам разобрался так как был убеждён что дело в моих руках:lol:  Спасибо за позновательные видео.

spy686 пишет

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1)
TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру*
SET !TIMEOUT 30
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1)
TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://сайт.ру*
SET !TIMEOUT 45

Спасибо за помощь, но выдает ошибку: SyntaxError: wrong format of SET command, line: 1. В чем может быть дело?

Supervizor пишет

А вот у меня есть еще готовый макрос автосерфинга по заданному сайту, если нет желания самому выдумывать:

И вам спасибо, добрый человек, но в вашем скрипте пролистываются сайты по очереди. А нужно чтобы рандомно.

Supervizor пишет

Я бы написал даже как то так:

И этот скриптик выдает ошибку в первой строке: SyntaxError: wrong format of SET command, line: 1

offtop
kolshix
Поделись  ссылкой откуда берёшь прокси. А то у меня такое чувство что это не благодарное дело с этими проксями.

HuKoJIau4 пишет

в вашем скрипте пролистываются сайты по очереди

Это какие такие сайты там пролистываются? :| Вам вроде нужны были рандомные переходы по ссылкам внутри одного определенного сайта.

HuKoJIau4 пишет

И этот скриптик выдает ошибку в первой строке

Сомнительное заявление. Вы могли бы сделать мне скрин окна браузера с ошибкой в iMacros?
И я надеюсь, Вы правильно собрали сам макрос? То есть он должен выглядеть так:

скрытый текст

Выделить код

Код:

VERSION BUILD=8890130 RECORDER=FX
TAB T=1
URL GOTO=http://your_site
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1);")
SET !VAR2 EVAL("Math.floor(Math.random()*15 + 25);")
TAG POS={{!VAR1}} TYPE=A ATTR=HREF:http://your_site*
WAIT SECONDS={{!VAR2}}

Haart пишет

Хм, хочу сохранить страницу через imacros, но ничего не получается. Так же и с скриншотом. Кто подскажет в чем проблема.

скрытый текст

Выделить код

Код:

И так пробовал.
SAVEAS TYPE=CPL FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}}

И так.
SAVEAS TYPE=CPL FOLDER=d:\primedice FILE=+_{{!NOW:12323}}
WAIT SECONDS=5

И скриншот.
SAVEAS TYPE=PNG FOLDER=* FILE={{!NOW:yyyymmdd_hhnnss}}.png


Ничего не работает. Юзаю на firefox 36.0.4. Imacros v8.8.9

У меня тоже с такой версией firefox были проблемы с сохранением, пришлось откатиться на 35 версию.

mmmaks2004 пишет

У меня тоже с такой версией firefox были проблемы с сохранением, пришлось откатиться на 35 версию.

Ну хоть кто-то ответил) Попробую разные версии. Спасибо.

попробуй такие варианты

kolshix, Спасибо друг, помог!!!!!

Подскажите!
Как проверить, появилась ли на странице кнопка с определенным названием?

mmmaks2004 пишет

Подскажите!
Как проверить, появилась ли на странице кнопка с определенным названием?

конкретизируйте , а то у вас вопрос ни о чем - вариантов ответов как минимум 3 , а как максимум для шарящих людей "МНОГО"!!

На странице работает javascript, который периодически обновляет страницу.
И в какой то момент он добавляет на страницу две кнопки:

скрытый текст

Выделить код

Код:

<form action="" method="post"></form>
        <td class="bottom_line" align="center" width="15%">
        <input id="action" name="action" value="user_main" type="hidden">
        <input value="Workspace" class="button_link" type="submit">
        </td>


Как мне определить, появилась ли кнопка Workspace, причем определить, а не нажимать.

Подскажите можно ли так сделать?

Как сделать чтобы открывалась определенная ссылка только один раз в зацикленном скрипте?

buben88 пишет

Подскажите можно ли так сделать?

можно

buben88 пишет

Как сделать чтобы открывалась определенная ссылка только один раз в зацикленном скрипте?

поверить есть ли ссылка в списке/массиве/etc...

Подскажите, нужно сохранить картинку типа gif:

скрытый текст

Выделить код

Код:

<td colspan="3" style="text-align: center; padding: 10px;">
                        <img src="data:image/gif;base64,R0lGODdhLA....." alt="picture is loading">        </td>
    </tr>


Пробую сохранить:
скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=d:\ccc FILE=rt.gif
FRAME F=1
TAG POS=1 TYPE=IMG ATTR=ALT:picture*  CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


И он сохраняется в png файл, а как сделать чтобы в gif сохранял?

InfSub пишет
buben88 пишет

Подскажите можно ли так сделать?

можно

buben88 пишет

Как сделать чтобы открывалась определенная ссылка только один раз в зацикленном скрипте?

поверить есть ли ссылка в списке/массиве/etc...

подробнее можно?

Можно ли с помощью js выделить и скопировать определённую часть html кода? Если да то как?

buben88 пишет

подробнее можно?

каков вопрос - таков ответ

03-04-2015 18:55:52

lsalex144 пишет

Можно ли с помощью js выделить и скопировать определённую часть html кода? Если да то как?

TAG POS=... EXTRACT=HTM

в поиск
Подскажите пожалуйста нужен макрос простой, пример допустим сайт
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

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

и т.д чтоб меняло цифры id

научитесь строить грамотные и связанные предложения, и начните пользоваться поиском, практически каждая страница данного форума - содержит ответ на ваш вопрос

InfSub

mmmaks2004 пишет

Подскажите, нужно сохранить картинку типа gif:
Пробую сохранить:

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=d:\ccc FILE=rt.gif
FRAME F=1
TAG POS=1 TYPE=IMG ATTR=ALT:picture*  CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


И он сохраняется в png файл, а как сделать чтобы в gif сохранял?

а вас не смущает команда SAVE_ELEMENT_SCREENSHOT?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=ALT:picture* CONTENT=EVENT:SAVEITEM


04-04-2015 05:09:05

Haart пишет
mmmaks2004 пишет

У меня тоже с такой версией firefox были проблемы с сохранением, пришлось откатиться на 35 версию.

Ну хоть кто-то ответил) Попробую разные версии. Спасибо.

проблема уже обсуждалась, если бы вы не поленились поискать на форуме по названию ошибки (NS_ERROR_XPC_NOT_ENOUGH_ARGS), то нашли бы ответ
проблема только с версией 36, в версии 35.0.1 и более ранних - все работает стабильно

04-04-2015 05:16:53

spy686 пишет

Не пробовали vbs + iMacros ?
Нужен минимальный пример и как его запускать.

какой iMacros вы имеете ввиду? iMacros-браузер или iMacros для Firefox?
vbs и иные языки программирования поддерживаются только в iMacros-браузер

Товариши, подскажите, как добавить (upload) несколько фото на обменник, форум? Да куда угодно. Не пойму как.

Например:

Выделить код

Код:

URL GOTO=http://fastpic.ru/
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:/uploadmulti ATTR=NAME:file[] CONTENT=C:\Users\211\Desktop\savaimage\cimg1123.jpg
TAG POS=2 TYPE=INPUT:RADIO FORM=ACTION:/uploadmulti ATTR=NAME:check_thumb CONTENT=YES
...
...


Тут добавляется одно фото. А как чтобы добавились все фото, что лежат в папке C:\Users\211\Desktop\savaimage ? В папке у фото постоянно меняются имена, расширения одно jpg.

Aweron пишет

В папке у фото постоянно меняются имена, расширения одно jpg.

iMacros - не умеет считывать имена файлов в директории, только в ручную, если добавить весь список или переименовать все, и дать файлам имена от 1 одного до n, например: 1 2 3 ... 159... n, после чего запустить скрипт, используя цикл

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:/uploadmulti ATTR=NAME:file[] CONTENT=C:\Users\211\Desktop\savaimage\{{!LOOP}}.jpg

InfSub пишет

iMacros - не умеет считывать имена файлов в директории, только в ручную, если добавить весь список или переименовать все, и дать файлам имена от 1 одного до n, например: 1 2 3 ... 159... n, после чего запустить скрипт, используя цикл

Эх. А может можно, чтобы содержание папки он куда-нибудь записал, а потом эти данные использовал для вставки, без всяких переименований? Или еще какой хитрый вариант.

Aweron пишет

Эх. А может можно, чтобы содержание папки он куда-нибудь записал

перечитайте мое сообщение, имакрос НЕ УМЕЕТ считывать содержимое с жесткого диска, содержимое папок в том числе
если список файлов ему предоставить, то он его считает, для этого, к примеру, можно воспользоваться TatalCommander'ом, хотя в таком случае, им же гораздо проще воспользоваться для переименования файлов по шаблону (в цифры)

04-04-2015 11:32:36
на указанном выше сайте, есть программа, FP Uploader, вполне возможно, что данный функционал (загрузка папки) - есть у нее

Aweron пишет
InfSub пишет

iMacros - не умеет считывать имена файлов в директории, только в ручную, если добавить весь список или переименовать все, и дать файлам имена от 1 одного до n, например: 1 2 3 ... 159... n, после чего запустить скрипт, используя цикл

Эх. А может можно, чтобы содержание папки он куда-нибудь записал, а потом эти данные использовал для вставки, без всяких переименований? Или еще какой хитрый вариант.

Не хитрый, но популярный вариант (как я понимаю) для iMacros: использовать управляющий JavaScript, который может и содержимое локальной файловой системы читать/писать и вызывать сам iMacros.

yinfo, js, если не использовать различные хаки, не имеет доступа до файловой системы, иначе бы, вы уже давно лишились всей конфиденциальной информации просто зайдя на чей-либо сайт

04-04-2015 12:00:39

InfSub пишет

yinfo, js, если не использовать различные хаки, не имеет доступа до файловой системы, иначе бы, вы уже давно лишились всей конфиденциальной информации просто зайдя на чей-либо сайт

Не спорю со специалистом, ибо я нуб, но вот работающий код, который читает локальный файл "D:\\scr.txt", причем с кириллицей:

скрытый текст

Выделить код

Код:

function toUnicode(charset, data){
    var uniConv = Components.classes['@mozilla.org/intl/scriptableunicodeconverter'];
    uniConv = uniConv.createInstance(Components.interfaces.nsIScriptableUnicodeConverter);
    uniConv.charset = charset;
    data = uniConv.ConvertToUnicode(data);
    return data;
};

function read(path) {

     var file = Components.classes["@mozilla.org/file/local;1"]
          .createInstance(Components.interfaces.nsILocalFile);
     file.initWithPath( path );
     if ( file.exists() == false ) {
          alert("File does not exist");
     }
     var is = Components.classes["@mozilla.org/network/file-input-stream;1"]
          .createInstance( Components.interfaces.nsIFileInputStream );
     is.init( file,0x01, 00004, null);
     var sis = Components.classes["@mozilla.org/scriptableinputstream;1"]
          .createInstance( Components.interfaces.nsIScriptableInputStream );
     sis.init( is );
     return sis.read( sis.available() );
}


var str = read("D:\\scr.txt");
var utf8Converter = Components.classes["@mozilla.org/intl/utf8converterservice;1"].
    getService(Components.interfaces.nsIUTF8ConverterService);
var str = utf8Converter.convertURISpecToUTF8 (str, "UTF-8"); 
alert(str);

yinfo пишет

как заставить управляющий JavaScript "мониторить" локальную папку на предмет наличия paramsIN.txt

если речь о запущенном скрипте, то проверять возвращаемые ошибки, либо файл прочитан, либо - ошибка

yinfo пишет

по методу №1 я готов поделиться знаниями

если вы можете внести свой вклад в развитие форума и, конкретно нашей ветки по iMacros, то все будут - только ЗА

04-04-2015 12:06:40

yinfo пишет

вот работающий код

повторюсь, "если не использовать хаки" - в данном случае речь о хаке, использующем функционал FF для чтения файлов с диска
на прямую, js - не умеет читать данные с диска

04-04-2015 12:08:39

yinfo пишет

причем с кириллицей

включение поддержки уникода уже давно не проблема

на указанном выше сайте, есть программа, FP Uploader, вполне возможно, что данный функционал (загрузка папки) - есть у нее

Не я просто пробую понять как это все работает, сайт пример просто.

Смотрю вот это

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


... что-то подобное делали вроде?

Aweron пишет

что-то подобное делали вроде

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

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Users\Gustavo\Desktop\fotos.csv
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}

InfSub пишет

если речь о запущенном скрипте, то проверять возвращаемые ошибки, либо файл прочитан, либо - ошибка

Я вот только сегодня ночью начал пробовать код, который мониторит папку на предмет наличия файла с параметрами:

скрытый текст

Выделить код

Код:

var paramsFolder = "C:\\iMacros\\Macros\\params\\";
        window.setInterval(function(){            
            var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
            file.initWithPath( paramsFolder );
            var entries = file.directoryEntries;
            var array = [];            
            while(entries.hasMoreElements()){
            
                var entry = entries.getNext();
                entry.QueryInterface(Components.interfaces.nsIFile);
                array.push(entry);
            }            
            if (array.length>0){            
                /* Тут что-то делаем с файлами... */
            }
        }, 2000);


Что не нравится самому - это по-сути долбежка в цикле, неужели во всем многообразии Components.classes и Components.interfaces нет такой фишки: подключиться к каталогу и мониторить изменения?

InfSub пишет

если вы можете внести свой вклад в развитие форума и, конкретно нашей ветки по iMacros, то все будут - только ЗА

Отлично, что ЗА. Только я не знаю (может посоветуете)  как это описать: FireFox+iMacros с возможностью вызывать функции управляющего скрипта удаленно через telnet (возможность доступа создается с помощью MozRepl, слушающего назначенный порт). Возможность открывается с помощью легкой модификации кода расширения MozRepl (добавил 20 строк кода).  Тут ведь еще нужно о клиенте telnet что-то написать, боюсь полная статья выйдет за пределы обычного сообщения форума.

yinfo пишет

Только я не знаю (может посоветуете)  как это описать: FireFox+iMacros с возможностью вызывать функции управляющего скрипта удаленно через telnet (возможность доступа создается с помощью MozRepl, слушающего назначенный порт). Возможность открывается с помощью легкой модификации кода расширения MozRepl (добавил 20 строк кода).  Тут ведь еще нужно о клиенте telnet что-то написать, боюсь полная статья выйдет за пределы обычного сообщения форума.

Вы можете создать отдельную тему в ветви iMacros - тема будет добавлена в FAQ или закреплена, в зависимости от объема

04-04-2015 12:38:12

yinfo пишет

по-сути долбежка в цикле, неужели во всем многообразии Components.classes и Components.interfaces нет такой фишки: подключиться к каталогу и мониторить изменения?

вам уже ответили на этот вопрос в "Разработке":

okkamas_knife пишет

только постоянно опрашивать.  без вариантов.

лично я, вряд ли смогу что-то еще добавить, вполне возможно, что кто-то из разрабов, сможет добавить что-то еще

03-04-2015 18:55:52

lsalex144 пишет

Можно ли с помощью js выделить и скопировать определённую часть html кода? Если да то как?

TAG POS=... EXTRACT=HTM

этот код для imacros, я правильно понял?

вот допустим мне надо скопировать слово "raise cain" оно находиться в самом низу(на  картинке)  в строке "<span style="top: 38.5px;" id="slog">raise cain</span>", что я должен написать в TAG POS=
чтобы мне скопировало  слово "raise cain".

скрытый текст
DlLrIg1dJf_5221821_16789898.jpg[/img]

Спасибо за помощь .:D

lsalex144 пишет

чтобы мне скопировало  слово "raise cain".

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT


04-04-2015 14:23:53
только у вас данное слово во фрейме, так что нужно еще указать номер или имя фрейма
скрытый текст

Выделить код

Код:

' если есть параметр id у iframe, то:
FRAME NAME=
' если нет - то записать имакросом нажатие на это слово и посмотреть какой номер фрейма или посмотреть через инспектор
FRAME F=

04-04-2015 14:31:51
итого:

скрытый текст

Выделить код

Код:

FRAME NAME=adcopy-unique-*
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT

Не пойму почему не срабатывает EVENT TYPE=CLICK SELECTOR.
Если пишу просто одну команду:

скрытый текст

Выделить код

Код:

'Нажатие кнопки Brower (Открыть)
EVENT TYPE=CLICK SELECTOR="#fileupload" BUTTON=0


То она срабатывает.

Но если перед ней пишу другую команду, то уже команда EVENT, перестает выполнятся.

скрытый текст

Выделить код

Код:

....

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:price CONTENT={{!VAR5}}
'Нажатие кнопки Brower (Открыть)
EVENT TYPE=CLICK SELECTOR="#fileupload" BUTTON=0


Тоесть надо чтобы в конце всего скрипта нажалась кнопка.
В чем дело?

InfSub пишет

04-04-2015 05:16:53

spy686 пишет

Не пробовали vbs + iMacros ?
Нужен минимальный пример и как его запускать.

какой iMacros вы имеете ввиду? iMacros-браузер или iMacros для Firefox?
vbs и иные языки программирования поддерживаются только в iMacros-браузер

для браузера.

Есть код взяты отсюда ссылка.

vbs ругается на:

скрытый текст

Выделить код

Код:

set iim1= CreateObject ("iMacros")


нашел такое ссылка

дописал первую строку строку:

скрытый текст

Выделить код

Код:

C:\Windows\System32\wscript.exe 1.vbs


сейчас другая ошибка 

скрытый текст

Выделить код

Код:

--------------------------- 
Windows Script Host 
--------------------------- 
Сценарий:    D:\Notebook\--------\1.vbs 
Строка:    1 
Символ:    3 
Ошибка:    Предполагается наличие инструкции 
Код:    800A0400 
Источник:     Ошибка компиляции Microsoft VBScript 
 
--------------------------- 
ОК    
---------------------------


Что делать?

InfSub пишет

если бы вы не поленились поискать на форуме по названию ошибки

Ну вся соль в том, что никакой ошибки нет. Не выскакивало ошибок.

Никто не подскажет по поводу моего вопроса про EVENT TYPE=CLICK SELECTOR?

И по поводу извлечение данных с одной страницы и вставке в другую.
Вот в таком виде макрос выполняется нормально. Вставляются данные как нужно, т.е. "marka model"

скрытый текст

Выделить код

Код:

TAB T=1
TAG POS=1 TYPE=SELECT ATTR=NAME:f_marka EXTRACT=TXT
SET !VAR6 {{!EXTRACT}} 
SET !EXTRACT NULL

TAG POS=1 TYPE=SELECT ATTR=NAME:f_model EXTRACT=TXT
SET !VAR7 {{!EXTRACT}} 
SET !EXTRACT NULL

TAB T=2
'вставить
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:model[name] CONTENT={{!VAR6}}<SP>{{!VAR7}}


Но стоить этот кусок вставить в коней всего скрипта, то кроме нужного текста, появляется мусор "NUL[EXTRACT]marka model", откуда то взялось NUL[EXTRACT]. :(
И какую функцию выполняет SET !EXTRACT NULL?

Aweron пишет

Никто не подскажет по поводу моего вопроса про EVENT TYPE=CLICK SELECTOR?

задайте вопрос так, чтобы на него можно было ответить, не гадая "на кофейной гуще"

Aweron пишет

появляется мусор "NUL[EXTRACT]marka model", откуда то взялось NUL[EXTRACT]. :(

правильно заданный вопрос - уже содержит в себе ответ, вы вместо NULL - где-то указали NUL

Aweron пишет

какую функцию выполняет SET !EXTRACT NULL?

простите, а как вы используете эту команду, если даже не знаете ее функционала?
NULL - очищает переменную {{!EXTRACT}} от данных

Насчет NUL - сори :)

Насчет EVENT TYPE=CLICK SELECTOR....
Ну вот например, пример на этом

скрытый текст
http://demo.imacros.net/Automate/FileUploadDemo

Нужно чтобы просто нажалась кнопка Обзор и открылось окно. В таком виде кнопка нажимается и открывается окно выбора.

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#uploaded_file" BUTTON=0


Но если перед этим вставить что-то другое, например, вот так, то кнопка уже почему-то не нажимается. Почему?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA FORM=ID:demo ATTR=NAME:S1 CONTENT="Done! The filename is in the upload box.\nWe could now click on the \"SUBMIT\" button or continue to fill in the rest of the form." 

EVENT TYPE=CLICK SELECTOR="#uploaded_file" BUTTON=0

Aweron пишет

Но если перед этим вставить что-то другое

думаю - баг, попробуйте более раннюю версию имакроса, сейчас, к сожалению, нет возможности лично протестировать на других версиях

Понятно, спасибо.
Проверил три прежние версии планина для фаерфокса, тоже самое. :|
А есть еще варианты, чтобы просто нажалась кнопка и открылось окно? (без записи х\у координат.)

Aweron пишет

А есть еще варианты, чтобы просто нажалась кнопка и открылось окно? (без записи х\у координат.)

не совсем понятна цель именно открытия окна, если есть команда, отправляющая файл, без вызова данного диалога

скрытый текст

Выделить код

Код:

SET METRAOD 17000
SET MES 12
SET CE 11
SET !VAR3 EVAL("{{CE}}*{{METRAOD}}/{{MES}}")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:search ATTR=NAME:q CONTENT={{!VAR3}}


Как сделать так. чтобы число выводилось целым без остатка? :)


Отвечу сам:

скрытый текст

Выделить код

Код:

SET !VAR3 EVAL("Math.ceil({{CE}}*{{METRAOD}}/{{MES}})")


Всем спасибо за внимание))

не совсем понятна цель именно открытия окна, если есть команда, отправляющая файл, без вызова данного диалога

Ну так, мне надо не один файл, а много файлов, находящихся в папке с разными именами. Как это сделать я не знаю-не понял, поэтому решил не мучится и не мучить кого-то. Я понимаю, что в конце макроса я и сам в принципе могу нажать кнопку Обзор. Но уже просто интересно почему не срабатывает CLICK SELECTOR, баг это, мож чего-то дописать нужно или у меня какие проблемы.

Всем привет. Такой вопрос)))
есть в iMacros что то типо goto? например:
условие // если true то
код1
и // переход к код3

код2

код3

Спасибо:)

sjworld пишет

есть в iMacros что то типо goto

есть js, управляющий iMacros-скриптами и соответственно, конструкция if... else...

07-04-2015 16:08:01

Aweron пишет

мне надо не один файл, а много файлов, находящихся в папке с разными именами. Как это сделать я не знаю-не понял

в чем проблема прописать пути до них? взять для примера, код отправки капчи и скомуниздив от туда кусок кода, отвечающий за добавление и отправку файла, размножить его, указав пути до нужных вам файлов

InfSub пишет
sjworld пишет

есть в iMacros что то типо goto

есть js, управляющий iMacros-скриптами и соответственно, конструкция if... else...

я просто думал может проще можно....через if....else уже есть))))

sjworld пишет

может проще

оператор [url=https://ru.wikipedia.org/wiki/Goto
GOTO[/url]]

ru.wikipedia.org пишет

Оператор goto в языках высокого уровня является объектом критики, поскольку чрезмерное его применение приводит к созданию нечитаемого «спагетти-кода».

lurkmore.to пишет

При ненадлежащем использовании в коде этот самый код становится непонятен даже создателю. При годном использовании может сильно облегчить код и исключить использование более сложных конструкций.

InfSub пишет

в чем проблема прописать пути до них? взять для примера, код отправки капчи и скомуниздив от туда кусок кода, отвечающий за добавление и отправку файла, размножить его, указав пути до нужных вам файлов

К сожалению, я не настолько разбираюсь в этом. А макрос для добавления объявлений, фото постоянно разные в папке.
А у вас тоже не работает, о чем я писал в посте №3654?

Задал вопрос на офф. форуме. Посоветовали поставить  imacros v8.8.2 + Pale Moon v24.6.2 (=FF31). Поставил... В такой связке работает как и положено! Но не охота же на старье сидеть :) Причем при первом запуске макроса вылезло предупреждение, что на других версиях ff не было

скрытый текст
pale0.png

Подтвердил. При повторном запуске уже не вылезало. Такие вот дела.


update: это навело меня на мысль, что просто окно блокируется браузером (в Pale Moon хоть спрашивает). В результате так и оказалось. В настройках по умолчанию стоит галочка, нужно убрать ее

скрытый текст
https://support.mozilla.org/en-US/kb/pop-blocker-settings-exceptions-troubleshooting#w_pop-up-blocker-settings

Чтож сразу то в голову не пришло :mad:

Imacros - АЙМАКРОС - Источники текстов 1.2.1 "Источник контента - ошибки в IIM"
Imacros - АЙМАКРОС - Источники текстов 1.2.2 "Источник контента - ошибки IIM в JS"

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

Кстати при записи видео узнал что !TIMEOUT_STEP устанавливает таймера для двух показателей , хотя на сайте это указано , но пользовался макросом год и даже не знал )!!

Здравствуйте.
Хотел спросить у вас, почему когда нажимаю на область(с текстом ) и хочу её скопировать, мне выбивает табличку "Извлечённый текст ", а текст не копирует. Что мне можно сделать чтобы разрешить эту проблему?? 

скрытый текст

Выделить код

Код:

FRAME F=24
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT


Так же постоянно меняется фрейм( "*" не помогает), что тут можно сделать?
Заранее спасибо.:)

lsalex144 пишет

Здравствуйте.
Хотел спросить у вас, почему когда нажимаю на область(с текстом ) и хочу её скопировать, мне выбивает табличку "Извлечённый текст ", а текст не копирует. Что мне можно сделать чтобы разрешить эту проблему?? 

скрытый текст

Выделить код

Код:

FRAME F=24
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT

ссылку на сайт дайте

kolshix пишет

по поводу фрейма , иногда помогает так FRAME F=2*

ты путаешь

FRAME NAME=2*
c
FRAME F=2* - такая конструкция - недопустима

08-04-2015 00:56:07

lsalex144 пишет

мне выбивает табличку "Извлечённый текст ", а текст не копирует.

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

Всем привет такой вопрос если значение переменной var первый символ цифра то выбивает ошибку например:

Выделить код

Код:

var test= 1test

Можно ли это исправить?

Hamzat пишет

Можно ли это исправить?

можно начать соблюдать правила записи переменных

Выделить код

Код:

var test="1test"
InfSub пишет

можно начать соблюдать правила записи переменных

Выделить код

Код:

var test="1test"

Спасибо за помощь. На счет правила записи я бы с удовольствием изучил бы его, но не знаю где.

Hamzat пишет

я бы с удовольствием изучил бы его, но не знаю где.

google, если вы пишете на js, то в сети сотни ресурсов посвященных js, начиная от справочной информации и заканчивая тематическими форумами

Здравствуйте как насчет этого вопроса

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

как реализовать еще здесь
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

del

offtop

Hamzat пишет

а история о том зачем нужен imacros мне не очень интересна.

а вам их ни кто и не рассказывал

сайт не догружается, как сделать игнорирование долгой загрузки,

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" KEY=27

но скрипт останавливается только время идет и не выполняется пока сам не нажму Esc
помогите пожалуйста.

Vsasyok007, будьте добры, исправьте ваше сообщение:

Vsasyok007 пишет

сайт не догружается, как от как избавится в аймакрос, пробовал прописать,

так, чтобы его можно было понять

игнорирование долгой загрузки

Выделить код

Код:

'если долго грузится сам сайт:
SET !TIMEOUT 5
'или если долго грузятся какие-то элементы на странице:
SET !TIMEOUT_STEP 5

:( не переходит по страницам с файла, "игнорирование долгой загрузки" вроде работает

скрытый текст

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
CMDLINE !DATASOURCE for.txt
SET !DATASOURCE_LINE {{!LOOP}}
'если долго грузится сам сайт:
SET !TIMEOUT 5
'или если долго грузятся какие-то элементы на странице:
SET !TIMEOUT_STEP 5
TAB T=1
URL GOTO={{!COL1}}
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#post_button" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(2)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#sharerDialogButtons>BUTTON:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(3)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#update-form>DIV:nth-of-type(3)>FIELDSET>INPUT:nth-of-type(2)" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(4)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#wrp>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(2)>BUTTON" BUTTON=0
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(5)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#submit" BUTTON=0
TAB CLOSE
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(6)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>TABLE>TBODY>TR>TD>DIV" BUTTON=0
TAB T=1


Подскажите где ошибка?

Vsasyok007 пишет

не переходит по страницам с файла
Подскажите где ошибка?

господа, уже не первый десяток раз повторяю, тут нет экстрасенсов, прося помощи - как минимум, указываем проблемный сайт

PRESIDENT, поделитесь, интересная тема

InfSub пишет
Vsasyok007 пишет

не переходит по страницам с файла
Подскажите где ошибка?

господа, уже не первый десяток раз повторяю, тут нет экстрасенсов, прося помощи - как минимум, указываем проблемный сайт

Сайт этот
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


просто не хотел спамить, своими ссылками)))

Ребята как с помощи imacros можно сделать следующие:

форум IPB в котором есть пользователи, нужно заглянуть ко всем на страницу.

/index.php?showuser=1
....
/index.php?showuser=10000

чтоб при каждом повторе у меня в ссылке концовка шла + 1.  ...showuser=1  ...showuser=2  ...showuser=3 и тд.

ПС: Конечно я могу накопировать скрипт и вручную изменить номера пользователя но на это уйдут годы чтоб всех пользователей прописать))  Поэтому ищу более простое решение, в imocros я новичок.

Exclusive1988 пишет

я могу накопировать скрипт и вручную изменить номера пользователя

не уже ли так сложно прочитать хотя бы основы?

Exclusive1988 пишет

/index.php?showuser=1

/index.php?showuser={{!LOOP}}

далее, выставить количество циклов в окне имакроса и нажать "Воспр. (Цикл)"

09-04-2015 22:10:02

Vsasyok007 пишет

Подскажите где ошибка?

все работает, вы можете регулировать количество секунд ожидания, 5 секунд, я привел для примера
так же имеет смысл - отключить картинки на сайте, это ускорит загрузку:

скрытый текст

Выделить код

Код:

SET !TIMEOUT 2
SET !TIMEOUT_STEP 2
FILTER TYPE=IMAGES STATUS=ON

InfSub пишет

/index.php?showuser={{!LOOP}}

далее, выставить количество циклов в окне имакроса и нажать "Воспр. (Цикл)"

Ух ты самая быстрая поддержка. Спасибо всё работает и оказалось проще чем я думал. А можно в imacrose выставить определенный промежуток чисел скажем 1600-3200, 4000-5600 ?

Exclusive1988 пишет

А можно в imacrose выставить определенный промежуток чисел скажем 1600-3200, 4000-5600 ?

Выделить код

Код:

' начальное значение
SET !LOOP 1600
URL GOTO=/index.php?showuser={{!LOOP}}
' конечное - выставляете в панели имакроса
PRESIDENT пишет
Выделить код

Код:

iimPlay("CODE:URL GOTO=/index.php?showuser="+i);
iimPlay("CODE:WAIT SECONDS=3"); //<---ждать 3 секунды, можно убрать за ненадобностью

Уже писал о подобном написании команд , что это не есть хорошо (все правильно но не хорошо)
Стабильность Imacros оставляет желать лучшего , пожерание оперативы после 3-х суток работы тоже
а если записывать по 2-3 команды и присваивать им iimPlay("CODE:
Imacros тупить начинает очень сильно
Почему так не сделать ?

Выделить код

Код:

iimPlay("CODE:URL GOTO=/index.php?showuser="+i+"\nWAIT SECONDS=3");

PRESIDENT, kolshix - это все круто, вот только, предполагаю что, человеку, который в первый раз видит имакрос и не представляет, к примеру, что есть {{!LOOP}} и вообще, еще очень далек от того, как использовать iMacros полноценно и т.д. - приводить пример взаимодействия js+iMacros - несколько рано... ИМХО

скрытый текст

Выделить код

Код:

var lik1;
lik1 =    "CODE:";
lik1 +=  "SET !ERRORIGNORE YES" + "\n"; 
lik1 +=  "TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить<SP>в<SP>группу" + "\n"; 
lik1 +=  "TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button" + "\n"; 
lik1 +=  "TAB T=1"; 
var lik2;
lik2 =    "CODE:";
lik2 +=  "SET !ERRORIGNORE YES" + "\n"; 
lik2 +=  "TAB T=2" + "\n"; 
lik2 +=  "TAG POS=1 TYPE=A ATTR=TXT:Выйти<SP>из<SP>группы" + "\n"; 
lik2 +=  "TAG POS=1 TYPE=A ATTR=TXT:Отписаться<SP>от<SP>новостей" + "\n"; 
lik2 +=  "TAB CLOSE" + "\n"; 
lik2 +=  "TAB T=1" + "\n"; 
for (;;) {
    iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:name_*")+ "\n";
    iimPlay(lik1)+ "\n";
    iimPlay("CODE:TAG POS=1 TYPE=P ATTR=ID:lbll1")+ "\n";
    iimPlay(lik2);
}


В чём ошибка не преходит TAb t=1?
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

PRESIDENT пишет

Это *.js файл если что не  *.iim

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAB CLOSEALLOTHERS\nSET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES");   
   
   iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:name_*");
   iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=TXT:Вступить*группу");  
   iimPlay("CODE:TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button");    
   iimPlay("CODE:WAIT SECONDS=3");
   
   iimPlay("CODE:TAG POS=1 TYPE=P ATTR=ID:lbll1");
   iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Выйти*группы");  
   iimPlay("CODE:TAG POS=1 TYPE=A ATTR=TXT:Отписаться*новостей");


Только не пойму смысл скрипта. :(
сначала жмёт кнопку вступить, потом выйти из группы.

суть вопроса была в том что скрипт не переходит на tab t=1

Помогите, плз.
Почему не копирует с каптчи слово. Фрейм постоянно меняется. (надо перезагружать сайт до тех пор пока невозможно будет сохранить каптчу)

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

for (i=1;i<=28;i++){
iimSet("I",i)
err=iimPlay("CODE:ADD I 10\n frame={{I}}")
if(err>0){break}
}
iimSet("I",i)
iimPlay("CODE:frame={{I}}\n TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT")


Зарание спасибо

Видео которое можно оставлять в виде ссылки на поставленный вопрос, причем  такого рода вопрос слышу частенько...
Разжевывал как мог, если лень смотреть видео, читайте уйму статей в интернете...
Кстати ссылочку в FAQ можно загнать и при подобном вопросе отсылать на  FAQ...
Imacros - АЙМАКРОС - Запуск независимых копий браузера (Pale Moon, Mozilla Firefox)

InfSub пишет

SET !LOOP 1600
URL GOTO=/index.php?showuser={{!LOOP}}
' конечное - выставляете в панели имакроса

PRESIDENT пишет

for (i=1600; i<=3200; i++){
   iimPlay("CODE:URL GOTO=/index.php?showuser="+i);
   iimPlay("CODE:WAIT SECONDS=3"); //<---ждать 3 секунды, можно убрать за ненадобностью
   }

Спасибо ребята все работает, разобрался и с .js и добавлением imacros'a в него c  iimPlay("CODE:   ");

Немного усложнил себе задачу, есть пользователи которых нужно пропустить.
Пример: 1-86 (87 пропускаем) и дальше продолжает с 88 и выше.
Пример2: 1-86 (87-90 пропускаем) и дальше продолжает с 91 и выше.

Можно такое реализовать в imacros/js?

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

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !ERRORIGNORE YES
TAB T=1
WAIT SECONDS=10
URL GOTO=https://vk.com/
WAIT SECONDS=6
TAG POS=4 TYPE=DIV ATTR=TXT:Написать<SP>сообщение..
WAIT SECONDS= 3
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


помогите исправить пожалуйста

08-04-2015 00:56:07

lsalex144 пишет

мне выбивает табличку "Извлечённый текст ", а текст не копирует.

Moderator пишет

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

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

lsalex144 пишет

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

что вы подразумеваете под буфером? буфер обмена или EXTRACT?
В EXTRACT - эти данные у вас и так попали, раз отобразились на табличке

InfSub пишет
lsalex144 пишет

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

что вы подразумеваете под буфером? буфер обмена или EXTRACT?
В EXTRACT - эти данные у вас и так попали, раз отобразились на табличке

для начала выложу код 

код

Выделить код

Код:

SET !ERRORIGNORE YES

SET !EXTRACT NULL
FRAME F=25
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}


текст должен копироваться в EXTRACT , но он почему то туда не копируется, и выходит что то такое
1
Snimok1PNG_7749057_16897473.png

слово не вставляется. Даже  если потом попробывать вручную вставить, мы увидим,  что слово даже не скопировалось, а вставляется предыдущее слово которое копировалось.
2
[img]url=http://pixs.ru/showimage/Snimok1PNG_4224940_16897863.png]Snimok1PNG_4224940_16897863.jpg

пробовал вначале вставлять SET !EXTRACT_TEST_POPUP NO, не помогает.
Как можно развязать эту проблему?:D:D:D

lsalex144 пишет

скрытый текст

InfSub пишет
lsalex144 пишет

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

что вы подразумеваете под буфером? буфер обмена или EXTRACT?
В EXTRACT - эти данные у вас и так попали, раз отобразились на табличке

для начала выложу код 

Выделить код

Код:

SET !ERRORIGNORE YES

SET !EXTRACT NULL
FRAME F=25
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}

текст должен копироваться в EXTRACT , но он почему то туда не копируется, и выходит что то такое
http://i11.pixs.ru/storage/4/7/3/Snimok … 897473.png
слово не вставляется. Даже  если потом попробывать вручную вставить, мы увидим,  что слово даже не скопировалось, а вставляется предыдущее слово которое копировалось.
[url]url=http://pixs.ru/showimage/Snimok1PNG_4224940_16897863.png]http://i11.pixs.ru/thumbs/8/6/3/Snimok1 … 897863.jpg
пробовал вначале вставлять SET !EXTRACT_TEST_POPUP NO, не помогает.
Как можно развязать эту проблему?:D:D:D



Вот вам Подарочек !!!Это только один из-вариантов, можно и лучше код сделать

Выделить код

Код:

for (i=1;i<=17;i++){
    iimSet("FRAME_CKL",i);
    iimPlay("CODE:ADD FRAME_CKL 8\n  SET !TIMEOUT_STEP 0\n SET !ERRORIGNORE YES\n FRAME F={{FRAME_CKL}}\n  TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT");
    captchaTxt=iimGetLastExtract();
    if (captchaTxt!=='#EANF#'){break}
 }
    if (captchaTxt!=='#EANF#'){
    iimSet("CAPTCHA_RES",captchaTxt);
    iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{CAPTCHA_RES}}");}


11-04-2015 21:44:46

PRESIDENT пишет

Так это картинка а не текст, это и есть защита от ботов.
Её,  картинку в смысле и нужно самому распознавать. Ты текст оттуда ни как не скопируешь.

Как раз в этой каптче прикол , что там не просто картинка , из той каптчи можно извлечь текст с помощью imacros

PRESIDENT пишет

kolshix
Эт что за сайт такой ?
Тоже хочу:)

Да это не сайт , solve Media каптча , навалом таких сайтов , крипто краны

Для тех кто не в теме....
Каптча от SOLVEMEDIA бывает 2-х видов (по крайне мере я видел именно так)
первый - видео , и после видео небольшая надпись в углу под видео (если удалить flash с компа то видео каптча пропадает)
второй  - также делится на 3 штуки : первый чисто jpg , второй отсылка на сам адрес в виде flash, третий вот как раз для него и описывался пример  , причем появляются все три вида рандомно !!!

lsalex144 пишет

слово не вставляется. Даже  если потом попробывать вручную вставить, мы увидим,  что слово даже не скопировалось, а вставляется предыдущее слово которое копировалось.

а как вы вручную его вставите, оно не попадает в буфер обмена, а находится в переменной {{!EXTRACT}}
по поводу вставки, проверьте, можете ли вы вооще что-либо вставить в данное поле, т.е. проверьте сам код вставки, записав вместо

TAG POS= ... CONTENT={{!EXTRACT}}
что-то типа
TAG POS= ... CONTENT="my text"

12-04-2015 00:25:10
PRESIDENT, будьте добры, используйте теги CODE и SPOILER при публикации кода (пример в шапке темы и в правилах данной ветви форума)

удалено, флуд правила, пункт 2.6
вопросы коммерции - не обсуждаются
для запросов вида: "прошу написать за меня" - есть отдельная тема

InfSub

Доброго времяни суток, господа кодеры!!!

kolshix пишет

Вот вам Подарочек !!!Это только один из-вариантов, можно и лучше код сделать

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

скрытый текст
Третьи сутки бьюсь и никак не добьюсь.

Выделить код

Код:

URL GOTO=http://www.tsu.co/
TAB T=1
TAG POS=1 TYPE=TEXTAREA FORM=ID:create_comment_form ATTR=PLACEHOLDER:Write<SP>a<SP>comment...&&NAME:text&&ID:comment_text&&CLASS:expanding<SP>evac_comment_textarea<SP>ui-autocomplete-input&&AUTOCOMPLETE:off CONTENT
="my text"
WAIT SECONDS=1
EVENT TYPE=KEYPRESS SELECTOR="#comment_text" KEY=13
WAIT SECONDS=1
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" KEY=13
WAIT SECONDS=3

Нужно опубликовать текст коментария, кнопки "отправить" нет, так как у меня написано, просто перескакивает на строку ниже в текст поле.


Подскажите, может ещё какие варианты есть?

kolshix пишет

...

фуг,наконец.
спасибо огромное:rock:
продолжение следует..ждите очередных вопросов:D:D:D

Кто хорошенько шарит , как запустить в iMacros vbs файл , ни IE ни FF ни iOpus файлы *.vbs не видят ? если такие есть желательно с максимальными пояснениями !

под  sweet Captcha ещё никто скрипт не писал , я не проверял ещё там вроде не flash, да и каждая картинка свой номер имеет , посмотреть каптчу можно тут www.btc-faucet.com
если на такую каптчу накалякать скрипт то вообще халява будет
работает походу через drag&drop, только на IE  :(

Еще такой вопрос
Как реализовать переключение профилей ?

Кто понимает , расскажите\разложите по полочкам , что за команда http://wiki.imacros.net/SEARCH
SEARCH SOURCE=TXT:"нужный текст" --- я так понял это поиск абсолютного совпадения выражения
SEARCH SOURCE=TXT:"нужный текст" IGNORE_CASE=(YES|NO) --- это, отключить совпадение прописных букв



SEARCH SOURCE=REGEXP: -- что вот это ? какие конструкции ?
SEARCH SOURCE=REGEXP:"ga\\('create', '([^']+)', 'imacros.net'\\)" EXTRACT="Tracker is $1" -- что вот это ?



Я так понял по переводу , это команда поиска текста
вариации работы
на vk.com

Выделить код

Код:

SEARCH SOURCE=REGEXP:"телефон" IGNORE_CASE=YES EXTRACT="Да Телефон найден"

где, если не нужно копирование в extract используем так
SEARCH SOURCE=TXT:"телефон" IGNORE_CASE=YES
ну а если нужно что-то отправить в extract,  то так
SEARCH SOURCE=REGEXP:"телефон" IGNORE_CASE=YES EXTRACT="Да Телефон найден"
причем в extract вписывается любое нужное значение , imacros туда ничего не отсылает , или всетаки можно его заставить отослать ???

kolshix пишет

SEARCH SOURCE=REGEXP

аналог рег. выражения, см. js

InfSub пишет
kolshix пишет

SEARCH SOURCE=REGEXP

аналог рег. выражения, см. js

Короче что написано выше мной , практически все правильно , простым языком для imacros - это поиск текстовой информации , а все что после REGEXP: это особые конструкции поиска определённого текста
Вот только не понял что в EXTRACT уходит ??

аналогов наклепано !!!
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

kolshix пишет

Вот только не понял что в EXTRACT уходит ??

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

оффтоп
нравится мне imacros, но как всегда чего-то не хватает , вот к примеру , попалась функция drag&drop , хочу попробовать поклацать Human Emulator - вот только интересно как там с user agent , многопоточност\несколько браузеров, потребление ресурсов, ну и прокси , на imacros это все просто ,

Всем привет. У меня проблемы возникли с данный программой. У меня есть скрип для автопостинга в группах вк. Около 10 дней программа работала хорошо. Вот вчера и сегодня проблема очень серьезная.  Когда программа работает из вк автоматически выкидовает через каждые 5-10 минут. Можете подсказать почему так? И как исправить?

Ivan23 пишет

Когда программа работает из вк автоматически выкидовает через каждые 5-10 минут. Можете подсказать почему так? И как исправить?

предполагаю - проблема в вк, скорее всего вк вас определяет как спамера и срабатывает защита.

удалено, флуд правила, пункт 2.6
для запросов вида: "прошу написать за меня" - есть отдельная тема

InfSub

Ломал голову над задачкой: как из одного управляющего JS загрузить другой JS и передать туда параметры.
Сам вызов делается легко - с помощью iimPlay, но вот передача параметров - это проблема. Не догадались создатели iMacros сделать что-то вроде iimPlay ( String macro [, int timeout] [,params]).
Test1.js -вызывающий скрипт, Test2.js - вызываемый скрипт (должен лежать в корне папки Macros).

Test1.js

скрытый текст

Выделить код

Код:

function callFuncAnotherJS (jsName, funcName, params){
    iimPlay("CODE:URL GOTO=imacros://run/?m="+jsName+".js",60);
    var timer;
    var AnotherJS = imns.storage[jsName];
    
    var timeEvent = {
        observe: function(subject, topic, data) {        
            AnotherJS = imns.storage[jsName];
            if(!(AnotherJS==null)){
                timer.cancel();    
                timer = null;
                AnotherJS[funcName](params);
            }
        }
    }        
    
    if (AnotherJS == null){
        timer = Components.classes["@mozilla.org/timer;1"].createInstance(Components.interfaces.nsITimer);
        var TYPE_REPEATING_PRECISE_CAN_SKIP = Components.interfaces.nsITimer.TYPE_REPEATING_PRECISE_CAN_SKIP;
        timer.init(timeEvent, 50, TYPE_REPEATING_PRECISE_CAN_SKIP);         
    }else{
        AnotherJS[funcName](params);
    }
}
callFuncAnotherJS("Test2","msg","Через гланды к звёздам!");


Test2.js
скрытый текст

Выделить код

Код:

var Script = Script || {};
(function() {
    var scriptName = "Test2";    
    imns.storage[scriptName] = Script;
    
    Script.msg = function(str){
        alert(str);
    }

})();


Интересно узнать мнение спецов - а нельзя ли было сделать как-то проще. Хотя этот вариант вполне рабочий.

PS решил ответить на вопрос - а что такое imns ? (хотя меня никто и не спрашивал)
Это глобальный объект, доступный в контексте iMacros.
Что значит аббреавиатура imns   - я не знаю. Но этот объект реализован в скрипте iMacros utils.js , который находится в папке Firefox\Profiles\profile1\extensions\{81BF1D23-5F17-408D-AC6B-BD6DF7CAF670}\modules


Судя по коду utils.js объект реализует разные полезные методы, например:

imns.Clipboard - работа с буфером обмена
imns.FIO - работа с файловой системой
imns.Dialogs - работа с диалогами(?)

и т.д. и т.п.

Это не является документированными особенностями iMacros, но iMacros использует utils.js законным путем, как свой скрипт.

Уже давно пользуюсь iMacros и только сейчас заметил , что при свернутом браузере потребляется на 30% меньше ресурсов процессора , а это очень много когда запущено 5 копий , я уже не говорю про 20, заметил когда свернул браузеры упала скорость работы кулера , сразу понял что освободился ресурс процессора.

скрытый текст
Красным - браузеры развернуты , зеленым - браузеры свернуты
0bf567b822dc67c66ae16fbcdfc14f8d.jpg

Привет всем! ;) у меня есть к вам вопрос.
Как сделать так чтобы если картинка(каптча) сохранялась то страничка перезагружалась, и это действия началось заново,если нет то продолжалось действие. Сижу ломаю голову, нечего не выходит.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

lsalex144 пишет

Привет всем!  у меня есть к вам вопрос. Как сделать так чтобы если картинка(каптча) сохранялась то страничка перезагружалась, и это действия началось заново,если нет то продолжалось действие. Сижу ломаю голову, нечего не выходит.

Приветы:)
pourquoi? (франц) - на кой?(русск)
Капча сохранялась.. кем, тобой? Расскажи, может всё проще)

yinfo пишет

pourquoi? (франц) - на кой?(русск)
Капча сохранялась.. кем, тобой? Расскажи, может всё проще)

просто нужно проверить там есть картинка(каптча) или нету, ну и я решил что можно проверить таким способом как: если сохранится картинка(каптча) , значит картинка там есть, если не сохраниться -нету. Возможно немного сложно, но просто я новичок и не очень шарю в различных комбмнацыях.

18-04-2015 23:23:36
И если не сложно растолкуйте мне плз , что нужно вставлять в (..) после if, while, for, do  и т. д. , просто пишут в основном на примере цыфер. А как и какие команды подставлять даже не представляю.

lsalex144 пишет

просто нужно проверить там есть картинка(каптча) или нету, ну и я решил что можно проверить таким способом как: если сохранится картинка(каптча) , значит картинка там есть, если не сохраниться -нету. Возможно немного сложно, но просто я новичок и не очень шарю в различных комбмнацыях.

18-04-2015 23:23:36
И если не сложно растолкуйте мне плз , что нужно вставлять в (..) после if, while, for, do  и т. д. , просто пишут в основном на примере цыфер. А как и какие команды подставлять даже не представляю.

Дружище, у нас есть вот такой выбор:
1. либо мы ждем прихода спецов, которые помогут тебе;
2. либо мы , два нуба, пытаемся сформулировать и решить твою проблему.

Мне кажется, у тебя чуть нарушена логика. Правильнее так:
Если нет капчи То
  делаем свое дело
Иначе
  запускаемРаспознаниеКапчиУИндусовЛибоРискуемСразуПолучитьБан

все зависит от сайта, который ты хочешь штурмовать)

lsalex144 пишет

И если не сложно растолкуйте мне плз , что нужно вставлять в (..) после if, while, for, do  и т. д. , просто пишут в основном на примере цыфер. А как и какие команды подставлять даже не представляю.

для этого есть поиск, примеры - приводились ни единожды

например, можно сделать так

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=IMG ATTR=SRC:"*captcha*"')==1){
    alert('captcha was found')
}else{
    alert('captcha wasn\'t found') 
}

Здравствуйте. Есть простой бот который каждый час вводит капчу и нажимает на кнопку. Но вот иногда бывает, что капча введена не верно, но бот все равно переходит в режим ожидания. Мне нужно чтобы он проверял правильность ввода капчи. (После правильного ввода - страница меняеться(на странице пропадает кнопка и начинает тикать таймер). Соответственно если не верно - кнопка остаеться и таймера нет).
Я предполагаю, что нужно после ввода капчи проверить наличие элемента(кнопки) на странице - если есть то проделываем все сначала, если нет то ждем час. Так же могу предположить что для реализации этой идеи нужен управляющий js. Сразу скажу что я пока не силен во всем этом, поэтому буду рад любым кусочкам кода, ссылкам на подобные темы и.т.д
Зарание благодарен.

sanyo.95, поиском воспользоваться по слову "капча" или созвучным словам, или хотя бы, посмотреть 1-3 поста выше

sanyo.95 пишет

Здравствуйте. Есть простой бот ....

Смотри мои видео , я специально их создал для таких вопросов, предположения на 75 % -  занимаетесь криптой, на видео всех ответов нет , но есть примеры кода по условиям и поиску нужно информации , и что делать если что-то найдено , а что-то нет....

InfSub пишет

sanyo.95, поиском воспользоваться по слову "капча" или созвучным словам, или хотя бы, посмотреть 1-3 поста выше

Поиском я пользовался, а вот с постами выше действительно не хорошо получилось. Написал свой, только потом посмотрел. Извините.

Смотри мои видео

Хорошо, спасибо. Если, что буду сюда писать)))

удалено - offtop

для запроса готовых скриптов - есть отдельная тема iMacros Скрипты - поиск, просьбы написать

InfSub

Доброе время суток!
Подскажите пожалуйста новичку, уже третий день голову ломаю.
Пишу скрип Аймакрос на Java.
необходимо на открытом в Мозиле  сайте найти по id "Photo"
если id "Photo" не найдено, выполнить условие-1
если найдено то условие-2
как выполнять условие, научился
а как заставить Java искать по id в открытой странице браузера?
пытаюсь использовать document.getElementsById ("Photo")
Меня смущает слово  "document" или тут нужна ссылка на страницу?
Можно ли document.getElementsById ("Photo") присвоит значение например "var div = document.getElementById("Photo")", какое это будет значение (цифровое 1.2.3., или это будет слово("Photo"), или будет верно или не верно) т.е что будет в значенни "div" если найдено или не найдено id  ("Photo"), для дальнейшей работы со значением.

Прошу извинить за коряво написанное сообщение, только учусь.

mrivan009 пишет

пытаюсь использовать document.getElementsById ("Photo")

не проще ли для этих целей использовать переменные имакроса?
на сайте, явно id присвоен определенному тегу, к примеру img
вот и проверяйте, есть такой Id или нет

TAG POS=1 TYPE=IMG ATTR=ID:Photo

23-04-2015 15:34:03

mrivan009 пишет

если id "Photo" не найдено, выполнить условие-1
если найдено то условие-2

ответ выше уже давал

InfSub
Извините, но я может что то не понял, но как через TAG POS=1 TYPE=IMG ATTR=ID:Photo создать условие если да то -то. если нет то-это?
по всем моим скромным познаниям это можно реализовать только в JAVA через if.

Спасибо за понимание и ответ!

mrivan009 пишет

Извините, но я может что то не понял, но как через TAG POS=1 TYPE=IMG ATTR=ID:Photo создать условие если да то -то. если нет то-это?
по всем моим скромным познаниям это можно реализовать только в JAVA через if.

смотреть FAQ
Раздел Обработка ошибок в iMacros:

Сори, тока досмотрел видео, все ясно и понятно!!!)))
Респект и уважуха автору!

mrivan009 пишет

Извините, но я может что то не понял, но как через TAG POS=1 TYPE=IMG ATTR=ID:Photo создать условие если да то -то. если нет то-это?

стесняюсь спросить, а ссылку я для чего давал?

24-04-2015 00:45:46
господа, напоминаю, у нас есть отдельная тема по запросам на скрипты, желающим помочь - не только советом, но и скриптом, просьба на нее подписаться (в правом верхнем углу, под шапкой, ссылка - подписаться)... иначе весь народ, не получив ответа там, ломится сюда, получая красные росчерки за оффтоп

правила, пункт 2.9  Излишне цитировать. Это затрудняет чтение сообщения и излишне загружает тему.
Опят доброй ночи Форумчанам, снова с глупыми вопросами(((((

исполняемый макрос 1.js надо выполнить 100 раз
что делаю 1: в аймакросы вписываю повторить макрос макс 100 раз- не воспроизводит вообще, пишет "The LOOP button can only be used with macro (".iim") files.
In a Javascript (".js") file you can use Javascript itself for loops.
что делаю 2:
в скрип 1.js в конце вставляю

скрытый текст

Выделить код

Код:

var x;
for (x=1;x<=100;x++){
iimPlay("1.js",60);
}


останавливает пишет ошибку

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 203"  data: no], line 29 (Error code: -991)

подскажите что может быть?

правила, 2.1  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском.

InfSub

mrivan009, в FAQ,  читаем о том, как запустить js из js

Прошу помощи у знающих как этот скрипт вставить отоброжение количество проигранных ставок. тоесть после слова "П-Р-О-Й-Г-Р-Ы-Ш-Ь." отоброжалось количество. ну и естественно после выйгрыша сброс показаний.

скрытый текст

Выделить код

Код:

var y = 0.00000001;
while(true) {

var macro1;
macro1 =  "CODE:";
macro1 +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro1 +=  "TAG POS=14 TYPE=SPAN ATTR=CLASS:BetControlTitle" + "\n"; 
macro1 +=  "WAIT SECONDS=3" + "\n"; 
macro1 +=  "SET !EXTRACT NULL" + "\n"; 
macro1 +=  "TAG POS=1 TYPE=SPAN ATTR=ID:LastBetInfoProfit EXTRACT=TXT" + "\n"; 
iimPlay(macro1);

var s = iimGetLastExtract();
var extract = s.charAt(0);
var j = 0.08
y = y + (y * j)
var k = (y).toFixed(8)
var macro2;
macro2 =  "CODE:";
macro2 +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT="+ k + "\n"; 
macro2 +=  "WAIT SECONDS=2" + "\n"; 
var macro3;
macro3 =  "CODE:";
macro3 +=  "SET !EXTRACT NULL" + "\n";
macro3 +=  "TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT=0.00000001" + "\n"; 
macro3 +=  "WAIT SECONDS=3" + "\n";iimDisplay("УРА!!! В-Ы-Й-Г-Р-Ы-Ш-Ь.");
if(extract == "-") {
iimDisplay("П-Р-О-Й-Г-Р-Ы-Ш-Ь.");
iimPlay(macro2);
}
if(extract == "0") {
var y = 0.00000001;
    iimPlay(macro3);
}
}


прочитал все странички на форуме, вроде счётчики и похожие примеры есть, а что куда подставить так и не разобрался.

PRESIDENT пишет

просто добавь в лимдисплей значение ставки,
примерно так
iimDisplay("П-Р-О-Й-Г-Р-Ы-Ш-Ь.\n"+k);

нет я конечно понимаю что будет отоброжаться сумма.
но нужно количество пройгранных 1.2.3.4.5 и т.д. , что посоветуете?

Всем привет.
Есть макрос (код ниже). Работал-работал и вдруг перестал. Просто стал проскакивать джава-код не выполняя его. Что бы это могло быть, поделитесь мудростью, у кого подобное было, и как решить ситуёвину.

скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=trn.js");
iimPlayCode("URL GOTO=imacros://run/?m=trn.js");
iimPlayCode("WAIT SECONDS=2");
iimPlayCode("URL GOTO=imacros://run/?m=trnok.js");
iimPlayCode("WAIT SECONDS=2");
iimPlayCode("URL GOTO=imacros://run/?m=lts.js");
iimPlayCode("WAIT SECONDS=2");
iimPlayCode("URL GOTO=imacros://run/?m=ltsok.js");
iimPlayCode("WAIT SECONDS=2");
iimPlayCode("URL GOTO=imacros://run/?m=rvn.js");
iimPlayCode("WAIT SECONDS=2");
iimPlayCode("URL GOTO=imacros://run/?m=rvnok.js");
iimPlayCode("WAIT SECONDS=2");

PRESIDENT пишет

скрытый текст
В самом верху ещё до вайла задай новую переменную для счёта числа проигрышей,
допустим var y = 0.00000001, proigrysh = 0;
...
и в самом низу где уже логика идёт, что то типа такого

Выделить код

Код:

if(extract == "-") { proigrysh ++; iimDisplay("П-Р-О-Й-Г-Р-Ы-Ш-Ь.\n"+proigrysh); iimPlay(macro2);}
if(extract == "0") { proigrysh =0; iimDisplay("УРА !!! В-Ы-Й-Г-Р-Ы-Ш-Ь.");iimPlay(macro3); var y = 0.00000001; }}

ещё один небольшой вапросик. не всегда срабатывает команда:

Выделить код

Код:

macro1 +=  "SET !EXTRACT NULL" + "\n";

т.е. когда ставка достигает значения примерно больше 1.20000, то она не сбрасываеться хотя должна может дополнительно где-нибудь ещё прописать её дополнительно?
Или есть другие команды?
Зарание благодарен за ответ.

pan.vladak пишет

ещё один небольшой вапросик. не всегда срабатывает команда:

скрытый текст

Выделить код

Код:

macro1 +=  "SET !EXTRACT NULL" + "\n";


т.е. когда ставка достигает значения примерно больше 1.20000, то она не сбрасываеться хотя должна может дополнительно где-нибудь ещё прописать её дополнительно?
Или есть другие команды?

в вашем коде - команда

SET !EXTRACT NULL
не несет в себе - совершенно ни какого функционала, или другими словами - совершенно бесполезна
подумайте логически, каким образом очистка переменной, содержащей извлеченный текст с сайта, может влиять на размер чего либо?
сброс размера ставки выполняет:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=TYPE:text&&CLASS:StandardTextBox&&MAXLENGTH:15&&ID:BetSizeInput CONTENT=0.00000001


26-04-2015 23:32:19

pan.vladak пишет

скрытый текст

Выделить код

Код:

if(extract == "0") {
var y = 0.00000001;
    iimPlay(macro3);
}

предположу что: при определенном размере ставки, то что у вас попадает в js-переменную extract - не равно 0

PRESIDENT пишет

Что такое вообще этот минус и ноль.

опять же, предположу, исходя из следующего кода:

скрытый текст

Выделить код

Код:

var s = iimGetLastExtract();
var extract = s.charAt(0);


что это первый знак результата:
если проигрыш, то: число с минусом, например: -0,000012
если выигрыш, то: число, например: 0,000012
НО, если выигрыш равен или больше 1, то в результате получаем неправильную логику скрипта

З.Ы.: повторюсь, все вышеизложенное, только лишь мои предположения, ибо сам сайт - я не видел, и что из него экстрактится - не знаю

Всем привет, подскажите, если распознавать капчу через вот эту страницу: http://imacros2.rucaptcha.com/new/
то там можно получить ID Капчи, в ответе получается вот это:

Выделить код

Код:

OK|28951431|golfer errcume

Тут после первой палки идёт ID капчи, после второй - ответ на капчу
Я знаю, что по имея ID можно автоматически послать жалобу на капчу.
Вопрос:
как понять, что капча введена неверно (тут более менее сам разобрался, но если есть готовое решение - большое спасибо)
как послать жалобу, если капча введена неверно\?

MegaAnton пишет

как понять, что капча введена неверно

как минимум треть ветви по iMacros'у на этом форуме - это ответы на данный вопрос, в поиск

MegaAnton пишет

как послать жалобу, если капча введена неверно\?

читаем FAQ на сайте rucaptcha и пишем соответствующий скрипт

Всем привет есть такой скрипт

скрытый текст

Выделить код

Код:

Вот есть переменные.
var test1 = 1;
var test2 = 1;
var test3 = 1;
Далее у меняя идет условия если переменная test1 и т.д равно 1
то выполняется скрипт если не равно 1 то не выполняется. Вот как то так

if (test1 == 1){
бла-бла-бла}

if (test2 == 1){
бла-бла-бла}

if (test3 == 1){
бла-бла-бла}


Данный скрипт работает нормально, но мне нужно чтобы переменные
скрытый текст

Выделить код

Код:

var test1 = 1;
var test2 = 1;
var test3 = 1;


Хранились в отдельном js скрипте, но при этом выполняли те же функции что и скрипте вверху.

PRESIDENT пишет

скрытый текст
сначала все вары

if (test1 == 1){
выполнить тест1.js
}

if (test2 == 1){
выполнить тест2.js
}

if (test3 == 1){
выполнить тест3.js
}


как запустить один .js из другого, тут недавно разбирали

Если ответ мне то я не очень понял о чем вы. "Как запустить один .js из другого" есть в Faq и я сделал так

iimPlayCode("URL GOTO=imacros://run/?m=test1/test.js")
В этом файле я записал переменные

скрытый текст

Выделить код

Код:

var test1 = 1;
var test2 = 1;
var test3 = 1;


Далее сделал так
скрытый текст

Выделить код

Код:

if (test1 == 1){
бла-бла-бла}

if (test2 == 1){
бла-бла-бла}

if (test3 == 1){
бла-бла-бла}


Но не работает так.

PRESIDENT пишет

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

Тогда это не катит.
iimPlayCode("URL GOTO=imacros://run/?m=test1/test.js")

Мне нужно хранить переменные

скрытый текст
var test1 = 1;
var test2 = 1;
var test3 = 1;

в файле test.js

Далее основываясь на значение этих переменных мне нужно выполнить условию
в файле test1.js
Например:

скрытый текст

Выделить код

Код:

if (test1 == 1){
бла-бла-бла}

if (test2 == 1){
бла-бла-бла}

if (test3 == 1){
бла-бла-бла}


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

Hamzat
используй для передачи значений переменных, промежуточный файл, хранящийся в datasource и перезаписывай его при каждом обращении (FILEDELETE, SAVEAS)

InfSub пишет

Hamzat
используй для передачи значений переменных, промежуточный файл, хранящийся в datasource и перезаписывай его при каждом обращении (FILEDELETE, SAVEAS)

В идеале мне нужно без него, но как понял так нельзя. Все равно спасибо.

PRESIDENT пишет

можно и без этих заморочек :)

можно, только мороки больше, если нет готового скрипта

Всем привет есть вопрос . Вот можно както в программе самой настроить чтобы он между строками делал паузу в секунд 5 . Мне не подойдет метод тыкать после каждой строчки WAIT SECONDS=1 . Т.к. строчек штук 100 и все они уникальны . + Часто я их переписываю . Подойдет программа "работа с текстом " которая через строчку в файловом документе будет вставлять WAIT SECONDS=1 , Если такая есть может кто скинуть ? или написать сам ?

Подскажите пожалуйста, при запуске аймакроса в однокласниках, не переходит к другому человеку. Заданое количество раз, заходит к одному и тому же. Заранее спасибо за ответ.

nikoledjium:
вариант 1:
в плагине:
Manage => Опции => закладка "General" => Скорость воспроизведения => Медленно
вариант 2:
Любой текстовый редактор (кроме встроенного в "форточки" Блокнота), умеет работать с шаблонами, регулярными выражениями, переносами строк и т.д. и т.п.
Открываем диалог "Заменить на..."
В поле "Искать" пишем \n
В поле "Заменить на" пишем \nWAIT SECONDS=число\n
Жмем "Заменить все"
Наслаждаемся
для работы с переносами строк должен быть включен расширенный режим поиска, см. настройки редактора или диалога "Замены"

30-04-2015 02:46:46
подскажите, Сергей111, в каком месте на данном форуме написано: "Кружок экстрасенсов"?
Может быть, Вы, все же приведете проблемный код, так, для примера, чтобы не гадать о причинах проблемы?

InfSub пишет

nikoledjium:вариант 1:в плагине:Manage => Опции => закладка "General" => Скорость воспроизведения => Медленновариант 2:Любой текстовый редактор (кроме встроенного в "форточки" Блокнота), умеет работать с шаблонами, регулярными выражениями, переносами строк и т.д. и т.п.Открываем диалог "Заменить на..."В поле "Искать" пишем \nВ поле "Заменить на" пишем \nWAIT SECONDS=число\nЖмем "Заменить все"Наслаждаемсядля работы с переносами строк должен быть включен расширенный режим поиска, см. настройки редактора или диалога "Замены"
                    Отредактировано InfSub (Сегодня 02:41:46)

Спасибо . 1 Метод однозначно не подойдет сижу через хром . Но позже пересяду в мозилу . Насчет 2 . У меня сплашные строки без пропусков пробелов и т.д . Хотел спросит что означает команда /n для редактора . и еще Я не понимаю как можно найти междустрочие это .
Также еще вопрос . Если процесс остановился не из за скрипта а из за сайта ( сайт лаганул баганул , мб интернет лаганул ) У меня ждет 6с. и останавливается скрипт . Можно ли зделать после того как скрипт отключился так чтобы он потом заново включился либо же на месте ошибки перезагрузил страничку .?
И еще 1 вопрос . Вот скрипт в одном и том же месте видит кнопку она бывает 3 разных цветов синий , красный , желтый , Так вот можно ил зделать так чтобы она по желтой не переходила а по касной и синей могла . Ну тоесть можно ли прикрутить к скрипту изображение чтоб он по изображению именно такому клацал?

nikoledjium пишет

что означает команда /n для редактора

/n - нет такой команды, а есть управляющий символ \n - означающий в любом тексте - перенос строки

30-04-2015 03:06:19

InfSub пишет

Я не понимаю как можно найти междустрочие это

вы не можете повторить описанную последовательность действий?

30-04-2015 03:07:25

nikoledjium пишет

Можно ли зделать

как это сделать, обсуждалось многократно, читаем форум

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAB T=1
URL GOTO=http://ok.ru/dk?st.cmd=searchResult&st.onSite=on&st.mode=Users&st.grmode=Groups&st.posted=set
CLICK X=135 Y=267
CLICK X=436 Y=383
CLICK X=934 Y=527
CLICK X=953 Y=528
CLICK X=5 Y=212

nikoledjium пишет

можно ли прикрутить к скрипту изображение

"прикрутить" нельзя, если все 3 кнопки - картинки, вы ни как не определите какая из них какого цвета (это возможно только в iMacros Browser)
если же цвет задан с помощью стилей на веб-странице, то соответственно можно нажимать на кнопку с соответствующим стилем оформления

InfSub пишет
nikoledjium пишет

что означает команда /n для редактора

/n - нет такой команды, а есть управляющий символ \n - означающий в любом тексте - перенос строки

30-04-2015 03:06:19

InfSub пишет

Я не понимаю как можно найти междустрочие это

вы не можете повторить описанную последовательность действий?

30-04-2015 03:07:25

nikoledjium пишет

Можно ли зделать

как это сделать, обсуждалось многократно, читаем форум

Спасибо . Да я не могу просто так повторить пока не разберусь что я делаю .
По моим двум вопросам , можешь дать какие ключевые слова чтобы вбить в поиск темы , т.к боюсь при в 150 сраниц ,делать это ручками затрудлительно и боюсь не смогу найти т.к буду отфильтровывать все .
Но как я понял все это сделать можно ?
Также скрипт зависает ,показано что он работает (на верху горит зеленая строчка )но по строчкам не ходит  , скрипт в 600 строк я по возможности поставил рефрешы получилось через каждый строк 30 - это поможет справится с зависаниями( думал я ) но не сильно помогло. Как решить эту проблему? может на мозиле лучше работает?

Сергей111, с таким скриптом - только к гадалке, при различных разрешениях экрана, координаты объектов - меняются, работать будет либо на аналогичном разрешении экрана, так что это даже скриптом назвать сложно
запишите нормальный скрипт, нажимающий на объекты на странице, а не на координаты и скорее всего, ваша проблема - решится, в противном случае, вам укажут на ошибку


30-04-2015 03:24:22

nikoledjium пишет

Да я не могу просто так повторить пока не разберусь что я делаю .

чтобы разобраться, нужно как минимум начать делать, иначе можно еще очень долго сидеть и не понимать ....тем более смысл данной команды я написал, дальше - элементарной логики должно хватить для того, чтобы составить следующую схему:
ищем \n - означающий в любом тексте - перенос строки
заменяем на \nWAIT SECONDS=число\n т.е. на перенос строки, строку WAIT SECONDS=число и еще один перенос строки

nikoledjium пишет

По моим двум вопросам

по одному уже дал выше, по второму - думаю оптимальными будут запросы: captcha, capcha, капча, антигейт, antigate - так как в большинстве случаев, ветвление по условию обсуждалось в контексте разгадывания капчи, точнее ситуаций, когда она разгадана не верно и нужно повторить разгадывание


30-04-2015 03:29:53
один из примеров, приводил только на предыдущей странице: тыц

Спасибо за ответ, но я так и не понял о чем вы говорите. Видел в ютубе как это делают, вот и повторю все так же. Целый день смотрю и читаю информацию на разных сайтах, но что-то не получается. Может подскажите какие-то уроки на эту тему...

Сергей111 пишет

я так и не понял о чем вы говорите

закладка - "Запись", кнопка - "Record options", выбираете "Select the best record mode automatically"
далее жмете Запись и записываете требуемые действия, параллельно разбираясь в командах имакроса, для этого, как раз и создан данный форум

все делаю точно так же. Но когда нажимаю "Воспроизвести", из всех кто в онлайне, заходит только к первому столько раз, сколько указано. А к другим не заходит

Сергей111 и где ваш скрипт, записанный в нормальном виде, с командами, а не с координатами?

Привет всем. У меня возник тут один вопрос. Хотел бы узнать стопорит ли imacros при воспроизведения большого кода на js,(1-2к строк и больше)? Сам код то не сложный и написан в паузами и т.п. Просто мне интересно зависит ли тут что-то от количество строк?

Hamzat пишет

при воспроизведения большого кода на js,(1-2к строк и больше)

1-2к ... что значит к? килобайты, или кило.. тобишь тысяча строк?

Hamzat пишет

Просто мне интересно зависит ли тут что-то от количество строк?

при достаточном кол-ве оперативки, нормальном проце и прямых руках, писавших код - ни на что не влияет
есть скрипт на 46Kb работающий нормально на средненьком ноуте, и начинающий подтупливать где-то через сутки

InfSub пишет
Hamzat пишет

при воспроизведения большого кода на js,(1-2к строк и больше)

1-2к ... что значит к? килобайты, или кило.. тобишь тысяча строк?

Под к я имел виду 1000 строк.

Hamzat пишет

Под к я имел виду 1000 строк.

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

InfSub пишет
Hamzat пишет

Под к я имел виду 1000 строк.

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

У меня счас где то 30 скриптов на iim  и я их хочу объединить в едино в js и если они у меня так работают норм и при переводе с iim  в js  я не накосячу то разницы не будет!? На данный момент все скрипты работают через управляющий js файл и при переводе можно не плохо их укоротить и оптимизировать.

Hamzat пишет

при переводе с iim  в js  я не накосячу то разницы не будет!?

в большинстве случаев - нет

Hamzat пишет

У меня счас где то 30 скриптов на iim  и я их хочу объединить в едино в js ....

я уже где-то упоминал , что через js+iim удобно работать когда тестируешь работу всего скрипта , и можно не останавливая его работу изменить или подкорректировать iim -- в конце конечно же удобно объединить все iim в один js.

kolshix
То что Вы говорили это я помню и даже с этим согласен. Но конечные пользователи моего  скрипта (кроме меня) не разбираются не в iim не js. А если я его переведу то код станет более оптимизированным. Всем  спасибо за помощь. Был рад услышать мнение профессионалов.

Здравствуйте, подскажите, как дождаться загрузку страницы?
я записал действия, но макрос слишком быстро воспроизводится не дожидаясь загрузки

скрытый текст

Выделить код

Код:

SET !TIMEOUT_PAGE 120


для 2х минутного ожидания

а возможно сделать только фиксированное кол-во секунд? нельзя ли, чтобы отслеживалось загрузилось или нет, а потом дальше выполнялось :)

данная команда и подразумевает ожидание полной загрузки страницы, в данном случае максимум 120сек, по умолчанию это число 60 сек.
т.е. если страница загрузится за 10 сек, то и ожидание закончится через 10, а не через 120
вы же путаете с WAIT SECONDS=120 - что означает ждать 2 минуты

по умолчанию это число 60 сек.

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

на сайте в своем аккаунте, я выполняю поиск файлов, потом все файлы , которые нашлись отмечаю, дак вот пока идет поиск нужно какое - то время (5-20сек), пока не выдадутся результаты, имакрос не ждет выдачи этих результатов. Там не обычная загрузка, значек мозилы (который показывает обновить, и когда идет загрузка страницы превращается в крестик (стоп)) он ничего не грузит, а появляется значек загрузки в самом окне, где сам сайт может актив Х, джава скрипт, аякс,  или еще что - то, я просто в этом не понимаю..
вот этот сайт, но там нужно зарегистрироваться и загрузить какие - то файлы , чтобы попробовать ( (

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

kur-kur, SET !TIMEOUT_PAGE - это время ожидания загрузки страницы.
Если на ней присутствует активное содержимое, и мозилла показывает, что страница грузится, то данный параметр повлияет, если страница загрузилась, и кнопка с креста сменилась на обновить - значит, действие данного параметра влиять далее не будет
если у вас второй вариант, то только wait seconds=число_сек.
либо, управляющий js-скрипт, который будет проверять появились ли на странице нужные элементы

30-04-2015 20:54:55
впрочем, возможно, поможет SET !TIMEOUT_STEP кол_сек.
данный параметр, как раз увеличивает время ожидания загрузки элементов страницы, а не самой страницы, так что теоретически - может помочь
регистрироваться на сайте, сейчас нет времени, так что, к сожалению, более точный ответ, дать не могу, возможно позже или кто-то из завсегдатаев еще подскажет

спасибо, SET !TIMEOUT_STEP кол_сек. к сожалению не помог, макрос не дождался загрузки, вообще без ожидания пошел дальше

wait seconds=число_сек. вот это помогает, но хорошенько замедляет работу, т.к я не знаю сколько конкретно ставить и ставлю с избытком

InfSub пишет

SET !TIMEOUT_PAGE - это время ожидания загрузки страницы.

SET !TIMEOUT_PAGE - выполняет 2 функции - отвечает за установку отведённого времени на выполнение команды (типо SET !TIMEOUT_STEP)

Как получить определённый текст с сайта и вывести его на экран. Просто я хотел попробовать вывести баланс за интернет через скрипт, но ничего не вышло.

скрытый текст

Выделить код

Код:

var macros;
var retcode;
var s_n="\n";
var getExtract;

macros = "CODE:SET !EXTRACT_TEST_POPUP NO" + s_n;
macros += "URL GOTO=https://lkkirov.pv.mts.ru/index.php?r=site/login" + s_n;
macros += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/index.php?r=site/login ATTR=ID:LoginForm_login CONTENT=имя" + s_n;
macros += "SET !ENCRYPTION NO" + s_n;
macros += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/index.php?r=site/login ATTR=ID:LoginForm_password CONTENT=пароль" + s_n;
macros += "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/index.php?r=site/login ATTR=NAME:yt0" + s_n;
macros += "WAIT SECONDS=3" + s_n;
macros += "TAG POS=3 TYPE=A ATTR=TXT:H*links* EXTRACT=TXT" + s_n;

retcode = iimPlay(macros);
getExtract = iimGetLastExtract(1);
alert(getExtract);


Пробовал по разному, но не выходит. Ошибка где-то здесь:
скрытый текст

Выделить код

Код:

macros += "TAG POS=3 TYPE=A ATTR=TXT:H*links* EXTRACT=TXT" + s_n;


но никак не могу разобраться как пользоваться "TAG POS= TYPE= ATTR= EXTRACT=". Что тут указывается. Можно ли посмотреть где-либо рабочий код с получением текста с сайта? Надеюсь на вашу помощь. Заранее спасибо.

У меня нет такого скрипта, просто повторял действия, которые нашел в ютубе. Но что-то не получается

Нажимаю "сейчас на сайте", записываю аймакросом как захожу к первому человеку и ставлю оценку. Аймакрос это действие повторяет столько раз, сколько указываю, но заходит все время только к этому же человеку. А мне надо, чтобы заходил к другим по очереди.

imacros вообще крут. Вроде разобрался с этой проблемой. imacros  - сам не запишет. Вот какой код у меня вышел:

скрытый текст

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
TAB T=1
URL GOTO=https://lkkirov.pv.mts.ru/index.php?r=site/login
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/index.php?r=site/login ATTR=ID:LoginForm_login CONTENT=имя
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/index.php?r=site/login ATTR=ID:LoginForm_password CONTENT=пароль
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/index.php?r=site/login ATTR=NAME:yt0
TAG POS=2 TYPE=A ATTR=TXT:*руб* EXTRACT=TXT
TAG POS=1 TYPE=A ATTR=TXT:Выход


Я так понимаю способ извлечения следующий:
TAG POS=номер позиции в коде сайта, т.е. найденный текст есть в разных местах кода сайта, а нам нужен из конкретного места  TYPE=ищем нужный тип в коде сайта, я искал это "<a> </a>" ATTR=пишем что искать, я искал TXT, т.е. просто текст "*руб*" EXTRACT=что записываем в переменную. В результате сейчас у меня есть скрипт проверки баланса на интернете. Это мой первый скрипт на этом языке. Для меня главное понять смысл кода, а не просто так щелкая и записывая действия. Просто люблю понимать что делает код, как происходит процесс поиска в коде сайта. Если что-то ещё упустил дополните, пожалуйста.

Сергей111 пишет

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

повторяю в 3 и последний раз, где код вашего скрипта?
дальнейшие аналогичные посты без размещения проблемного кода, который вы записали, описанным мной и PRESIDENT'ом способом, будут считаться флудом и удаляться

Я уже написал, что у меня его нет. Просто записываю действие и включаю "воспроизвести".

Сергей111 пишет

Я уже написал, что у меня его нет. Просто записываю действие и включаю "воспроизвести".

так выложите то, что записали, т.е. содержимое файла #Current.iim

Добрый день!
есть макрос base, в котором через datasourse прилеплена база в csv с цифрами от 1 до 300

делаю такую конструкцию

скрытый текст

Выделить код

Код:

//1й цикл
for (j = 1; j < 100; j++) {
iimSet("loop", j)

    //2й цикл
    for (i = 0; i < 3; i++) {
    iimSet("loop", i);
    iimPlay("base");
    }
}


То есть всего будет 100 циклов, при проходе каждого будет выполняться трижды второй цикл.
То есть:
1е прохождение - цифры 1,2,3
2е прохождение, цифры 4,5,6
и так все 100 циклов

Но... это в теории, но на практике у меня счетчик второго цикла обнуляеться и постоянно идут цифры 1,2,3 аж до 100 цикла.
Как можно исправить?

OGenri

скрытый текст

Выделить код

Код:

//1й цикл
for (j = 0; j < 100; j++) {
iimSet("loop", (j))

    //2й цикл
    for (i = 1; i <= 3; i++) {
    iimSet("loop", (j*3+i));
    iimPlay("base");
    }
}

Подскажите пожалуйста как мне посмотреть значение EXTRACT, для дальнейщего сравнения
делаю так

Выделить код

Код:

iimPlay("CODE:SET !ERRORIGNORE no\n SET !TIMEOUT_STEP 0\nTAG POS=3 TYPE=SPAN ATTR=CLASS:project_name&&TXT:* EXTRACT=TXT");
iimDisplay ({{!EXTRACT}})

чето не выходит

mrivan009 пишет

чето не выходит

alert(iimLastGetExtract());

InfSub пишет

OGenri

скрытый текст

Выделить код

Код:

//1й цикл
for (j = 0; j < 100; j++) {
iimSet("loop", (j))

    //2й цикл
    for (i = 1; i <= 3; i++) {
    iimSet("loop", (j*3+i));
    iimPlay("base");
    }
}

Благодарю! Все работает, Вы меня очень выручили!)

Искал по форуму, но не нашел, быть может кто подскажет
Можно ли через iimdisplay реализовать время работы макроса?
то есть прикрутить к переменной секундомер, а потом через iimdisplay выводить его на экран?

OGenri пишет

Можно ли через iimdisplay реализовать время работы макроса?

теоретически да, практически, iimDisplay - статичен, и для обновления секундомера - придется вызывать каждый раз функцию iimDisplay()
соответственно, точности - вы не добьетесь, так как информация будет постоянно устаревать, без постоянного обновления, но при достаточно частом вызове iimDisplay() с переменной содержащей текущее значение таймера, относительно начала действия скрипта, можно получить - достаточно близкий к реальности результат

PRESIDENT пишет

Что то типа такого

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

WAIT SECONDS=кол-во_секунд

и имеет смысл - только в варианте, разбития на часы/минуты/секунды

Привет всем, у меня возник такой вот вопрос: почему когда вставляю слово через EXTRACT то в указаном поле вместо слова пишет "__undefined__" ??



правила форума Imacros:
1.  Не рекомендуется:
1.2  Задавать вопрос без указания:
1.2.5  Проблемного кода, в случае возникновения ошибок или неправильной работы кода.

InfSub

PRESIDENT пишет

EXTRACT только извлекает информацию(текст, тхмл, ссылку и т.д)

в зависимости от условия , не всегда извлекает ,  я к примеру иногда использую такую конструкцию в результате ответа сайта

Выделить код

Код:

SET !EXTRACT один[EXTRACT]два[EXTRACT]три

как видите в примере нигде ничего не извлекается , а только строится конструкция до последующего перебрасывания в iimGetLastExtract(1), iimGetLastExtract(2), iimGetLastExtract(3)

скрытый текст

InfSub пишет
OGenri пишет

Можно ли через iimdisplay реализовать время работы макроса?

теоретически да, практически, iimDisplay - статичен, и для обновления секундомера - придется вызывать каждый раз функцию iimDisplay()
соответственно, точности - вы не добьетесь, так как информация будет постоянно устаревать, без постоянного обновления, но при достаточно частом вызове iimDisplay() с переменной содержащей текущее значение таймера, относительно начала действия скрипта, можно получить - достаточно близкий к реальности результат


Точность значения не имеет, хотелось бы знать приблизительное время работы.
iimDisplay стоит в начале и конце, полный цикл макрос проходит за 2 минуты, так, что точность тут не важна)

Но вот как реализовать это...

Думаю может при старте макроса записывать время начала работы,в теории что то типа:

скрытый текст

Выделить код

Код:

var time = iimPlay('CODE:!NOW:hhh<SP>nnmin')
var time2 = iimPlay('CODE:!NOW:hhh<SP>nnmin')


и по завершению вычитать из второй переменной первую. Но реализация увы хромает...

Или вот такой вариант

скрытый текст

Выделить код

Код:

var test=new Date;
var test2= test=test.getHours()
...


И по аналогии с 1м вариантом, делать кучу переменных, и вычитать одну из другой

по поводу времени работы
чтоб не замарачивать себе голову кодами, взял сайт с отображением времени, при запуске  - скрипт скопировал и записал инфу в txt , потом в конце повторил тоже самое, ну а я  уже там присматриваюсь и подсчитываю (иными словами лог событий)

lsalex144 пишет

Привет всем, у меня возник такой вот вопрос: почему когда вставляю слово через EXTRACT то в указаном поле вместо слова пишет "__undefined__" ??

УТОЧНЮ вопрос

вот например возьму этот сайт. Тут если скопировать слово, а потом вставить в капчу то будет писать "__undefined__".

сайт
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


код для imacros

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=B ATTR=TXT:Bitcoin<SP>Faucet EXTRACT=TXT

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/faucets/BitCoin/claim ATTR=ID:recaptcha_response_field CONTENT={{EXTRACT}}


вот как это выглядит у меня.
пример
SnimofkJPG_1512004_17192797.jpg

что вы мне посоветуете, как решить эту проблему??

lsalex144
все системные переменные (встроенные в iMacros) имеют префикс !, в том числе и !EXTRACT
например: {{!VAR1}}, {{!VAR2}}... {{!VAR9}}, {{!EXTRACT}} и т.д.
правильным будет код:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/faucets/BitCoin/claim ATTR=ID:recaptcha_response_field CONTENT={{!EXTRACT}}


03-05-2015 02:15:45

OGenri пишет

по завершению вычитать из второй переменной первую. Но реализация увы хромает...

скрытый текст

Выделить код

Код:

var start_timer = new Date(); // начало скрипта
iimPlayCode('WAIT SECONDS=55'); // здесь, вместо WAIT SECONDS - тело скрипта, какие-то операции, требующие времени
var curnt_timer = new Date(); // конец скрипта
iimDisplay(Math.floor((curnt_timer-start_timer)/1000)); // результат в секундах


03-05-2015 02:18:54
offtop

kolshix пишет

чтоб не замарачивать себе голову кодами, взял сайт с отображением времени, при запуске  - скрипт скопировал и записал инфу в txt , потом в конце повторил тоже самое, ну а я  уже там присматриваюсь и подсчитываю (иными словами лог событий)

да вы, батенька, извращенец rofl.gif

Здравствуйте. Помогите пожалуйста.
Нужно js.
1. Обновляет страницу.
2. ЕСЛИ на страничке находит номер ТО выполняет макрос. ЕСЛИ НЕ находит то ищет дальше.

скрытый текст

Выделить код

Код:

IF {TAG POS=1 TYPE=SPAN ATTR=TXT:№<SP>754064<SP>-<SP>Только<SP>клики} 
THEN {GOTO=imacros://run/?m=754064.iim}


не могу никак разобраться.

dimka457 пишет

Нужно js.

скрытый текст

Выделить код

Код:

IF {TAG POS=1 TYPE=SPAN ATTR=TXT:№<SP>754064<SP>-<SP>Только<SP>клики} 
THEN {GOTO=imacros://run/?m=754064.iim}

а при чем тут pascal?

dimka457 пишет

1. Обновляет страницу.
2. ЕСЛИ на страничке находит номер ТО выполняет макрос. ЕСЛИ НЕ находит то ищет дальше.

FAQ по iMacros почитать, эту тему полистать, видео-уроки посмотреть, о том, как работать с iMacros через js -  не пробовали?

скрытый текст

Выделить код

Код:

if(iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:№<SP>754064<SP>-<SP>Только<SP>клики')==1){
    iimPlay("754064.iim");
};

Можно ли заставить imacros работать в определенной вкладке, а не с текущей? Я просто хочу при запуске скрипта открыть новую вкладку и продолжить путешествие по сайтам, пока скрипт делает свою работу на другой вкладке. Возможно ли так?
TAB T=1 помогает, но не всегда корректно работает.

Здравствуйте. Возможно ли с помощью js сымитировать нажатия кнопки мышки ?? Если да, то как??

Nikfel, откройте новое окно браузера - и путешествуйте

Старички, ток сильно не смейтесь и у меня проблемка.:(
Как переключаться между вкладками, вернее как с допустим третей вкладки уйти на вторую или первую, не закрывая.
TAB T=2, TAB T=3 работает, вперёд переключает, всё норм,
а вот обратно T=2 T=1 не хотит.
Ни в новых ни старых версиях не работает, пробовал на 4-х разных.

Похоже придётся яваскриптом мутить :(

PRESIDENT пишет

а вот обратно T=2 T=1 не хотит.

на сколько я помню, это происходит только в одном случае, если вкладки открыты одним, скриптом, к примеру:

скрытый текст

Выделить код

Код:

iimPlayCode('TAB T=1\nTAB OPEN\nTAB T=2');


а перейти, вы пытаетесь вторым скриптом, находясь, скажем, на 2 вкладке:
скрытый текст

Выделить код

Код:

iimPlayCode('TAB T=1');


в таком случае - поможет вычитание номера вкладки из 1
т.е. если нужно перейти на 1 вкладку со второй, вводим:
скрытый текст

Выделить код

Код:

iimPlayCode('TAB T=0');


если на 1 вкладку с 4, то:
скрытый текст

Выделить код

Код:

iimPlayCode('TAB T=-2');


принцип следующий:

...[-3][-2][-1][0][1][2][3]...

где 1 это текущая вкладка, с которой начал работать скрипт

Прошу помощи! Может кто сталкивался с такой проблемой, нужно нажать на капчу. Действие записываеться, но работает инменно с этой капчей т.е. в следующий раз меняеться id и название фрейма.
На клик по координатам не реагирует.  Может можно имитировать этот клик через js ?

скрытый текст
Snymok_240.jpg

korozist

скрытый текст

Выделить код

Код:

FRAME NAME="I0_*"
TAG POS=1 TYPE=LABEL ATTR=ID:recaptcha-anchor-label
WAIT SECONDS=3
FRAME NAME="I1_*"


а кто то знает как разгадывать эту каптчу??

PRESIDENT пишет

в новом имакросе SET !TIMEOUT 1  замени на SET !TIMEOUT_STEP 0

SET !TIMEOUT в новых версиях заменена на SET !TIMEOUT_PAGE, а не на SET !TIMEOUT_STEP
SET !TIMEOUT_STEP пришел на смену SET !TIMEOUT_TAG

PRESIDENT пишет

Раньше сет таимоут использовался для всего

сейчас - тоже

05-05-2015 15:31:59
вообще, kolshix, где-то об этом более подробно писал, но быстро найти не удалось, так что в 2 словах:
SET !TIMEOUT, а теперь и SET !TIMEOUT_PAGE, соответственно, влияют на SET !TIMEOUT_STEP, точнее на то время, которое, по умолчанию, он ждет искомый тег
т.е. если, по умолчанию SET !TIMEOUT_PAGE равен 60 секундам (см. настройки), то SET !TIMEOUT_STEP при этом равен 6 сек.
соответственно, если уменьшим SET !TIMEOUT_PAGE 10 до 10 секунд, то SET !TIMEOUT_STEP будет равен 1 секунде

здравствуйте .
Нужно в поле для ввода текста кликнуть, как это сделать ??

код для втавки текста в поле

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet CONTENT=crownfauce


Объясните плз как работать с кликами в imacros.

PRESIDENT пишет

Что ты имеешь виду, под:  работать с кликами.
Нажми кнопку запись и запиши нужные действия.
Какие команды запишешь, куда будешь сам кликать, то имакрос и запишет, потом и будет повторять.

В смысле, объяснить как сделать нажатия мышкой:правой левой кнопкой. Как правильно написать код, какие данные нужны. Читал на сайтах нечего не понял. Клики я имею введу - что бы сам макрос делал их, а не я нажимал.

Так если это так легко для тебя помоги написать код. ↑

lsalex144 пишет

В смысле, объяснить как сделать нажатия мышкой:правой левой кнопкой. Как правильно написать код, какие данные нужны. Читал на сайтах нечего не понял. Клики я имею введу - что бы сам макрос делал их, а не я нажимал.

объясните нормально - что именно вы пытаетесь сделать
из вашего объяснения, я прихожу к мысли, что вы полностью пытаетесь имитировать свои действия, например клик правой кнопкой мыши, после чего, пункт меню "вставить"
такого действия - у вас не получится, но вставленный текст запишется

InfSub пишет

объясните нормально - что именно вы пытаетесь сделать

Вообще мне нужно просто кликнуть в поле куда вставляется текст, но я не могу сделать это ,поскольку у строчки нету фрейма. Как можно решить мою проблему??

PRESIDENT пишет

lsalex144

скрытый текст
Ну ты же ваше писал команду
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet CONTENT=твой текст

CONTENT= это и есть вставить
только тебе сначала надо этот текст куда то сохранить, в какую нить переменную. Вот смотри пример с антидоты:
Ты отправил картинку на распознание, тебе пришёл ответ
и этой командой ты извлекаешь ответ,
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
он сохраниться в EXTRACT

теперь тебе надо это вставить в нужное поле на сайте
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet CONTENT={{!EXTRACT}}

я это всё понимаю,мне нужно только нажать на это поле куда надо вставлять текст. Можно нажимать с помощью команды CLICK + координаты, но так при разных розширениях экрана на разные места нажимает. А нужно чтобы выполнял команду CLICK только без координат, просто кликал в данное поле

Всем привет. Написал такой скрипт для с отправкой жалобы на каптчу .

скрытый текст

Выделить код

Код:

var macro;
macro =   "CODE:";
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro +=  "SET !ERRORIGNORE YES" + "\n"; 
macro +=  "SET !ERRORCONTINUE YES" + "\n"; 
macro +=  "SET !TIMEOUT 130" + "\n"; 
macro +=  "SET !TIMEOUT_STEP 3" + "\n"; 
macro +=  "FILTER TYPE=IMAGES STATUS=OFF" + "\n"; 
macro +=  "TAB CLOSEALLOTHERS" + "\n"; 
macro +=  "URL GOTO=http://goo.gl/53fme4" + "\n"; 
macro +=  "SET !EXTRACT NULL" + "\n"; 
macro +=  "WAIT SECONDS=1" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:address CONTENT=" +wallet_btc+""+ "\n"; 
macro +=  "WAIT SECONDS=2" + "\n"; 
macro +=  "TAG POS=1 TYPE=IMG ATTR=SRC:http://api.solvemedia.com/media/reload*" + "\n"; 
macro +=  "WAIT SECONDS=3" + "\n"; 
macro +=  "ONDOWNLOAD FOLDER=C:\\CAPCH\\ FILE=image.jpg" + "\n"; 
macro +=  "WAIT SECONDS=1" + "\n"; 
macro +=  "TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT" + "\n"; 
macro +=  "TAB OPEN" + "\n"; 
macro +=  "TAB T=2" + "\n"; 
macro +=  "URL GOTO=http://imacros2.rucaptcha.com/new/" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:getcapcha.php ATTR=NAME:key CONTENT="+key+"" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:getcapcha.php ATTR=NAME:file CONTENT=C:\\CAPCH\\image.jpg" + "\n";
macro += "TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:getcapcha.php ATTR=TYPE:checkbox&&VALUE:1&&NAME:get_id CONTENT=YES"+"\n";
macro +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:getcapcha.php ATTR=NAME:soft_id CONTENT=111" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:getcapcha.php ATTR=*" + "\n"; 
macro +=  "TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT" + "\n";
macro +=  "WAIT SECONDS=1" + "\n"; 
macro +=  "FRAME F=0" + "\n"; 
macro +=  "TAB CLOSE" + "\n"; 
macro +=  "TAB T=1" + "\n"; 
iimPlay(macro)

var captcha = iimGetLastExtract();
var captcha = captcha.split('|');
var id = iimGetLastExtract();
var id = id.split('|');

var macro1;
macro1 = "CODE:";
macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="+captcha[2]+"" + "\n";
macro1 += "WAIT SECONDS=1"+"\n";
macro1 +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*"+"\n";
macro1 += "WAIT SECONDS=3"+"\n";
macro1 += "FILEDELETE NAME=C:\\CAPCH\\image.jpg"+"\n";
macro1 += "WAIT SECONDS=1"+"\n";
iimPlay (macro1);

iimPlayCode("SET !TIMEOUT 500\nSET !TIMEOUT_STEP 50\nSET !REPLAYSPEED FAST\nTAG POS=1 TYPE=P ATTR=TXT:Invalid<SP>captcha<SP>code! extract=txt");
var check=iimGetLastExtract();

if(check="Invalid captcha code!"){
iimPlayCode("SET !TIMEOUT 500\nSET !TIMEOUT_STEP 50\nSET !REPLAYSPEED FAST\nURL GOTO=http://rucaptcha.com/res.php?key="+key+"&action=reportbad&id="+id[1]+"");
}


Но при воспроизведение var macro1; выдает ошибку

Выделить код

Код:

SyntaxError: wrong format of TAG command, line: 1 (Error code: -910)

В чем может быть проблема?

PRESIDENT пишет

Ну так просто вот эта команда
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet
без CONTENT и будет клик:)

Ток всё равно не пойму для чего
Ты ищешь какой то определённый фрейм ?

У меня ошибку выдает в 49  строке, я попробовал как ты сказал, но не работает.

PRESIDENT пишет

Ну так просто вот эта команда
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet
без CONTENT и будет клик:)

Ток всё равно не пойму для чего
Ты ищешь какой то определённый фрейм ?

Эта команда не кликает ,а выделяет область, теперь нужно сделать так чтобы по этой области кликнула

lsalex144 пишет

скрытый текст

PRESIDENT пишет

Ну так просто вот эта команда
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet
без CONTENT и будет клик:)

Ток всё равно не пойму для чего
Ты ищешь какой то определённый фрейм ?


Эта команда не кликает ,а выделяет область, теперь нужно сделать так чтобы по этой области кликнула

Это команда вставляет в форму каптчу. Пока не мере должно.

05-05-2015 23:10:55

PRESIDENT пишет

Hamzat

скрытый текст
Вот это попроще сделай

Выделить код

Код:

var cap = iimGetLastExtract();
var capt = captcha.split('|');
id = capt[1];
captcha=capt[2];

И теперь строку где вставляет капчу,
macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="+captcha+"" + "\n";

И отправка сообщения об ошибке
iimPlayCode("SET !TIMEOUT 50\nURL GOTO=http://rucaptcha.com/res.php?key="+key+"&action=reportbad&id="+id);


Что за команда в 49 строке ?

Если я меняю так то выдает ошибку в 43 строке т.е  var captcha = captcha.split('|');.
в 49 у меня и есть

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="+captcha[2]+"" + "\n";

Подскажите!
Внешнюю программу из iMacros можно запустить, а также принудительно закрыть через определенное время?

PRESIDENT пишет

lsalex144
Для чего тебе туда клик, что дальше делать надо ?

Просто надо туда кликнуть ,что я типа не бот. Стоит такая вот защита.

PRESIDENT пишет

lsalex144

скрытый текст

Выделить код

Код:

for (s=15; s<=50; s++){    
  f=iimPlay('CODE:SET !TIMEOUT 1\nFRAME F='+s+'\nTAG POS=1 TYPE=DIV ATTR=TXT:reCAPTCHA');
  if(f>0){ var a=(Number(s)+2);
    iimPlay('CODE:FRAME F='+s+'\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark');
    weit(1);
    for (w=a; w<=50; w++){   
  f=iimPlay('CODE:SET !TIMEOUT 1\nFRAME F='+w+'\nTAG POS=1 TYPE=IMG ATTR=SRC:*recaptcha*');if(f>0){
    iimPlay('CODE:ONDOWNLOAD FOLDER=D:\\Cap\\ FILE=a.jpg');
    iimPlay('CODE:FRAME F='+w+'\nTAG POS=1 TYPE=IMG ATTR=SRC:*recaptcha* CONTENT=EVENT:SAVEPICTUREAS');
    iimPlay("CODE:WAIT SECONDS=1");
    /**
    Тут будет антикапча
    */
    break;}}
    break;}}


Я юзаю старый имакрос, команда сет таймоутстеп не работает.
в новом имакросе SET !TIMEOUT 1  замени на SET !TIMEOUT_STEP 0

это ты скинул как просто нажать на галочку??

PRESIDENT
Когда я все правильно делаю т.е все поменял там и т.п. При воспроизведение var macro1 выдает

скрытый текст

Выделить код

Код:

SyntaxError: wrong format of TAG command, line: 1 (Error code: -910)


Если посмотреть то первая строка это

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="+captcha+"\n";

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

удалено, избыточное цитирование

InfSub

PRESIDENT пишет

Hamzat
Попробуй где нить в самом верху скрипта сначала обьябить переменые captcha и id
var captcha, id ;
Может ты от сервиса распознавания не получаешь ответ, и скрипт не может извлечь cap
и все последующие действия не работают:(

скрытый текст

Выделить код

Код:

var cap = iimGetLastExtract(); 
var capt = captcha.split('|');  
id = capt[1];  
captcha=capt[2];

offtop
Ты в вк есть? Если нет то давай напиши в л.с скайп.
личная переписка в ЛС, а не на форуме

Самое странное в том что если я например вместо каптчи там пишу например ид то он норм вставляется. Именно каптча там не вставляется. Или я не разделяю их и вставляю то тоже все полностью вставляется в таком виде OK|ID|CAPTCHA, а если разделить то не вставляется именно каптча.

Вопрос - можно ли запустить несколько независимых копий браузера с Imacros-ом на Убунту?

offtop
Есть ли аналог sandboxie для линукса?

Дело происходит на сервере в графической оболочке. Менеджер профилей также не получается запустить (firefox -ProfileManager)...Кто-нибудь запускал на сервере несколько копий imacrosa?

Hamzat пишет
Выделить код

Код:

macro += "SET !EXTRACT_TEST_POPUP NO" + "\n";
macro += "SET !ERRORIGNORE YES" + "\n";
macro += "SET !ERRORCONTINUE YES" + "\n";

SET !EXTRACT_TEST_POPUP NO - совершенно бесполезна при использовании в js, у вас и так не будет всплывающих окон при EXTRACT'e
SET !ERRORCONTINUE YES - нет такой команды, сколько можно об этом говорить?

06-05-2015 19:36:09
Pavlentiy67, тут мало кто работает на линуксе
по менеджеру профилей не подскажу, сейчас не на чем проверить, но профили поддерживаются, разве что, запуск, на сколько помню, через параметры запуска ff, с именем профиля, думаю это можно уточнить в других разделах форума

InfSub пишет

SET !EXTRACT_TEST_POPUP NO - совершенно бесполезна при использовании в js, у вас и так не будет всплывающих окон при EXTRACT'e
SET !ERRORCONTINUE YES - нет такой команды, сколько можно об этом говорить?

Не знаю мне так сказали когда начинал изучать так я и делаю до сих пор. А по теме можете сказать почему такая проблема? Вы как понял самый опытный.

Hamzat
после получения капчи:

скрытый текст

Выделить код

Код:

var cap = iimGetLastExtract();
var capt = cap.split('|');
id = capt[1]; 
captcha=capt[2];


вставь alert(capt) и посмотри что в него попадает, у тебя явно код ломается пришедшими данными
или перед запуском кода, отобрази его и посмотри где ошибки:
скрытый текст

Выделить код

Код:

var macro1;
macro1 = "CODE:";
....
macro1 += "WAIT SECONDS=1"+"\n";
alert(macro1);
iimPlay (macro1);

InfSub пишет

Hamzat
после получения капчи:

скрытый текст

Выделить код

Код:

var cap = iimGetLastExtract();
var capt = captcha.split('|');
id = capt[1]; 
captcha=capt[2];


вставь alert(capt) и посмотри что в него попадает, у тебя явно код ломается пришедшими данными
или перед запуском кода, отобрази его и посмотри где ошибки:
скрытый текст

Выделить код

Код:

var macro1;
macro1 = "CODE:";
....
macro1 += "WAIT SECONDS=1"+"\n";
alert(macro1);
iimPlay (macro1);

Я сделал немного по другому. А именно alert(captcha). И получается все норм т.е в нем хранится именно то что надо.

и возможно это происходит из-за опечатки:

PRESIDENT пишет

var cap = iimGetLastExtract(); 
var capt = captcha.split('|');  // переменной не существует
var capt = cap.split('|');  // должно быть
id = capt[1]; 
captcha=capt[2];

Hamzat пишет

Я сделал немного по другому. А именно alert(captcha). И получается все норм т.е в нем хранить именно то что надо.

да, я там ошибся, подразумевал именно alert(captcha)
и все же, сделайте alert(macro1) и выложите сюда результат, так будет проще понять причину возникновения ошибки:

Выделить код

Код:

SyntaxError: wrong format of TAG command, line: 1 (Error code: -910)
InfSub пишет

и возможно это происходит из-за опечатки

Вот один раз заработал. Возможно в этом была ошибка. Все равно спс.

Hamzat пишет

Возможно в этом была ошибка

проирал ваш код выложенный ранее, у меня на нем не возникло ни одной ошибки, описанных вами..
какая версия имакроса установлена?
в коде есть еще одна ошибка:

if(check="Invalid captcha code!"){

должно быть ==

InfSub пишет

какая версия имакроса установлена?

8.6.0 Браузер Firefox 27.01 portable

PRESIDENT пишет

Извиняюсь запарился, не досмотрел

вообще не вижу смысла менять оригинал кода, на предложенный вами кусок, сути - не меняет, количество кода - тоже
если только так записать, тогда имело бы, хоть какой-то смысл:

Выделить код

Код:

var cap = iimGetLastExtract().split('|');
var id = capt[1];  
var captcha=capt[2];

06-05-2015 20:32:41
PRESIDENT

PRESIDENT пишет

Если кача из двух или более слов,  имакрос будет ругаться на пробелы, их надо на <sp> заменять.
captcha=capt[2].replace(/ /g,'<sp>');

не совсем верно

Выделить код

Код:

CONTENT="+captcha+"

использование кавычек в CONTENT="" позволяет вставлять текст без <SP>

CONTENT="любой текст"

т.е. правим:

Выделить код

Код:

macro1 += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="'+captcha+'"\n';

и ни каких <SP> не нужно

InfSub пишет

т.е. правим:

Выделить код

Код:

macro1 += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="'+captcha+'"\n';

и ни каких <SP> не нужно

А использование таких кавычек ' или " меняет суть самого скрипта? Или это кому как?

цитируйте только то, на что отвечаете, не нужно захламлять форум излишним цитированием

InfSub

Hamzat пишет

А использование таких кавычек ' или " меняет суть самого скрипта? Или это кому как?

двойные кавычки - используются только в iMacros
в js, вы может использовать как двойные так и одинарные, но естественно, конкретный кусок текста должен быть обрамлен идентичными кавычками:

'текст'+"другой текст"+' и еще немного текста'

06-05-2015 21:13:39
вашу строку можно было бы записать и так, но с экранированием:

Выделить код

Код:

macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT=\""+captcha+"\"\n";

да, я там ошибся, подразумевал именно alert(captcha)
и все же, сделайте alert(macro1) и выложите сюда результат, так будет проще понять причину возникновения ошибки:

Выделить код

Код:

SyntaxError: wrong format of TAG command, line: 1 (Error code: -910)

Вот решил второй раз запустить проверить опять это ошибка вышла. Вот alert(macro1)

скрытый текст

Выделить код

Код:

CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT=twenty three
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*
WAIT SECONDS=3
FILEDELETE NAME=C:\CAPCH\image.jpg
WAIT SECONDS=1

Hamzat пишет

Вот решил второй раз запустить проверить опять это ошибка вышла. Вот alert(macro1)

так замените строку, как написал выше:

скрытый текст

Выделить код

Код:

macro1 += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="'+captcha+'"\n';

InfSub
Вот опять заработал). Вот на сколько?))

Подскажите.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Есть какая-то возможность в iMacros сэмулировать нажатие кнопки мыши - нужно в вышеприведенном примере нажать на  старт.

mmmaks2004

скрытый текст

Выделить код

Код:

FRAME F=1
TAG POS=1 TYPE=CANVAS ATTR=ID:ayah-canvas-fg

PRESIDENT
не работает, по крайней мере, у меня в FF!

mmmaks2004 пишет

нужно в вышеприведенном примере нажать на  старт.

а какой смысл, вы все равно не сможете произвести дальнейшие действия, с подстановкой картинок

InfSub
я определю игру, а потом запущу автокликер, заточенный под эту капчу, и он решит ее.

А блин это флеш, опять поспешил код выложить:(

06-05-2015 22:41:18
mmmaks2004
Что автокликер Аутоит или кибор ?

PRESIDENT
Кибор

mmmaks2004 пишет

я определю игру, а потом запущу автокликер, заточенный под эту капчу, и он решит ее.

так запустите автокликер для нажатия "старт"

Ну если c iMacros нельзя, то придется, хотя не хотеось бы.
Подскажите, как запускать внешнюю программу в iMacros?

Можно яваскриптом организовать drag'n'drop. Теоретически картинку собрать можно.
Я когда то возился с таким.

mmmaks2004
Что именно запустить хочешь, кибора ?

PRESIDENT
да, кибора, если найду его полную версию, где можно собирать exe-файл.

Мэтры, кто знает как новую капчу у Гугла, гадать, ту которая с картинками, типа выбрать вкусное из невкусного и прочее,
уже мозг сломал, я пока нуб в этом деле, по образу и подобию делаю капчи на солвмедиа и прочее, а новая капча меня в тупик ставит,
у меня скрипт, собирает сатоши с сайтов, отправляет на РУкапча, из-за новой гугловской примочки остановил работу скрипта, стало не рентабельно, железо плюс электричество, да и капча
Помогите Плиз, можно за денюжку.

Такой вопрос:
в браузере открываются две вкладки.
Можно ли сделать так, чтобы постоянно активно была одна вкладка, а все действия (нажатие кнопок и т.д.) iMacros проводил во второй, не активируя ее?

Egorushka1974
кинь пример или где посмотреть капчи

mmmaks2004 пишет

Можно ли

нет

mmmaks2004 пишет

Egorushka1974 кинь пример или где посмотреть капчи

Не въехал как картинки цеплять, чет сложно

вот ссылка на кран
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Посмотрите.

Egorushka1974
на первый взгляд собирать базу картинок и группировать их: бутерброды, суши и т.д., и потом по основной картинке, смотреть картинки, какие есть в ее группе и клацать

mmmaks2004
Картинки всегда разные, одинаковых практически нету.
Сам уже который день пытаюсь хоть какой то алгоритм придумать, для распознавания. На старую капчу где просто 5 буковок было, распознавалку сделал. процентов двадцать распознавало. С третей-пятой или десятой попытки, но всё равно распознавало. И с этой вообще тяжко, даже не знаю с какой стороны подступиться:(

PRESIDENT
удалено
Я на рукапчу отправлял, там "индусы с китайцами" все распознавали и присылали, было неплохо,
Я по аналогии и такую бы сделал на отправку, но похоже два момента, первое, непонятно как передать такой файл
второе, рукапча помоему такой формат не поддерживает по обработке изображений

удалено
Если, что получится, дай знать.

правила, пункт 2.9

InfSub

Egorushka1974
Индусам на распознавание отправлять, не выгодно. Нормальных халявных ключей антодоты уже практически не найти, а за свои деньги, даже не стоит заморачиваться.
Насчёт, как передать, можна попробовать сначала заскринить, сохранить к себе на комп. Потом пыхой обработать картинку, типа в ряд поставить и внизу или сверху, не суть, на англицком и русском написать, типа введите через запятую номера картинок похожих на первую , минимум 2.

PRESIDENT
А сколько по времени такая обработка будет занимать, да пересылка туда обратно, кран за это время капчу поменяет.
Может поискать соответствие эталонной картинки и тех, что нужно жамкнуть в исходном коде той картинки, что виснет при выставлении капчи.

07-05-2015 14:51:19
удалено
Да и размер будет большой, я вчера заскринил картинку, пытался отправить на рукапча, но ругается прога, типа большой объем файла и все такое, не факт, что обработанное изображение будет весить меньше чем исходная картинка.

правила, пункт 2.9
Не рекомендуется: Излишне цитировать. Это затрудняет чтение сообщения и излишне загружает тему.

InfSub

Egorushka1974 пишет

...сколько по времени такая обработка будет занимать

Секунду две.

Egorushka1974 пишет

...Может поискать соответствие эталонной картинки и тех, что нужно жамкнуть в исходном коде той картинки, что виснет при выставлении капчи.

Думаешь чем эти две недели занимаюсь, как раз и пытаюсь, хоть что то найти, хоть какую то взаимосвязь.
Там же тоже не дураки сидят, на то она и защита от ботов.

PRESIDENT пишет

Там же тоже не дураки сидят, на то она и защита от ботов.

Я понимаю, сам ниразу не прогер, так в институте давали неплохо азы, но меня не увлекло.
Просто есть автомат, который акучивал пару сотен кранов по циклу, а тут как в кино..............бац и вторая смена.
Не хочется делать из него полу автомат, но видимо пока придется.

Доброго времени суток!
Давно читаю ваш форум и сейчас решил зарегистрироваться
Пишу несложный скрипт  и возникла задача рандомного выбора одного из нескольких элементов.

Как пример:

скрытый текст
URL GOTO=https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=153

'а дальше нужен рандомный выбор, нажать или сабмит или превью
  TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:post ATTR=ID:submit 
  TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:post ATTR=NAME:preview


каким способом это можно реализовать?
Заранее благодарю

TetraSky
На 145 странице смотри там InfSub про рандом хороший пример выложил:)

скрытый текст

Выделить код

Код:

var knopf=[];
knopf.push("ID:submit"); knopf.push("NAME:preview");
var num=Math.floor(Math.random()*knopf.length);
iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:post ATTR="+knopf[num]);


Кто с английским хорошо дружит, переведите корректно на англиЦкий
Введите, через запятую, номера 3 картинок похожей на эту !
Ток плиз не надо гугл транслитера

Кто антидоту или похожий сервис юзает, какой там максимальный размер и объём картинки допустимый ?
Хочу попробовать это на распознание отправить. Ток на англиЦком ещё дописать надо.

скрытый текст
5af9847c83eb41f1bb28ff0c7a06cdbc_f.jpg

PRESIDENT
Спасибо, то что надо!)

Еще такой вопрос, можно ли к управляющему js подключить еще один js?

вопрос снят, поиск рулит)

PRESIDENT пишет

удалено, избыточное цитирование
Кто антидоту или похожий сервис юзает, какой там максимальный размер и объём картинки допустимый ?
Хочу попробовать это на распознание отправить. Ток на англиЦком ещё дописать надо.

я рукапча юзаю, закинул им вопрос, как ответят напишу

повторное предупреждение
несоблюдение правил, пункт 2,9

InfSub

Кто антидоту или похожий сервис юзает, какой там максимальный размер и объём картинки допустимый ?
Хочу попробовать это на распознание отправить. Ток на англиЦком ещё дописать надо.

Чувак, а ты слышал что рукаптча сделала обновление для разгадки такой каптчи?

offtop
Ещё не юзал рукапчу.
Всегда пытаюсь распознавалку замутить. Старая капча, буквенная, ещё как то более менее поддавалась, но эта... Даже не знаю какой алгоритм придумать:(

Товарищи, может кто знает, можно ли с помощью аймакроса вызвать фрейм плагина?
Если более конкретно, замахался возиться с медленными проксиками и написал скрипт для включения и смены впн, а именно впн hola, с которым аймакрос кое как работает.
Так вот сам вопрос, есть в hola фрейм, который вызывается не очень комфортными манипуляциями. Возможно ли с помощью аймакрос как то вызвать его?

сам фрейм вот

скрытый текст
YQBxXxM.png

TetraSky
Имакрос сам по себе не может внешними программами управлять, но если постараться то в извращенной форме можно.
с проксями проще, имакрос легко прокси в ФФ подставляет
перебор по списку не трудно организовать.

PRESIDENT
Делал скрипт с перебором прокси, в итоге много "бракованых" было, то есть медленных или вовсе нерабочих, хоть перед использованием все проверял чекером.
С впн дело куда приятней обстоит, все просто летает.
Но... не все так безоблачно, бывает аймакрос запинается и скрипт начинает бажить на смене впн, в итоге приходиться ручками его подталкивать

TetraSky
Если процес имакросом полностью автоматезирован, то тебе то какая разница медленый проксь или дохлый. Скрипт сам будет всю работзу выполнять, дохлые можна сразу из списка удалять, также установи таймоут загрузки сайта, допустим 20-30 сек и будет всё норм. Запусти скрипт и забудь.

понты
Вот когда то баловался серфом на буксах, все профиля на разных айпи/проксях работают. Прокси автоматом меняются, вобщём всё автоматом было:)
https://youtu.be/LM6RyDndCvk

PRESIDENT
у меня спам скрипт, за час получается около 1.5-2к циклов, поэтому для эффективности работы скорость является ключевым фактором.
Тайм аут страницы даже в 10 сек это через чур)
Поэтому кое как прикрутил смену айпи через hola и вот пытаюсь усовершенствовать этот метод

PRESIDENT
Вот, что поддержка рукапчи прислала в ответ на мой вопрос по объему файла и типу капчи:

Поддержка пишет

Максимальный размер - 100 КБ. Присылать можно любую капчу, которую способен разгадать человек.

Egorushka1974

Da sist gut :)
Сейчас на работе, прийду домой добью скриптик.:)
Кто нить поделитесь ключиком рукапчи:angel:

Egorushka1974 пишет

Мэтры, кто знает как новую капчу у Гугла, гадать, ту которая с картинками, типа выбрать вкусное из невкусного и прочее,

Почти решил проблему "в лоб"... Рандомно передаю  5 номеров картинок без проверки на повторение и жму "подтвердить", и так по кругу пока не взломает. В течении  в среднем 10 сек капча взламывается... появляется зеленая галочка и фрейм с выбором картинок больше не выпадает...  но... как теперь программно определить, что капча разгадана? Цикл бодро продолжает давить на невидимые  кнопки и не выдаёт ошибку...  Google  там в CSS эту галку рисуют, а для imacros никаких отличий между исходной и разгаданной капчей нет (((
У кого будут предложения?

Alex5VK пишет

Рандомно передаю  5 номеров картинок

так там вроде бы - достаточно было просто несколько раз пообновлять капчу, она и исчезала, появлялась стандартная, типа бэкдор от гугла =)

Alex5VK
Извлечённый хтмл код чекбокса

... role="checkbox" aria-checked="true" id="recaptcha-anchor"   <--- Тут стоит зелёная галочка
... role="checkbox" aria-checked="false" id="recaptcha-anchor"  <--- Тут её нету

Разницу видишь:)
Надеюсь что дальше объяснять не надо.:)

Кстати за идею СПАСИБО !!!:beer:

Ребята помогите такой штукой.Нужно на странице найти определенный текст точнее ключевые слова. И все это загнать !EXTRACT и создать условию. С этим проблем нет это я знаю. Проблема создать кусок скрипта который будет искать эти ключевые слова на странице ключевых слов несколько. Я помню когда то создавал такой скрипт, потом забыл из-за не надобности. Счас короче срочно нужно буду благодарен кто отзовется. удалено

Замечание п. 3.13
InfSub

Hamzat
в чем сложность, вот например:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=... ...ATTR=TXT:"*ключевое слово 1*" EXTRACT=TXT
TAG POS=... ...ATTR=TXT:"*ключевое слово 2*" EXTRACT=TXT
TAG POS=... ...ATTR=TXT:"*ключевое слово n*" EXTRACT=TXT


естественно, это не оптимальный вариант, а то, от чего можно оттолкнуться

Столкнулся сейчас с одним неприятным багом аймакроса
Есть управляющий js, к нему подключены 5 iim и один js, так вот, сейчас при проходке цикла аймакрос периодически стал "проскакивать" определенные этапы воспроизведения и переходить в так называемый неуправляемый режим, то есть остановить его невозможно (что то похожее происходит, если убрать галочку "показывать javascript во время воспроизведения") Переустанавливать пробовал, на другом профиле ff та же фигня
По поиску прошелся, подобного решения проблемы не нашел
Быть может кто то сталкивался с таким?

TetraSky, сброс FF, переустановка iMacros - не поможет

Вот это как раз, за что я не люблю новинки.
Хоть новые ФФ все глючат, хоть имакросы к ним.:(
Работаю на старой доброй мазлке портабелке 3.6 и имакрос наоборот 6.3.
На мой взгляд самая стабильная версия. Да и если посмотреть сколь новые мазилки оперативы отжирают:(

Кто знает как с имитировать нажатие горячей клавиши. Нужно для плагина Webvisum. Плагин по нажатию распознает капчу и заносит в буфер обмена.
И второй вопрос удалено

Для запроса скриптов есть отдельная тема

InfSub

korozist пишет

Кто знает как с имитировать нажатие горячей клавиши. Нужно для плагина Webvisum. Плагин по нажатию распознает капчу и заносит в буфер обмена.

Только что в этом форуме видел, как то так должно быть WshShell.SendKeys("клавиша");


Столкнулся с необходимостью прикрутить счетчик на строку или же подключаемый iim
То есть:

скрытый текст

Выделить код

Код:

Код
Alert("test", i) //сюда надо счетчик 
Код

или же 
Код
iimPlay("test");  // и внутрь подключаемого iim поставить счетчик    
Код

iimDisplay(i) // и через дисплей видим сколько раз при воспроизведении макрос обращался к нужным строкам/iim`ам


Как можно реализовать такое?

InfSub пишет
Alex5VK пишет

Рандомно передаю  5 номеров картинок

так там вроде бы - достаточно было просто несколько раз пообновлять капчу, она и исчезала, появлялась стандартная, типа бэкдор от гугла =)

Не помогает, 20 раз обновлял, один фиг капча не меняется.

09-05-2015 19:55:40

PRESIDENT пишет

Сейчас на работе, прийду домой добью скриптик.:)

Как успехи со скриптом?

09-05-2015 20:06:29

Alex5VK пишет

Почти решил проблему "в лоб"... Рандомно передаю  5 номеров картинок без проверки на повторение и жму "подтвердить", и так по кругу пока не взломает. В течении  в среднем 10 сек капча взламывается...

если в среднем за 10 сек ломает, ну и огранич работу скрипта 12 сек, если сломала хорошо, нет в другой заход сломает, посылка на рукапчу, разгадка там и посылка обратно занимет в среднем 30-40 сек, расширь интервал до этих значений времени.

09-05-2015 20:08:17

offtop

PRESIDENT пишет

Кто нить поделитесь ключиком рукапчи:angel:

есть скайп? кинь данные, дам свой ключик, если потом смогу поменять в рукапче на другой

Ребята тут такое дело не давно Вы тут мне помогли сделать скрипт точнее доделать скрипт по отправки жалобу на каптчу. И там такое кусок кода

скрытый текст

Выделить код

Код:

iimPlayCode("SET !TIMEOUT 60\nSET !TIMEOUT_STEP 1\nSET !REPLAYSPEED FAST\nTAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel extract=txt");


Т.е  нажимает на ошибку загоняет его в extract  и соответственно через if все это проверяется. Так есть, но только не с кодом выше, потому как в extract нечего не попадает. Но на ошибку кликает это видно по подсвечивание объектов. Почему нечего в extarct не попадает? Проверял на другие сайты все работает, а тут нет.

TetraSky
Сам же написал iimDisplay(i), оно тебе и выдаст показания счётчика i

Egorushka1974
Всё равно много подходов надо что бы угадать, да и после нескольких неудачных попыток, капча снова меняется , на вообще замороченную двухсловную.:(

korozist
Имакрос не может управлять внешними программами. Можно запустить вбс скрипт, из него уже имитировать нажатие клавиши. Но надо что бы фокус был не в браузере в это время. И другая проблема, если ответ будет в буфере обмена, как ты собираешься извлечь из буфера, у имакроса свой буфер насколько я знаю, может ошибаюсь.

Любой плагин это по сути js, нужно в нём рыться, искать нужный функционал, потом пытаться и имакросе его проиграть. Как то так.

Вообще кто заморачивается на аппаратном распознавании капчи, советую tesseract. Легко обучается под любые шрифты и из имакроса запустить не проблема. Ответ сохраняет в текстовый файл.

Hamzat

Зачем ты здесь и таймоут и таймоут степ и ещё какую то хрень, всё в кучу собрал :|

Выделить код

Код:

iimPlayCode("SET !TIMEOUT 60\nSET !TIMEOUT_STEP 1\nSET !REPLAYSPEED FAST\nTAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel extract=txt");


Я бы так сделал

Выделить код

Код:

f=iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel");
   if(f>0){
   iimPlay("CODE:TAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel extract=txt"); feler=iimGetLastExtract();
проверь алертом что в 'feler' попадает
   if(feler.indexOf("Incorrect captcha")>=0){
тут будет отправка отчёта об ошибке 'feler'
   }
  }

PRESIDENT
Да, но я написал то, как я это представляю. На практике, увы, я не знаю как добавить счетчик

TetraSky
Счётчик чего ? Тебе надо зациклить, кусок скрипта несколько раз повторить ?

скрытый текст

Выделить код

Код:

for (i=0; i<=9; i++){
Тут кусок скрипта что повторяться будет
 iimDisplay(i);
}


Или просто верху объяви переменную i
var i=0;
и после того как скрипт один раз прошёлся,
увеличь i на единицу i++;
iimDisplay(i);

PRESIDENT

Счетчик, вне цикла, который просто показывает количество обращений к нему
Пример:

скрытый текст

Выделить код

Код:

for (i = 0; i <10; i++) {
iimDisplay("тут будет счетчик")
iimPlay('CODE:URL GOTO=https://forum.mozilla-russia.org')
while(id= window.content.document.getElementById('brdheader')){  //вот сюда надо как то прикрутить счетчик 
        if (id=true){
              iimPlay('CODE:REFRESH') //или вот сюда
                        }
    }
//... тут остальная часть кода, которая не должна попадать под счетчик
}


То есть в iimDisplay должно отображаться количество раз, когда был найден нужный нам id. С данного сайта он понятное дело никуда не денеться, но я написал в качестве примера)

TetraSky

скрытый текст

Выделить код

Код:

var a=0; // <---Объявляем новую переменную 'a' и присваиваем ей значение ноль

for (i = 0; i <10; i++) {
iimDisplay("тут будет счетчик")
iimPlay('CODE:URL GOTO=https://forum.mozilla-russia.org')
while(id= window.content.document.getElementById('brdheader')){  //вот сюда надо как то прикрутить счетчик 
        if (id=true){
              iimPlay('CODE:REFRESH') //или вот сюда
a++; // <--- Увеличиваем на единицу
iimDisplay(a);
                        }

//... тут остальная часть кода, которая не должна попадать под счетчик
   }

HellishFire
В *.iim файле  CLEAR
в *.js  iimPlay("CODE:CLEAR");

удалено, offtop

InfSub

PRESIDENT пишет

Hamzat

Зачем ты здесь и таймоут и таймоут степ и ещё какую то хрень, всё в кучу собрал :|

Выделить код

Код:

iimPlayCode("SET !TIMEOUT 60\nSET !TIMEOUT_STEP 1\nSET !REPLAYSPEED FAST\nTAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel extract=txt");


Я бы так сделал

Выделить код

Код:

f=iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel");
   if(f>0){
   iimPlay("CODE:TAG POS=1 TYPE=* ATTR=ID:BodyPlaceholder_FailedClaimPanel extract=txt"); feler=iimGetLastExtract();
проверь алертом что в 'feler' попадает
   if(feler.indexOf("Incorrect captcha")>=0){
тут будет отправка отчёта об ошибке 'feler'
   }
  }

Как ты видишь я сделал alert(check) в нем храниться "Incorrect captcha solution - please try again" что мне в принципе и нужно. Дальше  ты видишь есть if и условия такова что если в check есть такой текст "Incorrect captcha solution - please try again" то он должен сработать, но он не срабатывает. Как я уже сказал в check  все ок.

Hamzat

Выделить код

Код:

Вместо 
if(check=="Incorrect captcha solution - please try again"){
попробуй 
if(check.indexOf("Incorrect captcha")>=0){

korozist

offtop
tesseract
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Egorushka1974 пишет

PRESIDENT
есть скайп? кинь данные, дам свой ключик, если потом смогу поменять в рукапче на другой

Упс извини сразу не заметил.
В общем скрипт отправки капчи на распознавание, обычный скрипт.
Ток саму капчу немного пыхой обработал, номера картинкам присвоил.
где то выкладывал картинку, как примерно выглядит.
Проблема как раз что у меня нет живого ключика, не могу потестить, что из этого выйдет:(

HellishFire
Упс:|
там ошибочка была в функции авторизации, исправь

Авторизация

Выделить код

Код:

/***-= Авторизация =-***/
 function login(userName,userPass){ 
   iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=ID:login_form_btc_address CONTENT="+userName);
   iimPlay("CODE:SET !ENCRYPTION NO\nTAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:* ATTR=ID:login_form_password CONTENT="+userPass);
   iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:login_form ATTR=ID:login_button"); 
   iimPlay("CODE:WAIT SECONDS=3");}

PRESIDENT
80% работников данной системы (рукаптчи) не будут разгадывать такие каптчи за такую стоимость. Ибо у этой же системы есть специальная форма для таких каптч и стоимость 1000каптч =90 руб.

удалено, флуд

правила, п 2.3, 2.6

InfSub

Ребята очередной раз задаю вопрос по этой теме. Заранее хочу сказать PRESIDENT то что ты сказал я сделал, но не фига не вышло. Теперь по теме
вот есть код

скрытый текст

Выделить код

Код:

iimPlayCode("SET !TIMEOUT 60\nSET !TIMEOUT_STEP 1\nSET !REPLAYSPEED FAST\nTAG POS=1 TYPE=DIV ATTR=TXT:Wrong<SP>captcha,<SP>try<SP>again! extract=txt");
var check=iimGetLastExtract();
if(check=="Wrong captcha, try again!"){
iimPlayCode("SET !TIMEOUT 50\nURL GOTO=http://rucaptcha.com/res.php?key="+key+"&action=reportbad&id="+id);
}


Данный код отправляет жалобу на каптчу в системе рукаптча. Если убрать if(check== одно = т.е чтоб так if(check="Wrong captcha, try again!"){далее код} то скрипт отправляет жалобу не зависимо есть ошибка или нет. Если оставить обе = то все норм. Но вот другой код точнее код тот же просто на другой сайт
скрытый текст

Выделить код

Код:

iimPlayCode("SET !TIMEOUT 60\nSET !TIMEOUT_STEP 1\nSET !REPLAYSPEED FAST\nTAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessagePanel extract=txt");
if(check="Incorrect captcha solution - feed the zebra to try again"){
iimPlayCode("SET !TIMEOUT 50\nURL GOTO=http://rucaptcha.com/res.php?key="+key+"&action=reportbad&id="+id);
}


В данном случае если оставить if(check= то жалоба кидается не зависимо от результата. А если сделать  if(check== то if перескакивает опять же не зависимо от результата. В чем дело?

Hamzat
Одно равно = , это ты присваиваешь для check какое то значение, а == это как раз и есть сравнение.
Посмотри точно что у тебя в check попадает,
если там другой текст не Incorrect captcha solution - feed the zebra to try again
или хоть на одну закорючку отличается то уже
if(check=="Incorrect captcha solution - feed the zebra to try again"){
не сработает

...
и убери всё это SET !TIMEOUT 60\nSET !TIMEOUT_STEP 1\nSET !REPLAYSPEED FAST


Запусти вот так вот

вот так

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessagePanel extract=txt");
check = iimGetLastExtract();
alert(check);


и пришли что  алерт выдал

PRESIDENT
Да все с ним окей я даже с этого алерта скопировал и вставил его. Мне тут один чувак сказал что дело может быть в том что на сайте "строчка ошибки" может висеть всегда" не зависимо есть ошибка или нет, а пользователь его видеть только когда действительно есть ошибка, но imacros  типо его видет всегда. Типо какая то анихея получается)) Если идея о другому сделать данный шаг? Например через search ?

PRESIDENT пишет

Так у тебя проблема что ошибка капчи отправляется или не отправляется ? Если надпись всегда есть, то отчёт ошибки всегда отправляться будет.

Если сделать все как надо после чек вставить ==  то if пропускается. Т.е не отправляется. Просто я почему все это написал если сделать на другом сайте то все работает. Так что там что то не так, а вот что? Еще раз повторяю с алертом проверял в чек все как надо.

Hamzat пишет

Если сделать все как надо после чек вставить ==  то if пропускается

значит условие в if - не срабатывает, т.е. всегда равно false

10-05-2015 23:59:21

Hamzat пишет

Еще раз повторяю с алертом проверял в чек все как надо.

значит не все, вполне может быть пробел или перенос строки, который не указан при проверке условия

11-05-2015 00:05:32

Hamzat пишет

Если убрать if(check== одно = т.е чтоб так if(check="Wrong captcha, try again!"){далее код}

вам уже сказали, что знак = означает присвоение значения переменной и условие if(check="...") всегда будет срабатывать, вне зависимости от того, что идет после знака =
правильный код: if(check=="...текст для проверки...") при совпадении значения в check с текстом справа от == будет срабатывать действие, записанное в if(...){действие}

InfSub
Что бы РАССЕЯТЬ все сомнение я скопировал текст прям с алерта, так не фига не выходит.

Hamzat
в спойлере напишите - что выведет следующий код:

скрытый текст

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessagePanel EXTRACT=htm");
alert(iimGetLastExtract());

11-05-2015 00:13:16
при этом напишите вывод алерта для обеих ситуаций, когда капча НЕ разгадана и когда разгадана

InfSub пишет

Hamzat
в спойлере напишите - что выведет следующий код:

скрытый текст

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessagePanel EXTRACT=htm");
alert(iimGetLastExtract());

скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" id="BodyPlaceholder_FailureMessagePanel" class="failure-message-panel">           <span id="BodyPlaceholder_FailureMessage" class="failure-message">Incorrect captcha solution - feed the zebra to try again</span>                  </div>

пробуйте так:

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessagePanel EXTRACT=txt");
if(iimGetLastExtract().indexOf('Wrong captcha')>=0){
    iimPlayCode("SET !TIMEOUT 50\nURL GOTO=http://rucaptcha.com/res.php?key="+key+"&action=reportbad&id="+id);
};

InfSub пишет

пробуйте так:

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessagePanel EXTRACT=txt");
if(iimGetLastExtract().indexOf('Wrong captcha')>=0){
    iimPlayCode("SET !TIMEOUT 50\nURL GOTO=http://rucaptcha.com/res.php?key="+key+"&action=reportbad&id="+id);
};

Моей не внимательности нет придела, посмотри на второй код вверху там нет var check=iimGetLastExtract();.

Здравствуйте!
Подскажите пожалуйста, есть готовый сценарий iim его задача произвести около 50 000 циклов но через определенное время сайт запрашивает логин и пароль.
скрипт работает с csv и увеличения счетчика строк с помощью цикла LOOP.
есть какие нибудь команды чтоб не повлияли на время работы скрипта  на счетчик и не писать js.
к примеру  команды которые можно поставить между двумя равными циклами в скрипте допустим первая часть отвечает за множественные циклы а друга за регистрацию и чтобы к примеру через час в скрипте открывалась вторая половина отвечающая за регистрацию производила ее и возвращалось к первой половине продолжая свой цикличный процесс на сайте но на общий счетчик не влияло

PRESIDENT пишет
demarco86 пишет

...есть какие нибудь команды чтоб не повлияли на время работы скрипта  на счетчик и не писать js.

А чем тебя js не устраивает
В iim нет логики, это только на js можна реализовать

Дело в том что я  не разбираюсь в js а произойдет какое-то изменение на сайте
iim скрипт я спокойно отредактирую сам

PRESIDENT пишет

В iim нет логики, это только на js можна реализовать

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

11-05-2015 14:06:16

demarco86 пишет

Дело в том что я  не разбираюсь в js а произойдет какое-то изменение на сайте
iim скрипт я спокойно отредактирую сам

вам не обязательно писать весь скрипт на js - достаточно его запускать из js, а в js-скрипте создать условие на проверку того, требуется ли ввести пароль или нет

InfSub пишет

скрытый текст

PRESIDENT пишет

В iim нет логики, это только на js можна реализовать

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

11-05-2015 14:06:16

demarco86 пишет

Дело в том что я  не разбираюсь в js а произойдет какое-то изменение на сайте
iim скрипт я спокойно отредактирую сам

вам не обязательно писать весь скрипт на js - достаточно его запускать из js, а в js-скрипте создать условие на проверку того, требуется ли ввести пароль или нет

Когда человек в этом разберается ему и смотреть на это проще даже если я запущу его из js,  представления не имею как это условия написать,
я уже очень много роликив посмотрел чего только не читал чтобы найти тег выполняющий команду нажатия лк мыши на кнопку с меняющемся id я 3 дня  потратил
а вы говорите условия на проверку.
не ужели нету таких тегов которые просто через час пропустит цикл ниже в скрипте выполнятся команды выход, вставка логина, пороля, вход и пойдет выполнять опять рутинное действие
и только через час произайдет опять тоже самое
я где-то встречал такое в мега скриптах по сбору крипто валюты к примеру там на нескольких сайтах раз в 10 минут а на других раз в час
и он делает к 5 циклов по сайтам где 10 мин а потом и часовые сайты затрагивает и опять в начало вот там что-то есть мне необходимое но я не могу найти

demarco86 пишет

где-то встречал такое в мега скриптах по сбору крипто валюты к примеру там на нескольких сайтах раз в 10 минут а на других раз в час и он делает к 5 циклов по сайтам где 10 мин а потом и часовые сайты затрагивает и опять в начало вот там что-то есть мне необходимое но я не могу найти

Там или управляющий js файл или полностью на js скрипт

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



Самопиар
Ну или проси кого нить написать за тебя, для этого отдельная тема есть.
Я могу заняться.:)

PRESIDENT пишет

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

если он каждый раз будет пробовать залогинится то это очень много времени он в час делоет от 1200 до 1500 циклов а если каждый раз то это как минимум в два раза упаде оборот циклов

demarco86 пишет

если он каждый раз будет пробовать залогинится

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

demarco86 пишет

я где-то встречал такое в мега скриптах по сбору крипто валюты к примеру там на нескольких сайтах раз в 10 минут а на других раз в час

там иначе организована проверка, информация берется с сайта, о том, сколько осталось времени до ...

удалено

неоднократное нарушение правил, пункты: 2.9, 2.15

InfSub

11-05-2015 21:17:47

offtop
PRESIDENT, давай свой скайп, дам живой ключик от рукапча потестить твой способ решения капчи.

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

Оффтоп
Кто с английским дружит, это правильно написано ?


522e9c469f4b.png


Egorushka1974
Сделаем проще.
Я приготовлю пару картинок и тебе скину, а ты их сам отправь, результат отпишешь:)

offtop
Лады, договорились, только я не очень великий проггер, но попробую, положу их в папку,
где хранятся скриншоты, которые делает макрос и отправлю как обычно.
по результату отпишу, кидай картинки.

Egorushka1974
PRESIDENT
Так Вам же Alex5VK подсказал, как решить эту каптчу. Воспользуйтесь его советом.

offtop
Здравствуйте. Заранее извиняюсь что не в тему (на форуме не нашел ветку именного для этого дополнения) да и многие пользователи imacros им пользуются. Ну так речь о User-Agent Switcher 0.1.1 скажите пожалуйста как его настроить что бы не сбрасывался при закрытии браузера?

для этого есть ветка Расширения для Firefox

InfSub

Здравствуйте. Кто нибудь может подсказать как скопировать часть текста в буфер используя макрос? Речь идет о функции Get id capcha на сайте http://imacros2.rucaptcha.com/new/

поиск по форуму и гуглу описания работы js-функции split()

InfSub

mmmaks2004 пишет

Egorushka1974
PRESIDENT
Так Вам же Alex5VK подсказал, как решить эту каптчу. Воспользуйтесь его советом.

Страна советов, пробовал я по его совету, читай внимательно ветку, я отвечал уже.

veler пишет

Здравствуйте. Кто нибудь может подсказать как скопировать часть текста в буфер используя макрос? Речь идет о функции Get id capcha на сайте http://imacros2.rucaptcha.com/new/

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT"); //<--- Извлечь текст с экрана(ответ от рукапчи)
    a=iimGetLastExtract();  // <--- Запомнить в переменую "а"
    ...
    iimPlay('CODE:TAG POS=... CONTENT='+a); // <--- А это уже на сайте ввести то что сохранено в переменной "а", в нужное поле на сайте

PRESIDENT пишет

Не подскажешь как сделать так чтобы макро работал в about:config или  по другому настроить автозапуск дополнение user-agent?

Господа, PRESIDENT и Egorushka1974 для этого есть ЛС, просьба НЕ захламлять форум бесполезными сообщениями!

Egorushka1974, отписался в ЛС, дублирую здесь, для всех:
возможности форума, позволяют не так много, движок старый, так что просьба относится с пониманием и соблюдать правила, благо делать это - не сложно

Ребята, не поленитесь, потратьте пару вечерочков, начните читать форум сначала.:)
Я сам, не первый раз замужем,  яваскрипт и пыху знаю и так программированием занимаюсь и с имакросом уже давно знаком. Думал как минимум с имакросом уже на ты, но всё равно читая форум, нахожу для себя много оригинальных решений. Создал папочку специально складываю туда интересные скриптики. Ведь для работы с имакросом супер программером быть не надо, имакрос можно сказать сам всё за нас делает, все команды записывает. И кто открыл для себя эту штукенцию, понял её потенциал, думаю не скоро забросит его. Ещё раз, начните читать форум сначала, сохраняйте интересные скриптики, не важно нужны они вам сейчас или нет, посже всё равно сгодятся.

Удачи всем

Hamzat пишет
PRESIDENT пишет

Не подскажешь как сделать так чтобы макро работал в about:config или  по другому настроить автозапуск дополнение user-agent?

В разделе мини FAQ / Видео по настройке и использованию: / Работа с прокси-серверами в iMacros

В данном видео есть демонстрация работы с about:config, а также переведены коды скриптов в описании к видео.
К сожалению сейчас не могу нормально описать процесс работы (интернет у меня сейчас через моб.телефон)
В кратце
1 - Команда URL GOTO=about:config
2 - в глубоких настройках есть три параметра: числовой , логический и строчный. Под каждый своя команда + имя параметра который нужно изменить + нужные изменения

Короче , смотрите видео, там все есть!

Здравствуйте! :whiteflag:

Как извлечь отрывок текста из сообщения на почте.
Приходят письма, где всё время написано одно и тоже, кроме шестизначного кода, который необходимо скопировать, но как Макрос заставить не всё копировать, а именно эти цифры которые находятся в общем тексте.
Вот отрывок из письма:

"... Если это ваш IP (проверить это можно на сайте *адрес сайта*), то введите код 68387

В противном случае:
1. Настройте смс-подтверждение авторизации *адрес сайта* ..."

Может можно как нибудь ограничить копирование текста от и до? :cry:

Даниил955447112

скрытый текст

Выделить код

Код:

TAG POS= .... EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/код (\\d+)/).pop()")

Ребята такое вопрос для тех кто пользуются анти каптчами. В каптче рекаптча2 при нажатии FRAME NAME=I1_* imacros частенько зависает. Как я понял проблема именно imacros так как не могут разные автора на одной команде ошибаться. И проблема такая происходит большинство на vps . Может кто то решил эту проблему?

Hamzat
значит фрейм не найден, проверяй сам при зависании, какое имя фрейма

InfSub пишет

Hamzat
значит фрейм не найден, проверяй сам при зависании, какое имя фрейма

Имя фрейма динамическая.

Hamzat я вижу из команды - что оно динамическое, я о том, что именно не совпадает в имени с шаблоном при затыках

там только  2 фрейма

скрытый текст

Выделить код

Код:

FRAME NAME=I0_*  и   FRAME NAME=I1_*


сделать проверку if()  else  не сложно:)

скрытый текст

Выделить код

Код:

f=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0_*"\nTAG POS=1 TYPE=DIV ATTR=TXT:reCAPTCHA');
    if(f>0){ alert ('FRAME NAME=I0'); } 
    else alert ('FRAME NAME=I1');

PRESIDENT пишет

сделать проверку не сложно:)

Если стоит SET !ERRORIGNORE YES то она же не должна зависать. Если не находит одно то должна найти второе.  Или не так?

там только  2 фрейма

Да я знаю

InfSub пишет

Даниил955447112

скрытый текст

Выделить код

Код:

TAG POS= .... EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/код (\\d+)/).pop()")

:| Увы но не работает... .
При тестировании, в тестовом окне весь текст письма скопирован полностью, а в буфере обмена  ничего не меняется.
Что может быть не так?

Сам скрипт, которым тестирую:

скрытый текст
TAG POS=1 TYPE=DIV ATTR=TXT:123От<SP>кого:<SP>nko4y@msgos.com,<SP>Кому:<SP>psvnqzml,* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/код (\\d+)/).pop()")

Даниил955447112 пишет

При тестировании, в тестовом окне весь текст письма скопирован полностью, а в буфере обмена  ничего не меняется.

вы не путаете понятия? буфер обмена - это буфер обмена, а !EXTRACT - это !EXTRACT и одно к другому, ни какого отношения не имеет
каков выхлоп при:

1

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:123От<SP>кого:<SP>nko4y@msgos.com,<SP>Кому:<SP>psvnqzml,* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/код (\\d+)/).pop()")
PROMPT {{!EXTRACT}}


и при:
2

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:123От<SP>кого:<SP>nko4y@msgos.com,<SP>Кому:<SP>psvnqzml,* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/код (\\d+)/)")
PROMPT {{!EXTRACT}}


13-05-2015 21:00:01

Hamzat пишет

Если стоит SET !ERRORIGNORE YES то она же не должна зависать

теоретически да, практически же, с фреймами не все так гладко

13-05-2015 21:01:27

PRESIDENT пишет

сделать проверку if()  else  не сложно:)

а такая конструкция:

FRAME NAME=I*

там что, не работает?

а такая конструкция:

FRAME NAME=I*

там что, не работает?

Такая конструкция работает, но как я уже сказал иногда просто зависнет на нем. Без ошибок без нечего. Но как я понял дело не в скрипте, а самой строение фреймов.

InfSub пишет

а такая конструкция:

FRAME NAME=I*

там что, не работает?

Увы, так не работает:(

Нам и if() else не в тяжесть прописать:)

Нам и if() else не в тяжесть прописать:)

Ты хочешь сказать что прописав if и else  зависание на 100% не будет?

Привет. Хочу сделать на tumblr iMacriом загрузку картинки и добавление тэга к ней.
Загрузка картинки работает, а с добавлением тэга проблема.
Второй день мучаюсь.

Добился вот чего

скрытый текст

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
TAB T=1
URL GOTO=https://www.tumblr.com/blog/MyBlogName/drafts
TAG POS=1 TYPE=I ATTR=CLASS:icon_post_photo&&TXT:
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Pics\test.gif
EVENTS TYPE=KEYPRESS SELECTOR="#new_post_buttons>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV>DIV" CHARS="TEST"
TAG POS=1 TYPE=BUTTON ATTR=TXT:Save<SP>draft


До 5 стройки все ок.
На 5 строчке его заклинивает и он начинает бесконечно писать TEST, хотя нужно только один раз написать.
TESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTESTTEST
И на этом все, так и фигчит.


Как заставить его просто TEST написать и все?


ps
В обычном режиме он тэг не прописывал и я переключился в Experemental event recording mode, там он вроде записывает, но повторяет до бесконечности...
Это мой первый скрипт.

dimatumblr
встречался с таким багом, с чем связан - не удалось выяснить

dimatumblr пишет

Загрузка картинки работает, а с добавлением тэга проблема.

Текст в форму можешь так вставить.

скрытый текст

Выделить код

Код:

var a="javascript:document.getElementsByClassName('editor editor-richtext')[0].innerHTML='das ist ein test';void 0;"
 iimPlay('CODE:URL GOTO='+a.replace(/ /gi,"<SP>"));

Добрый день уважаемые. Помогите разобраться с синтаксисом.
Есть конструкция

скрытый текст

Выделить код

Код:

<button id="boxb" value="submit" name="812d10536da8463f89e0c8794d35c5d2" type="submit">
<img width="16" height="16" src="/true/pic.png">
</button>


Поле  name меняется. Постоянно изображение, но вот как его учесть?
Вот  так разумеется не получается
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON FORM=ACTION:rabota.php#anker ATTR=VALUE:submit&&IMG:SRC:*pic.png&&TYPE:submit&&ID:boxb


Потому что IMG: не является атрибутом BUTTON , но вот как написать правильно чтобы эта картинка тоже учитывалась?

PRESIDENT
Что-то не получается.

А можно ли в iMacros ткнуть в определенные координаты и тупо нажать нужные кнопки написав там "ТЕСТ"
CLICK X=565 Y=343

K_AHTOH пишет

но вот как написать правильно чтобы эта картинка тоже учитывалась?

Выделить код

Код:

TAG POS=1 TYPE=BUTTON FORM=ACTION:rabota.php#anker ATTR=ID:boxb

16-05-2015 13:18:03

dimatumblr пишет

А можно ли в iMacros ткнуть в определенные координаты и тупо нажать нужные кнопки написав там "ТЕСТ"

"ткнуть" - можно, только текст вы не введете туда, куда "ткнули"

InfSub
То что вы предлагаете, это без учета что на этой кнопке картинка. Так у меня не получится. На странице сделано специально много кнопок с разными картинками. Моя задача выбрать кнопку с конкретной картинкой.

скрытый текст

Выделить код

Код:

<button id="boxb" value="submit" name="812d10536da8463f89e0c8794d35c5d8" type="submit">
<img width="16" height="16" src="/true/pic1.png">
</button>
<button id="boxb" value="submit" name="812d10536da8463f89e0c8794d35cad2" type="submit">
<img width="16" height="16" src="/true/pic.png">
</button>
<button id="boxb" value="submit" name="812d10536da8463f89e0c8794d35c5d1" type="submit">
<img width="16" height="16" src="/true/pic2.png">
</button>


Вот из этих 3-х кнопок нужно выбрать только ту, на которой картинка pic.png. Остальные трогать нивкоем случае нельзя.

K_AHTOH пишет

Моя задача выбрать кнопку с конкретной картинкой.

в чем проблема сделать так, в таком случае:

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:*pic.png

или не нажимает на кнопу?

InfSub
Не выйдет.
А хитрость в том, что эта картинка используются на сайте не только на кнопке  и раскидана по страничке.
Т.е.  получится нажать не на кнопку.
Собственно на сайте, таким образом,  внедрена защита от автокликера.

K_AHTOH
в таком случае - парсить код выясняя какое значение имеет параметр name=, тега button содержащего нужную картинку

InfSub
Поле name имеет случайное значение при каждой перерисовке.
Вот скрин
3a21a83c8e82t.jpg
Как нажать на нужную кнопку? Там видно что картинка повторяется (к примеру звезда) Если промахнутся (нажать на гранату) то блокировка на 1 час.
Порядок кнопок выпадает тоже случайным образом и не повторяется.
По структуре (приведенной выше) понятно, что нужно нажать на кнопку в которой есть картинка pic.png и не трогать остальные, но как это записать в виде тегов с условиями?

K_AHTOH

скрытый текст

Выделить код

Код:

'обрамляющий button тег, для примера DIV'
TAG POS=1 TYPE=DIV ATTR=* EXTRACT=HTM
'название искомого файла картинки'
SET IMG pic.png
SET !EXTRACT EVAL("var r='',k,v,a='{{!EXTRACT}}'.match(/name=\"(.*?)\"(?:.*?)src=\"(.*?)\"/g);for(k in a){v=a[k].match(/name=\"(.*?)\"(?:.*?)src=\"(.*?)\"/);r+=(v.pop().indexOf('{{IMG}}')>=0)?v.pop():'';}")
TAG POS=1 TYPE=BUTTON FORM=ACTION:rabota.php#anker ATTR=NAME:{{!EXTRACT}}

dimatumblr пишет

Что-то не получается.

Ты вообще запускал код, всё там прекрасно работает :)

InfSub
Хм... интересный подход. Проверил. Пока все работает.
Спасибо!!!

16-05-2015 17:57:08
InfSub
А не подскажете как можно обработать кнопки такого формата

скрытый текст

Выделить код

Код:

<button id="boxbtnpris" value="submit" name="41d34c0df9c5b3728417bb46d338acad" type="submit">
<span style=" color: #77FF00; font-size: 15px; ">3+1=4 </span>
</button>
<button id="boxbtnpris" value="submit" name="btnlock1" type="submit">
<span style=" color: #77FF00; font-size: 15px; ">1+3=5 </span>
</button>
<button id="boxbtnpris" value="submit" name="btnlock2" type="submit">
<span style=" color: #77FF00; font-size: 15px; ">3+5=2 </span>
</button>


01c494d1cd48t.jpg

Т.е. все тоже самое, только уже не картинка, а нужно вычислить правильный результат и нажать кнопку.

ЗЫ. Мне это интересно ради спортивного интереса.  С iMacros  познакомился буквально неделю назад и вот пытаюсь понять его возможности. Пока меня они впечатляют :)

K_AHTOH
вырезай нужную инфу с хтмла тега, те примеры что там.
И проверяй решение примера, правильно или нет, по правильному организуй клик.

PRESIDENT
Вырезать то я смогу, а вот как преобразовать пример 3+1=4 и сверить на тождество на true?

K_AHTOH

primer = 3+1 ;   // <---Твой пример
otvet = primer.toFixed(0);  // <---Арифметика
alert(otvet);   // <---Вывести результат

Ну а сравнить результат с ответом в примере думаю не сложно:)

PRESIDENT
Спасибо, попробую!
Хотя не знаю как парсить строки и преобразовать в числа. Пример то имеет вид 6+7=13

K_AHTOH пишет

Хотя не знаю как парсить строки и преобразовать в числа

данная тема, выходит за рамки этого форума

InfSub пишет

данная тема, выходит за рамки этого форума

Хм... а я думал тут возможности iMacros  обсуждаются.
Парсеры я не раз писал, но не на iMacros. Я не знаком пока с ним. Вот изучаю. Документации кстати мало структурированной по нему. Все разрознено, а русскоязычные ресурсы, гугля в основном на этот форум и сваливает.

PRESIDENT

Спасибо за пример. Буду пробовать.

K_AHTOH пишет

Хм... а я думал тут возможности iMacros  обсуждаются.

вот именно, iMacros'a и связки iMacros+js, а не то - как научиться работать с js
по js есть куча информации в сети и свои форумы

16-05-2015 20:37:37

K_AHTOH пишет

А не подскажете как можно обработать кнопки такого формата
...
Т.е. все тоже самое, только уже не картинка, а нужно вычислить правильный результат и нажать кнопку.

аналочно - написанному мной примеру, только вместо поиска конкретного текста, парсить текст в тегах span целиком... все это реализуемо, в данном случае, только с помощью js
как парсить текст с помощью js (использование рег. выражений, разбивка строк, расчет и т.д.) - это уже не тема данного форума, по этому offtop

16-05-2015 20:43:03

offtop

PRESIDENT пишет

otvet = primer.toFixed(0);  // <---Арифметика

в данном случае, не будет работать ибо пришедшие данные - строка

InfSub пишет

вот именно, iMacros'a и связки iMacros+js, а не то - как научиться работать с js

Ну не знал я, что iMacros "в лоб жрет" JS :blush:
Спасибо. Будем пробовать.

K_AHTOH пишет

как можно обработать кнопки такого формата

PRESIDENT пишет

Это уже js поэтому модер ругается:)

как пример, напишу, дабы закрыть вопрос:

по аналогии, с выше сказанным, например, так:

Выделить код

Код:

'обрамляющий button тег, для примера DIV'
TAG POS=1 TYPE=DIV ATTR=* EXTRACT=HTM
SET !EXTRACT EVAL("var r='',k,v,a='{{!EXTRACT}}'.match(/name=\"(.*?)\"(?:.*?)<span(?:.*?)>(.*?)</g);for(k in a){v=a[k].match(/name=\"(.*?)\"(?:.*?)<span(?:.*?)>(.*?)</);v.shift();v[1]=v[1].trim().split('=');if(eval(v[1][0])==v[1][1]){r=v[0];break;};};r")
TAG POS=1 TYPE=BUTTON FORM=ACTION:rabota.php#anker ATTR=NAME:{{!EXTRACT}}

Добрый день! Есть вопрос. Imacros сохраняет в файл с помощью команды SAVEAS в кавычках. Можно ли как-нибудь сделать что бы он сохранял без кавычек. Вариант потом удалить кавычки отпадает, потому файлов на выходе очень много и заходить в каждый не вариант. Может есть какая команда. Вот код если надо:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ID:demo ATTR=ID:name EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=Shoker{{!LOOP}}.txt

mnemon84, неоднократно обсуждалось - нет

mnemon84, PRESIDENT - кавычки корректно обрабатываются, как самим иМакросом, так и другими программами, работающими с форматом данных CSV
если же принудительно убирать кавычки, то при неправильном использовании, это приведет к ошибкам при сохранении/обработке сохраненных данных

17-05-2015 18:57:32
лично я, еще ни разу не встречал ситуации, где требовалось принудительное удаление кавычек постфактум

offtop
Привет всем снова! Я конечно извиняюсь МОДЕРАТОР если оказалось что я спам сделал ( сам того не осознавая ) просто хотел проявить благодарность за помощь. Это я к тому, что пришлось снова зарегаться, до этого забанили. Ну ладно уж что. Придется снова обращение катать.
в данной ветви форума, был забанен только 1 один человек - за мат, иных банов, тем более за благодарность, тут не было, если вы не можете войти на форум, пишите администрации на e-mail, а не в общий форум
предупреждение, правила, п. 3.13  Публичное обсуждение Администрации форума и её действий

InfSub


Люди добрые помогите пожалуйста, хотя тема уже обсуждалась, но сколько не перечитал страниц, все равно нифига не понял ( ну такой уж я не разбирающийся в этих кодах )

Проблема такая: У меня скрипт постит по группам в контакте, все нормально так сказать, работает.  Он берет как надо текст из файла txt, очень удобно.
Но группы он берет из поиска, т.е Захожу я в контакт, нажимаю поиск сообществ, после выбираю пример РАБОТА В МОСКВЕ и запускаю макрос, он по порядку заходит в каждую и т.д.

Но мне хотелось бы что группы он брал так же из файла моего txt, заранее подготовленого с открытыми стенами.
Подскажите КАК МНЕ ЭТО СДЕЛАТЬ??? Какая строка? Как выглядит? Что написать? URL GOTO или что.

Еще одна проблемка-это прикрепление фото.

Я конечно сейчас прикрепляю как ссылка EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="http://vk.com/здесь фото  " но ссылка тоже вместе с текстом остается, сделать бы чтоб удалялась чтоль после написания или из файла.
Надеюсь я понятно объяснил ситуацию.

Итог чтоб не запутаться:
1. Как сделать, чтоб группы брались из файла по порядку?
2. Как сделать чтоб ссылка на картинку удалялась ( смотрел в видео много раз, напишется, после удаляется и текст пишется)

Напишите уж кому не трудно!
Заранее всем спасибо.

Участник пишет

Но мне хотелось бы что группы он брал так же из файла моего txt, заранее подготовленого с открытыми стенами.
Подскажите КАК МНЕ ЭТО СДЕЛАТЬ??? Какая строка? Как выглядит? Что написать? URL GOTO или что.

SET !DATASOURCE имя_файла - файл со ссылками
SET !DATASOURCE_LINE номер_строки - строка в файле, считываемая в данный момент/цикл
URL GOTO={{!COL1}} - переход по урлу, взятому из указанной выше строки из первого столбца (подробнее читать что такое формат данных CSV)

пример:

Выделить код

Код:

SET !DATASOURCE vk_groups.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}


данный код будет читать файл vk_groups.txt из папки iMacros\Datasource\ и на каждом цикле переходить по ссылкам, записанным в файле
на первом цикле - перейдет по ссылке, записанной в первой строке, на втором - во второй и т.д.

18-05-2015 02:27:03

Участник пишет

смотрел в видео много раз, напишется, после удаляется и текст пишется

вы сами ответили на собственный вопрос - записать удаление текста с помощью команд EVENTS

InfSub
удалено
выделяем, нажимаем "цитировать", иначе жмем - "ответить" (прим.)

Спасибо за такой быстрый ответ! Обязательно все попробую как сказано.
А вот с удалением не совсем понимаю. Про запись удаления.
Я записываю удаление через ЗАПИСЬ.
Получается сначала нажимаю ЗАПИСЬ, после вставляю ссылку для примера и удаляю ее, и после СТОП.
Потом смотрю код, и нифига в нем нет, кроме изначально написаного. Вот как то  так. Это или я что то все таки не так делаю, или еще что.

Участник пишет

Потом смотрю код, и нифига в нем нет

режим записи: Experimental event recording mode

18-05-2015 03:05:50
на примере нашего форума, это будет что-то типа:

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#post>DIV>FIELDSET>DIV>LABEL>TEXTAREA" KEYS="[8,8,8,8,8,8,8,8,8,8,8]"

InfSub пишет
Участник пишет

Потом смотрю код, и нифига в нем нет

режим записи: Experimental event recording mode

18-05-2015 03:05:50
на примере нашего форума, это будет что-то типа:

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#post>DIV>FIELDSET>DIV>LABEL>TEXTAREA" KEYS="[8,8,8,8,8,8,8,8,8,8,8]"

Извиняюсь за не правильное цитирование!
Вот спасибо то а! Век живи,век учись. как говориться.
Про режим особенное спасибо, не знал про этот режим.
Завтра все проделаю обязательно, надеюсь все успешно будет.
А щас глаза уже болят от экрана.
Спасибо тебе еще раз! ОГРОМНОЕ.

18-05-2015 03:17:34

offtop
Блин не удержался, попробовал)
Все получилось. Группы берет из файла.
Осталось попробовать удаление. Завтра.
Точнее сегодня, но днем. Спать все таки надо иногда.
Еще раз Спасибо, ато уже голову сломал с экспериментами кодов.

Быть может это прозвучит странно, но хочу спросить, можно ли передать аймакросу функцию js?

скрытый текст

Выделить код

Код:

var macro;
macro= "CODE:"
macro+='URL GOTO=google.com'+"\n";
macro+='SET !VAR1 EVAL  ("test()")'+"\n"
macro+='URL GOTO=ya.ru'+"\n"
iimPlay(macro)

function test(){alert("тестовое сообщение");}
То есть, что бы при переходе между сайтами воспроизводилась функция. Интересует именно такая конструкция макроса, а не:

iimPlay(CODE:URL GOTO=..)
test()
iimPlay(CODE:URL GOTO=..)

TetraSky пишет

macro+='SET !VAR1 EVAL ("test()")'+"\n"

вызов возможен только внутри eval() - и работать будет только в локальной области действия функции eval(), проще говоря - только внутри eval()
между двумя вызовами eval() данные передаваться не будут

Выделить код

Код:

macro+='SET !VAR1 EVAL ("function test(){};... test()")'+"\n"

alert из eval() работать - не будет

Скажите, пожалуйста, можно ли, к примеру, после ввода неправильной капчи (когда на странице появляется фраза Invalid Captcha) чтобы скрипт "iim" создавал пустой файл с название "Х" и любым расширением (допустим "Х.txt"), а если неправильный логин (когда на странице появляется фраза login incorrect) чтобы был создан файл "Y.txt", ну а если все правильно, то продолжил работу.

ottec
да, возможно, но скорее всего - придется создавать еще файл "Z", как раз для ситуаций, когда все нормально

InfSub пишет

ottecда, возможно, но скорее всего - придется создавать еще файл "Z", как раз для ситуаций, когда все нормально

Можете подсказать команды которыми можно это сделать.

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("('{{!EXTRACT}}'=='Invalid Captcha')?'X':'Z'")
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.txt

InfSub пишет

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("('{{!EXTRACT}}'=='Invalid Captcha')?'X':'Z'")
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.txt

Скрипт создает файл "Z" в обоих случаях, если капча правильно введена и если нет все-равно создается "Z". Может потому что страница после ввода капчи перезагружается, только потом появляется 'Invalid Captcha'?

ottec пишет

Может потому что страница после ввода капчи перезагружается, только потом появляется 'Invalid Captcha'?

ну так EXTRACT'тить нужно в тот момент когда появляется надпись, иначе что и как вы проверять будете

InfSub пишет
ottec пишет

Может потому что страница после ввода капчи перезагружается, только потом появляется 'Invalid Captcha'?

ну так EXTRACT'тить нужно в тот момент когда появляется надпись, иначе что и как вы проверять будете

Спасибо большое за ответы. Решил вопрос с помощью:

скрытый текст

Выделить код

Код:

SEARCH SOURCE=REGEXP:"invalid" IGNORE_CASE=YES EXTRACT="Х"
SAVEAS TYPE=EXTRACT FOLDER=C:\captcha FILE={{!EXTRACT}}.txt

В новых версиях браузера фото капча не сохраняется на компьютер, только в старых.
Как вставить фото капчи на сайт антигейта, без сохранения капчи на компьютер?

Капча с сайта вк.

Вот так сохраняет в папку

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPTCH FILE=captcha.png
WAIT SECONDS=1
TAG POS=1 TYPE=img ATTR=src:/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


вот так вставляет
скрытый текст

Выделить код

Код:

URL GOTO=http://antigate.com/imacros.html
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT=C:\CAPTCH\captcha.png

Алим пишет

В новых версиях браузера фото капча не сохраняется на компьютер, только в старых.

Алим
данная проблема была, если не ошибаюсь в 36 версии, в 38 и в 35 ее нет, по поводу 37 - не помню, соответственно, использовать те версии ff - где сохранение нормально работает

Алим пишет

Как вставить фото капчи на сайт антигейта, без сохранения капчи на компьютер?

ни как

:whiteflag: Здравствуйте!

Как можно в аймакросе обнулить фрейм?

Проблема в следующем: настроен ай макрос для автоматической регистрации на сайте.
Всё работает до капчи, при нажатии "Я не робот" меняется фрейм.

скрытый текст
FRAME NAME="I0_*"
аймакрос нажимает "Я не робот"
TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:
PAUSE
решаю капчу и снимаю аймакрос с паузы
FRAME NAME="I1_*"
CLICK X=328 Y=554 (приходится кликом аймакросу нажимать после решения капчи "Подтвердить", так как кнопка аймакросом не нажимается)
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=NAME:registration  а вот эта кнопка не как не хочет нажиматься (кнопка "Зарегистрироваться"), не кликом не нажатием

Я так понимаю фрейм "I1_*" больше не требуется, а к фрейму "I0_*" аймакрос не возвращается, пробовал перед строкой TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=NAME:registration добавлять FRAME NAME="I0_*" или FRAME NAME="I*" , всё равно стоит аймакрос.

Если остановить скрипт и запустить другой с командой TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=NAME:registration , аймакрос выполняет его без ошибок. :angry:


:tongue2: Ура! Решил данную проблему добавлением FRAME F=0 перед строкой TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=NAME:registration

Товарищи, подскажите как можно перенести iim код в среду javascript
Нашел на 86 странице интересующий код от InfSub, но при переносе в js не хочет работать.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE gruup_url.txt
SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/3)-1)*3")

URL GOTO={{!COL1}


Пробовал по разному извращаться, создавать отдельные переменные и передавать значение в "macro", выносил отдельно Math.ceil, а потом обратно передавал в макрос...Но увы результата нет, или вовсе не работает или зацикливает только первую строку из 1.txt и крутит ее 100 раз:/

скрытый текст

Выделить код

Код:

for(j=1; j<100;j++){
var macro
macro= "CODE:"
macro+='CMDLINE !DATASOURCE D:\\1.txt'+"\n";   // Как пример взял тхт с 5 сайтами.
macro+= 'SET !DATASOURCE_LINE EVAL("{{!LOOP}}-(Math.ceil({{!LOOP}}/5)-1)*5")'  +"\n";
macro+='URL GOTO={{!COL1}}'
iimPlay(macro)

}

TetraSky пишет

... подскажите как можно перенести iim код в среду javascript...

iimPlayCode("...");


скрытый текст

Выделить код

Код:

for(j=1; j<5; j++){
   iimPlayCode("CMDLINE !DATASOURCE D:\\1.txt\nSET !DATASOURCE_COLUMNS "+j+"\nSET !EXTRACT {{!COL1}}");
   url=iimGetLastExtract(); 
   alert(url)
}


Вот такой способ писанины, очень, очень и очень плохой.
скрытый текст

Выделить код

Код:

var macro
macro= "CODE:"
macro+=...
macro+= ...
macro+=...
iimPlay(macro)


Руки бы повыдёргивать тому кто это придумал, уже сколько таких извращённых скриптов пришлось переделывать.:angry:

для кода используем тег code, а не quote
причина: правильная обработка данного кода парсером форума

InfSub

TetraSky
переменная {{!LOOP}} не работает из js, как правильно ее заменить - выше ответил PRESIDENT

InfSub пишет

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("('{{!EXTRACT}}'=='Invalid Captcha')?'X':'Z'")
SAVEAS TYPE=EXTRACT FOLDER=* FILE={{!VAR1}}.txt

Не получилось у меня то что хотелось. Подскажите, пожалуйста, куда нужно вставить эти строчки в данном коде?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !EXTRACT NULL
SET !ENCRYPTION NO
FILEDELETE NAME=C:\captcha\bot.png
TAB T=1
URL GOTO=https://www.eobot.com/signin
TAG POS=1 TYPE=IMG ATTR=ID:recaptcha_reload
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_txtEmail CONTENT=lllllll@llllll.ll
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_txtPassword CONTENT=ppppppppp
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_chkRememberMe CONTENT=NO
ONDOWNLOAD FOLDER=c:\captcha\ FILE=bot.png WAIT=YES
TAG POS=1 TYPE=IMG ATTR=ID:recaptcha_challenge_image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://anti-captcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:in.php ATTR=NAME:key CONTENT=key
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:in.php ATTR=NAME:file CONTENT=C:\captcha\bot.png
TAB T=2
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:in.php ATTR=*
TAB T=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
TAB T=2
TAB CLOSE
EVENT TYPE=CLICK SELECTOR="#recaptcha_response_field" BUTTON=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:recaptcha_response_field CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_btnLogin
WAIT SECONDS=3
PAUSE

PRESIDENT
Пробовал писать похожий цикл, но он делает по 5 итераций, проходя общий цикл.


Например:

скрытый текст

Выделить код

Код:

for(i=1; i<100; i++){ 
     for(j=1; j<5; j++){
        iimPlayCode("CMDLINE !DATASOURCE D:\\1.txt\nSET !DATASOURCE_LINE"+j+"\nSET !EXTRACT {{!COL1}}");
        url=iimGetLastExtract(); 
        alert(url)
      }
}
То есть на каждую i приходиться 5 итераций j
а я пытаюсь сделать, что бы на один проход i было воспроизведено одну j, которая будет повышаться до 5 по мере проходки главного цикла
Принцип отлично реализован в iim, но голова кипит, когда пробую применить это в js

Цикл 1 открываем гугл
Цикл 2 открываем яндекс
Цикл 3 открываем мейл
Цикл 4 открываем мозила.орг
Цикл 5 открываем вк
//дальше повторяется содержание 1.тхт и начинается сначала 
Цикл 6 открываем гугл
Цикл 7 открываем яндекс
...
Цикл 100 ...


Читал на просторах интернета, что iimPlayCode в отличии от iimPlay неплохо нагружает фф, на практике не проверял правда)

TetraSky пишет

а я пытаюсь сделать, что бы на один проход i было воспроизведено одну j, которая будет повышаться до 5 по мере проходки главного цикла

Например:

Выделить код

Код:

// где:
// i - счетчик
// j - кол-во строк
// n - всего циклов

for(var i=1,j=5,n=100,r;i<=n;i++){
    r=i-(Math.ceil(i/j)-1)*j;
    iimPlayCode("CMDLINE !DATASOURCE D:\\1.txt\nSET !DATASOURCE_LINE"+r+"\nSET !EXTRACT {{!COL1}}");
    url=iimGetLastExtract(); 
    alert(url)
}


19-05-2015 17:59:25

PRESIDENT пишет

Вот такой способ писанины, очень, очень и очень плохой.

скрытый текст

Выделить код

Код:

var macro
macro= "CODE:"
macro+=...
macro+= ...
macro+=...
iimPlay(macro)


Руки бы повыдёргивать тому кто это придумал, уже сколько таких извращённых скриптов пришлось переделывать.:angry:

почитайте спецификации по js и иным языкам программирования, везде рекомендуется сокращать сверх длинные строки, где это возможно, для удобства чтения и отладки кода
(в данном случае речь не об ускорении работы скрипта, а именно о записи удобочитаемых исходников)
другой вопрос что запись:

скрытый текст

Выделить код

Код:

var macro
macro= "CODE:"
macro+=...
macro+= ...


несколько сырая и имело бы смысл ее записать так или аналогичным образом:
скрытый текст

Выделить код

Код:

var macro= "CODE:"
    +" ... "
    +" ... "
    +" ... ";


19-05-2015 18:06:45

TetraSky пишет

крутит ее 100 раз

данный код:

TetraSky пишет

for(j=1; j<100;j++){

сделает 99 циклов а не 100

Привет всем! Слушайте, вопрос может быть окажется не очень умным, НО
а чем отличается РАНДОМНАЯ пауза, от обычной WAIT ?

Участник форума, тем же, чем и вытащенный из мешка шарик с цифрой, от стоящего на столе, аналогичного шарика

InfSub
Благодарю!

Участник форума пишет

Привет всем! Слушайте, вопрос может быть окажется не очень умным, НО
а чем отличается РАНДОМНАЯ пауза, от обычной WAIT ?

Выделить код

Код:

WAIT SECONDS = 5 - пауза 5 секунд 
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*20+ 1); randomNumber;")
WAIT SECONDS={{!VAR1}} - случайная пауза от 1 до 20 секунд

Подскажите пожалуйста как написать код imacro с условными операторами ;)
Нужно чтобы при наличии определенного текста на странице выполнялся оператор.
Мой код:

скрытый текст

Выделить код

Код:

// если на странице найден текст "some_text_in_the_page" - выполнить условие if
if (SEARCH SOURCE=TXT:"some_text_in_the_page")
{
     TAG POS=1 TYPE=DIV ATTR=TXT:Button1
}

 // если текст не найден перезагрузить страницу и выполнить тоже условие if
else
{
REFRESH
TAG POS=1 TYPE=DIV ATTR=TXT:Button1
}


:whiteflag:

ottec пишет

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !EXTRACT NULL
SET !ENCRYPTION NO
FILEDELETE NAME=C:\captcha\bot.png
TAB T=1
URL GOTO=https://www.eobot.com/signin
TAG POS=1 TYPE=IMG ATTR=ID:recaptcha_reload
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_txtEmail CONTENT=lllllll@llllll.ll
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_txtPassword CONTENT=ppppppppp
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_chkRememberMe CONTENT=NO
ONDOWNLOAD FOLDER=c:\captcha\ FILE=bot.png WAIT=YES
TAG POS=1 TYPE=IMG ATTR=ID:recaptcha_challenge_image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://anti-captcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:in.php ATTR=NAME:key CONTENT=key
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:in.php ATTR=NAME:file CONTENT=C:\captcha\bot.png
TAB T=2
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:in.php ATTR=*
TAB T=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
TAB T=2
TAB CLOSE
EVENT TYPE=CLICK SELECTOR="#recaptcha_response_field" BUTTON=0
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:aspnetForm ATTR=ID:recaptcha_response_field CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_btnLogin
WAIT SECONDS=3
PAUSE

Я бы так сделал

скрытый текст

Выделить код

Код:

var userName='твой логин', userPass='твой пасс', key='ключ антикеу';
 
    iimPlay('CODE:SET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES'); 
    iimPlay('CODE:SET !TIMEOUT 60\nURL GOTO=https://www.eobot.com/signin');
  f=iimPlay('CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=H1 ATTR=TXT:Sign<SP>In');    if(f>0){ login(userName,userPass); 
    iimPlay('CODE:SET !TIMEOUT 1\nWAIT SECONDS=3');}
  f=iimPlay('CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=IMG ATTR=ID:recaptcha_logo');if(f>0){
    iimPlay('CODE:FILEDELETE NAME=C:\\captcha\\bot.png');
    iimPlay('CODE:ONDOWNLOAD FOLDER=c:\\captcha\\ FILE=bot.png\nTAG POS=1 TYPE=IMG ATTR=ID:recaptcha_challenge_image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
    iimPlay('CODE:SET !TIMEOUT 1\nWAIT SECONDS=2');
    // тут бы не мешало цикл поставить
    iimPlay('CODE:TAB OPEN\nTAB T=2');
    anti(key);
    iimPlay('CODE:SET !TIMEOUT 1\nWAIT SECONDS=1');
    iimPlay('CODE:TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');otvet=iimGetLastExtract(); 
    iimPlay('CODE:TAB CLOSE');
    if(otvet.indexOf("ERROR")<0 && otvet !='' && otvet.length == 6){  
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:aspnetForm ATTR=ID:recaptcha_response_field CONTENT='+otvet); 
    iimPlay('CODE:SET !TIMEOUT 1\nWAIT SECONDS=1');
    iimPlay('CODE:SET !TIMEOUT 60\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:aspnetForm ATTR=ID:ctl00_ContentPlaceHolder1_btnLogin');}}

     /***-= Авторизация =-***/
 function login(userName,userPass){ 
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:aspnetForm ATTR=ID:*Email CONTENT='+userName);
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:aspnetForm ATTR=ID:*Password CONTENT='+userPass);
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ID:aspnetForm ATTR=ID:*RememberMe CONTENT=NO');}

    /***-= anti captcha =-***/
 function anti(key){ 
   iimPlay('CODE:SET !TIMEOUT 30\nURL GOTO=http://anti-captcha.com/imacros.html');
   iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:* ATTR=NAME:key CONTENT='+key);                                                                                       
   iimPlay('CODE:TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:* ATTR=NAME:file CONTENT=C:\\captcha\\bot.png');    
   iimPlay('CODE:SET !TIMEOUT 60\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');}

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

sotg пишет

Подскажите пожалуйста как написать код imacro с условными операторами Нужно чтобы при наличии определенного текста на странице выполнялся оператор.Мой код:скрытый текстВыделить кодКод:// если на странице найден текст "some_text_in_the_page" - выполнить условие if

скрытый текст

Выделить код

Код:

if (SEARCH SOURCE=TXT:"some_text_in_the_page")
{
     TAG POS=1 TYPE=DIV ATTR=TXT:Button1
}

 // если текст не найден перезагрузить страницу и выполнить тоже условие if
else
{
REFRESH
TAG POS=1 TYPE=DIV ATTR=TXT:Button1
}

Ты же сам код почти написал, оберни всё это в цикл и сделай выход из цикла, если всё норм, если надпись найдена:)

скрытый текст

Выделить код

Код:

for (i=0; i<=20; i++){  // <--- Задаём цикл, делаем несколько повторов
  f=iimPlay('CODE:SET !TIMEOUT 1\nSEARCH SOURCE=TXT:"some_text_in_the_page"'); 
    if(f>0){ // <--- если надпись найдена
    iimPlay('CODE:TAG POS=1 TYPE=DIV ATTR=TXT:Button1');  // <--- жмём кнопку
    break;  // <--- прекращаем цикл, повторы 
      } 
      else iimPlay('CODE:REFRESH'); 
    }


ottec
Ну в чом проблема, если капча введена не верно, появилась надпись типа: вронг или инвалид капча то пишем номер акаунта в лог файл
   
скрытый текст

Выделить код

Код:

log('Аккаунт номер, ошибка входа/ввода капчи, что угодно');
    
    /***-= Пишем отчёт в лог файл =-***/
 function log(feler){
   var timer=getDate();
   txt=feler+'    '+timer; 
   iimPlayCode('SET !EXTRACT '+txt.replace(/ /gi,"<SP")\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=log.txt');}


 function getDate(){var d=new Date(); return d.getHours()+":"+d.getMinutes()+":"+d.getSeconds();}


Вот так например, выглядит у меня лог файл, для 50 аккаунтов, на фрибиткоин
тут большая картинка
aee33460c09fbcf856aaf546cc7c8330_f.jpg

PRESIDENT
Просто непонятно как этот код можно запихнуть в "iim" файл?

ottec пишет

Код меня вполне устраивает, и менять его полностью нет смысла т.к. он такой не один и не десять...

На днях помогал одному участнику HellishFire с кодом.
Для включения проксей он создавал под каждый проксь свой Proxy1,2,3....iim файл, для входа в аккаунт свой *.iim
потом ещё целый вагон и маленькая тележка не нужных повторяющихся скриптов.:|
Абсолютно без логики, тупо команды в iim-ах с управляющим js-ом. У которого глюк на глюке.
Сейчас у него код в 30-40 аккуратных строчек и работает как часики и сам скрипт аж летает.
Можешь по ВП у него интересоваться если что.
Так эт я к тому что

... менять его полностью нет смысла ...

может всё таки есть.:)


ottec пишет

Скажите, пожалуйста, можно ли, к примеру, после ввода неправильной капчи (когда на странице появляется фраза Invalid Captcha) чтобы скрипт "iim" создавал пустой файл с название "Х" и любым расширением (допустим "Х.txt"), а если неправильный логин (когда на странице появляется фраза login incorrect) чтобы был создан файл "Y.txt", ну а если все правильно, то продолжил работу.

Зачем тебе все эти икс игрик файлы ?
Посмотри на прошлой странице, там я картинку выкладывал, как лог файл у меня выглядит.
Можно всё аккуратненько в один файлик писать.

Небольшой примерчик, для кучи акаунтов на фрибиткоине

скрытый текст

Выделить код

Код:

while(true){  // <--- Бесконечный цикл
 for(ak=1; ak<=99; ak++){  // <--- цикл перебора акаунтов

 /*** 
тут включаем проксь, если нужно, заходим в аккаунт и другая лабуда
 ***/
 f=iimPlay('CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=P ATTR=ID:login_error');if(f>0){ log('Аккаунт '+ak+' : Incorrect login details.');} // <--- Не смогли зайти в аккаунт, пишем в лог
 f=iimPlay('CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=P ATTR=TXT:Enter*ROLL*time!');if(f>0){  // <---  проверяем зашли ли в аккаунт, если нет то на кой дальше скрипт мучить
 f=iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=ID:time_remaining&&CLASS:hasCountdown&&TXT:*Minut*Second*");if(f<0){ // <--- ищем таймер, если нету таймера, значит всё норм, ищем капчу
 f=iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=P ATTR=TXT:Captcha*Solve*captcha.");if(f>0){ // <--- ищем капчу
 solvemedia(); // <---Запускаем функцию распознавания капчи
 }
 f=iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=ID:time_remaining&&CLASS:hasCountdown&&TXT:*Minut*Second*");if(f>0){ // <---опять ищем таймер, что бы узнать правильно распознали капчу или нет
 f=iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:bold<SP>center<SP>green&&TXT:You*BTC! EXTRACT=TXT"); win=iimGetLastExtract(); 
   log('Аккаунт '+ak+' : '+win);  // <--- Пишем данные о выигрыше в лог 
   }else{  
   /**
  тут eсли не разгадал капчу можно или запустить заново или отправить на рукапчу/антидoту
   */
   log('Аккаунт '+ak+' : не разгадал капчу.'); 
   ak--; // <---  если не распознал капчу, возвращаемся на тот же акаунт
   }
   }else{ log('Аккаунт '+ak+' : таймер.'); }}}

PRESIDENT
У меня нет даже управляющего js, только "iim", все под номерами и всё тоже работает как швейцарские часики. Только данной функции пока нет. Облазил все что можно и все дороги ведут на этот форум. Если и помогут то только здесь.

Оффтоп

ottec пишет

PRESIDENT
У меня нет даже управляющего js, только "iim"

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

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

Оффтоп, модер придёт заругает опять за флуд:(


в данном случае - это не флуд, а конструктивный диалог, так что все норм.
ругаться буду только по одному поводу, снова здоровенные куски кода - без спойлера!

InfSub

:whiteflag: Здравствуйте!

Как отсеять всё лишнее из EXTRACT?

Пример: аймакрос извлёк текст  100,00  руб.  , но мне необходимо чтобы аймакрос извлёк текст до запятой, а именно 100, цифры могут быть любые перед запятой (пример: 1000,00  руб. , 799,00  руб. , 50,00  руб. , 14900,00  руб.).

Даниил955447112 пишет

Как отсеять всё лишнее из EXTRACT?
Пример: аймакрос извлёк текст  100,00  руб.  , но мне необходимо чтобы аймакрос извлёк текст до запятой, а именно 100, цифры могут быть любые перед запятой (пример: 1000,00  руб. , 799,00  руб. , 50,00  руб. , 14900,00  руб.).

Выделить код

Код:

SET !VAR1 EVAL("var s='{{!extract}}'; d=s.replace(',00', ''); d;")

потом content={{!var1}}
Т.е.

скрытый текст
SET !VAR1 EVAL("var s='{{!extract}}'; d=s.replace('ЧТО ОТСЕЯТЬ', ''); d;")

Даниил955447112 пишет

не необходимо чтобы аймакрос извлёк текст до запятой

если нужно получить число до запятой, то так:

Выделить код

Код:

SET !EXTRACT "100,00  руб."
SET !EXTRACT EVAL("'{{!EXTRACT}}'.split(',').shift()")
PROMPT {{!EXTRACT}}

знаю что вопрос немого не по адресу , но может кто-то встречал :

немного оффтоп
как использовать  аналог команды !CLIPBOARD в js (iimPlayCode("SET !CLIPBOARD")----мне не подходит)
в интернете прочитал несколько статей но так и не смог ничего применить
Желательно продемонстрировать рабочий код с описаниями к каждому действию

kolshix пишет

как использовать  аналог команды !CLIPBOARD

опишите, что конкретно требуется, из вашего вопроса, это как-то не совсем понятно

InfSub пишет
kolshix пишет

как использовать  аналог команды !CLIPBOARD

опишите, что конкретно требуется, из вашего вопроса, это как-то не совсем понятно

Просто тестировал перенос информации из одного iim файла в другой и использовал такой код на JS :

Выделить код

Код:

iimPlay("CODE: SET !CLIPBOARD test")
iimPlay("CODE: Prompt {{!CLIPBOARD}}")

как и ожидалось информация из одного кода , перешла в другой без использования iimSet и iimGetLastExtract
Вот меня и заинтересовали вариации переноса информации из iim в js //// а так же аналоги iim в iim /// и аналоги из js в iim ----- и все это без iimGetLastExtract и iimSet
((((((((кстати до сих пор использую в качестве Loop - метод сохранения номера строки\цикла , путем записи числа в txt файл)))))))
А если быть ещё конкретнее , то собираю информацию для записи видео , на тему "перенос информации из iim в js и наоборот, и все что с этим связано"
видео будет про:
1 iimSet
2 iimGetLastExtract
3 перенос инфы из iim в iim в js-скрипте путём сохранение инфы в txt и csv с последующим прочтением 
4 CLIPBOARD
------------------------------
вот в поиске  информации по данному вопросу

работа с {{!CLIPBOARD}} удобна только в ситуациях:
а) когда происходит взаимодействие человека со скриптом (запущенный скрипт берет информацию из буфера обмена, предварительно скопированную туда, либо скрипт помещает в буфер информацию, для дальнейшей обработки человеком)
б) обмен между 2я скриптами, при условии отсутствия человека за ПК (в противном случае, человек будет мешать скрипту, скрипт - человеку; одновременный запуск более 2 скриптов, работающих с буфером, тоже вызовет аналогичные проблемы)

InfSub пишет

работа с {{!CLIPBOARD}} удобна только в ситуациях:
а) когда происходит взаимодействие человека со скриптом (запущенный скрипт берет информацию из буфера обмена, предварительно скопированную туда, либо скрипт помещает в буфер информацию, для дальнейшей обработки человеком)
б) обмен между 2я скриптами, при условии отсутствия человека за ПК (в противном случае, человек будет мешать скрипту, скрипт - человеку; одновременный запуск более 2 скриптов, работающих с буфером, тоже вызовет аналогичные проблемы)

Это я все прекрасно понимаю, с логикой у меня не плохо , (хотя память хромает) мне нужно по больше информации для описания в видео //
насчет отсутствия пользователя CLIPBOARD отлично подходит к VDS //
а вообще просто хочу в видео рассказать о примерах и описать к каждому примеру его положительные и отрицательные стороны

kolshix пишет

а вообще просто хочу в видео рассказать о примерах и описать к каждому каждому его положительные и отрицательные стороны

я понял, просто сделал акцент, на то, что это менее удобно, на мой взгляд, чем использовать промежуточный файл - ИМХО
к сожалению, большей конкретики не добавлю, так как {{!CLIPBOARD}} не использую в скриптах, разве что, специально об этом просят

PRESIDENT пишет

kolshix
Ты бы учил народ сразу обрамлять всё в js, без этого извращения с iim-мами.

не согласен , iim для начинающего пользователя является первоочередным источником информации, а также некоторые действия (конкретно в моем случае) вообще не требуют использования js ///// Не знаю у кого как, но в процессе обучения в школе и в вузе встречались не раз такие выражения преподователей как: "эта информация вам может и не пригодится, но вы должны её знать" --- данное правило работает и с iMacros
-----
по поводу вашего примера , то я очень плохо знаю js - желательно пишите примеры с пояснениями команд/// я так понял это процесс перебрасывания информации из test2 в test1 ? вот только не понял зачем 2штуки js создавать , если можно все в один загнать , /// хотя все примеры важны, даже если они на первый взгляд выглядят ненужными

Подскажите плиз, в документации не нашёл.
Есть макрос в котором ожидание элемента страницы "Picture 1":
TAG POS=1 TYPE=A ATTR=TXT:Picture:<SP>1
но проблема в том, что слово Picture постоянное, а вот число может быть разное.
Можно ли как то прописать, чтобы появление элемента с любым числом до 50 (пятидесяти) учитывалось?

George Mikl пишет

Подскажите плиз, в документации не нашёл.
Есть макрос в котором ожидание элемента страницы "Picture 1":
TAG POS=1 TYPE=A ATTR=TXT:Picture:<SP>1
но проблема в том, что слово Picture постоянное, а вот число может быть разное.
Можно ли как то прописать, чтобы появление элемента с любым числом до 50 (пятидесяти) учитывалось?

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Picture:*

так будет учитывать с любым набором символом после слова Picture:

spy686 пишет

так будет учитывать с любым набором символом после слова Picture:

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

George Mikl пишет
spy686 пишет

так будет учитывать с любым набором символом после слова Picture:

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

ну это через управление js. Прикручиваешь счетчик и погнал

for (var i = 0; i < 50; i++) {
   действия
}

spy686
Понял. Спасибо!

:whiteflag: Здравствуйте!

Как сделать чтобы аймакрос уменьшал масштаб страницы аналог нажатия "Ctrl + -" ?

Дело в том, что аймакрос не может кликнуть по элементу на странице, так как видимая часть его расположена ниже, и что бы она попала в окно браузера надо прокрутить страницу вниз.
Пробовал перед командой CLICK, добавлять сначала TAG POS по тексту внизу страницы, страница прокручивается вниз, но элемент по координатам аймакрос нажать не может после этого, пишет: TypeError: details.target is null, line 2 (Error code: -1001).
На другом компьютере браузер отображает данный элемент без прокрутки и аймакрос спокойно кликает элемент по координатам без ошибок.

Выход который меня устраивает, зафиксировать масштаб в браузере 90%, но при обновлении аймакросом страницы масштаб не сохраняется, и снова масштаб в браузере 100%.

Может быть какое нибудь есть дополнение для браузера или как нибудь в нём зафиксировать 90% по умолчанию можно, или аймакросом что нибудь можно сделать???

Кликаемый элемент, если по нему кликать не по координатам звучит так: TAG POS=1 TYPE=DIV ATTR=ID:b2 , но если использовать данную команду, а не клик по координатам, элемент не кликается, а просто выделяется подсветкой аймакроса.

Пожалуйста помогите :|

Странно, имакросу по барабану тег в зоне видимости или нет. В настройках поставь галку склонировать на обьект.
А так если не поможет отключи стили в браузере. В меню Вид ---> Стиль страницы и там без стиля.

Ты наверное через клик по координатам делаешь.
Делай клик по тегам:)

PRESIDENT пишет

Странно, имакросу по барабану тег в зоне видимости или нет. В настройках поставь галку склонировать на обьект.
А так если не поможет отключи стили в браузере. В меню Вид ---> Стиль страницы и там без стиля.

Ты наверное через клик по координатам делаешь.
Делай клик по тегам:)

Так я и пишу что клик по координатам X Y, иначе требуемого не происходит, а происходит выделение того места синим маркером аймакроса если клик по тегам делаю.
Повторюсь: на другом компьютере всё работает, так как объект виден изначально при загрузке страницы, а во втором случае этот объект спрятан на второй половине страницы и его не видно и нужно тащить страницу снизу вверх, что бы он возник в поле видимости, или уменьшать масштаб на 10%, то есть при 90% уже его видно при загрузке, меня бы устроил масштаб не 100, а 90%, но браузер Фаерфокс не хочет запомнить мой выбор и я возвращаюсь с того чего начал.
И варианты тут такие: уменьшить масштаб отображаемого, на 10%, или решить проблему клика аймакроса, вне зависимости от видимости объекта, не важно находится он в нижней половине страницы сайта или в верхней. :angry:

P.S.: А клики у меня по тегам работают вне зависимости видимости объекта, так что с аймакросом всё впорядке, просто в данном случае кликается только методом по координатам.

Так ты сделай сначала клик по тегам, обьект и станет по средине(если стоит галочка склонировать на обьект)
потом уже пробуй клик по координатам.

PRESIDENT пишет

Так ты сделай сначала клик по тегам, обьект и станет по средине(если стоит галочка склонировать на обьект)
потом уже пробуй клик по координатам.

Вроде я пробовал так, хотя может в другом макросе.
Позже попробую, отпишусь с результатами.

Сейчас уменьшил масштаб у самого браузера следующим методом в браузерной строке набирал about:config в строке поиска layout.css.devPixelsPerPx и поменял значение с "-1.0" на "0.9"
но аймакрос не проверял с новыми параметрами, тоже проверю напишу :/ может что нибудь поможет.


:rolleyes: Отписываю: ваш метод не работает 1001 ошибка, он схож с моим неработающем методом, клик текста внизу страницы и клик по координатам X Y объекта.
Метод ваш звучит так:
TAG POS=1 TYPE=DIV ATTR=ID:e5
CLICK X=827 Y=1186

Мой метод с уменьшением масштаба отображаемой страницы сработал, аймакрос кликает с первого раза по координатам, минус данного метода всё мельче на странице на 10%.
Поработаю ещё над другими вариантами, спасибо вам что пытались мне помочь! ;)

Даниил955447112, скроллинг страницы вниз, без всяких извращений с zoom'ом, легко находится поиском по данной теме

скрытый текст

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,10000)

Добрый вечер всем.
Помогите что-то не пойму..
Есть текстовый файл

скрытый текст
"Привет","Здрасти","Хай","Ку","Хаюшки","Приветик" .......

Как сделать рандомную колонку

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#write_form>DIV>TEXTAREA" CHARS="(ТУТ рандомная колонка с 2-5)"

Anton22

так

Выделить код

Код:

var kolonka = ["Привет","Здрасти","Хай","Ку","Хаюшки","Приветик"," ......."];
 kl=kolonka[Math.floor(Math.random()*kolonka.length)];
 iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#write_form>DIV>TEXTAREA" CHARS='+kl);

Участник форума пишет

Вот 3-я строчка так понимаю отвечает за то, что перейти на страничку пользователя и лайк еще поставить, но не переходит.

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

Ребята скажите пожалуйста как можно сделать условию if. На сайте в рандомное время выходит кнопка нужно его поймать.Можете немного подсказать как это сообразить=)

Hamzat

Как то так

Выделить код

Код:

while(true){
f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=тег кнопки');if(f>0) break;
  iimPlayCode('WAIT SECONDS=3');}

PRESIDENT
Спасибо!

Участник форума пишет

А можно сделать чтоб он только в группы с открытой стеной заходил??? Именно из поиска.

да, можно, с помощью js

Участник форума пишет

Какую строчку добавить нужно в скрипт? Как выглядит. Заранее спасибо.

одна или две строки iim-кода, вам в данной ситуации не помогут, чистый имакрос, не имеет операторов ветвления и выбирать (подходит/нет) не позволит, только через управляющий js-скрипт

23-05-2015 23:10:11

PRESIDENT пишет

оно же попроще

скорее не проще, а короче, и тогда уж так, зачем лишняя проверка условия:

скрытый текст

Выделить код

Код:

while(iimPlayCode('SET !TIMEOUT_STEP 0\nWAIT SECONDS=3\nTAG POS=1 TYPE=тег кнопки')<1);

Firefox 38.

ONDIALOG POS=1 BUTTON=OK CONTENT= не работает.

Кто-то сталкивался с проблемой?

Это для аутентификации прокси или для чего ?

:whiteflag: Здравствуйте!

А может аймакрос останавливаться, проверять текст и если всё без изменений продолжать выполнение макроса?
Допустим аймакрос совершает автооплату чего либо и пока комиссия за платёж равна нулю, но со временем провайдер введёт комиссию за платёж, как сделать чтобы аймакрос в данном случае останавливался.

К примеру аймакрос с помощью EXTRACT извлекает текст "Комиссия за данную операцию не взимается", сверяет его с шаблоном или извлекает "0" и так же сверяет его и если значение не менялось продолжает выполнять макрос.

Второй вопрос: Как сделать всплывающее окно с сообщением с извлечённым текстом без нажатия "ОК" на окне с сообщением?
К примеру мне нужно что бы появилось окно с извлечённым текстом на 3 секунды, затем аймакрос продолжал выполнять скрипт, не зависимо от того что в этом сообщении было написано.

P.S.: Где то я прочитал что аймакрос может решать капчу без дополнительный сервисов в аймакрос браузере, это правда релизовали или это бета версия аймакрос браузера?

:|

Нажми запись тыкни на эту надпись, потом сооруди такую конструкцию

скрытый текст

Выделить код

Код:

f=iimPlayCode("Тут команда что ты запишешь");
 if(f>0){  //<--- Если надпись найдена, то выполняем дальше
...
тут остальной код

}

Даниил955447112 пишет

Как сделать всплывающее окно с сообщением с извлечённым текстом без нажатия "ОК" на окне с сообщением?

Если алерт вызвать он затормозит макрос пока не нажмёшь кнопку ОК
Можно vbs вызвать, макрос не будет тормозиться, но окошко будет висеть пока ты его не закроешь.

Получилась следующая билиберда: TAG POS=1 TYPE=PRE ATTR=TXT:f=iimPlayCode("Тут<SP>команда<SP>что<SP>ты<SP>запишешь");*
:rolleyes: из которой я ничего не понял

Напишите следующий пример, предположим ключевое слово ПТИЧКА.
Как сделать что бы аймакрос проверил есть ли оно на странице форума, и если есть, открыл пустую вкладку?

Даниил955447112 пишет

Напишите следующий пример, предположим ключевое слово ПТИЧКА.Как сделать что бы аймакрос проверил есть ли оно на странице форума, и если есть, открыл...

Примерно так

Выделить код

Код:

if (iimPlayCode('SEARCH SOURCE=TXT:"ПТИЧКА"')>0)
{
 iimPlay("CODE:TAB OPEN\nTAB T=2\nURL GOTO=http://i.imgur.com/RZ7C7XL.gif")
}

Участник форума
У тебя в обоих профилях, одинаковое место хранения макросов.
Сделай разные папки и всё норм будет.

PRESIDENT пишет
Даниил955447112 пишет

Напишите следующий пример, предположим ключевое слово ПТИЧКА.Как сделать что бы аймакрос проверил есть ли оно на странице форума, и если есть, открыл...

Примерно так

Выделить код

Код:

if ('SEARCH SOURCE=TXT:"ПТИЧКА"')
{
 iimPlay("CODE:TAB OPEN\nTAB T=2\nURL GOTO=http://i.imgur.com/RZ7C7XL.gif")
}

Ну во-первых это .js, а не .iim.
Во-вторых, ваш скрипт открывает сайт даже если нет на странице ключевого слова (ПТИЧКА)

А я ведь писал, что бы аймакрос сверял слово по шаблону.

Что должен выполнить аймакрос:

1. Поиск в указанном месте ключевого слова.
2. Сверка его с имеющимся заранее известным (1 это 1, а 2 это 2, а не 3).
3. Если всё верно продолжать выполнение сценария, если проверка не прошла (1 это 2, а 2 нет вовсе), то останавливать выполнение скрипта (желательно ставить его на паузу).
правила, п. 2.4

InfSub

24-05-2015 21:08:20

Участник форума пишет

скрытый текст
Привет снова. Всем спасибо за помощь.
Слушайте, а у вас не встречалась такая проблемка:

Запуская ДВА профиля в мазиле (разных конечно же)
В одном работает макрос ( просто лазиет по страничкам и все)
Второй плюс к этому ставит КЛАСС.

И он короче бывает перемешивается как то, т.е там где БЕЗ КЛАСС, он ставит КЛАСС тем пользователям, которые с макросом КЛАСС, а высвечиваются в том, что без.
)))))))) блин надеюсь понятно объяснил))

Честно говоря, я ничего не понял из написанного вами.

Но могу только одно сказать 2 профиля вы не запустите на Мозилее без мешанины.
Запустить 2 можно в следующем случае: Если Мозилла у вас работает в стандартном режиме (запоминает куки, историю и прочее) и вы открыли например Яндекс, затем вы нажимаете на ссылку Яндекса и выбираете "Открыть в новом приватном окне". И вы получаете 2 независимых друг от друга окна, в одном окне у вас аймакрос работает по первому режиму, выполняя ваши задания, во-втором окне по-второму и ничего не путается друг с другом. Единственно что у вас в первом окне запоминает историю и куки, во-втором нет!!! :)

Даниил955447112 пишет

Ну во-первых это .js, а не .iim.

в 100 раз повторяю - iim-макросы, не позволяют выбирать действие, в зависимости от условия
ветвления по условию, позволяет делать только js

Даниил955447112 пишет

Во-вторых, ваш скрипт открывает сайт даже если нет на странице ключевого слова (ПТИЧКА)

Вам дали пример команды, от которой можно оттолкнуться, если даже она не работает, не уже ли так сложно увидеть где опечатка, просто по аналогии с тем, что тут писалось, хотя бы на последних 2-3 страницах?

скрытый текст

Выделить код

Код:

if(iimPlayCode('SEARCH SOURCE=TXT:"ПТИЧКА"')){
    iimPlayCode('TAB OPEN\nTAB T=2\nURL GOTO=http://i.imgur.com/RZ7C7XL.gif'); // всё верно продолжаем выполнение сценария
}else{
    iimPlayCode('PAUSE');
}

данный код отвечает на все 3, поставленных вопроса


24-05-2015 21:17:21

Даниил955447112 пишет

Но могу только одно сказать 2 профиля вы не запустите на Мозилее без мешанины.

все нормально работает на портативной мозилле с собственным профилем, без всяких зависимостей и приватных окон
2 портативных мозиллы - 2 профиля, 5 - соответственно, 5 профилей

24-05-2015 21:35:11
в FAQ, есть видео по работе с профилями, будьте так любезны, не поленитесь посмотреть...

InfSub пишет

не уже ли так сложно увидеть где опечатка

Чёто старею наверно, много ошибок делаю:(


В факе есть видео от колшика, насчёт запуска нескольких профилей.
Кто в танке и для особо одарённых, мини фак:

мини фак
Создаёте паку для профилей, допустим C:\Profile
в ней создаём новые папки, уже для каждого профиля, 1, 2, 3...
Потом правим ярлык для запуска мазилы.
Клик правой кнопкой мыши и там в самом низу Свойства
и в конце дописываем -P -no-remote
помучится что то типа этого
"C:\Program Files\Mozilla Firefox\firefox.exe" -P -no-remote
Всё сохраняем, стартуем мазилу с этого ярлыка.
Появится окно, менеджер профилей, и туточки уже создаём новый профиль:
делаем тыць на кнопочку создать, жмём Далее
в следующем окошке, придумываем название первого профиля Profile_1
и выбираем папку, ту что создали в начале C:\Profile\1
всё жмём Готово.
Таким же макаром создаём профиль2, 3, ... 100 сколько надо.
Снова стартуем мазилку с ярлыка, и там уже в менеджере профилей, будут все профиля что создали.
Не забываем в каждом новом запущенном профиле, первым делом исправить папку хранения макросов.

PRESIDENT пишет

Hamzat

Как то так

Выделить код

Код:

while(true){
f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=тег кнопки');if(f>0) break;
  iimPlayCode('WAIT SECONDS=3');}

Что то не получается( Пишите что таг не найден. Мне же нужно постоянно мониторить сайт то для этого должно подойти бесконечный цикл. Т.е как только выйдет кнопка он нажмет. В чем там ошибка может быть?

Hamzat пишет

Что то не получается( Пишите что таг не найден.

вы заменили текст: "TAG POS=1 TYPE=тег кнопки" в данном js-коде на свой имакро-код?
без js он работает?

InfSub пишет

вы заменили текст: "TAG POS=1 TYPE=тег кнопки" в данном js-коде на свой имакро-код

Да конечно)

без js он работает?

ВЫ имеете виду нажатии? Если да то точно не знаю, там все очень рандомно так поймать трудно, но я попробую проверить.

24-05-2015 23:07:59
Удалось проверить, тег нажатии работает)

Hamzat
запишите для начала имакро-код, который работает, т.е. находит нужный вам элемент, убедитесь - что работает, после этого вставляйте в js, иначе - получается, вы пытаетесь поймать что-то абстрактное, не представляя - что ловить, естественно в таком варианте, вам вряд ли что-то удастся..

InfSub пишет

все нормально работает на портативной мозилле с собственным профилем, без всяких зависимостей и приватных окон2 портативных мозиллы - 2 профиля, 5 - соответственно, 5 профилейДобавлено Сегодня 21:35:11в FAQ, есть видео по работе с профилями, будьте так любезны, не поленитесь посмотреть...

Ставил портативную Мозиллу, для выполнения макросов и вот что заметил, что если на обычной зайти к примеру в Яндекс почту, а на портативной обновить страницу находящейся на Яндексе, то почему-то портативная оказывается авторизованной в этой самой почте.

А теперь представьте, мне нужно один и тот же макрос выполнить в 2 потока с параметром CLEAR для регистраций на сайте, синхронно они работать не будут. В итоге я ни на одном из браузеров не смогу зарегистрироваться.
А всё по тому, что они используют общее место в реестре компьютера.
Я для многопоточности использования аймакроса использую виртуальную машину с двумя установленными Windows7 и Мозиллами. Конечно это нагружает видеокарту и не совсем удобно в использовании, а было бы проще запустить несколько браузеров на основном компьютере и в каждом свой установить независимый аймакрос.
И если вы для меня сделаете открытие, я буду очень благодарен. Где мне найти такие портативные версии, которые не использовали бы общий реестр, а находились бы каждый в своей папке и никуда бы не сувались из неё. :D

Даниил955447112
потому что вы используете один и тот же профиль, повторюсь - посмотрите видео, там все разжевано
либо последуйте совету PRESIDENT

24-05-2015 23:33:06
для портабл версий, нужно в папку с мозиллой положить файл FirefoxPortable.ini со следующим содержанием:

FirefoxPortable.ini

Выделить код

Код:

[FirefoxPortable]
User=Profile
AllowMultipleInstances=true
ThunderbirdAssociate=true
DisableSplashScreen=false
SplashScreenName=

По поводу двух потоков на мозиле:
Встречал ситуации когда у человека на компьютере прокопировал папки портативных версий мозил и они всеравно продолжали работать как один браузер (один профиль) , за полтора года - встречал 5-6 таких компьютеров --- как решить проблему не знаю так как не работал на этих компьютерах.
Вообще работал из под: VPS win server 2007 (2 - разных сервера );  VPS win server 2012 ; win 7 starter 32 bit; win 7 full 64 bit; win 7 full 84 bit;


Короче везде все нормально работало как я показал на видео - решения проблемы профиля думаю в интернете есть (даже программы есть которые за профили отвечают нужно не лениться, а искать)

Уважаемые, кто разбирается с экранированием кавычек и может указать на недочеты?

Есть простенький скрипт, который берет текст с вк, обрабатывает регуляркой и вставляет на другом сайте. Работает до тех пор. пока в не найдет текст с кавычками.
Сижу и ломаю голову где прокол с экранированием. Пробовал менять и в макросе и в js, все равно не работает

скрытый текст

Выделить код

Код:

var s_n ='\n'    
var a= content.document.getElementById('wl_post_body_wrap')
    b = a.getElementsByClassName('wall_post_text')[0].innerHTML    
    b.replace(/<br>/g, '\\n')    
    c = '\"'+b+'\"'
    
var macro=" "
+'TAB T=2'+ s_n 
+'TAG POS=1 TYPE=A ATTR=class:add' + s_n 
+'TAG POS=1 TYPE=TEXTAREA ATTR=NAME:msg CONTENT='+c+ s_n
+'TAB T=1'
iimPlayCode(macro)

InfSub пишет

Hamzat
запишите для начала имакро-код, который работает, т.е. находит нужный вам элемент, убедитесь - что работает, после этого вставляйте в js, иначе - получается, вы пытаетесь поймать что-то абстрактное, не представляя - что ловить, естественно в таком варианте, вам вряд ли что-то удастся..

Я записал код, в iim нажатии на кнопку работает! В js же я хочу как уже сказал мониторить сайт на эту кнопку если, как только выйдет нажать на него. Но js который мне дал "PRESIDENT" выдает ошибку. Естественно тег кнопки, я вставил(повторюсь он рабочий).

Hamzat
убери таймоут, а то там ноль кнопка не успевает нажаться

так

Выделить код

Код:

while(true){
if(iimPlayCode('TAG POS ... тег кнопки')>0) break;
  iimPlayCode('WAIT SECONDS=3');}


Помимо кнопки появляется ещё какая нибудь другая не кликабельная надпись ?
Лучше так сделать

Выделить код

Код:

while(true){  // <---бесконечный цикл
f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS ... тег какай нибудь не кликабельнoй надпись');if(f>0){ // <--- ищем надпись
  iimPlayCode('TAG POS ... тег кнопки ');  //<--- Сам клик по кнопке
  break;  // <--- Выход из бесконечного цикла
  }
  iimPlayCode('WAIT SECONDS=3');}


TetraSky
Попробуй вначале земенять ковычки на какой нить другой знак, на дональд ($)например.
А потом в конце когда уже текст вставляешь CONTENT='+c  обратная замена
скрытый текст

Выделить код

Код:

b.replace(/<br>/g, '\\n').replace(/\"/g, '$').replace(/\'/g, '$')   
    c = '\"'+b+'\"'
    ... CONTENT='+c.replace(/\$/g, '\"')

TetraSky пишет

Есть простенький скрипт, который берет текст с вк, обрабатывает регуляркой и вставляет на другом сайте. Работает до тех пор. пока в не найдет текст с кавычками.
Сижу и ломаю голову где прокол с экранированием. Пробовал менять и в макросе и в js, все равно не работает

скрытый текст

Выделить код

Код:

c='\"'+b.replace(/<br>/gi, '\\n').replace(/"/g, '\\"')+'\"';


25-05-2015 20:25:56

Hamzat пишет

Но js который мне дал "PRESIDENT" выдает ошибку.

какую ошибку, какой сайт, кнопка появляется сама или нужно обновлять страницу?

какую ошибку, какой сайт, кнопка появляется сама или нужно обновлять страницу?

Ошибка

скрытый текст

Выделить код

Код:

RuntimeError: element SPAN specified by TXT:BTC<SP>+<SP>Doge<SP>+<SP>LTC was not found, line: 2 (Error code: -921)


Сайт
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Обновлять не нужно.

Зависает макрос при поиске текста на странице в тот момент, когда текста не было, а в момент исполнения подгрузился.
Что делать? Пропуск ошибок включен. :(
Часть кода:

скрытый текст

Выделить код

Код:

*
* часть кода удалена
*
*
macroStart +="SET !ERRORIGNORE YES" + "\n"; 
macroStart +="SET !TIMEOUT_TAG 1" + "\n";
macroStart +="SET !TIMEOUT_STEP 1" + "\n";
macroStart +="SET !TIMEOUT_PAGE 30" + "\n";
macroStart +="SET !REPLAYSPEED FAST" + "\n";
macroStart +="SET !TIMEOUT_MACRO 150" + "\n";
*
*
*
var i=0;
var n=prompt("Колличество повторов",5)
for (k = 0; k < n; k++)
{
for (i=1; i <= n; i++)
{
p9=iimPlay('CODE:SEARCH SOURCE=TXT:"You will get 9 points"');
p8=iimPlay('CODE:SEARCH SOURCE=TXT:"You will get 8 points"');
p2=iimPlay('CODE:SEARCH SOURCE=TXT:"No items in this network for now"');
if(p9>0||p8>0){
    iimPlay(macroStart,25)
    iimDisplay("Current loop is: "+i)
    iimDisplay("Refreshing the page")
    iimDisplay("New Page")
    break;
    }
    else if(p2>0){
    iimPlay('CODE:SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*(3-2) + 2); randomNumber;")\nREFRESH');  // <--- жмём кнопку
    }
    else iimPlay('CODE:SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*(3-2) + 2); randomNumber;")\nTAG POS=1 TYPE=DIV ATTR=CLASS:skip_button_single\nWAIT SECONDS={{!VAR1}}');  // <--- жмём кнопку
}}

Hamzat
Надеюсь вначале догадался поставить команды, продолжать при ошибках
вот это прекрасно работает, в чём у тебя проблема не знаю:|

скрытый текст

Выделить код

Код:

iimPlay('CODE:SET !ERRORIGNORE YES\nSET !ERRORCONTINUE YES'); 
  while(true){ 
  f=iimPlay('CODE:TAG POS=1 TYPE=SPAN ATTR=TXT:BTC*DOGE*LTC');if(f>0)break;}


sotg
Вот это всё извращение убери

Выделить код

Код:

macroStart +="SET !ERRORIGNORE YES" + "\n"; 
macroStart +="SET !TIMEOUT_TAG 1" + "\n";
macroStart +="SET !TIMEOUT_STEP 1" + "\n";
macroStart +="SET !TIMEOUT_PAGE 30" + "\n";
macroStart +="SET !REPLAYSPEED FAST" + "\n";
macroStart +="SET !TIMEOUT_MACRO 150" + "\n";


оставь так

Выделить код

Код:

var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n';
var n=prompt("Колличество повторов",5)
for (k = 0; k < n; k++){
for (i=1; i <= n; i++){
iimDisplay("Current loop is: "+i)
var sek=Math.floor(Math.random()*(3-2) + 2);
      if(iimPlay('CODE:'+t0+'SEARCH SOURCE=TXT:"You will get*points"')>0){ break;}
 else if(iimPlay('CODE:'+t0+'SEARCH SOURCE=TXT:"No items in this network for now"')>0){ 
         iimDisplay("Обновляем страницу ");
         iimPlay('CODE:SET !TIMEOUT 30\nREFRESH');}  
 else    iimPlay('CODE:'+t3+'TAG POS=1 TYPE=DIV ATTR=CLASS:skip_button_single');
         iimPlay('CODE:WAIT SECONDS='+sek);}}

PRESIDENT пишет

Надеюсь вначале догадался поставить команды, продолжать при ошибках

SET !ERRORCONTINUE YES - в текущей версии имакроса, нет такой команды
каждый макрос, запущенный через iimPlay()/iimPlayCode() - отдельный скрипт, параметры между которыми не передаются, т.е.:

Выделить код

Код:

iimPlay('CODE:SET !ERRORIGNORE YES')

выполненный отдельно от:

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=SPAN ATTR=TXT:BTC*DOGE*LTC');

ни на что не влияет

26-05-2015 16:57:24

HellishFire пишет

Оно сохраняет все в кучу и Логин и пароль. А нужно как-то сделать, чтобы можно, к примеру, логин в Excel в поле B1, а пароль в B7

Выделить код

Код:

SET !EXTRACT "данные, помещаемые в первую ячейку"[EXTRACT]"данные, для второй ячейки"[EXTRACT][EXTRACT][EXTRACT][EXTRACT][EXTRACT]"7 ячейка"

Здравствуйте.Почему когда запускаю два js то один останавливается ??

lsalex144
используйте разные профили мозиллы, 2 и более js - одновременно работать не будут, один из них, будет ждать завершения другого

lsalex144
Потому что у тебя 2 профиля мазилы в одной и той же папке находятся и все данные у них общие.
Обсуждалось на предыдущей странице.

Упс InfSub опередил:)

ВЫШЕ пишет

Вот с ОДНОКЛАССНИКАМИ ТАК НЕ КАНАЕТ

я 25 профилей запускал и все работало
может я ошибаюсь: но Вы наверно путаете понятия "Новое окно" и "новая вкладка" - насколько я знаю , аймакрос с новыми окнами не работал - может чето в новых версиях поменялось!

Здравствуйте. Искал решение но не нашел. Подскажите пожалуйста. Ситуация: есть 10 сайтов. Нужно: скопировать их в файл *.тхт и закрыть их. Потом открыть рандомно 3 сайта из файла. Заранее спасибо

dimka457
Скопировать УРЛы  ?

Вот примеры команд

Выделить код

Код:

iimPlay("SET !EXTRACTADD {{!URLCURRENT}}");  //<--- Скопировать урл
 url1=iimGetLastExtract(); //<--- Запомнить его в переменную урл1
 iimPlay("CODE:SET !EXTRACT "+url1+"\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt");  //<--- Сохранить в текстовый файл
 iimPlay("CODE:TAB CLOSE"); //<--- Закрыть вкладку

PRESIDENT пишет

dimka457
Скопировать УРЛы  ?

Да

Добрый день!
Подскажите пожалуйста такой вопрос..
к примеру есть код

скрытый текст

Выделить код

Код:

URL GOTO=http://сайт/message/123
TAG POS=1 TYPE=TEXTAREA FORM=NAME:NoFormName ATTR=NAME:text CONTENT=сообщение
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=TYPE:submit&&VALUE:Отправить&&NAME:b1


Нужно что бы значение URL GOTO=http://сайт/message/123 постоянно менялось, например задать диапазон 123-333
Что бы выполнив команду выше, перешел на следующую страницу и сделал тоже самое и т.д.

Как задать диапазон ?

HellishFire
Блин ну посмотри в скрипте что мы с тобой делали.
Нафига ты здесь 2 раза цикл задаёшь ?

Lendor

Можно так

Выделить код

Код:

for(a=123; a<=333; a++){  //<--- задаём диапазон 123-333
 iimPlay("CODE:URL GOTO=http://сайт/message/"+a);  //<--- Заходим на сайт, циферки в конце ссылки, как раз и будет меняться
 iimPlay("CODE:TAG POS=1 TYPE=TEXTAREA FORM=NAME:NoFormName ATTR=NAME:text CONTENT=сообщение"); //<---Пишем сообщение 
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=TYPE:submit&&VALUE:Отправить&&NAME:b1");//<---Жмём кнопку
}

PRESIDENT пишет

Lendor

Можно так

Выделить код

Код:

for(a=123; a<=333; a++){  //<--- задаём диапазон 123-333
 iimPlay("CODE:URL GOTO=http://сайт/message/"+a);  //<--- Заходим на сайт, циферки в конце ссылки, как раз и будет меняться
 iimPlay("CODE:TAG POS=1 TYPE=TEXTAREA FORM=NAME:NoFormName ATTR=NAME:text CONTENT=сообщение"); //<---Пишем сообщение 
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=TYPE:submit&&VALUE:Отправить&&NAME:b1");//<---Жмём кнопку
}

покажите пожалуйста как полностью будет код выглядеть ?

Lendor
Ну это же твой код, обёрнутый в *.js
и задан диапазон как раз как ты хотел.

Посмотри выше, ещё раз , я чуток откоментировал:)

PRESIDENT пишет

*.js

это я понял :)
но не пойму как в *.js обернуть.. это же я так понял не просто в код аймакроса пихать.

Lendor
Скрипты в имакросе, есть простоо команды имакроса, с расширением *.iim
и есть яваскрипт, с расширением *.js
вот в такой js скрипт это и засунь и запусти.:)

Тыцни правой кнопкой мыши по #Current.iim и переименуй его, допустим в test.js.
Внизу где все кнопки имакроса, нажми обновить список и у тебя в списке появится этот самый test.js, в него уже и засунь этот скрипт, ну и воспроизвести:)

PRESIDENT
Огромное спасибо, теперь разобрался :)

Как сделать 2 условия?
Если одно из них верное, то выполняется макрос сохранение.iim, а если оба не верные,
то воспроизводится макрос назад.iim

А у меня получается так:
Если одно не верное условие, то воспроизводится макрос назад.iim

скрытый текст

Выделить код

Код:

h= iimPlayCode("SET !TIMEOUT_PAGE 2 \n TAG POS=1 TYPE=B ATTR=TXT:заходил*")
h= iimPlayCode("SET !TIMEOUT_PAGE 2 \n TAG POS=1 TYPE=B ATTR=TXT:online*")
if (h>0 ){
iimPlay("сохранение.iim",60);
}

if (h<0 ){
iimPlay("назад.iim",60);
}

Алим пишет

у меня получается так:
Если одно не верное условие, то воспроизводится макрос назад.iim

судя по коду, у тебя вообще работает одно условие: "если онлайн", а второе "для мебели"

Алим пишет

Как сделать 2 условия?
Если одно из них верное, то выполняется макрос сохранение.iim, а если оба не верные,
то воспроизводится макрос назад.iim

например, так:

Выделить код

Код:

var h1=iimPlayCode("SET !TIMEOUT_PAGE 2 \n TAG POS=1 TYPE=B ATTR=TXT:заходил*")
var h2=iimPlayCode("SET !TIMEOUT_PAGE 2 \n TAG POS=1 TYPE=B ATTR=TXT:online*")
if (h1>0 || h2>0){
    iimPlay("сохранение.iim",60);
}else{
    iimPlay("назад.iim",60);
}

Спасибо, InfSub просветил!)

Сохраняется в текстовый документ в 2 столбика.
Как сделать, чтобы 2 извлекаемые ссылки, сохранялись в 1 столбик?

Пример:
ссылка,ссылка
ссылка,ссылка
и т.д.

Как сделать, так?
ссылка
ссылка
и т.д.

скрытый текст

Выделить код

Код:

TAG POS={{!VAR0}} TYPE=A ATTR=href:ссылка EXTRACT=href
TAG POS={{!VAR0}} TYPE=A ATTR=href:ссылка EXTRACT=href
SAVEAS TYPE=EXTRACT FOLDER=* FILE=файл.txt

Алим пишет

Как сделать, чтобы 2 извлекаемые ссылки, сохранялись в 1 столбик?

скрытый текст

Выделить код

Код:

TAG POS={{!VAR0}} TYPE=A ATTR=href:ссылка EXTRACT=href
SAVEAS TYPE=EXTRACT FOLDER=* FILE=файл.txt
TAG POS={{!VAR0}} TYPE=A ATTR=href:ссылка EXTRACT=href
SAVEAS TYPE=EXTRACT FOLDER=* FILE=файл.txt

Добрый день, коллеги! Нужна ваша помощь.

Я используя iMacros для тестирования веб интерфейсов нашего сервиса. Структура каждого теста такова: есть один управляющий js файл, в котором содержатся команды для запуска определенных файлов iim в нужной последовательности и в нем же проходят необходимые проверки содержимого страницы. Например вот:

скрытый текст

Выделить код

Код:

iimPlay("Tests_future/Script_11/test_1.iim") //Выполняет логин
iimPlay("Tests_future/Script_11/test_2.iim") //Переходит к созданию контрагента ИП и вводит номер счета и БИК, ждет 30 сек
var link = window.document.getElementById('bankReqAccept');
if(link.innerHTML == "ВТБ 24 (ЗАО)"){ //Проверяем, что вернулись данные о банке
        alert('Test complete!');
    }    
//и так далее, пока не проверит все необходимые элементы


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

Jawdet
Смотри сколько вариантов у тебя получается.
Если не так много 5-10, то и сделай пару управляющих js-ов.
из которых запускай нужные iim-ы.

скрытый текст

Выделить код

Код:

iimPlay("1.iim")
iimPlay("2.iim")


А ещё лучше вообще избавься от iim-ов и делай всё на проверках условия true/false
скрытый текст

Выделить код

Код:

if(условие верно)
{
нужный набор команд
}
else if( другое условие верно)
{
тут другой набор команд
}
else 
{
вообще ни одно из условий не верно
то третий набор команд, если нужно
}

PRESIDENT пишет

А ещё лучше вообще избавься от iim-ов и делай всё на проверках условия true/false

скрытый текст

Выделить код

Код:

if(условие верно)
{
нужный набор команд
}
else if( другое условие верно)
{
тут другой набор команд
}
else 
{
вообще ни одно из условий не верно
то третий набор команд, если нужно
}

для этого есть оператор switch(...) case ...

PRESIDENT пишет

Jawdet
Смотри сколько вариантов у тебя получается.
Если не так много 5-10, то и сделай пару управляющих js-ов.
из которых запускай нужные iim-ы.

скрытый текст

Выделить код

Код:

iimPlay("1.iim")
iimPlay("2.iim")


А ещё лучше вообще избавься от iim-ов и делай всё на проверках условия true/false
скрытый текст

Выделить код

Код:

if(условие верно)
{
нужный набор команд
}
else if( другое условие верно)
{
тут другой набор команд
}
else 
{
вообще ни одно из условий не верно
то третий набор команд, если нужно
}

Не совсем правильно меня поняли. У меня тесты не просто набор iim файлов, а набор iim файлов в связке с js скриптом. Вообще каждый тест это как бы набор шагов, записаных в iim и js, в котором прописан порядок запуска iim файлов и нужные проверки. И запускаются тесты посредством запуска этого js файла. Задача в том, что мне нужно как-то запускать несколько таких тестов, то есть иметь что-то, что "дергало" бы именно Jsники каждого теста, а не iimки. А уже они в свою очередь запускали бы iim файлы, которые прописаны в коде.
Можно ли как-то в iMacros создать js файл, который бы делал что-то вроде iimPlay только не для файла макроса, а для js скрипта?

Jawdet
Тебе нужно запуск вспомогательных js файлов из основного управляющего js-са  ?
Посмотри в факе:
Как запустить один скрипт из другого

Jawdet
в данном случае, более корректно, скорее всего будет работать, описанный изначально PRESIDENT'ом вариант, в виде объединения всех скриптов в один и за счет условного оператора, выбирать нужный "блок" скриптов (разве что, как уже описал выше, оператором ветвления, должен быть switch(), а не if()), иначе, при запуске js из js, вы можете получить несколько нестабильный вариант работы
как элемент выбора нужного теста, можно использовать диалоговое окно prompt()
либо, аналогичным образом можно использовать тот же *.bat-файл

Можно ли в управляющем скрипте в переменную загнать текст из буфера обмена?

В строке кода:

iimPlay("d:\PROGRAMS\Internet\iMacros\ManyFuns\fun\proba.iim",60);

получаю следующую ошибку:
Macro d:PROGRAMSInternetiMacrosManyFunsfunproba.iim not found (Error code: 930)

Между fun и proba стоит нечитаемый символ (кракозябр). Когда набирал этот текст - он был, а здесь его нет.
Набирал путь и относительным - тоже была ошибка. Правда другая.
В чем ошибка?
P.S.
В папке    d:\PROGRAMS\Internet\iMacros\ManyFuns\fun\ лежат файлы .iim
В папке    d:\PROGRAMS\Internet\iMacros\ManyFuns\ лежат файлы .js
Директория d:\PROGRAMS\Internet\iMacros указана в настройках iMacros как Папка макросов

hubble
попробуй экранировать. вместо "\" пиши "\\"

mmmaks2004 пишет

Можно ли в управляющем скрипте в переменную загнать текст из буфера обмена?

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT {{!CLIPBOARD}}');
alert(iimGetLastExtract());

hubble пишет

Директория d:\PROGRAMS\Internet\iMacros указана в настройках iMacros как Папка макросов

если файлы расположены в директории скриптов имакроса, то как уже писалось в FAQ, скрипт можно вызвать через относительный путь:

скрытый текст

Выделить код

Код:

iimPlay("ManyFuns/fun/proba.iim");


либо, как уже написал spy686, удваивать обратный слэш

spy686 пишет

hubbleпопробуй экранировать. вместо "\" пиши "\\"

Забыл указать, что так тоже пробовал.
Но сейчас перепроверил.
Вот, что получаю:
Macro proba.iim not found (Error code: 930).

Файл находится на месте. На всякий случай переписал имя файла. Подумал - может скрылся символ-кириллица в названии. ПОМОГЛО!!!
Может быть эта мелочь кому-то поможет, поэтому отписался.

to spy686, InfSub: Спасибо.

Дописываю в догонку.

InfSub пишет

если файлы расположены в директории скриптов имакроса, то как уже писалось в FAQ, скрипт можно вызвать через относительный путь:

После того, как переписал путь как относительный (слэши прямые - не ошибся), получил такую ошибку:

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 196"  data: no], line 25 (Error code: -991)

Но та ошибка у меня была с самого начала (так как сначала у меня был указан именно относительный путь).

hubble пишет

После того, как переписал путь как относительный (слэши прямые - не ошибся), получил такую ошибку:

В настройках имакроса укажи путь к списку файлов/макросов и если нужно пути к датасоурсе и довнлоадс.

PRESIDENT пишет

В настройках имакроса укажи путь к списку файлов/макросов и если нужно пути к датасоурсе и довнлоадс.

А я выше написал (пост №4082), что папка макросов указана.
Плюс, конечно,
Папка данных: D:\PROGRAMS\Internet\iMacros\Datasources и
Папка закачек: D:\Download.

Но это все было прописано сначала. Может что-то еще имеете в виду?

Может есть пробелы, имакрос тоже с ними не дружит, надо на <sp> репласить.
хотя InfSub и утверждал как то, что ковычки помогают, но ни фига, не нравится имакросу пробелы и левые знаки/литеры, особенно в путях.
Если не помогает, тогда не заморачивайся, указывай полный путь:)

PRESIDENT пишет

хотя InfSub и утверждал как то

InfSub утверждал как-то про кавычки, при записи данных в переменные имакроса, а не путей

31-05-2015 00:18:46
...хотя в путях, я тоже, не помню, чтобы где-либо использовалось <sp>

31-05-2015 00:25:28

hubble пишет

После того, как переписал путь как относительный (слэши прямые - не ошибся), получил такую ошибку:

[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 196"  data: no], line 25 (Error code: -991)

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

InfSub
Звиняюсь, значит я недопонял/подзабыл.smile_10.gif
Я пользуюсь старой портабельной мазилкой и имакрос старенький, но самый стабильный.
И вот он не любит ни пробелов ни левых закорючек.
Поэтому путь прописываю всегда сразу в самом начале скрипта.

скрытый текст

Выделить код

Код:

var Path="Z:\\...\\";
 Path=Path.replace(/ /gi,"<SP>");

hubble
как вариант, корректной работы имакроса, могу предложить Вам, создать папку 11111 создать 2 файла, к примеру:

12345.iim

Выделить код

Код:

prompt "it\'s work"


и
12345.js

Выделить код

Код:

iimPlay('11111/12345.iim')


и проверить, появляется ли ошибка или все работает корректно
если появляется, думаю, стоит переустановить iMacros, либо полностью сбросить FF и настроить "с нуля"

31-05-2015 00:36:34

PRESIDENT пишет

Path=Path.replace(/ /gi,"<SP>");

зачем модификатор i в данном рег. выражении?

InfSub пишет

зачем модификатор i в данном рег. выражении

случайно затесался smile_10.gif

не в тему
Вчерась скачал новую мазилку, естественно портабелку. Установил имакрос , АБП все дела.
Смотрю в диспетчере задач, она, эта мазилка, на холостом ходу, на абоут конфиг , отжирает больше, чем 5 работающих старых добрых 3.6 мазилок. Вот вам и новизна.
Имакрос, как пошли глюки с 7-й версии при работе с функциями, циклами в вайле, так и осталось.
Из нового имакроса мне нужен в примципе только, сет таймоут степ, ему значение ноль можна придать. В старой сет таймоут меньше единицы нельзя.
И скрен определённой области. Хотя что интересно в старой версии можна заскринить всю страницу, а область нельзя(или я чёт не то делаю).
В общем ковыряю сам макрос плеер, пытаюсь из 2-х одно слепить.

PRESIDENT пишет

не в тему
Вчерась скачал новую мазилку, естественно портабелку. Установил имакрос , АБП все дела.
Смотрю в диспетчере задач, она, эта мазилка, на холостом ходу, на абоут конфиг , отжирает больше, чем 5 работающих старых добрых 3.6 мазилок. Вот вам и новизна.
Имакрос, как пошли глюки с 7-й версии при работе с функциями, циклами в вайле, так и осталось.
Из нового имакроса мне нужен в примципе только, сет таймоут степ, ему значение ноль можна придать. В старой сет таймоут меньше единицы нельзя.
И скрен определённой области. Хотя что интересно в старой версии можна заскринить всю страницу, а область нельзя(или я чёт не то делаю).
В общем ковыряю сам макрос плеер, пытаюсь из 2-х одно слепить.

Некоторые знают что я пользуюсь pale moon - так вот установил себе Version: 25.1.0 (x86) portable  и iMacros 8.6.0 -- скрины областей делает , js работает , даже поддерживает некоторые нужные дополнения для мозила ---  стопорились 25 штук одновременно только когда вносил изменения в общие настройки компьютера, а если запустить и не трогать комп то все работает как часики и таймаут шага на 0 тоже работает + не жрет оперативу, --- после 3-х суток непрерывной работы на 1 браузер уходит 350мегабайт , при старте от50до100 .


Большая проблема , что на 64 разрядной системе , напрочь отказывается стабильно работать, браузер "падает" примерно через 30-60 минут - причем специально устанавливал версию 64 разрядную -- хотя где-то читал что   pale moon специально разработан(на основе мозила) и подогнан под слабые windows

kolshix пишет

хотя где-то читал что   pale moon специально разработан(на основе мозила) и подогнан под слабые windows

все верно, слабые машины, априори, не могут иметь 64 битную систему
З.Ы. я не беру в пример эксперименты, где на 1 пентиум накатывают вин 7 со всеми вытикающими...

Есть страница, на которой в некоторых ситуациях есть кнопка (class="btn"), или ее нет. После нажатия на ней, появляется другая кнопка (id="checkbtn"). В случае, когда первой кнопки нет, а есть только вторая, iMacros выдает ошибку: TypeError: window.document.getElementsByClassName(...)[0] is undefined, line 15 (Error code: -991)

скрытый текст

Выделить код

Код:

...
window.document.getElementsByClassName('btn')[0].submit();    
iimPlayCode("WAIT SECONDS=6");
window.document.getElementById('checkbtn').click();
...


Следующие строки не помогают:
скрытый текст

Выделить код

Код:

macro = "SET !ERRORIGNORE YES" + "\n"; 
macro += "SET !ERRORCONTINUE YES" + "\n"; 
iimPlayCode(macro);


Как можно справиться с этой ошибкой?

hubble
какое отношение SET !ERRORIGNORE YES имеет к js?
в сотый раз повторяю, нет такой команды: SET !ERRORCONTINUE YES

hubble пишет

Как можно справиться с этой ошибкой?

скрытый текст

Выделить код

Код:

if(window.document.getElementsByClassName('btn')[0]){
     window.document.getElementsByClassName('btn')[0].submit();    
     iimPlayCode("WAIT SECONDS=6");
}

to InfSub:
Большое спасибо за помощь, тем более за оперативную.
Форум читаю, но честно говоря, уйдет очень много времени, чтобы перечитать от "корки" до "корки". Поэтому стараюсь пользоваться поиском. В этот раз все вопросы были мимо.

InfSub пишет

в сотый раз повторяю, ...

Еще раз отдельное спасибо за терпеливость.

я так понял данная команда осуществляет поиск нужного элемента, а там где отмечено жирным , нужно устанавливать атрибуты :?
window.document.getElementsByClassName('*')

kolshix
думаю, Вам стоит почитать FAQ по DOM-модели и взаимодействию js с web-страницей

InfSub пишет

kolshix
думаю, Вам стоит почитать FAQ по DOM-модели и взаимодействию js с web-страницей

Я так понял это "НА ДОЛГОЕ ИЗУЧЕНИЕ" -- но уже увидел полезное  -  что c js  можно чистить куки -- не знаю как работает , но читать очень лень , будет настроение , почитаю , СПАСИБО за информацию!

Задам по ходу еще один вопрос.
Как можно вызвать js из js. И это, находясь в iMacros.
Например, если я пишу сейчас строки в js и чтобы вызвать, ну, допустим, подпрограмму в синтаксисе iMacros, то напишу в коде js напишу iimPlayCode(...) или iimPlay(...). А как вызвать подпрограмму js из js?

hubble
загляните в FAQ по iMacros на нашем форуме - там хоть и не так много информации, но основное, в том числе и это - описано

03-06-2015 00:54:18

kolshix пишет

Я так понял это "НА ДОЛГОЕ ИЗУЧЕНИЕ"

js используется на многих web-страницах, методы его работы "изнутри" web-страницы, так же применимы при работе из iMacros'a (хотя и не все и иногда с костылями)

InfSub
О! Точно! Я все думал, что где-то это видел. Но не мог вспомнить.
Да, я это видел именно здесь.
Спасибо за наводку.

InfSub пишет

в сотый раз повторяю, ...

Немного обновлен раздел FAQ по iMacros.
Добавлен подраздел модификаторы.
Просьба всех ознакомиться!

03-06-2015 03:32:08
Естественно - добавлено не все, а только самое основное, позже, добавлю описание еще нескольких модификаторов

InfSub пишет

hubble какое отношение SET !ERRORIGNORE YES имеет к js?

А если файл комбинированный (в нем есть и команды iMacros и js)?

03-06-2015 12:06:24
В следующем коде (в файле js + iMacros):

скрытый текст

Выделить код

Код:

1    var macro;
2    ...

10    ...
11    macro = "code code code"; 
12    macro += "code code code"; 
13    macro += "code code code"; 
14    iimPlayCode(macro);    
15    // комментарий
16    macro = "ADD !EXTRACT {{!COL1}}" + "\n"; 
17    macro += "ADD !EXTRACT {{!COL2}}" + "\n"; 
18    macro += "ADD !EXTRACT {{!COL3}}" + "\n"; 
19    macro += "ADD !EXTRACT {{!COL4}}" + "\n"; 
20    iimPlayCode(macro);
21    
22    var res = iimGetLastExract(1);
23    var col2 = iimGetLastExract(2);
24    var col3 = iimGetLastExract(3);
25    var col4 = iimGetLastExract(4);
25    ...


на строке 20 вываливается первая ошибка (в конце поста). При этом программа не останавливается.
Затем на строке 22 получаю вторую ошибку с остановкой.

TypeError: this.dataSource[(line - 1)] is undefined, line 1 (Error code: -1001)
ReferenceError: iimGetLastExract is not defined, line 22 (Error code: -991)

hubble пишет

А если файл комбинированный (в нем есть и команды iMacros и js)?

команды iMacros ни как не влияют на выполнение js-кода

03-06-2015 12:21:43

hubble пишет

iimGetLastExract

может быть будете внимательней и банальные опечатки при вызове функций будете исправлять самостоятельно?

hubble пишет

скрытый текст

Выделить код

Код:

macro =  "ADD !EXTRACT {{!COL1}}" + "\n"; 
 macro += "ADD !EXTRACT {{!COL2}}" + "\n"; 
 macro += "ADD !EXTRACT {{!COL3}}" + "\n"; 
 macro += "ADD !EXTRACT {{!COL4}}" + "\n"; 
 iimPlayCode(macro);

Я бы посоветовал, перенос строки вначале ставить.

скрытый текст

Выделить код

Код:

...
 macro += "\nADD !EXTRACT {{!COL2}}"; 
 macro += "\nADD !EXTRACT {{!COL3}}";


Или вообще такие короткие команды в одну собрать.
скрытый текст

Выделить код

Код:

macro += "ADD !EXTRACT {{!COL1}}\nADD !EXTRACT {{!COL2}}\nADD !EXTRACT {{!COL3}}\nADD !EXTRACT {{!COL4}}";


Код короче  и красивше будет.
И в конце перенос строки уже не нужен.
скрытый текст

Выделить код

Код:

...
macro += "ADD !EXTRACT {{!COL4}}" + "\n";   // <--- Тут [b]\n[/b] уже не нужно
iimPlayCode(macro);

скрытый текст

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=H3 ATTR=TXT:Комментарии*\nFRAME NAME="I*"\nEVENT TYPE=CLICK SELECTOR="#widget_bounds>DIV:nth-of-type(2)>DIV>DIV>DIV>SPAN" BUTTON=0\nEVENTS TYPE=KEYPRESS SELECTOR="#widget_bounds>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>TEXTAREA" CHARS="Привет-МИР!!!"\nWAIT SECONDS=1")


Выдает ошибку
SyntaxError: missing ) after argument list, line NaN (Error code: -991)

Anton22

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=H3 ATTR=TXT:Комментарии*\nFRAME NAME="I*"\nEVENT TYPE=CLICK SELECTOR="#widget_bounds>DIV:nth-of-type(2)>DIV>DIV>DIV>SPAN" BUTTON=0\nEVENTS TYPE=KEYPRESS SELECTOR="#widget_bounds>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>TEXTAREA" CHARS="Привет-МИР!!!"\nWAIT SECONDS=1')


03-06-2015 15:12:25

PRESIDENT пишет

И в конце перенос строки уже не нужен.

зависит от того, что будет дальше с переменной, я считаю, все же правильней, в конце ставить перенос строки, дабы не возникло ситуации когда соединяются 2 или более макроса, например:

first_macro + second_macro
и получается что код, в месте соединения, находится на одной строке, т.е. всегда придется помнить что так:
first_macro + second_macro
сделать нельзя, а нужно так:
first_macro +"\n"+ second_macro
... зачем?

InfSub пишет

может быть будете внимательней и банальные опечатки при вызове функций будете исправлять самостоятельно?

Прошу прощения - мой косяк. Где-то допустил ошибку. Затем был копипаст.

Но все равно проблема осталась. Много чего перепробовал, но так и не исправил ошибку. Мои познания в iMacros в зародышевом состоянии. Да и js недавно начал изучать. Поэтому, заранее прошу прощения за простые оплошности.
Вот простой код. И не могу понять, почему ошибки.

скрытый текст

Выделить код

Код:

1        var macro;
2
3    iimPlayCode("SET !DATASOURCE test.csv"); 
4    iimPlayCode("SET !DATASOURCE_LINE 1");
5    
6    iimPlayCode("SET !EXTRACT {{!COL2}}");
7    
8    var serv = iimGetExtract(1);
9
10    if (serv == 1) {
11        iimSet('SERVICE', 'http://site1.ru');
12    } 
13    else if (serv == 2) {
14        iimSet('SERVICE', 'http://site2.ru');
15    }
16    else {
17        iimSet('SERVICE', 'http://site3.ru');
18    }
19
20    iimPlayCode("URL GOTO={{SERVICE}}");


test.csv состоит из одной строки: 1,2,3,4

test.csv               - d:\PROGRAMS\Internet\iMacros\Datasources\
#Current.js (код выше) - d:\PROGRAMS\Internet\iMacros\

Сначала ошибка в строке 4: RuntimeError: Invalid DATASOURCE_LINE value: 1, line 1 (Error code: -951)
Почитал про ошибку. Там написано, что DATASOURCE_LINE превышает фактическое количество строк в файле источника данных. Не понял.
Следом вторая ошибка: TypeError: this.dataSource[(line - 1)] is undefined, line 1 (Error code: -1001)

Использую FF 38.0.5

hubble

Вот так попробуй

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL2}}");  
 var serv = iimGetExtract();

скрытый текст

Выделить код

Код:

var fraza01 = ['1 1 1","2 2 2","3 3 3'];
f1=fraza01[Math.floor(Math.random()*fraza01.length)]

;


Что-то оно у меня всего 1 1 1

PRESIDENT пишет

Вот так попробуй

скрытый текст

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL2}}");   var serv = iimGetExtract();

Спасибо. Работает.

Anton22 пишет

var fraza01 = ['1 1 1","2 2 2","3 3 3'];

var fraza01 = ["1 1 1","2 2 2","3 3 3"]; <--- С ковычками намудрил

PRESIDENT пишет

Вот так попробуй

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL2}}");   var serv = iimGetExtract();

Можно объяснить - чтобы потом уже не задавать вопросы на эту тему - в каких случаях надо писать в одну строку, а когда применять конкатенацию?

Когда пишу так, то снова ошибка во второй строке: TypeError: this.dataSource[(line - 1)] is undefined, line 1 (Error code: -1001)

скрытый текст

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\n"); 
    iimPlayCode("SET !EXTRACT {{!COL1}}\nSET !EXTRACT {{!COL2}}\n");
    
    var serv = iimGetExtract(1);

    alert(serv);

Это получается 3 раздельныx кода, между собой не связанных.
А у тебя нужно из test.csv из первой строки извлечь второе значение.

скрытый текст

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv"); 
iimPlayCode("SET !DATASOURCE_LINE 1");
iimPlayCode("SET !EXTRACT {{!COL2}}");


Всё должно быть в одном коде, в одной связке.
Вот такое извращение, ещё пошло бы. Здесь сначала складывается всё в переменную macro и потом этот macro запускается.
скрытый текст

Выделить код

Код:

macro   = "SET !DATASOURCE test.csv"; 
 macro += "\nSET !DATASOURCE_LINE 1"; 
 macro += "\nSET !EXTRACT {{!COL2}}"; 
 iimPlayCode(macro);


Такая же проблема будет при сохранении картинки или данных в файл, тоже желательно всё в одну строку записать.


hubble пишет
Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\n"); 
iimPlayCode("SET !EXTRACT {{!COL1}}\nSET !EXTRACT {{!COL2}}\n");
 var serv = iimGetExtract(1);

Что ты хочешь этим кодом сделать ?
В serv сохранить сразу 2 значения COL1 и COL2  ?

Большое спасибо за развернутый ответ.

PRESIDENT пишет

Что ты хочешь этим кодом сделать ?В serv сохранить сразу 2 значения COL1 и COL2  ?

Нет. Только значение !COL1.
Но, как я теперь думаю, не правильно понимал. Я так понял, что то значение, которое было записано первым в !EXTRACT (по ходу кода), будет выбираться iimGetExtract(1). А то которое второе - iimGetExtract(2) и т.д.

Но даже если во второй строке одна переменная - та же ошибка: TypeError: this.dataSource[(line - 1)] is undefined, line 1 (Error code: -1001). Вроде бы не связанные строки.

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\n"); 
iimPlayCode("SET !EXTRACT {{!COL1}}\n");
 var serv = iimGetExtract(1);
hubble пишет

Я так понял, что то значение, которое было записано первым в !EXTRACT (по ходу кода), будет выбираться iimGetExtract(1). А то которое второе - iimGetExtract(2) и т.д.

выполните этот код без js и посмотрите на результат (на то, что находится в {{!EXTRACT}}) и большая часть вопросов отпадет
SET - устанавливает значение переменной, любой, в том числе и !EXTRACT, при этом перезаписывая имеющееся значение
SET !EXTRACT {{!COL1}} - запишет в {{!EXTRACT}} - значение из {{!COL1}}
SET !EXTRACT {{!COL2}} - запишет в {{!EXTRACT}} - значение из {{!COL2}}, перезаписав предыдущее значение
для того чтобы добавить, а не перезаписать значение, используется ADD

SET !EXTRACT {{!COL1}}
ADD !EXTRACT {{!COL2}}

03-06-2015 18:32:54
hubble
в FAQ есть куча видео по основам имакроса, посмотрите, и 70% вопросов отпадет само собой, так же, есть поиск по теме, который помогает решить еще 10-15% возникающих у новичка вопросов


03-06-2015 18:37:23

hubble пишет

Но даже если во второй строке одна переменная - та же ошибка: TypeError: this.dataSource[(line - 1)] is undefined, line 1 (Error code: -1001). Вроде бы не связанные строки.

скрытый текст

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\n"); 
iimPlayCode("SET !EXTRACT {{!COL1}}\n");
 var serv = iimGetExtract(1);

вам же выше уже написали, при работе с файлами все параметры должны находиться в одном макросе, а не разбиты на несколько:

PRESIDENT пишет

Всё должно быть в одном коде, в одной связке.

каждый вызов iimPlay()/iimPlayCode() - аналогичен вызову отдельного макроса

iimPlayCode("SET !EXTRACT {{!COL1}}\n");

из какого файла вы пытаетесь достать данные и из какой строки, если вы не указали файл и строку, с которой работать (эти данные у вас указаны в другом макросе, взаимосвязи между ними  - нет)

должно быть так:

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}\n");
var serv = iimGetLastExtract();

hubble пишет

iimGetExtract(1) ... iimGetExtract(2) и т.д.

Ты хочешь одной строкой сразу все COL-ы извлечь ?

Попробуй так

Выделить код

Код:

iimPlayCode("SET !DATASOURCE test.csv\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}|{{!COL2}}|{{!COL3}}|{{!COL4}}"); 
all=iimGetLastExtract().split('|'); a1=all[0]; a2=all[1]; a3=all[2]; a4=all[3]; 
alert(a1+'\n'+a2+'\n'+a3+'\n'+a4);


Кстати спасибо модератору (InfSub) за подсказку.:)

PRESIDENT пишет

скрытый текст

Выделить код

Код:

all=iimGetLastExtract().split('|'); a1=all[0]; a2=all[1]; a3=all[2]; a4=all[3]; 
alert(a1+'\n'+a2+'\n'+a3+'\n'+a4);

может я чего-то не допонимаю, но зачем извращаться над кодом добавляя split('|') - да понятно что в дальнейшем , через какойто промежуток кода можно создать переменную и взять все что нужно , но в imacros все давно придумано (хоть и символов больше, но думаю не критично)

скрытый текст

Выделить код

Код:

all=iimGetLastExtract();
a1=iimGetLastExtract(1);
a2=iimGetLastExtract(2);
a3=iimGetLastExtract(3);
либо 
all=iimGetLastExtract();a1=iimGetLastExtract(1);a2=iimGetLastExtract(2);a3=iimGetLastExtract(3);
alert(a1+'\n'+a2+'\n'+a3+'\n'+a4);


по мне , так это только обфускация - ну а так "Дело хозяйское"!

kolshix

экстракт один и в него сложатся все КОЛ-ы {{!COL1}}|{{!COL2}}|{{!COL3}}|{{!COL4}}
специально разделитель "|"сделал, что бы в дальнейшем сплитом извлеченное разделить.
И здесь только в all=iimGetLastExtract() будет вся извлеченная инфа, а

a1=iimGetLastExtract(1); a2=iimGetLastExtract(2); a3=iimGetLastExtract(3);

выдадут undefined  smile_16.gif

Добрый день.
Но у меня возник вопрос.
Есть кусочек скрипта

скрытый текст
FRAME NAME="fXD*"
EVENT TYPE=CLICK SELECTOR="#p1>DIV" BUTTON=0
WAIT SECONDS=0.5
EVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0
WAIT SECONDS=0.2

Мне нужно его повторить 180 раз и чтобы каждый раз в куске "#p1>DIV" увеличивалось на +1 до 180
Вот так:

скрытый текст
FRAME NAME="fXD*"
EVENT TYPE=CLICK SELECTOR="#p1>DIV" BUTTON=0
WAIT SECONDS=0.5
EVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0
WAIT SECONDS=0.2
FRAME NAME="fXD*"
EVENT TYPE=CLICK SELECTOR="#p2>DIV" BUTTON=0
WAIT SECONDS=0.5
EVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0
WAIT SECONDS=0.2
FRAME NAME="fXD*"
EVENT TYPE=CLICK SELECTOR="#p3>DIV" BUTTON=0
WAIT SECONDS=0.5
EVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0
WAIT SECONDS=0.2

Как это можно сделать?

Tungen

*.js

Выделить код

Код:

for (i=1; i<=180; i++){
iimPlayCode('FRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#p'+i+'>DIV" BUTTON=0');
iimPlayCode('WAIT SECONDS=0.5');
iimPlayCode('EVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0');
}

PRESIDENT пишет

скрытый текст
for (i=1; i<=180; i++){
iimPlayCode('FRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#p'+i+'>DIV" BUTTON=0');
iimPlayCode('WAIT SECONDS=0.5');
iimPlayCode('EVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0');
}

Работает после небольшой переделки

скрытый текст
for (i=1; i<=180; i++){
iimPlayCode('SET !TIMEOUT 1');
iimPlayCode('SET !ERRORIGNORE YES');
iimPlayCode('FRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#p'+i+'>DIV" BUTTON=0');
iimPlayCode('WAIT SECONDS=0.5');
iimPlayCode('FRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0');
iimPlayCode('WAIT SECONDS=0.5');
    report="";
    report+="Проход = "+ i + " из " + 180;
    iimDisplay(report);
}

Проблема только в том, что на странице периодически нет кнопки по которой скрипт пытается нажать:
скрытый текст
iimPlayCode('FRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0');

И выскакивает ошибка
скрытый текст
RuntimeError: Element DIV is not visible, line 2 (Error code: -1001)

И он думает на этом нажатии 6 сек. Как это обойти?

Tungen пишет

Как это обойти?

iimPlayCode('SET !TIMEOUT 10\nFRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#prRet>DIV>DIV" BUTTON=0');

удалено, правила, п.2.4

InfSub

Коллеги, нашел сервис и успешно использую его. Называется AudioRecorder. Позволяет записывать звук - клипа или всего того, что вам нужно. При открытии сайта вылезает окно - разрешить доступ к звуковой карте/микрофону - это я нажимаю руками -да, к звуковой карте. iMacros почему-то не работает с этим окном, или я ошибаюсь? А вот дальше, после ручного согласия, уже можно использовать iMacros: щелкнуть по значку микрофона, переключиться на вкладку с музыкой , как отследить окончание музыки не понятно, и сохранить файл на диск.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Собственно, вопрос - можно ли автоматизировать диалог выбора доступных устройств при открытии сайта?

yinfo пишет

можно ли автоматизировать диалог выбора доступных устройств при открытии сайта?

iMacros не взаимодействует с элементами интерфейса браузера
если данная настройка не изменяется через about:config, то повлиять на нее с помощью iMacros - невозможно

Господа форумчане, кто криптой занимается, подкиньте плиз сайтов с капчой от солвемедия
типа этих

Краны с солвемедия
bitcoinnewsday.com
cauldronofcoins.com
bad-boys-bit.co.in
bitcoin.cryptorials.io
getreward.org
freecoins.info

Именно solvemedia нужна, капча решается за 2-5 сек и ни какие антидоты и рукапчи не нужны.
спасибо kolshix за идею smile_3.gif
С рекапчей пока дела хуже обстоят, там иногда до 5 минут, на угадывание уходит. smile_12.gif

помогите прописать команду в одноклассниках переходить по людям сейчас (на сайте с компьютера)

volchsek
Ты покажи код, что имеешь и спрашивай уже по сути, что именно не получается, в какой команде, в каком месте проблема.
А то тут ясновидящих нету:|

PRESIDENT
что то не правильно прописываю, просматриваю в коде элемента не переходит по людям-(одноклассники) вот сама строка

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:ellip

volchsek
Попробуй записать клик в другом формате. Используй полный тхмл тег или на крайняк клик по координатам Х,У

Попробуй все эти варианты
kliki.jpg

удалено, правила, п. 2.4

InfSub

PRESIDENT
Спасибо.

Другой вопрос.
Есть скрипт:

скрытый текст

Выделить код

Код:

SET !TIMEOUT 1
SET !ERRORIGNORE YES
SET !DATASOURCE C:\txt\150.txt
SET !DATASOURCE_LINE {{!LOOP}}
FRAME NAME="fXD*"
EVENT TYPE=CLICK SELECTOR="#p{{!COL1}}>DIV" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR=*
WAIT SECONDS=0.5


Как сделать так, чтобы в {{!COL1}} вставлялась новая строка?

P.S. если его закинуть в js на 150 повторов, он всегда берет первую строку. Если код из под спойлера продублировать несколько раз, при проигрывании он тоже берет только первую строку.

пробовал только клик по координатам срабатывает, а мне нужно просто доделать эту строчку она почти готова просто не переходит на человека а только выделяет рамкой TAG POS=1 TYPE=DIV ATTR=CLASS:ellip
07-06-2015 16:17:38
Спасибо за помощь сам выяснил TAG POS=1 TYPE=A ATTR=CLASS:O

Ребята подскажите пожалуйста как остановить скрипт

скрытый текст

Выделить код

Код:

var q = 100;
var w = 1;
for (var e=1;e<=q;e++)
{
info= 'Количество кликов '+w+''
iimDisplay(info)
macro= 'Code:'
macro+='SET !ERRORIGNORE YES \n';
macro+='FILTER TYPE=IMAGES STATUS=OFF \n';
macro+='TAB CLOSEALLOTHERS \n';
macro+='URL GOTO=http://coinadder.com/surf.php \n';
i= iimPlay(macro)
a=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=1*')
if (a<0){b=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=2*')}
if (b<0){c=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=3*')}
if (c<0){d=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=4*')}
if (d<0){e=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=5*')}
if (e<0){f=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=6*')}
if (f<0){h=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=7*')}
if (h<0){g=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=8*')}
if (g<0){p=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=9*')}
if (p<0){
    тут нужно остановить
}
if (i>0){
macro='Code:';
macro+='SET !ERRORIGNORE YES \n';
macro+='FILTER TYPE=IMAGES STATUS=OFF \n';
macro+='SET !TIMEOUT_STEP 100 \n';
macro+='WAIT SECONDS=20 \n';
macro+='WAIT SECONDS=2 \n';
macro+='TAB CLOSE \n';
iimPlay(macro)
}
w++
}


07-06-2015 17:10:59

PRESIDENT пишет

Господа форумчане, кто криптой занимается, подкиньте плиз сайтов с капчой от солвемедия
типа этих

Краны с солвемедия
bitcoinnewsday.com
cauldronofcoins.com
bad-boys-bit.co.in
bitcoin.cryptorials.io
getreward.org
freecoins.info

Именно solvemedia нужна, капча решается за 2-5 сек и ни какие антидоты и рукапчи не нужны.
спасибо kolshix за идею smile_3.gif
С рекапчей пока дела хуже обстоят, там иногда до 5 минут, на угадывание уходит. smile_12.gif

По моему тут от ip зависит все. Вот на usa ip иногда такая каптча что и человек не может разгадать.

Hamzat пишет

По моему тут от ip зависит все. Вот на usa ip иногда такая каптча что и человек не может разгадать.

оффтоп
не все , но многое , так как есть случаи когда 1-5 ip распростроняется  на 10 000 -30 000(а то и больше) человек - что-то подобное в моем городе - сайт считает что сидит один пользователь и пытается долбить крипту с разных браузеров + ошибки исполнителей при вводе катчи вынуждают запускать алгоритм усложнения каптчи - вот Вам и корявые каптчи выдаются (конкретно такая ситуация у меня)

kolshix пишет
Hamzat пишет

По моему тут от ip зависит все. Вот на usa ip иногда такая каптча что и человек не может разгадать.

оффтоп
не все , но многое , так как есть случаи когда 1-5 ip распростроняется  на 10 000 -30 000(а то и больше) человек - что-то подобное в моем городе - сайт считает что сидит один пользователь и пытается долбить крипту с разных браузеров + ошибки исполнителей при вводе катчи вынуждают запускать алгоритм усложнения каптчи - вот Вам и корявые каптчи выдаются (конкретно такая ситуация у меня)

Мой ip только у меня, но каптча действительно сложная , с неправильным вводом он еще усложняется. Но если зайти с родного ip то  каптча очень легкая, но при этом более длинная. Я так понял алгоритм это перебор frame ?

Tungen пишет

Как сделать так, чтобы в {{!COL1}} вставлялась новая строка?

так

Выделить код

Код:

for (i=1; i<=150; i++){  
    iimPlayCode('SET !DATASOURCE C:\\txt\\150.txt\nSET !DATASOURCE_LINE '+i+'\nSET !EXTRACT {{!COL1}}');
    a=iimGetLastExtract();
    iimPlayCode('FRAME NAME="fXD*"\nEVENT TYPE=CLICK SELECTOR="#p'+a+'>DIV" BUTTON=0');
    ...
}


Hamzat пишет

как остановить скрипт

остановить

Выделить код

Код:

if (p<0){
 break;   // <--- Выход из цикла
}


Hamzat пишет

Мой ip только у меня, но каптча действительно сложная

Меняй ип, чисти куки и капча всегда после 2-5 обновлений нужная будетsmile_1.gif

PRESIDENT, спасибо. Идеально работает.

kolshix, и вам спасибо за видео о скриптах js. Пару интересных тонкостей для себя узнал.

Скажите пожалуйста что тут не так?

скрытый текст

Выделить код

Код:

while(true){
var w = 1;
info= 'Количество кликов '+w+''
iimDisplay(info)
macro= 'Code:'
macro+='SET !ERRORIGNORE YES \n';
macro+='FILTER TYPE=IMAGES STATUS=OFF \n';
macro+='TAB CLOSEALLOTHERS \n';
macro+='URL GOTO=http://coinadder.com/surf.php \n';
i= iimPlay(macro)
a=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=1*')
if (a<0){b=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=2*')}
alert(b)
if(a&&b<0) {break;}
if (i>0){
macro='Code:';
macro+='SET !ERRORIGNORE YES \n';
macro+='FILTER TYPE=IMAGES STATUS=OFF \n';
macro+='SET !TIMEOUT_STEP 100 \n';
macro+='WAIT SECONDS=20 \n';
macro+='WAIT SECONDS=2 \n';
macro+='TAB CLOSE \n';
iimPlay(macro)}
w++
}


Выдает ошибку в 13 строке

Hamzat пишет

Выдает ошибку в 13 строке

Не хватает кавычек alert(''b'')

Tungen пишет
Hamzat пишет

Выдает ошибку в 13 строке

Не хватает кавычек alert(''b'')

Ой забыл убрать alert проблема в другом  там срабатывала команда break из-за того что второй if не выпонился, а он не выполнялся в свою очередь из- за того что выполнился первый if. Проблему решил задав в начале скрипта значению 1 var b так если сработает первый if то не сработает break если не сработает первый if то значения b перезапишется и исходя из этого дальше сработает 3 if и т.д

Hamzat

if(a<0 && b<0) break;

PRESIDENT пишет

Hamzat

if(a<0 && b<0) break;

если b<0 - это и так означает, что a<0 - зачем лишняя проверка?

07-06-2015 22:25:46
да уж.... интересно, где такому учат?:

Hamzat пишет

Ребята подскажите пожалуйста как остановить скрипт

скрытый текст

Выделить код

Код:

...
a=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=1*')
if (a<0){b=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=2*')}
if (b<0){c=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=3*')}
if (c<0){d=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=4*')}
if (d<0){e=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=5*')}
if (e<0){f=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=6*')}
if (f<0){h=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=7*')}
if (h<0){g=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=8*')}
if (g<0){p=iimPlayCode('TAG POS=1 TYPE=A ATTR=HREF:http://coinadder.com/view.php?ad=9*')}
if (p<0){
    тут нужно остановить
}
...

чуть более укороченный вариант

Выделить код

Код:

for(var j=1,a='';a=iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=A ATTR=HREF:*/view.php?ad='+j+'*'),a<0&&j<=9;j++);
if(a<0){break;};


код выше - обновлен, с учетом break

чуть более укороченный вариант

Выделить код

Код:

for(var j=1;iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=A ATTR=HREF:*/view.php?ad='+j+'*')<0;j++);

А как остановить такую конструкцию? Он же будет вечно прибавлятся))

обновил код выше, с учетом выхода из вышестоящего цикла

07-06-2015 22:53:43
j - число
9 - максимальное искомое число
a - добавлено для выхода из вышестоящего цикла for, если именно из него требовался выход, иначе конструкцию с a можно убрать

07-06-2015 22:58:45

Hamzat пишет

Он же будет вечно прибавлятся))

вечно он бы прибавлялся только в одном случае, если ни одна из ссылок не найдена - исправлено, за счет проверки j<=9

вечно он бы прибавлялся только в одном случае, если ни одна из ссылок не найдена

Ссылки заканчиваются и скрипт бы крутился впустую. Я не очень хорошо разбираюсь в js и тем более в чужих кодах, а тем более еще и укороченные до возможности)). При запуске для проверки данный код выдал мне ошибку

скрытый текст
SyntaxError: unlabeled break must be inside loop or switch, line: NaN (Error code: 991)

Как заставить скрипт ждать окончания загрузки страницы?

volchsek пишет

Как заставить скрипт ждать окончания загрузки страницы?

Он и так ждет

пропускает некие команды

Hamzat пишет
volchsek пишет

Как заставить скрипт ждать окончания загрузки страницы?

Он и так ждет

Hamzat пишет

SyntaxError: unlabeled break must be inside loop or switch, line: NaN (Error code: 991)

break - работает внутри цикла, и ни где более, ваш код содержит цикл for

for(var e=1;e<=q;e++){...};
если выше заданный вопрос, подразумевает остановку именно этого цикла, то вставляется break, иначе он не нужен совершенно, так как приведенный мной пример кода, либо найдет ссылку, либо остановится достигнув максимального числа (в приведенном примере, это 9)

08-06-2015 00:16:38

volchsek пишет

пропускает некие команды

пропускать некоторые команды, iMacros - может, только если у вас включен игнор ошибок (SET !ERRORIGNORE YES)
установите таймер

WAIT SECONDS=кол-во_сек
или увеличьте время ожидания элемента на странице
SET !TIMEOUT_STEP=кол-во_сек

:whiteflag: Здравствуйте!

Скопировать текст до запятой: SET !EXTRACT EVAL("'{{!EXTRACT}}'.split(',').shift()") .
А если нужно всё скопировать после запятой?

И второй вопрос: При некотором копировании текста с сайта и вставки теста, например в документ Microsoft Word, выходит следующее :

Пример:

------------------

111111
222222
333333
444444
555555
-------------------


Текст скопирован верно и вставлен верно, кроме первой строки, она остаётся пустой (эффект, как будто перед ставкой текста нажали Enter), я понимаю что текст так скопировался с сайта, но как сделать чтобы сам аймакрос отсеял этот пустую строку,
чтобы при вставки было следующее:
скрытый текст

------------------
111111
222222
333333
444444
555555
-------------------

Даниил955447112 пишет

Скопировать текст до запятой: SET !EXTRACT EVAL("'{{!EXTRACT}}'.split(',').shift()") .
А если нужно всё скопировать после запятой?

Блин ну хоть загляни в гугл, спроси, что такое сплит и что такое шифт, в яваскрипте и там же найдёшь, как получить последний элемент массива.:|
Попробуй так ... .split(',').pop()

PRESIDENT пишет

Блин ну хоть загляни в гугл, спроси, что такое сплит и что такое шифт, в яваскрипте и там же найдёшь, как получить последний элемент массива.:|
Попробуй так ... .split(',').pop()

А не подскажите, как убрать пробел после запятой?
Предположим, надо скопировать текст после запятой и пробела за ней, варианты

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.split(', ').pop()")
и
SET !EXTRACT EVAL("'{{!EXTRACT}}'.split(' ').pop()")

не работают. :(

И как сэмулировать нажатие F2 после выполнения скрипта, может знаете?

P.S.: кнопка F2 решает капчу на сайте.

возможно ли ли imacros сделать такое? Работа заключается в переносе текста с отсканированного материала в электронный вид для дальнейшей графической обработки и распечатки

volchsek пишет

возможно ли ли imacros сделать такое? Работа заключается в переносе текста с отсканированного материала в электронный вид для дальнейшей графической обработки и распечатки

если документ распознан и сохранен как TXT файл - то теоретически да.

подскажите пожалуйста как прописать команду (одноклассники) хочу чтобы макрос переходил по людям которые сидят именно с компьютера!!

volchsek пишет

как

найти отличия и записать их

там столько отличий и не поймешь что к чему относится

InfSub пишет
volchsek пишет

как

найти отличия и записать их

volchsek пишет

там столько отличий и не поймешь что к чему относится

там одно отличие

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:ic-online

InfSub пишет

там одно отличие

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:ic-online

спасибо вам большое!!! не сможете подсказать как научиться пользоваться imacros знать команды и т д
13-06-2015 01:06:38
как находить такие элементы что к чему относится?

volchsek, читать форум, изучить wiki по iMacros, прочитать - что такое html и понять, хотя бы, его основы

удалено, правила, п. 2.4

InfSub

Доброго времяни суток!!! Я снова к вам с проблемой: можно ли как нибудь в js реализовать нажатие кнопки плей на ютуб видео, чтоб начиналось воспроизведение? Если да, то как? Подскажите пожалуйста.:/

stars1981 пишет

можно ли как нибудь в js реализовать нажатие кнопки плей на ютуб видео...

Допиши в конце УРЛа ?autoplay=1

URL GOTO=https://www.youtube.com/watch?v=bGlPHNEzLcw?autoplay=1

PRESIDENT пишет
stars1981 пишет

можно ли как нибудь в js реализовать нажатие кнопки плей на ютуб видео...

Допиши в конце УРЛа ?autoplay=1

URL GOTO=https://www.youtube.com/watch?v=bGlPHNEzLcw?autoplay=1

Благодарю!!! На ютубе работает, но я задачу не так описал. Нужно то же, тока для видео с ютуба ВСТАВЛЕНОЕ НА САЙТЕ.
Не работает так:

скрытый текст

Выделить код

Код:

URL GOTO=https://www.mypaidtube.com/bonusvideos.php?vid=13?autoplay=1


Есть решение этой задачи? Как?

Добрый день!
1) Подскажите, пож-та, можно ли в google-таблицы онлайн при помощи imacros вносить данные и их считывать (по ячейкам)?
Если нет, есть какие-нибудь альтернативные методы?

2) И возможно сохранить данные в .csv по ячейкам, а после чего их считывать аналогично с тех же ячеек?

stars1981
Так попробуй записать имакросом, в чём проблема то.
У меня вот что записалось

скрытый текст

Выделить код

Код:

FRAME F=4
TAG POS=1 TYPE=DIV ATTR=CLASS:ytp-button<SP>ytp-button-pause&&ROLE:button&&TABINDEX:*&&ARIA-LABEL:Пауза&&TXT:
TAG POS=1 TYPE=DIV ATTR=CLASS:ytp-button<SP>ytp-button-play&&ROLE:button&&TABINDEX:*&&ARIA-LABEL:Смотреть&&TXT:


фрейм наверное разный бывает

bogdanov63 пишет

Добрый день!1) Подскажите, пож-та, можно ли в google-таблицы онлайн при помощи imacros вносить данные и их считывать (по ячейкам)? Если нет, есть какие-нибудь альтернативные методы? 2) И возможно сохранить данные в .csv по ячейкам, а после чего их считывать аналогично с тех же ячеек?

и как возможно связать два (более) одновременно работающих скриптов через переменную, чтобы от нее зависел запуск/пауза текущего скрипта?

bogdanov63 пишет

как возможно связать два (более) одновременно работающих скриптов через переменную, чтобы от нее зависел запуск/пауза текущего скрипта?

Оператор if поможет

Выделить код

Код:

if (условие)
{
    действие
}
else
{
    действие2
};

Выделить код

Код:

if (a==1) {
 действие 1
} 
else if (a==2) {
  действие 2
}
 else {
  действие 3
}

я понимаю, что есть функции if
но тут в чем нюанс:
- работают два/четыре (не важно какое кол-во) браузеров, в каждом выполняется свой скрипт
- в какой-то момент один из этих скриптов, например первый, доходит до завершения либо другого переходного этапа и останавливается (делает паузу) пока не завершатся остальные
- когда остальные "доходят", передается команда первому, после чего он завершает скрипт
- затем все повторяется снова (либо продолжается цикл), но при этом первый обнуляет значения и дает "добро" остальным скриптам продолжать работу...
что-то типа такого...


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

+ меня интересуют таблицы онлайн, кто-то может в этом помочь?

4 браузера на один сайт smile_29.gif
Разные браузеры, разные скрипты, друг с другом не пересекаются.
Можно по извращаться конечно, допустим создавать текстовый файл, с текстом типа старт/пауза 1,2,3 и .т.д.
и в каждом скрипте проверять когда нужно содержимое файла, если нужное слово, то ....
Можно запустить *.bat, *.vbs, *.php и из него уже заново стартануть нужный браузер или скрипт в нём.
Но ток вопрос, зачем такое извращение ?smile_28.gif

Всем привет)

Нужно как-то сделать выборку рандомной строки в 1.тхт

Вот такое вот было решение найдено, но тут нужно вводить данные в скрипт.

Выделить код

Код:

var a1 = ["Привет","Привет1","привет2"];
str=a1[Math.floor(Math.random()*a1.length)];

Татьянa

скрытый текст
a1=Math.floor(Math.random()*100);  // <--- здесь 100 число строк в 1.тхт
iimPlayCode('SET !DATASOURCE 1.txt\nSET !DATASOURCE_LINE '+a1+'\nSET !EXTRACT {{!COL1}}')
str=iimGetLastExtract();

PRESIDENT пишет

Татьянa

скрытый текст
a1=Math.floor(Math.random()*100);  // <--- здесь 100 число строк в 1.тхт
iimPlayCode('SET !DATASOURCE 1.txt\nSET !DATASOURCE_LINE '+a1+'\nSET !EXTRACT {{!COL1}}')
str=iimGetLastExtract();

Большое спасибо

Подскажите пожалуйста как реализовать аймакрос, воспроизводящий  клик по рекламе Google Adsence, который находиться во фрейме
на любом произвольном  сайте, где размещена такая реклама. Например, на

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

или любом другом  Аймакрос запысывается, но при проигрывании клики не происходит ((
скрытый текст

Выделить код

Код:

FRAME NAME="google_ads_frame1"
EVENT TYPE=CLICK SELECTOR="#taw0>DIV>TABLE>TBODY>TR>TD>DIV>A>SPAN" BUTTON=0

или  так

Выделить код

Код:

FRAME NAME="google_ads_frame1"
TAG POS=1 TYPE=SPAN ATTR=TXT:*


Как можно сделать, не привязываясь к координатам на сайте, поскольку рекламе может быть размещена в любом произвольном месте ?

darkstorm
iMacros для FF - не работает с флешем

InfSub
а если баннер будет не на ш флеш, а текстовый

скрытый текст
nclw0rw4rtot.jpg

На картинке в статусной строке браузера видно ссылку

darkstorm пишет

InfSub
а если баннер будет не на ш флеш, а текстовый

скрытый текст

Выделить код

Код:

FRAME NAME="google_ads_frame1"
TAG POS=1 TYPE=A ATTR=href:http://www.googleadservices.com/pagead/aclk?*

InfSub к сожалению, клика не происходит :angry:

darkstorm пишет

InfSub к сожалению, клика не происходит :angry:

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
FRAME NAME=google_ads_*
TAG POS=1 TYPE=A ATTR=TARGET:_blank EXTRACT=HREF
URL GOTO={{!EXTRACT}}

darkstorm
Там фреймы всегда разные google_ads_frame1,2,3...

Спасибо! :)
Клик происходит, но перехода на рекламную ссылку нет, идёт переход на суппорт Гугла :angry:
Не подскажете как сделать чтобы после клика переход шёл на ссылку рекламодателя?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


правила, пункт 2.4
правила форума iMacros, пункт 1.2.4

InfSub

darkstorm пишет

идёт переход на суппорт Гугла

попробовал на 5 видах разных реклам на сайте:

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

код, всегда, переводит на сайт рекламодателя

Помогите с условием пожалуйста
Так не работает

скрытый текст

Выделить код

Код:

var i=iimPlayCode("TAG POS=1 TYPE=B ATTR=TXT:Имя:*") 
     if (i>0){
if ( // Поиск сайт в гуле
iimPlayCode('TAB OPEN\nTAB T=2\nURL GOTO='+search+'\nWAIT SECONDS=3')
// Поиск сайт ***********
iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Каким<SP>образом<SP>определить<SP>где*\nWAIT SECONDS=3')
// Серфинг сайта 
iimPlayCode('URL GOTO='+url1+'\nURL GOTO='+url2+'\nURL GOTO='+url3+'')<0){break;} 
 }


Условие если есть "TAG POS=1 TYPE=B ATTR=TXT:Имя:*"
то нужно выполнять все что ниже , если же нет, то кидать в начала скрипта.

А у меня переходы только на суппорт гугла. Это может быть связано  с версией аймакроса или браузера ?

darkstorm
А если ручками кликаешь, всё норм или тоже на супорт перекидывает.
Может у тебя ип статика и ты гугл уже задолбал и он тебя  забанил.
Видно же куда имакрос кликает, подсвечивается синим, так проследи правильно кликает или нет.


Танюша, что значит в начало скрипта ?
Если я правильно понял, то тебе нужно скрипт зациклить

скрытый текст

Выделить код

Код:

for(i=0; i<999; i++){   
Тут в начале какой то скрипт
...
доходим до проверки условия  
f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=B ATTR=TXT:Имя:*'); 
if(f>0){
тут действия если условие труе

 }
 else // <--- необязательное
 { 
 тут действия если условие фальше
 }
 }

darkstorm

PRESIDENT пишет

Видно же куда имакрос кликает, подсвечивается синим, так проследи правильно кликает или нет.

закомментируйте строку:

SET !EXTRACT_TEST_POPUP NO

и увидите, что извлекает скрипт, можете сравнить с тем - что должно извлекаться (сравнить со ссылкой при нажатии)

17-06-2015 18:47:14
Татьянa

PRESIDENT пишет

скрытый текст

Выделить код

Код:

for(i=0; i<999; i++){   
Тут в начале какой то скрипт
...
доходим до проверки условия  
f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=B ATTR=TXT:Имя:*'); 
if(f>0){
тут действия если условие труе

 }
 else // <--- необязательное
 { 
 тут действия если условие фальше
 }
 }

как вариант, можно использовать вместо for(...){...} цикл while(true){...} если нет непосредственно задачи сделать n-ное количество циклов и подразумевается ручной останов скрипта, либо по иному условию

InfSub
вот результат закомментированной строки


скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Я заметил что в фрейме гугла 2 ссылки- одна(в верхнем правом углу) ведёт на сайт суппорта 
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


, а вторая на сайт рекламодателя

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Но макрос извлекает и кликает по первой (


PRESIDENT при клике вручную переход производиться  нормально, на сайт реклмодателя, а аймакросом - на суппорт. Ай-пишник у меня динамический, гугл не банил меня за частые клики

darkstorm

скрытый текст

Выделить код

Код:

FRAME NAME=google_ads_frame1
TAG POS=1 TYPE=A ATTR=href:*googleadservices* EXTRACT=HREF
URL GOTO={{!EXTRACT}}


Только реклама должна быть текстовая не банер и не забывай что фрейм меняется frame1, 2, 3 ...


InfSub Действительно так

TAG POS=1 TYPE=A ATTR=TARGET:_blank EXTRACT=HREF

извлекает ссылку на кнопку Реклама от гугла и перекидывает на супорт

PRESIDENT большое спасибо! Пошёл переход!
И ещё  по аналогии с предложенным кодом  InfSub  возможно следует этот кусочек    FRAME NAME=google_ads_frame1 изложить
как FRAME NAME=google_ads_* ?

darkstorm пишет

возможно следует этот кусочек    FRAME NAME=google_ads_frame1 изложитькак FRAME NAME=google_ads_* ?

Нет не прокатывает такое smile_32.gif
Оберни скрипт в js и делай проверку условия if
можно циклом фреймы перебирать.
   

скрытый текст

Выделить код

Код:

for (w=1; w<=20; w++){     
   iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME=google_ads_frame'+w+'\nTAG POS=1 TYPE=A ATTR=href:*googleadservices* EXTRACT=HREF');
   klik=iimGetLastExtract();
   if(klik!=#EANF#){
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+klik);  break;}}

PRESIDENT пишет

Нет не прокатывает такое

PRESIDENT
вы забываете, что у вас старая версия имароса, в последних, данная конструкция работает без проблем
по поводу саппорта, у меня все без проблем извлекается, без всяких саппортов, если же первым у вас извлекается саппорт, тогда - да, использовать href для извлечения, я сокращал код, вот и заменил его на target

Камрады, такой трабл.
Скрипт работает без проблем, но когда я подгружаю большие csv файлы, не то что большие (файлы в 5000 строк, если они не очень длинные он спокойно кушает), а файлы с длинной строкой (например где много текста, все разрывы и прочее пробовал убирать разрывы и переносы<BR> не помогает), так вот, скрипт зависает намертво. Если убавляю количество строк в файле ест без проблем. Как решить проблему, кто сталкивался? Может это зависит от версии Аймакроса и ФФ? Если кто знает верную комбинацию версий буду премного благодарен.:beer:

Подскажите как можно в аймакросе реализовать нажатие на проигрывание ролика ютуб только на другом сайте?

octonumber пишет

когда я подгружаю большие csv файлы

выложите куда-либо файл, дайте ссылку

18-06-2015 11:56:39
Shejker
для этого есть поиск, многократно говорилось, что iMacros для FF не работает с флешем

PRESIDENT пишет

Нет не прокатывает такое http://www.web-ip.ru/images/smiles/smile_32.gif
Оберни скрипт в js и делай проверку условия if
можно циклом фреймы перебирать.

Последняя версия Мозилы и Аймакроса работает без нареканий с фрагментом FRAME NAME=google_ads_*
InfSub и PRESIDENT огромнейшее Вам спасибо за предоставленную помощь :) !

Всем привет!:rock:
Подскажите как запустить по очереди  три макроса 1.iim 2.iim 3.iim

выложите куда-либо файл, дайте ссылку

скрытый текст

Gergi
что такое поиск, вы видимо не знаете и FAQ читать не умеете?

скрытый текст

Выделить код

Код:

iimPlay('1.iim');
iimPlay('2.iim');
iimPlay('3.iim');

InfSub пишет

PRESIDENTвы забываете, что у вас старая версия имароса, в последних, данная конструкция работает без проблем

InfSub
В том то и дело что эту конструкцию на новом имакрoсе тестил.
Если на сайте 2 или более блока гуглорекламы и в первом фрейме/блоке картинка будет, скрипт не найдёт второй и последующие блоки, фрейм нужно явно прописывать.
И ещё одна мелочь в старом имакросе фреймнаме можно только цифры указать и FRAME NAME=google_ads_frame1 вообще не катит.

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

"первая колонка","вторая колонка","третья колонка"

использование <SP> - не обязательно

18-06-2015 22:23:40

PRESIDENT пишет

Если на сайте 2 или более блока гуглорекламы и в первом фрейме/блоке картинка будет, скрипт не найдёт второй и последующие блоки, фрейм нужно явно прописывать.

перечитайте вопрос, разве там было прописано - перебрать все блоки google ads имеющиеся на сайте?

darkstorm пишет

как реализовать аймакрос, воспроизводящий  клик по рекламе Google Adsence, который находиться во фрейме
на любом произвольном  сайте, где размещена такая реклама

octonumber пишет

скрипт зависает намертво

Тоже с такой бякой встречался.
Поставь сет таймоут 1 сек и не парься:)

iimPlayCode('SET !TIMEOUT 1\nTAG POS...

PRESIDENT пишет

SET !TIMEOUT 1

ни как не влияет на работу SET !DATASOURCE ...
это легко проверить:

скрытый текст

Выделить код

Код:

SET !DATASOURCE 1.csv
PROMPT {{!COL1}}<BR><BR>{{!COL2}}<BR><BR>{{!COL3}}


код не вызовет ошибки с зависанием, только при корректных данных в csv
в выложенном файле - они не корректны

InfSub пишет

Gergi
что такое поиск, вы видимо не знаете и FAQ читать не умеете?

скрытый текст

Выделить код

Код:

iimPlay('1.iim');
iimPlay('2.iim');
iimPlay('3.iim');

Я поиском воспользовался но всё не то что мне надо.
Вот я как сделал

скрытый текст

Выделить код

Код:

var nstroka=0
var u=0;
for (u=1;u<=71;u++){
iimSet("LINE",u);
nstroka++
iimSet("NSTROKA",nstroka) 
iimPlay("1/en.iim",60);
var g=0;
for (g=1;g<=71;g++){
iimPlay("1/k1.iim",60);
var d=0;
for (d=1;d<=71;d++){
iimPlay("1/t1en.iim",60);
}
}
}


Мне надо чтобы запустить 1.iim один раз потом 2.iim один раз потом 3.iim один раз,и так 1000 раз,я знаю как всё это реализовать,но у меня сбивается 1.iim а точнее цикл увеличивается в три раза,и запускает совсем не то что надо. Все три 1.iim 2.iim  3.iim  связаны одним циклом,как их развязать не знаю ни я ни гугл.

Gergi пишет

я знаю как всё это реализовать

если вы знаете, тогда повторюсь, в чем вопрос? я лично, не понял

Gergi пишет

у меня сбивается 1.iim а точнее цикл увеличивается в три раза,и запускает совсем не то что надо

Gergi пишет

Все три 1.iim 2.iim  3.iim  связаны одним циклом,как их развязать

будьте так добры, выражайте свои мысли так, чтобы они были понятны не только вам

Gergi пишет

не знаю ни я ни гугл.

де-факто - гугл знает все

19-06-2015 00:03:53

Gergi пишет

Мне надо чтобы запустить 1.iim один раз потом 2.iim один раз потом 3.iim один раз
...
я знаю как всё это реализовать

если судить по вашему коду, вы пытаетесь реализовать совершенно не то, что пишете, посмотрите на приведенный мной пример и сравните с вашим, включите логику...
если нужно 1000 раз повторить код:

скрытый текст

Выделить код

Код:

iimPlay('1.iim');
iimPlay('2.iim');
iimPlay('3.iim');


то зачем зацикливать каждый вызов скрипта внутри предыдущего цикла?
у вас:
1 цикл на 1000 проходов:
вызов 1.iim
2 цикл на 1000 проходов:
вызов 2.iim
3 цикл на 1000 проходов:
вызов 3.iim
окончание 3 цикла;
окончание 2 цикла;
окончание 1 цикла;

итого:
итого за 1 цикл:
1.iim - вызван 1 раз
2.iim - вызван 1000 раз
3.iim - вызван 1000000 раз


суммарно:
1.iim - вызван 1000 раз
2.iim - вызван 1000000 раз
3.iim - вызван 1000000000 раз


19-06-2015 00:14:06
должно быть, как я понимаю:

Выделить код

Код:

for(i=0;i<1000;i++){
   iimPlay('1.iim');
   iimPlay('2.iim');
   iimPlay('3.iim');
};

Мне надо чтобы при одном цикле

скрытый текст
1.iim запускал такой текст "Привет Петя"
2.iim должен запуститься три раза подряд,при первом запуске такой текст "Привет Вася" при втором запуске такой
" Привет Гриша" при третьем запуске такой " Привет Вася"
3.iim должен запуститься два раза подряд,при первом запуске такой текст "Здравствуй Вася" при втором запуске такой
" Здравствуй Гриша"
При втором цикле 
1.iim запускал такой текст "Как дела,Петя"
2.iim должен запуститься три раза подряд,при первом запуске такой текст "Как дела,Вася" при втором запуске такой
" Привет Гриша" при третьем запуске такой " Как дела,Вася"
3.iim должен запуститься два раза подряд,при первом запуске такой текст "Как дела,Вася" при втором запуске такой
" Как дела, Гриша"

еще раз перечитайте с момента Добавлено Сегодня 00:03:53

InfSub пишет

еще раз перечитайте с момента Добавлено Сегодня 00:03:53

Читаю и понял что вы ничего не поняли,и поэтому подробней описал картину чего я хочу. И хотелось бы  получить реальную помощь ( разумеется если кто то знает как помочь) А посылать меня к Дядюшке гугл нет смысла,я им уже двое суток пользуюсь.

и еще раз, только на вашем примере разложу блоки "у вас" и "итого" из моего предыдущего ответа:

скрытый текст
var nstroka=0
var u=0;    // зачем? если for(u=1;
for (u=1;u<=71;u++){
    iimSet("LINE",u);
    nstroka++    // зачем? если по сути равно u
    iimSet("NSTROKA",nstroka)
    iimPlay("1/en.iim",60);    // итого запустится 71 раз
    var g=0;    // зачем? если for(g=1;
    for (g=1;g<=71;g++){
        iimPlay("1/k1.iim",60);    // итого запустится 71*71=5041 раз
        var d=0;    // зачем? если for(d=1;
        for (d=1;d<=71;d++){
            iimPlay("1/t1en.iim",60);    // итого запустится 71*71*71=357911 раз
        }
    }
}

19-06-2015 00:37:35

Gergi пишет

и понял что вы ничего не поняли

а по моему - это вы не поняли где у вас ошибка

InfSub пишет

и еще раз, только на вашем примере разложу блоки "у вас" и "итого" из моего предыдущего ответа:

скрытый текст
var nstroka=0
var u=0;    // зачем? если for(u=1;
for (u=1;u<=71;u++){
    iimSet("LINE",u);
    nstroka++    // зачем? если по сути равно u
    iimSet("NSTROKA",nstroka)
    iimPlay("1/en.iim",60);    // итого запустится 71 раз
    var g=0;    // зачем? если for(g=1;
    for (g=1;g<=71;g++){
        iimPlay("1/k1.iim",60);    // итого запустится 71*71=5041 раз
        var d=0;    // зачем? если for(d=1;
        for (d=1;d<=71;d++){
            iimPlay("1/t1en.iim",60);    // итого запустится 71*71*71=357911 раз
        }
    }
}

19-06-2015 00:37:35

Gergi пишет

и понял что вы ничего не поняли

а по моему - это вы не поняли где у вас ошибка

Тут нет никаких ошибок,тут весь код не правильный.

Gergi пишет

А посылать меня к Дядюшке гугл нет смысла

во первых вас ни кто не посылал
во вторых

Gergi пишет

я им уже двое суток пользуюсь.

facepalm.gif rofl.gif

19-06-2015 00:44:31

Gergi пишет

Тут нет никаких ошибок,тут весь код не правильный.

не уже ли - вы это, наконец-то поняли

Я двое суток перекручивал этот код,но не получилось то что мне надо.

Gergi
Как это понятьsmile_28.gif

Gergi пишет

1.iim запускал такой текст "Привет Петя"
2.iim должен запуститься три раза подряд,
при первом запуске такой текст "Привет Вася"
при втором запуске такой "Привет Гриша"
при третьем запуске такой "Привет Вася"

Так кто в ииме то петя гриша или вася  smile_29.gif

Gergi пишет

Мне надо чтобы при одном цикле

скрытый текст
1.iim запускал такой текст "Привет Петя"
2.iim должен запуститься три раза подряд,при первом запуске такой текст "Привет Вася" при втором запуске такой
" Привет Гриша" при третьем запуске такой " Привет Вася"
3.iim должен запуститься два раза подряд,при первом запуске такой текст "Здравствуй Вася" при втором запуске такой
" Здравствуй Гриша"
При втором цикле 
1.iim запускал такой текст "Как дела,Петя"
2.iim должен запуститься три раза подряд,при первом запуске такой текст "Как дела,Вася" при втором запуске такой
" Привет Гриша" при третьем запуске такой " Как дела,Вася"
3.iim должен запуститься два раза подряд,при первом запуске такой текст "Как дела,Вася" при втором запуске такой
" Как дела, Гриша"

скрытый текст
var u,g,d;
for (u=1;u<=71;u++){    // основной цикл
    iimSet("LINE",u);
    iimPlay("1/en.iim",60);    // итого запустится 1 раз за один основной цикл

    for (g=1;g<=3;g++){
        iimPlay("1/k1.iim",60);;    // итого запустится 3 раза за один основной цикл
    }

    for (d=1;d<=2;d++){
        iimPlay("1/t1en.iim",60);    // итого запустится 2 раза за один основной цикл
    }
}

Gergi
если тебе нужно по 2-3 раза запустить какой то определённый иим , так и воспользуйся тем что тебе InfSub вначале показал.

iimPlay('1.iim');
iimPlay('2.iim');
iimPlay('3.iim');

Только запускай свои иим-ы по несколько раз

InfSub думаю так понятнее будет, чел ещё не совсем понял, что такое циклы, тем более цикл в цикле
iimPlay('1.iim');

iimPlay('2.iim');
iimPlay('2.iim');

iimPlay('3.iim');
iimPlay('3.iim');
iimPlay('3.iim');

InfSub пишет
Gergi пишет

Мне надо чтобы при одном цикле

скрытый текст
1.iim запускал такой текст "Привет Петя"
2.iim должен запуститься три раза подряд,при первом запуске такой текст "Привет Вася" при втором запуске такой
" Привет Гриша" при третьем запуске такой " Привет Вася"
3.iim должен запуститься два раза подряд,при первом запуске такой текст "Здравствуй Вася" при втором запуске такой
" Здравствуй Гриша"
При втором цикле 
1.iim запускал такой текст "Как дела,Петя"
2.iim должен запуститься три раза подряд,при первом запуске такой текст "Как дела,Вася" при втором запуске такой
" Привет Гриша" при третьем запуске такой " Как дела,Вася"
3.iim должен запуститься два раза подряд,при первом запуске такой текст "Как дела,Вася" при втором запуске такой
" Как дела, Гриша"

скрытый текст
var u,g,d;
for (u=1;u<=71;u++){    // основной цикл
    iimSet("LINE",u);
    iimPlay("1/en.iim",60);    // итого запустится 1 раз за один основной цикл

    for (g=1;g<=3;g++){
        iimPlay("1/k1.iim",60);;    // итого запустится 3 раза за один основной цикл
    }

    for (d=1;d<=2;d++){
        iimPlay("1/t1en.iim",60);    // итого запустится 2 раза за один основной цикл
    }
}

InfSub Реально спасибо что пытаетесь помочь НО не то:| Я же подробно писал что нужно.А в данном коде всё как надо по очереди запускается (хотя это не было проблемой)  мне надо к примеру чтобы при вызове 1.iim  выдавал "Привет Вася" на втором круге когда вызовется 1.iim уже было бы " Привет Петя" А данный код одно и то же вызывает,только Привет Вася а Привет Петя не вызывает

19-06-2015 02:36:29
К 1.iim привязан текстовый файл,в нём 71 строчек мне надо что бы при каждом вызове 1.iim переходил на новую строчку,в данный момент он берёт только первую строку из TXT файла и на новую не переходит

Gergi пишет

в данном коде всё как надо по очереди запускается (хотя это не было проблемой)

интересно - как это не было проблемой, если вы сами признали, что:

Gergi пишет

тут весь код не правильный.

или вы приводите, заведомо неверный код вместо рабочего?

Gergi пишет

мне надо что бы при каждом вызове 1.iim переходил на новую строчку

извините, догадаться какой у вас код в 1.iim - можно, но проблематично и опять таки, вы его не приводите... а только пишете, что он, якобы, делает...
предположу, что надо заменить:

iimSet("LINE",u);

на

iimSet("NSTROKA",u);

либо добавить последнюю, если используются обе переменных (хотя смысл, если они обе имеют одинаковое значение??)

Что тут не понятного? 1.js вызывает 1.iim

скрытый текст

Выделить код

Код:

FILTER TYPE=IMAGES STATUS=YES
SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !VAR7 EVAL("var random=Math.floor(Math.random()*3 + 1); random;")
SET !VAR1 71
SET !VAR2 EVAL("var l={{NSTROKA}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\мой_текст.txt
SET !DATASOURCE_LINE {{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:upload ATTR={{!COL1}}


Проблема заключается в том что не перебираются строчку из текстового файла,а только первая строчка  колбаситься

InfSub пишет

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

"первая колонка","вторая колонка","третья колонка"

использование <SP> - не обязательно

Вот, посмотрите, разницы нет. Висит.

скрытый текст
https://yadi.sk/i/3zKV8eYchLXTJ

Не хочет работать.

octonumber
строка 33 и подобные

скрытый текст
"Электроактиватор воды «Микротон Лайт»", "33", "Производитель: Россия <BR>Аппарат для активации воды Микротон Лайт предназначен для электроактивации воды в домашних условиях (получения так называемой "живой" и "мертвой" воды – растворов анолита (щелочной воды) и католита (кислотной воды)).<BR><BR>Особенности активатора:<BR><BR>Глиняный стакан.<BR>Одновременное приготовление 700 мл активированной воды.<BR>Полная активация всего за 14 минут благодаря увеличенной площади мембраны!<BR>Мощные электроды из 8 мм пищевой нержавеющей стали.<BR>Гарантия 1 год.<BR> <BR>Наложенный платеж, получение на складе в Омске.<BR>БЕСПЛАТНАЯ доставка 5-7 дней.", "2650"

кавычки внутри кавычек - удваиваются, должно быть:
скрытый текст
"Электроактиватор воды «Микротон Лайт»", "33", "Производитель: Россия <BR>Аппарат для активации воды Микротон Лайт предназначен для электроактивации воды в домашних условиях (получения так называемой ""живой"" и ""мертвой"" воды – растворов анолита (щелочной воды) и католита (кислотной воды)).<BR><BR>Особенности активатора:<BR><BR>Глиняный стакан.<BR>Одновременное приготовление 700 мл активированной воды.<BR>Полная активация всего за 14 минут благодаря увеличенной площади мембраны!<BR>Мощные электроды из 8 мм пищевой нержавеющей стали.<BR>Гарантия 1 год.<BR> <BR>Наложенный платеж, получение на складе в Омске.<BR>БЕСПЛАТНАЯ доставка 5-7 дней.", "2650"

Gergi пишет

Что тут не понятного?

действительно - что?

Gergi пишет

Проблема заключается в том

проблема - заключается в том, что вы не желаете включить мозг и понять то, что Вам отвечают, о чем Вам не однократно писалось ранее, а Вы надеетесь на то, что за Вас все напишут и исправят

InfSub пишет

octonumber
строка 33 и подобные

скрытый текст
"Электроактиватор воды «Микротон Лайт»", "33", "Производитель: Россия <BR>Аппарат для активации воды Микротон Лайт предназначен для электроактивации воды в домашних условиях (получения так называемой "живой" и "мертвой" воды – растворов анолита (щелочной воды) и католита (кислотной воды)).<BR><BR>Особенности активатора:<BR><BR>Глиняный стакан.<BR>Одновременное приготовление 700 мл активированной воды.<BR>Полная активация всего за 14 минут благодаря увеличенной площади мембраны!<BR>Мощные электроды из 8 мм пищевой нержавеющей стали.<BR>Гарантия 1 год.<BR> <BR>Наложенный платеж, получение на складе в Омске.<BR>БЕСПЛАТНАЯ доставка 5-7 дней.", "2650"

кавычки внутри кавычек - удваиваются, должно быть:
скрытый текст
"Электроактиватор воды «Микротон Лайт»", "33", "Производитель: Россия <BR>Аппарат для активации воды Микротон Лайт предназначен для электроактивации воды в домашних условиях (получения так называемой ""живой"" и ""мертвой"" воды – растворов анолита (щелочной воды) и католита (кислотной воды)).<BR><BR>Особенности активатора:<BR><BR>Глиняный стакан.<BR>Одновременное приготовление 700 мл активированной воды.<BR>Полная активация всего за 14 минут благодаря увеличенной площади мембраны!<BR>Мощные электроды из 8 мм пищевой нержавеющей стали.<BR>Гарантия 1 год.<BR> <BR>Наложенный платеж, получение на складе в Омске.<BR>БЕСПЛАТНАЯ доставка 5-7 дней.", "2650"

Да, так и есть, огромное спасибо и правда моя невнимательность.

InfSub пишет
Gergi пишет

Что тут не понятного?

действительно - что?

Gergi пишет

Проблема заключается в том

вы не желаете включить мозг

Многоуважаемый InfSub  вы как всегда "очень толерантный" но хотелось бы увидеть реальную помощь а не то что у меня мозг не включен! Я двое суток боролся с этой проблемой и понял что мой мозг дальше не включается и собственно поэтому уже обратился на форум к специалистам! правила, п. 3.13

19-06-2015 08:46:22
правила, п. 3.13

InfSub

Gergi пишет

хотелось бы увидеть реальную помощь

вам был дан ответ, решающий вашу проблему, вы даже не удосужились его прочесть или вникнуть, и продолжаете разводить флуд

kolshix пишет

А если быть ещё конкретнее , то собираю информацию для записи видео , на тему "перенос информации из iim в js и наоборот, и все что с этим связано"
видео будет про:
1 iimSet
2 iimGetLastExtract
3 перенос инфы из iim в iim в js-скрипте путём сохранение инфы в txt и csv с последующим прочтением
4 CLIPBOARD

Подскажите, пожалуйста, как лучше перенести информацию с js в js. Или может видео где-то есть?

ottec пишет

js в js

по тому же принципу, что и из iim в iim или js
используется промежуточный datasource-файл, в который пишется нужная информация одним скриптом, а вторым - забирается

InfSub пишет

используется промежуточный datasource-файл, в который пишется нужная информация одним скриптом, а вторым - забирается

Это не подходит, т.к. у меня первого js скрипта будет n-ое количество, а второй js будет один использоваться всеми сразу. И если создавать "datasource-файл" то будет неразбериха.

иных вариантов - в принципе нет, если только сильно усложнять систему, используя БД, на основе, к примеру, Denwer

Спасибо за ответы.

ottec пишет

как лучше перенести информацию с js в js.

Вот так

script1.js

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
 var ab=Cc["@mozilla.org/moz/jssubscript-loader;1"].getService(Ci.mozIJSSubScriptLoader);
 
 var a='value_1';
 ab.loadSubScript("file:///C:\\script2.js");
 alert(b)

script2.js

Выделить код

Код:

var b='value_2';
 alert(a)

Подскажите, как значение переменной сохранить в текстовый файл?

Такая запись выдает пустой файл:

скрытый текст

Выделить код

Код:

iimSet("FILE_TXT", "gfdgfdgfdgfd");
  iimPlay("CODE: SET !EXTRACT {{FILE_TXT}} \n ");
   iimPlay("CODE: SAVEAS TYPE=EXTRACT FOLDER="+dir_file+" FILE="+q+".txt");

mmmaks2004, предположу, что вы понимаете как работают iim-скрипты, раз взялись за js
Скажите, отдельный iim-скрипт со следующим содержанием:

SAVEAS TYPE=EXTRACT FOLDER=* FILE=filename.txt

что должен сохранить?
Результатом будет - пустой файл.

Любой вызванный из js код или iim-скрипт с помощью функций: iimPlay() / iimPlayCode(), является отдельной единицей и не взаимодействует с кодом, вызванным ранее с помощью этих функций
Приведенный Вами код, аналогичен запуску двух разных iim-скриптов.

Для работы данного кода, он должен быть передан сразу весь:

скрытый текст

Выделить код

Код:

iimSet("FILE_TXT", "gfdgfdgfdgfd");
iimPlayCode("SET !EXTRACT {{FILE_TXT}} \n SAVEAS TYPE=EXTRACT FOLDER="+dir_file+" FILE="+q+".txt");

InfSub
спасибо
А еще вопрос, информация записывается в файл в кавычках, а без них можно записать?

удалено, правила, пункт 2.4
3 замечание
бан на неделю

InfSub

volchsek
Что ты имеешь ввиду под

volchsek пишет

А ДАЛЬШЕ ИГНОРИЛ ЭТУ СТРОЧКУ

Так сделай эту команду всего один раз, в чём проблема то.


И пиши нормальным шрифтом, капс тут не приемлим smile_15.gif

так макрос короткий как только он доходит до строчки перейти на сайт он переходит

PRESIDENT пишет

volchsek
Что ты имеешь ввиду под

volchsek пишет

А ДАЛЬШЕ ИГНОРИЛ ЭТУ СТРОЧКУ

Так сделай эту команду всего один раз, в чём проблема то.


И пиши нормальным шрифтом, капс тут не приемлим http://www.web-ip.ru/images/smiles/smile_15.gif

Здравствуйте. Возникла проблема. Нужно запустить одновременно в разных окнах 2 макроса *.js.

скрытый текст

Выделить код

Код:

Пример 1-го:
iimPlay("ss/639946.iim");
iimPlay("ss/639950.iim");
iimPlay("ss/639954.iim");
iimPlay("ss/639956.iim");
iimPlay("ss/640634.iim");


скрытый текст

Выделить код

Код:

Пример 2-го:
iimPlay("ss/657560.iim");
iimPlay("ss/661878.iim");
iimPlay("ss/662272.iim");
iimPlay("ss/664409.iim");
iimPlay("ss/664865.iim");
iimPlay("ss/667377.iim");
iimPlay("ss/668105.iim");


Проблема возникла в том, что при одновременном запуске. Первый проигрывает только 1 ряд, и виснет. В 2-е окно работает нормально. Возможно ли как то решить такую проблему? Imacros на [firefox]

2 независимых браузера не подходит. Т.к. выходит с сервиса.

dimka457
2 js-скрипта не будут работать одновременно в 2 окнах одного браузера, один из скрипов будет ждать завершения другого

21-06-2015 13:45:57
попробуйте 2 portable версии, они идентичны по параметрам (user agent) и возможно не будут терять сессию или эксперементируйте с переносом куки из одного в другой

Всем хорошего дня!:rock: Подскажите пожалуйста как сделать так что бы цифру 71 не указывать?
Вот прилагаю код

скрытый текст
FILTER TYPE=IMAGES STATUS=YES
SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB CLOSEALLOTHERS
SET !VAR7 EVAL("var random=Math.floor(Math.random()*3 + 1); random;")
SET !VAR1 71
SET !VAR2 EVAL("var l={{NSTROKA}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\мой_текст.txt
SET !DATASOURCE_LINE {{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:upload ATTR={{!COL1}}

22-06-2015 09:45:00
В ТХТ файле 71 строка,мне надо что бы не прописывать в макросе 71 а что бы скрипт сам понимал что уже нет строки и надо автоматически начинать опять с первой строки.

22-06-2015 09:55:03

InfSub пишет
Gergi пишет

хотелось бы увидеть реальную помощь

вам был дан ответ, решающий вашу проблему, вы даже не удосужились его прочесть или вникнуть, и продолжаете разводить флуд

InfSub Кстате  у меня мозг таки включился,и всё получилось как надо. Спасибо за помощь:beer:

Gergi

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///C:\\мой_текст.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n');   
alert(a.length)

Содержимое файла 1.тхт
"TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Star*"

Выделить код

Код:

iimPlayCode('SET !DATASOURCE 1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}')
code1 = iimGetLastExtract(1);

iimPlayCode('+code1+'')
Хочу вставить код с *.тхт

SyntaxError: missing ) after argument list

Как быть? можно такие вот глупости делать?

iimPlayCode('+code1+'')  // <--- Вначале у тебя одна кавычка в конце две, хотя они там вообще не нужны
iimPlayCode(code1)

Подскажите как этот фрагмент записать на js ?

скрытый текст

Выделить код

Код:

FRAME NAME=google_ads_frame*
TAG POS=1 TYPE=A ATTR=href:*googleads*aclk?*adurl=http:/* EXTRACT=HREF
URL GOTO={{!EXTRACT}}

PRESIDENT пишет

Gergi

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///C:\\мой_текст.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n');   
alert(a.length)

PRESIDENT Спасибо огромное! Но у меня не получается его запустить.

darkstorm пишет

Подскажите как этот фрагмент записать на js ?

Тут тебе уже отвечал smile_12.gif


Gergi
Почитай это, только внимательно читайsmile_15.gif

PRESIDENT
мне кажется что... удалено, правила, п. 3.3


InfSub

Gergi пишет

Но у меня не получается его запустить.

PRESIDENT пишет

Почитай это, только внимательно читай

Ты читал ???
Там написано как запускать яваскрипты .

удалено
2.16  Создавать сообщения ради накрутки количества сообщений. Если Вам нечего сказать — лучше ничего не говорить. Не надо писать сообщения только для того, чтобы отметиться

Gergi пишет

Подскажите пожалуйста как сделать так что бы цифру 71 не указывать?

Этот скрипт считает число строк в текстовом файле, что бы не указывать цифру 71 в скрипте.

PRESIDENT пишет

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///C:\\мой_текст.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n');   
alert(a.length)


Gergi пишет

В ТХТ файле 71 строка,мне надо что бы не прописывать в макросе 71 а что бы скрипт сам понимал что уже нет строки и надо автоматически начинать опять с первой строки.

Сделай проверку условия
если номер строки больше чем 71 то начать с первой строки

скрытый текст

Выделить код

Код:

if(nomer_stroki > 71)
{
nomer_stroki = 1
}


и опять же ты хочешь что бы 71 автоматически считалось значит тоже надо 71  заменить на a.length

Спасибо,буду пробовать.

скрытый текст

Выделить код

Код:

iimDisplay("фото 1")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d001.js");
iimDisplay("фото 2")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d002.js");
iimDisplay("фото 3")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d003.js");
iimDisplay("фото 4")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d004.js");
iimDisplay("фото 5")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d005.js");


Может снова моя невнимательность...
после выполнения
скрытый текст

Выделить код

Код:

iimDisplay("фото 1")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d001.js");


Кидает сразу на выполнение
скрытый текст

Выделить код

Код:

iimDisplay("фото 3 ")
iimPlayCode("URL GOTO=imacros://run/?m=Vk/NotTouch/Like/d003.js");


почему пропускает строки?

Запусти отдельно скрипт d002.js , косяк с ним

PRESIDENT пишет

Запусти отдельно скрипт d002.js , косяк с ним

По 1 если запускать то все хорошо, д001 если в конце кода кнопку не находит, переходить на выполнение д002 должно, а кидает сразу на д003

Поставь alert('OK') в конце d001 , перед запуском d002 , проверь он вообще пытается запуститься.
Может условие не выполняется и скрипт даже не пытается запуститься

PRESIDENT пишет

Поставь alert('OK') в конце d001 , перед запуском d002 , проверь он вообще пытается запуститься.
Может условие не выполняется и скрипт даже не пытается запуститься

Вылазяет ОК
но оно пропускает снова 2 и прыгает на фото 3

хм.. после выполнения 3, кидает на 5)), непонятно

удалено, правила, п.2.9

InfSub
PRESIDENT
Более наглядно можно объяснить?

Татьянa
покажи что у тебя в d001 d002 d003


Gergi пишет

Более наглядно можно объяснить?

Что именно ?

удалено, правила, п.2.9

InfSub

PRESIDENT пишет
Gergi пишет

Более наглядно можно объяснить?

Что именно ?

Я сделал так

скрытый текст

Выделить код

Код:

var nstroka=0
var w=0;
var n=prompt("третий браузер",33333)
for (w=1;w<=n;w++){
iimSet("LINE",w);
nstroka++
iimSet("NSTROKA",nstroka)
iimDisplay("Цикл="+w)
iimPlay("1/1.iim",60);  
 }
 if(nomer_stroki > a.length)
{    
nomer_stroki = 1
}


Доходит до последней строки потом возвращается к первой и постоянно её колбасит,дальше не переходит.

Я смысл этого скрипта вообще не пойму.:(
Ты прописываешь 4 раза одно и тоже значение в разные переменные, зачем ???
Смотри твой скрипт

скрытый текст

var nstroka=0
var w=0;  <--- Тут та для w присваиваешь значение ноль
...
for (w=1;w<=n;w++){  <--- а тут уже для w присваиваешь значение 1, тогда зачем верху w=0
iimSet("LINE",w);  <--- тут для LINE присваиваешь значение w, опять же зачем, у тебя уже есть w его и используй дальше, зачем лишний огород городить:(
nstroka++  <--- увеличиваешь nstroka на единицу, но оно будет таким же как и w, зачем опять это nstroka, оно одинаковое с w
iimSet("NSTROKA",nstroka) <--- тут таже фигня, nstroka одинаковое значение с w, его и используй, зачем ещё одну лишнюю переменную NSTROKA вводишь

в итоге у тебя в "w" "LINE" "nstroka" "NSTROKA",везде одно и тоже значение


И это я тебе для примера показал

if(nomer_stroki > a.length) nomer_stroki = 1;

вместо nomer_stroki  впиши свои переменные

И вообще избавляйся уже от iim-ов, пиши всё на js.

удалено, правила пункт 3.3

Gergi
последнее предупреждение, данная тема не посвящена обучению работе на JS, и JS обсуждается, только как инструмент взаимодействия с iMacros
продолжение постинга сообщений из серии: я не могу сложить a+b и подобных по смыслу, будут удаляться как флуд
если вы не понимаете, ответы, это не дает вам право оскорблять пользователей форума

2.15  Производить личную переписку в общей теме. Для личной переписки есть Личный ящик

2.22  За многократное умышленное игнорирование правил раздела «Не рекомендуется» даётся замечание или учетная запись может быть заблокирована

3.13  Публичное обсуждение Администрации форума и её действий. Нарушитель получает бан на 1 месяц.



рекомендую Вам задуматься над собой, прежде чем заявлять, что помощь 2 опытных пользователей Вам не помогла и равна нулю
если, 3-летнему ребенку обьяснить, что такое электрон, он тоже, вряд ли, что-то поймет, но не потому что - плохо обьясняли, а потому что - ему не хватает знаний
у Вас месяц бана, будет время подумать и возможно, чему-нибудь научиться
InfSub

d001

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\Users\\Tatyana\\YandexDisk\\iMacros\\Datasources\\resource\\1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}');
url = iimGetLastExtract();
iimPlayCode('URL GOTO='+url+'\nWAIT SECONDS=3')
    f=iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится');  if(f>0){
iimPlayCode('SET !DATASOURCE C:\\Users\\Tatyana\\YandexDisk\\iMacros\\Datasources\\resource\\1.txt\nSET !DATASOURCE_LINE 3\nSET !EXTRACT {{!COL1}}');
url01= iimGetLastExtract();
iimPlayCode('URL GOTO='+url01+'\nWAIT SECONDS=3\nTAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится'')
str=Math.floor(Math.random()*3+10);
iimPlayCode('SET !DATASOURCE C:\\Users\\Tatyana\\YandexDisk\\iMacros\\Datasources\\resource\\1.txt\nSET !DATASOURCE_LINE '+str+'\nSET !EXTRACT {{!COL1}}');
f1= iimGetLastExtract();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#mail_box_editable" CHARS='+f1+')

iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send\nWAIT SECONDS=3\nTAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send');
}


в д002 - д010  меняются только *1.txt (2-10)

Вопрос следующий. В гугл+, если надо макросом подписаться (или добавиться в круги). Окошко выбора кругов всплывает, лишь если наведена мышка над кнопкой "Подписаться". Для примере, первая попавшаяся страница: https://plus.google.com/+Green-clubUa/posts
Если я макросом навожу клик по кнопке подписаться,например
TAG POS=1 TYPE=SPAN ATTR=TXT:Подписаться
, то происходит клик по кнопке, но не всплывает окно выбора кругов и невозможно кликнуть по какому-то из них. Реакция идёт только на наведение мышки.
Подобрал, что клик по списку с добавлением в круги "Подписки" (Там есть также "Друзья" и другие) должен идти строкой:
TAG POS=1 TYPE=SPAN ATTR=ARIA-HIDDEN:true&&ARIA-LABEL:Подписки*
Но появляется это лишь при наведении мышки.

Можно ли как-то обойти это, вызвать всплывание окна выбора кругов без мышки? Понятно, что кликерами можно, но для этого нужно обязательно мозиллу на переднем плане и прочие заморочки. Макросом было бы проще.
Что скажут гуру?

Татьянa пишет

в д002 - д010  меняются только *1.txt (2-10)

слегка оптимизировал ваш код и сделал выполнение всего из 1-го файла:

скрытый текст

Выделить код

Код:

var i,f,url,str,path;
for(i=1;i<=10;i++){
    path='{{!FOLDER_DATASOURCE}}\\resource\\'+i+'.txt';
    if(iimPlayCode('SET !DATASOURCE '+path+'\nSET !DATASOURCE_LINE 1\nURL GOTO={{!COL1}}\nWAIT SECONDS=3\nTAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится')>0){
        iimPlayCode('SET !DATASOURCE '+path+'\nSET !DATASOURCE_LINE 3\nURL GOTO={{!COL1}}\nWAIT SECONDS=3\nTAG POS=1 TYPE=SPAN ATTR=TXT:Мне<SP>нравится');
        iimPlayCode('SET !DATASOURCE '+path+'\nSET !DATASOURCE_LINE '+Math.floor(Math.random()*3+10)+'\nEVENTS TYPE=KEYPRESS SELECTOR="#mail_box_editable" CHARS={{!COL1}}');
        iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send\nWAIT SECONDS=3\nTAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send');
    };
};


проверяйте, должно все работать, как часы

З.Ы. - можно еще оптимизировать код, но сейчас, к сожалению, нет времени

проблема в том, что вызов js из js - часто отрабатывает криво, и проблема не в содержимом файла, а в самой процедуре вызова js из другого js - так что, это баг имакроса

Большое спасибо!!!

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE '+path+'\nSET !DATASOURCE_LINE 3\nSET !EXTRACT {{!COL1}}');
go = iimGetLastExtract();
alert(''+go+'');
iimPlayCode(''+go+'');


Пишет ошибку ( не верный формат. )
alert(''+go+''); выводит
TAG POS=1 TYPE=A ATTR=TXT:ВКонтакте: Добро пожаловать

3я строка в файлике
"TAG POS=1 TYPE=A ATTR=TXT:ВКонтакте:<SP>Добро<SP>пожаловать"

Может потому что он извлекает TAG POS=1 TYPE=A ATTR=TXT:ВКонтакте: Добро пожаловать, а мне нужно TAG POS=1 TYPE=A ATTR=TXT:ВКонтакте:<SP>Добро<SP>пожаловать

Татьянa

iimPlayCode(go.replace(/ /g,"<SP>"))

Команда репласе, означает заменить и дальше указываешь что на что менять.
В данном случае пробел на <SP>


LeonidKotv
Отключи стили на странице и попробуй ещё раз клик ко кругам записать.
Это не важно скрыты они или нет, главное что они есть на странице.
имакрос и по скрытым кликнет, главное команду/клик правильно записать.

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE '+path+'\nSET !DATASOURCE_LINE 3\nSET !EXTRACT {{!COL1}}');
go = iimGetLastExtract();
iimPlayCode(go.replace(/ /g,"<SP>"));
alert(''+go+'');


Все равно пробелы, а не СП(

Алертом ты простой  go выводишь , а не go.replace

alert(go.replace(/ /g,"<SP>"));

И не нужны пустые кaвычки везде, зaчем ты их всовываешь, в них(в кавычках) же ничего нету, они не нужны
alert(''+go+'');
alert(go);

Эх, теперь все работает но теперь везде <SP>
TAG<SP>POS=1<SP>TYPE=A<SP>ATTR=TXT:ВКонтакте:<SP>Добро<SP>пожаловать

А если сделать в 3й строке не TAG POS=1 TYPE=A ATTR=TXT:ВКонтакте:<SP>Добро<SP>пожаловать ,оставить только ВКонтакте:<SP>Добро<SP>пожаловать, а этот кусочек в код всунуть в скрипт TAG POS=1 TYPE=A ATTR=TXT:

iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:(go.replace(/ /g,"<SP>"))');

Вот так вот, но видимо глупости какие то получились у меня :blush:

Почти правильно, только go это переменная и её нужно за кавычки вынести

iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:'+(go.replace(/ /g,"<SP>")) );

Спасибо!)

:whiteflag: Здравствуйте!

Как сделать что бы аймакрос прибавлял 6 позиций к значению TAG POS при следующем цикле воспроизведения?

Пример: нажимаю воспроизвести цикл 10 раз
нужно что бы цикл начинался с TAG POS=6 и с каждым прибавлением цикла к значению 6 прибавлялось 6

скрытый текст
цикл 1: TAG POS=6 TYPE=TD ATTR=TXT:* EXTRACT=TXT
цикл 2: TAG POS=12 TYPE=TD ATTR=TXT:* EXTRACT=TXT
цикл 3: TAG POS=18 TYPE=TD ATTR=TXT:* EXTRACT=TXT
цикл 4: TAG POS=24 TYPE=TD ATTR=TXT:* EXTRACT=TXT
и так далее...

похожий скрипт работает в другом аймакросе, конечно он криво написан, но смысл его такой: через строчку копирует текст при следующем цикле, аналог TAG POS, там только не TAG POS разный, а mid  (mid-1 mid-2 mid-3 mid-4 mid-5 и так далее...), но тоже строки с текстом идут вниз
скрытый текст

Выделить код

Код:

SET !VAR0 EVAL("{{!LOOP}}*2-1")
SET !LOOP {{!VAR0}}
ADD !VAR0 -1
TAG POS=1 TYPE=DIV ATTR=ID:mid-{{!VAR0}} EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}

Привет.
В iMacros вроде должна быть функция нажатия клавиш.
тут нашел коды клавиш: https://forum.mozilla-russia.org/viewto … 44#p608244

Но вот сам код имитации не могу найти.

Все что на просторах инета нашел - не работает(

Выделить код

Код:

ONWEBPAGEDIALOG KEYS={PGDN}
DS CMD=KEY X=0 Y=0 CONTENT={PGDN}

Как минимум это можно реализовать через что-то подобное:

Выделить код

Код:

URL GOTO=javascript:window.scrollBy(0,400)

PRESIDENT, Вы полюбому знаете как на JS это реализовать. Я в вас верю. Поможете?

spy686
имитация, работает в IE
в FF реализовано - только через EVENT

Даниил955447112
Ты же сам себе ответил, твой второй скрипт уже готовое решение.
Вместо твоих цифер подставляй {{!VAR0}}

...
TAG POS={{!VAR0}} TYPE=TD ATTR=TXT:* EXTRACT=TXT

Тоже на js

Выделить код

Код:

for (i=1; i<=61; i+=6){  // <--- Цикл от 1 до 60 с шагом 6
iimPlayCode('TAG POS='+i+' TYPE=TD ATTR=TXT:* EXTRACT=TXT');
text=iimGetLastExtract();
alert(text)
...
}


spy686
Не совсем понял задачу, тебе текст на сайте нужно ввести или для чего нажатие иметировать ?

Коллеги, добрый день!

Возник вопрос: можно ли как-то заставить iMacros сохранить на компьютер txt или csv файл с определенным текстом?
Не извлеченным с веб-страницы, а прописанным заранее. Например, чтобы отработав, такой макрос создал в определенной папке файл file1.txt, внутри которого будет надпись "Макрос отработал"

Буду благодарен за помощь.

Jawdet

скрытый текст

Выделить код

Код:

var txt='Макрос отработал';
iimPlayCode('SET !EXTRACT '+txt.replace(/ /g,"<SP>")+'\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=test.txt')

PRESIDENT пишет

Jawdet

скрытый текст

Выделить код

Код:

txt='Макрос отработал';
iimPlayCode('SET !EXTRACT '+txt.replace(/ /g,"<SP>"))+'\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=test.txt')

Говорит: can not parse macro line: txt='Макрос отработал'; (Error code: 910)

Можно точный код самого iim файла?

Jawdet
Ой извиняюсь синтаксическая ошибкаsmile_19.gif
после репласе два раза скобка закрывается

... '+txt.replace(/ /g,"<SP>"))+'\n ...

нужно один раз

... '+txt.replace(/ /g,"<SP>")+'\n ...

или вообще без репласе, помоему новые версии с пробелом уже дружат, ток ещё одни кавычки надо

Даниил955447112 пишет

Вопрос первый: можно ли что бы аймакрос вызвал команду C:\Windows\System32\rasdial.exe ?

Пробуй
Дополнительные возможности:

запуск внешней программы с аргументами из js-скрипта:

из https://forum.mozilla-russia.org/viewtopic.php?id=66458

Даниил955447112 пишет

Вопрос второй: команда сохранить текст в файл из "ЭКСТРАКТ" - SAVEAS TYPE=EXTRACT FOLDER=C:\Users\1\Desktop FILE=222.txt , а как будет сохранить из переменной !VAR0 ?

А так нельзя ?

скрытый текст

Выделить код

Код:

SET !Extract {{!VAR0}}
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\1\Desktop FILE=222.txt

PRESIDENT пишет:

Ты же сам себе ответил, твой второй скрипт уже готовое решение.
Вместо твоих цифер подставляй {{!VAR0}}

Нет, там надо было по другому, а именно:
Есть такая функция в аймакрос, "Воспроизвести цикл" называется, когда аймакрос воспроизводит один скрипт несколько раз, и нужно было что бы при каждом новом цикле TAG POS прибавлял к значению 6 ещё 6, и я не знал как это сделать, так как в похожем скрипте, аймакрос прибавлял +2 к значению, скрипт написан криво, но он выполнял требуемое, а в этом вместо прибавления +2, требовалось только +6, и дело тут было в правильном SET !VAR0 EVAL("{{!LOOP}}*2-1").

Сам скрипт, который при каждом новом цикле прибавляет +2 и требовалось его изменить что бы прибавлял +6 только

скрытый текст

Выделить код

Код:

SET !VAR0 EVAL("{{!LOOP}}*2-1")
SET !LOOP {{!VAR0}}
ADD !VAR0 -1
TAG POS=1 TYPE=DIV ATTR=ID:mid-{{!VAR0}} EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}


26-06-2015 08:55:40

spy686 пишет:

А так нельзя ?

скрытый текст

Выделить код

Код:

SET !Extract {{!VAR0}}
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\1\Desktop FILE=222.txt

Именно так я и написал:

скрытый текст

Выделить код

Код:

SET !EXTRACT {{!VAR0}}{{!VAR4}}{{!VAR5}}
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\1\Desktop FILE=222.txt


Просто думал может напрямую из переменной в текст можно. :)

Есть кусочек кода...

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#i123456789>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456790>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456791>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456792>DIV:nth-of-type(3)>H3>A" BUTTON=0


Таких элементов на странице = 50

нужно сократить /// EVENT TYPE=CLICK SELECTOR="*>DIV:nth-of-type(3)>H3>A" BUTTON=0
и зациклить.не знаю как

inkognitoman пишет

скрытый текст
Есть кусочек кода...

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#i123456789>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456790>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456791>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456792>DIV:nth-of-type(3)>H3>A" BUTTON=0

Таких элементов на странице = 50

нужно сократить /// EVENT TYPE=CLICK SELECTOR="*>DIV:nth-of-type(3)>H3>A" BUTTON=0
и зациклить.не знаю как

скрытый текст

Выделить код

Код:

var i;
for(i=123456789;i<=123456839;i++){
iimPlayCode('EVENT TYPE=CLICK SELECTOR="#i'+i+'>DIV:nth-of-type(3)>H3>A" BUTTON=0');
}
или 
for(i=789;i<=839;i++){
iimPlayCode('EVENT TYPE=CLICK SELECTOR="#i123456'+i+'>DIV:nth-of-type(3)>H3>A" BUTTON=0');
}

Татьянa
Хорошо , а если так?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#i843134535>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i123456790>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i5468498987>DIV:nth-of-type(3)>H3>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#i8453345834>DIV:nth-of-type(3)>H3>A" BUTTON=0


Т.е не важно какой id элемента

читаем правила оформления постов!

InfSub

Татьянa пишет

843134535, 123456790, 5468498987
набор цифр. где вы берете их?

#i*

Авито . у каждого объявления свой id

Татьянa пишет

#i*

на сколько я помню, такая конструкция работать не будет в event

InfSub пишет
Татьянa пишет

#i*

на сколько я помню, такая конструкция работать не будет в event

Да , верно #i* не работает ... но работает просто *

inkognitoman
не проще ли, использовать TAG POS=... чем пытаться заставить работать EVENT так, как он без определенных извращений работать не будет

inkognitoman
Попробуй в другом формате клик записать, вроде этого

TAG POS=1 TYPE=DIV ATTR=...

И потом увеличивай просто номер позиции

скрытый текст
for(i = 1; i <= 50; i ++){
iimPlayCode('TAG POS='+ i +' TYPE=DIV ATTR=...'); // <---тут только команду правильно запиши
...

Упс InfSub опередил


Даниил955447112 пишет

когда аймакрос воспроизводит один скрипт несколько раз, и нужно было что бы при каждом новом цикле TAG POS прибавлял к значению 6 ещё 6

глянь ещё раз туточки второй вариант, который на js

Всем привет, народ помогите с js кодом, пожалуйста, а то с js нене :sick:

Мне надо, что бы при возникновении ошибки Enter correct captcha before clicking button., воспроизводилось опять iimPlay("site.com/VodCaptcha.iim",60);
Попробовал методом тыка в коде который взят на просторах инета, но не получается, он конечно работает, при  Enter correct captcha before clicking button. начинает с начала, а не с iimPlay("site.com/VodCaptcha.iim",60);, так же и при правильном вводе каптчи.
Код iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT"); делает экстракт слова Enter correct captcha before clicking button. - это так, если вдруг не понятно будет, может что еще надо добавить к этому коду, только вот что, не знаю :rolleyes:

скрытый текст

Выделить код

Код:

iimPlay("site.com/VodCaptcha.iim",60);
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT");
        err=iimGetLastExtract();
        while (err == 'Enter correct captcha before clicking button.' <= max_err) 
               {
                iimPlay("site.com/VodCaptcha.iim",60);
                iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT");
                err=iimGetLastExtract();
                iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:logo&&TXT:");
                }


Вот полный код
скрытый текст

Выделить код

Код:

for (i=0;i<100000;i++){
// Максимальное количество повторов распознавания капчи
var max_err = 5;

iimPlay("site.com/login.iim",60);

// Разгадывание и повтор при ошибке
iimPlay("site.com/VodCaptcha.iim",60);
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT");
        err=iimGetLastExtract();
        while (err == 'Enter correct captcha before clicking button.' <= max_err) 
               {
                iimPlay("site.com/VodCaptcha.iim",60);
                iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT");
                err=iimGetLastExtract();
                iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:logo&&TXT:");
                }
                         }
iimPlay("CODE:WAIT SECONDS=1801");

Protey

скрытый текст

iimPlay("site.com/login.iim",60);
for (i=0;i<100;i++){   // <--- Число повторов, думаю понятно
   iimPlay("site.com/VodCaptcha.iim",60);  // <--- Я так понимаю это запуск распознавания капчи
   iimPlay("CODE:WAIT SECONDS=1");
   iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT"); err=iimGetLastExtract(); // <--- Извлекаем текст и сохраняем его в переменную err
if(err.indexOf('Enter correct captcha')<0) // <--- Если в err НЕ НАЙДЕНЫ слова Enter correct captcha, то всё норм, цикл нужно прервать и выполнять дальнейший скрипт
  break; } // <--- Выход из цикла
// Ну и дальше по скрипту
   iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:logo&&TXT:");         
   iimPlay("CODE:WAIT SECONDS=1801");

PRESIDENT пишет

Protey

скрытый текст

iimPlay("site.com/login.iim",60);
for (i=0;i<100;i++){   // <--- Число повторов, думаю понятно
   iimPlay("site.com/VodCaptcha.iim",60);  // <--- Я так понимаю это запуск распознавания капчи
   iimPlay("CODE:WAIT SECONDS=1");
   iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT"); err=iimGetLastExtract(); // <--- Извлекаем текст и сохраняем его в переменную err
if(err.indexOf('Enter correct captcha')<0) // <--- Если в err НЕ НАЙДЕНЫ слова Enter correct captcha, то всё норм, цикл нужно прервать и выполнять дальнейший скрипт
  break; } // <--- Выход из цикла
// Ну и дальше по скрипту
   iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:logo&&TXT:");         
   iimPlay("CODE:WAIT SECONDS=1801");

Спасибо!
А можно сделать так чтоб при положительном слове, т.е. когда каптча разгадана, он так же прекращал цикл, а то код один фиг продолжает цикл кода каптча разгадана верно :|?

как пример:

Выделить код

Код:

if(err.indexOf('Тут положительное слово')<0)
Это, если логически, как я понимаю будет вот так?:
if(err.indexOf('Тут положительное слово')>0)

Protey пишет

т.е. когда каптча разгадана, он так же прекращал цикл

По идее это должно останавливать цикл

if(err.indexOf('Enter correct captcha')<0) break;

попробуй вместо бреак, присвой для i значение больше чем в цикле задано
если цикл for ( i = 0; i < 100 от нуля до ста

if(err.indexOf('Enter correct captcha')<0)  i = 200;

Твоя логика тоже верна, только бреак не забудь, это как раз и есть команда остановить/выйти из цикла

if(err.indexOf('Тут положительное слово')>0) break;

Protey пишет

А можно сделать так чтоб при положительном слове, т.е. когда каптча разгадана, он так же прекращал цикл, а то код один фиг продолжает цикл кода каптча разгадана верно :|?

предположу, что обе фразы будут найдены, всегда - т.к. они могут быть просто не видимы пользователю, но присутствовать в коде, в таком случае это:

Выделить код

Код:

if(err.indexOf('Enter correct captcha')<0) break;

не поможет

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

InfSub пишет

Protey пишет: А можно сделать так чтоб при положительном слове, т.е. когда каптча разгадана, он так же прекращал цикл, а то код один фиг продолжает цикл кода каптча разгадана верно ?предположу, что обе фразы будут найдены, всегда - т.к. они могут быть просто не видимы пользователю, но присутствовать в коде, в таком случае это:Выделить кодКод:if(err.indexOf('Enter correct captcha')<0) break;не поможет

PRESIDENT пишет

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

Не думаю что шибко спрятано:

скрытый текст

Выделить код

Код:

При не правильном ввыоде каптчи:
<div class="hidden mt10" style="height: 47px">
                        <div id="drawtip" class="am-alert am-alert-success none" style="font-size: 14px; display: none;">
                            <p>Enter correct captcha before clicking button.</p>
                        </div>
                    </div>
При правильном вводе каптчи:
<div class="hidden mt10" style="height: 47px">
                        <div id="drawtip" class="am-alert am-alert-success none" style="font-size: 14px; display: none; outline: 1px solid blue;">
                            <p>Congratulations!</p>
                        </div>
                    </div>


Есть еще вариант

Выделить код

Код:

при правильном разгадывании каптчи(при не правильном поле пустое, туда вводиться слово каптчи):

iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:verify EXTRACT=TXT");
if(err.indexOf('Get a free play every 30 minutes!')>0) break;

и счетчик(кнопка на которую нажимаешь после ввода каптчи), при правильном разгадывании и не правильном:
TAG POS=1 TYPE=CANVAS ATTR=CLASS:award EXTRACT=TXT
if(err.indexOf(''21'30'')>0) break; ///<---- именно 21'30


Меня что интересует
скрытый текст

Выделить код

Код:

можно err=iimGetLastExtract(); сделать в несколько вариациях, как пример?:
SET !VAR1, 2, 3....

Если не ошибаюсь будет выглядеть как пример?:
SET !ERR1=iimGetLastExtract();


И еще интересует кусок кода, взятый в инете:
скрытый текст

Выделить код

Код:

var max_err = 3; //<----этот код задает сколько максимум ошибок ввода каптчи

дальше по коду, для меня дебри :)

for (;;){
        var err_test;
 if (err_test){        
        iimPlay("test/test.iim",60);
        iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:failure-message EXTRACT=TXT");
        err=iimGetLastExtract();
        while (err !== '' && err != '#EANF#' && err_err_test <= max_err)  //<---- но как я понимаю, этот код проверяет есть ли еррор слово или нет, если есть то iimPlay("test/test.iim",60); повторяется
               {
                iimPlay("CODE:WAIT SECONDS=2");
                err_test++;
                iimPlay("test/test.iim",60);
                iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:failure-message EXTRACT=TXT");
                err=iimGetLastExtract();
                }
        }
}

Protey пишет

сделать в несколько вариациях,

Как это в нескольких вариациях, в переменной будет то что извлечётся с сайта

iimPlay("...ATTR=ID:drawtip EXTRACT=TXT"); err=iimGetLastExtract();

тут EXTRACT=TXT это извлечь текст и сохранить в перемененную err.
Что в тегах будет то и извлечётся.
А командой indexOf... > уже сравниваешь, есть ли в извлечённом тексте нужное.

PRESIDENT пишет

Protey пишет: сделать в несколько вариациях,Как это в нескольких вариациях, в переменной будет то что извлечётся с сайтаiimPlay("...ATTR=ID:drawtip EXTRACT=TXT"); err=iimGetLastExtract();тут EXTRACT=TXT это извлечь текст и сохранить в перемененную err. Что в тегах будет то и извлечётся.А командой indexOf... > уже сравниваешь, есть ли в извлечённом тексте нужное.

Ну да, тут я что-то не подумал с EXTRACT=TXT

Мне вот интересно, может не срабатывает из-за того что в коде for (i=0;i<10000;i++) и for (i=0;i<10;i++), и они мешают друг другу, но сколько такой вариант использовал не было проблем, если это так, то как мне еще зациклить весь процесс :|
Он конечно срабатывает если не находит слово Congratulations!, т.е. повторяет, но он так же повторяет если находит его

скрытый текст

Выделить код

Код:

for (i=0;i<10000;i++){
iimPlay("site.com/login.iim",60);
// <--- Число повторов, думаю понятно
for (i=0;i<10;i++){
iimPlay("site.com/login.iim",60);
// <--- Я так понимаю это запуск распознавания капчи
iimPlay("site.com/VodCaptcha.iim",60);
iimPlay("CODE:WAIT SECONDS=1",60);
// <--- Нажимаем на кнопку после ввода каптчи
iimPlay("CODE:TAG POS=1 TYPE=CANVAS ATTR=HEIGHT:160px&&WIDTH:160px&&CLASS:award",60);
// <--- Извлекаем текст и сохраняем его в переменную err
iimPlay("CODE:WAIT SECONDS=1");
// <--- Тут есть несколько вариантов EXTRACT - TAG POS=1 TYPE=P ATTR=* EXTRACT=TXT / TAG POS=1 TYPE=DIV ATTR=ID:drawtip EXTRACT=TXT / TAG POS=1 TYPE=DIV ATTR=CLASS:hidden<SP>mt10 EXTRACT=TXT
iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:hidden<SP>mt10 EXTRACT=TXT");
err=iimGetLastExtract();
// <--- Если в err НЕ НАЙДЕНО слово Congratulations!, то повторяем цикл разгадывания каптчи снова
if(err.indexOf('Congratulations!')>0) break;
iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:logo&&TXT:");
}      
iimPlay("CODE:WAIT SECONDS=1801");
}

Так сделай во втором цикле другие буквы

Выделить код

Код:

for (i=0;i<10000;i++){
...
for (а=0;а<10;а++){
...

И что бы точно проверить насчёт Congratulations!

if(err.indexOf('Congratulations!')>0){ alert('Congratulations'); break; }

Потом алерт уберёшь

Ребята когда imacros сохраняет извлеченный текст то получается таким образом "Текст", можно убрать кавычки?

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=SPAN ATTR=CLASS:b-search__users__item__short-info__item<SP> EXTRACT=TXT
WAIT SECONDS=2
SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=test.txt


мне нужно чтоб он сохранял без галочек.

Hamzat пишет

мне нужно чтоб он сохранял без галочек.

вы потом этот текст хотите в другом месте постить?
если да, то в любом случае, на сколько я помню, текст должен быть в кавычках
если нет, текст нужен для базы..., то кавычки можно убрать по быстрому макросом в notepad++ или в подобных

Protey
А не подскажите как сохранить тогда несколько значений в одну строку? Значение хранятся в нескольких варах.

Hamzat
данные сохраняются только в формате CSV, если не поленитесь погуглить, то увидите, что этот формат сохраняет данные в виде "первый столбец данных","второй...","...","и т.д."
сохранить данные в другом текстовом формате - нельзя (не путать формат данных с расширением файла)
и это уже не единожды обсуждалось на нашем форуме, так что в будущем, прежде чем задать вопрос, просьба пользоваться поиском
аналогично и со вторым вопросом, обсуждалось многократно

для записи в разные столбцы используется разделитель [EXTRACT], для записи в один столбец - соответственно, без него:

скрытый текст

Выделить код

Код:

SET !EXTRACT {{!VAR1}}[EXTRACT]{{!VAR2}}[EXTRACT]{{!VAR3}}
SET !EXTRACT {{!VAR1}}{{!VAR2}}{{!VAR3}}

InfSub
Извините... Но поиск как то странно работает поэтому не очень удобно что  то по ним находить. Есть небольшой вопрос вот например если использовать базу email ов таким образом

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\mail_baze.txt 
SET !DATASOURCE_LINE {{!LOOP}}


то если макрос слетит то придется все сначала запустить чтобы все проверить, можно ли например взять первую строку, а потом его удалить? Чтоб в итоге если макрос случайно остановить или он слетит в базе были только не проверенные email ы?

Hamzat пишет

можно ли например взять первую строку, а потом его удалить

нет

27-06-2015 22:44:42
записывайте номер строки в отдельный файл, потом считывайте его и удаляйте.. будет вам актуальная позиция по файлу базы

:whiteflag: Здравствуйте!

Есть такая платёжная система payeer.com, на которой можно оплатить услуги разных операторов. Я в ней оплачиваю только МТС, но не могу аймакрос под неё подстроить, чтобы выполнялся платёж строго данному оператору, из-за того что там все платежи расположены на одной интернет странице по следующей схеме: слева название оператора, справа кнопка оплатить, которую аймакрос определяет как TAG POS=12 TYPE=A ATTR=TXT:Перевод и всё работало хорошо бы, если payeer периодически не добавлял операторов выше, то убирая их снова, на позиции  POS=12 оказывается то Мегафон, то Билайн, и по-разу у меня уходили деньги именно им, и 2 раза платёж останавливался, так как оказывался на данной позиции перевод на карточку банков, а там совсем другое заполнение формы для платежа.

Пытался понять что происходит, когда я нажимаю кнопку перевести, устанавливал специальный плагин на Мозиллу для отслеживания js, в итоге выяснил что при нажатия кнопки перевести, происходят 3 сценария, перед тем как выплывет на том же адресе (https://payeer.com/ru/account/send/) ввод телефонного номера. Активна кнопка только перевести и других надписей на нет нет.

Если скопировать внешний код кнопки "Перевести", то получается следующая разница в строках позиций:

скрытый текст
<a href="#" class="button_green_smm2" onclick="outputInit('24898938'); return false;">Перевод</a> Билайн TAG POS=10
<a href="#" class="button_green_smm2" onclick="outputInit('24899391'); return false;">Перевод</a> Мегафон TAG POS=11
<a href="#" class="button_green_smm2" onclick="outputInit('24899291'); return false;">Перевод</a> МТС TAG POS=12

Как сделать чтобы аймакрос отправлял именно код оплачиваемого оператора платёжной системе, а не ориентировался только по позициям, которые не постоянны?

Даниил955447112

TAG POS=1 TYPE=A ATTR=ONCLICK:*24899291*

Ребята скажите пожалуйста как использовать SET !DATASOURCE в js?

Hamzat пишет

скажите пожалуйста как использовать SET !DATASOURCE в js?

так же как и в iim, используя для запуска iMacros-команд функцию iimPlayCode('здесь ваш код')

InfSub пишет
Hamzat пишет

скажите пожалуйста как использовать SET !DATASOURCE в js?

так же как и в iim, используя для запуска iMacros-команд функцию iimPlayCode('здесь ваш код')

скрытый текст

Выделить код

Код:

Start = "CODE:";
Start += "TAB CLOSEALLOTHERS" + "\n"; 
Start += "SET !DATASOURCE C:\\Baza.txt " + "\n"; 
Start += "SET !DATASOURCE_LINE {{!LOOP}}" + "\n"; 
iimPlay(Start)
a=iimPlayCode('SET !EXTRACT {{!COL1}}')
alert(a)


Алерт выдает ошибку.

публикация кода, разрешена только в спойлере в теге Code (см. правила темы, пункт 1.3.2)

InfSub

Hamzat
нужные примеры кода, легко находятся поиском по слову !DATASOURCE, так как обсуждаются чуть ли не на каждой страницы данной темы!
если вы перечитаете последние 2-3 страницы темы, то легко найдете - где у вас ошибка

28-06-2015 18:10:41
Приведенный Вами код, аналогичен запуску двух разных iim-скриптов.
тыц

28-06-2015 18:17:12
{{!LOOP}} - в js - работать не будет, тоже обсуждалось многократно

InfSub пишет

Приведенный Вами код, аналогичен запуску двух разных iim-скриптов.

Все понял спс!

28-06-2015 18:33:16
InfSub
Не подскажите можно ли создать условию if чтоб  заработал если один из переменных пуcтой? Например:  мне нужно что if сработал если var test  пустой. Я хочу сделать например как только строки в csv файле закончится оставить его.

Hamzat пишет

нужно что if сработал если var test  пустой

скрытый текст

Выделить код

Код:

if(test==''){
...
}

Одно равно, это присвоение, двойное/тройное равно это сравнение
В данном случае тест сравнивается с тем что в кавычках, а у нас там пусто,
значит условие и будет проверять если тест пустой то

Hamzat
у вас выдаст ошибку в конце файла, так что достаточно отловить ее в iimGetLastError()

InfSub пишет

SET !EXTRACT {{!VAR1}}{{!VAR2}}{{!VAR3}}

Можно ли такое же сделать только в js?

Hamzat
не совсем понятна суть вопроса

скрытый текст

Выделить код

Код:

iimPlayCode('...где-то тут объявление значений переменных {{!VAR1}}, {{!VAR2}} и {{!VAR3}}...\nSET !EXTRACT {{!VAR1}}{{!VAR2}}{{!VAR3}}')

InfSub пишет

Hamzat
не совсем понятна суть вопроса

Сам разобрался;)
Можете сказать как делать проверку if на тег? Например тег

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:b-search__users__item__short-info__item<SP>

При условии - если есть тег на сайте то выполнять

Hamzat пишет

если есть его на сайте то выполнять

аналогично тому, как и с концом файла, проверить на наличие ошибки в iimGetLastError()

InfSub пишет

аналогично тому, как и с концом файла, проверить на наличие ошибки в iimGetLastError()

Можете пример показать... Просто никогда не пользовался iimGetLastError()

Hamzat пишет

Можете пример показать...

например, так:

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=CLASS:b-search__users__item__short-info__item<SP>')
if(iimGetLastError()=='OK'){
    alert('Tag exist');
    // какой-то код, при условии, что тег найден
};


28-06-2015 23:05:39
Чуть изменил код, с учетом того что:

Hamzat пишет

если есть тег на сайте то выполнять

InfSub пишет

за код спс, но по ходу я не так все делаю. Этим я хотел сделать что если тег найден то инфа с тега загнать в Extact и в конце скрипта у меня такая конструкция

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT "'+mail+' '+FNameLName+' '+Country+' '+City+' '+Age+'"')


Так я подумал если нет такой конструкции я имею виду iimGetLastError и тег не найдет то в итоге получается #EANF#, а если iimGetLastError  присутствует и тег не найден то получается undefined

28-06-2015 23:26:47
мне по-моему нужно что то делать с конструкцией

Выделить код

Код:

iimPlayCode('SET !EXTRACT "'+mail+' '+FNameLName+' '+Country+' '+City+' '+Age+'"')

Hamzat
iimGetLastError и #EANF# - ни как не взаимосвязаны
#EANF# - выдается при EXTRACT'e, в том случае, если тег не найден, при этом в iimGetLastError() будет OK
если же вы используете "клик" по тегу, но тег не найден, то будет ошибка скрипта, скрипт завершится и в iimGetLastError() уйдет сообщение об ошибке

28-06-2015 23:31:03

Hamzat пишет

мне по-моему нужно что то делать с конструкцией

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT "'+mail+' '+FNameLName+' '+Country+' '+City+' '+Age+'"')

синтаксически - конструкция верна

28-06-2015 23:33:12

Hamzat пишет

я хотел сделать что если тег найден то инфа с тега загнать в Extact и в конце скрипта у меня такая конструкция

ну так в чем проблема:

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=CLASS:b-search__users__item__short-info__item<SP>')
if(iimGetLastError()=='OK'){
    iimPlayCode('SET !EXTRACT "'+mail+' '+FNameLName+' '+Country+' '+City+' '+Age+'"');
};

InfSub пишет

ну так в чем проблема:

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=SPAN ATTR=CLASS:b-search__users__item__short-info__item<SP>')
if(iimGetLastError()=='OK'){
    iimPlayCode('SET !EXTRACT "'+mail+' '+FNameLName+' '+Country+' '+City+' '+Age+'"');
};

Каждая переменная FNameLName, Country, City, Age это 4 отдельных тега.

Hamzat пишет

Каждая переменная FNameLName, Country, City, Age это 4 отдельных тега.

для того, чтобы получить данные в переменные - вы их должны извлечь через EXTRACT
Вы же, задаете вопрос:

как проверить есть ли тег:

Hamzat пишет

Можете сказать как делать проверку if на тег? Например тег

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:b-search__users__item__short-info__item<SP>

При условии - если есть тег на сайте то выполнять


в итоге, что именно вы хотите проверить, что данные получены или что есть какой-то тег на странице?

28-06-2015 23:49:39
опишите проблему так, чтобы ее поняли, а не по кускам

InfSub
Я хочу чтобы

Выделить код

Код:

iimPlayCode('SET !EXTRACT "'+mail+' '+FNameLName+' '+Country+' '+City+' '+Age+'"')

сохранился в csv файл.  Если я извлекаю данные с этих тегов (некоторые теги есть, а некоторые нет) то тех тегов которые нет при сохранение получается пример

скрытый текст

Выделить код

Код:

Почта. Имя Фамилия, Страна/Город #EANF# (т.е в данном случае не найден тег возраст)
Почта. Имя Фамилия,  #EANF# #EANF#  возраст (т.е в данном случае не найден тег Страна и Город)


Мне нужно чтоб так не получался и переменные содержащие #EANF#  не сохранялись...

Hamzat пишет

Мне нужно чтоб так не получался и переменные содержащие #EANF#  не сохранялись...

можно так, например:

Выделить код

Код:

var e='#EANF#';
iimPlayCode('SET !EXTRACT "'+((mail!=e)?mail:'')+' '+((FNameLName!=e)?FNameLName:'')+' '+((Country!=e)?Country:'')+' '+((City!=e)?City:'')+' '+((Age!=e)?Age:'')+'"')


хотя я бы оптимизировал код выше, не приведенный вами и записал все данные в массив, после чего проверил бы все на #EANF# в цикле

29-06-2015 00:17:40
либо, добавьте в код с EXTRACT'ом, команду:

SET !ERRORIGNORE YES

тогда, вместо #EANF# - будете получать пустую строку

29-06-2015 00:25:09

offtop
не нужно делать так, если обращаетесь к человеку, а не цитируете его ответ:

UserName пишет

хотите указать ник, нажмите на него в карточке, слева от поста и он автоматически добавится в сообщение, в то место, где стоит курсор
или напишите его в тегах &#91;b]UserName&#91;/b]


не правильно:

&#91;quote=UserName]&#91;/quote]

правильно:
&#91;b]UserName&#91;/b]

Здравствуйте! :whiteflag: Возникла проблема.

При регистрации Яндекс почты аймакрос не может никак кликнуть по элементу, не по клик по объекту, не по координатам, просто обводит его синим маркером.

В аймакросе написано следущее:

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=ID:hint_question_id
TAG POS=1 TYPE=A ATTR=TEXT:Фамилия<SP>вашего<SP>любимого<SP>у*


Раньше была данная проблема, но решалась комбинированными методами TAG + CLICK X Y . Сейчас никак.
Вроде есть в аймакросе экспериментальная функция, клик по объекту с эмуляцией мыши. Но потратив 3 часа времени на поиске в интернете, так и не смог найти данный код, хотя раньше попадался, когда искал другое про аймакрос. :)

Скриншоты самой проблемы:
Noviytoche_1194105_17840908.jpg Noviytoche_3200941_17841050.jpg

Внешний код элемента:

Выделить код

Код:

<span style="outline: 1px solid blue;" autocomplete="off" data-nb-direction="bottom" data-nb="select" tabindex="0" class="nb-button _nb-normal-button nb-select _init _nb-select-button control__select control__select_name_question ui-autocomplete-input ui-widget ui-widget-content" id="hint_question_id" name="hint_question_id"><span class="_nb-button-content">Контрольный вопрос</span><span class="_nb-select-helper"></span><select class="_nb-select-fallback" name="hint_question_id"><option label="Контрольный вопрос" value="0" data-icon="" selected="">Контрольный вопрос</option><option label="Фамилия вашего любимого музыканта" value="12" data-icon="">Фамилия вашего любимого музыканта</option><option label="Название улицы, на которой вы выросли" value="13" data-icon="">Название улицы, на которой вы выросли</option><option label="Ваш любимый киногерой" value="14" data-icon="">Ваш любимый киногерой</option><option label="Дата рождения бабушки" value="4" data-icon="">Дата рождения бабушки</option><option label="Почтовый индекс родителей" value="3" data-icon="">Почтовый индекс родителей</option><option label="Марка вашей первой машины" value="15" data-icon="">Марка вашей первой машины</option><option label="Фамилия вашего любимого учителя" value="16" data-icon="">Фамилия вашего любимого учителя</option><option label="Ваша любимая книга в детстве" value="17" data-icon="">Ваша любимая книга в детстве</option><option label="Ваша любимая компьютерная игра" value="18" data-icon="">Ваша любимая компьютерная игра</option><option label="Задайте собственный вопрос" value="99" data-icon="">Задайте собственный вопрос</option></select></span>


Адрес страницы с проблемой:
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Даниил955447112
1 Попробуйте зайти через мобильную версию, там и регте почту
2 Если через браузер не входит в мобильную версию то
2.1 установите плагин для изменения User Agent (искать в Addons mozila)
3 Думаю там ? в моб версии , таких скролингов нет
4 Иногда сам так делал

Даниил955447112

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>FORM>DIV:nth-of-type(5)>DIV:nth-of-type(3)>SPAN:nth-of-type(2)" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>SPAN>UL>LI:nth-of-type(8)>A" BUTTON=0

цифра 8 во второй строке - номер пункта в выпадающем меню

InfSub пишет

Даниил955447112

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>FORM>DIV:nth-of-type(5)>DIV:nth-of-type(3)>SPAN:nth-of-type(2)" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>SPAN>UL>LI:nth-of-type(8)>A" BUTTON=0

цифра 8 во второй строке - номер пункта в выпадающем меню

Спасибо большое, всё что вы пишете, всё работает!
Только я сделал, так: первую строку вашу взял, вторую наработанную временем свою, по той простой причине, что Яндекс с позициями "Контрольных вопросов" мудрит, иногда что-то добавляет и убирает, в итоге получилось следующее:

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>FORM>DIV:nth-of-type(5)>DIV:nth-of-type(3)>SPAN:nth-of-type(2)" BUTTON=0
TAG POS=1 TYPE=A ATTR=TEXT:Фамилия<SP>вашего<SP>любимого<SP>у*


Всё работает прекрасно!!! :)

Даниил955447112 пишет

Только я сделал, так: первую строку вашу взял, вторую наработанную временем свою, по той простой причине, что Яндекс с позициями "Контрольных вопросов" мудрит, иногда что-то добавляет и убирает

2ю строку можно сократить до:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TEXT:*учителя*

PRESIDENT пишет

spy686
Не совсем понял задачу, тебе текст на сайте нужно ввести или для чего нажатие иметировать ?

Опять вернулся к этому вопросу.

Необходимо нажать клавишу вниз.

Есть такой код:

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13


Это нажатие Enter

А надо нажатие кнопки "стрелка вниз" и что за selector/

Подскажите, пожалуйста, нормальную страницу wiki про эти вещи.
нашел только: http://wiki.imacros.net/EVENT - но тут ничего полезного

29-06-2015 22:27:13

Клавиши нашел:
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


29-06-2015 22:28:06
Осталось разобраться что за SELECTOR.

29-06-2015 22:29:14

скрытый текст

Выделить код

Код:

<div tabindex="0" role="option" draggable="true" data-target="doc" data-id="0B09LcVUshRHGdDQyeVNkQktYRjA" class="a-u-H k-ji-ae a-u-H-da a-u-H-qd-yg" id=":1j.0B09LcVUshRHGdDQyeVNkQktYRjA" aria-selected="true" aria-disabled="false"><div class="a-u-Wa"><div class="a-u-Wa-Ye-aa a-u-k-P"><div class="a-u-Wa-bb a-u-H-ll"><div aria-label="00001_240615_103433_26720879.jpg Изображение с общим доступом" data-id="0B09LcVUshRHGdDQyeVNkQktYRjA" class="k-u-P-m" style="outline: 1px solid blue;"><div class="k-I-ja-bi"></div><div data-is-doc-name="true" class="k-u-P-d-m"><div class="k-u-d k-u-eb"><img alt="" src="https://drive.google.com/thumbnail?id=0B09LcVUshRHGdDQyeVNkQktYRjA&amp;authuser=0&amp;v=1435493903377&amp;sz=w32-h32-p-k-nu"></div></div><div class="k-u-P-M" aria-label="00001_240615_103433_26720879.jpg"><span data-is-doc-name="true" class="k-ta-P-x">00001_240615_103433_26720879.jpg</span></div><div class="k-u-X-m"><div class="k-u-Ta-d k-u-X" data-tooltip-align="b,l" data-tooltip-delay="1000" data-tooltip="В общем доступе" aria-label="В общем доступе" data-tooltip-unhoverable="true"><div class="k-u-Ta-d-Pl"><svg focusable="false" viewBox="0 0 16 16" height="16px" width="16px" y="0px" x="0px"><path d="M5,7 C6.11,7 7,6.1 7,5 C7,3.9 6.11,3 5,3 C3.9,3 3,3.9 3,5 C3,6.1 3.9,7 5,7 L5,7 Z M11,7 C12.11,7 13,6.1 13,5 C13,3.9 12.11,3 11,3 C9.89,3 9,3.9 9,5 C9,6.1 9.9,7 11,7 L11,7 Z M5,8.2 C3.33,8.2 0,9.03 0,10.7 L0,12 L10,12 L10,10.7 C10,9.03 6.67,8.2 5,8.2 L5,8.2 Z M11,8.2 C10.75,8.2 10.46,8.22 10.16,8.26 C10.95,8.86 11.5,9.66 11.5,10.7 L11.5,12 L16,12 L16,10.7 C16,9.03 12.67,8.2 11,8.2 L11,8.2 Z" fill="#000000"/></svg></div><div class="k-u-Ta-d-da"><svg focusable="false" viewBox="0 0 16 16" height="16px" width="16px" y="0px" x="0px"><path d="M5,7 C6.11,7 7,6.1 7,5 C7,3.9 6.11,3 5,3 C3.9,3 3,3.9 3,5 C3,6.1 3.9,7 5,7 L5,7 Z M11,7 C12.11,7 13,6.1 13,5 C13,3.9 12.11,3 11,3 C9.89,3 9,3.9 9,5 C9,6.1 9.9,7 11,7 L11,7 Z M5,8.2 C3.33,8.2 0,9.03 0,10.7 L0,12 L10,12 L10,10.7 C10,9.03 6.67,8.2 5,8.2 L5,8.2 Z M11,8.2 C10.75,8.2 10.46,8.22 10.16,8.26 C10.95,8.86 11.5,9.66 11.5,10.7 L11.5,12 L16,12 L16,10.7 C16,9.03 12.67,8.2 11,8.2 L11,8.2 Z" fill="#FFFFFF"/></svg></div></div></div><div class="k-u-br-m"><div></div></div><div class="k-u-Sl-Kq-m"><div></div></div><div class="k-u-bO5k1e-ae-m"></div></div></div></div></div><div class="a-u-Wa a-u-wc"><div class="a-u-Wa-Ye-aa a-u-k-nj"><div class="a-u-Wa-bb a-u-H-ll"><div class="a-pa-sc-m" data-tooltip-align="b,l" data-tooltip="Принадлежат мне" aria-label="Принадлежат мне" data-tooltip-unhoverable="true"><span class="a-pa-sc-J">я</span></div></div></div></div><div class="a-u-Wa a-u-wc"><div class="a-u-Wa-Ye-aa a-u-k-Jh"><div class="a-u-Wa-bb a-u-H-ll"><div class="a-pa-sc-m" data-tooltip-align="b,l" data-tooltip="Мое последнее изменение: 28 июня 2015 г." aria-label="Мое последнее изменение: 28 июня 2015 г." data-tooltip-unhoverable="true"><span class="a-pa-sc-J">28 июня 2015 г.</span><span class="a-pa-sc-qk">я</span></div></div></div></div><div class="a-u-Wa a-u-wc"><div class="a-u-Wa-Ye-aa a-u-k-ba-Kk"><div class="a-u-Wa-bb a-u-H-ll"><div class="a-pa-sc-m" data-tooltip-align="b,l" data-tooltip="Размер файла: 6&nbsp;КБ" aria-label="Размер файла: 6&nbsp;КБ" data-tooltip-unhoverable="true"><div class="a-pa-sc-J">6&nbsp;КБ</div></div></div></div></div></div>


Вот код где надо нажать стрелку вниз, что брать для SELECTOR ?

spy686 пишет

Осталось разобраться что за SELECTOR

SELECTOR - в вашем случае - это id элемента в html-коде, он таким и останется если вам вместо enter нужно нажать вниз
вообще же, это может быть путь от корня страницы либо от ближайшего id "в глубину" до нужного элемента

spy686 пишет

Подскажите, пожалуйста, нормальную страницу wiki про эти вещи.

ее нет, во всяком случае, об имакросе, только применительно к html, так как за основу взят именно он

Здравствуйте. А можно как-то реализовать запуск макроса по времени? К примеру с 11:00 - 14:00 он работал.

Tungen пишет

А можно как-то реализовать запуск макроса по времени?

в windows есть "планировщик заданий" в linux - cron

Tungen пишет

К примеру с 11:00 - 14:00 он работал.

это не запуск по времени, а работа в определенные часы
да, на js можно реализовать сравнение времени, условно будет выглядеть так:

если time больше 11:00 и time меньше 14:00

Может кому понадобиться.

Решил свой вопрос

Tungen пишет

Здравствуйте. А можно как-то реализовать запуск макроса по времени? К примеру с 11:00 - 14:00 он работал.

Выделить код

Код:

var today = new Date;
var hours = today.getHours();
var a = 11  //c 11 утра
var b = 14  //до 14 дня
if(a <= hours && hours <= b){ ... }
else{ ... };

Tungen пишет

Решил свой вопрос

в else рекомендовал бы добавить следующий код:

скрытый текст

Выделить код

Код:

iimPlayCode('WAIT SECONDS='+(((hours<a)?a-hours:b-hours+a)*3600-today.getMinutes()*60));

Задача для сайта ВК:
Если в группе/паблике количество участников/подписчиков больше указанной
в скрипте значения, то должен сохранить ссылку группы/паблика в текстовый документ.

Не могу сделать следующее:
Воспроизводится строчка iimPlayCode и дальше не идёт.

Думаю проблема в .replace.
Извлекается с пробелами и с словами.

Что не так делаю? Подправьте.

скрытый текст

Выделить код

Код:

// Сколько должно быть участников в группе/паблике?
var участники = 5777;

iimPlayCode("TAG POS=1 TYPE=DIV ATTR=CLASS:p_header_bottom EXTRACT=TXT")
var friends=+iimGetLastExtract().replace(/\\n/g,' ');
var friends=+iimGetLastExtract().replace('человек','');
var friends=+iimGetLastExtract().replace('человека','');
var friends=+iimGetLastExtract().replace('подписчика','');
var friends=+iimGetLastExtract().replace('подписчиков','');
var friends=+iimGetLastExtract().replace(/\s+/gim,'');
if (friends>=участники){
iimPlay("сохраняет.iim",60);
}

Алим

скрытый текст

Выделить код

Код:

var friends=iimGetLastExtract().replace(/\s/g,'').replace(/(\d+).*/,'$1');

Спасибо InfSub, работает.

Все привет. Такая проблема делаю скрипт на мой мир, функция скрипта такая. Вставляет в поиск на сайте email и собирает о нем инфу и там такое что class  тега Страны/Города и "Возраста" имеет одинаковые названии... Мне нужно только Страна и Город. И если автор страницы не заполнил данные Страна/ Город то он автоматом сохраняет "Возраст". Есть у кого то идея как сделает проверку !EXTRACT на содержание возраста (пример возраста "44 года" или "50 лет")? P.S Я не знаю можно ли так сделать так, но было бы класс если бы можно проверить чисто на слова "года" и "лет".

30-06-2015 20:45:15
И еще можно ли макросом сохраняемый файл (текст) в excel отображался в два столбца?

Hamzat

скрытый текст

Выделить код

Код:

if(/\d+ (года|лет)/.test(iimGetLastExtract())){
    alert('возраст');
}else{
    alert('нет');
};

30-06-2015 21:03:37

Hamzat пишет

можно ли

вам только 3 дня назад приводили пример, как это сделать

InfSub пишет

Hamzat

скрытый текст

Выделить код

Код:

if(/\d+ (года|лет)/.test(iimGetLastExtract())){
    alert('возраст');
}else{
    alert('нет');
};

Спс))

Это я помню... Например: так он выглядит в блокноте "Текст","Текст", только в exsel он отображается в одном столбце... Пока не мере так мне сказали.

Hamzat пишет

только в exsel он отображается в одном столбце...

В Excel он отображается нормально, если открыть его не двойный кликом, а через Файл => Открыть и далее следовать мастеру

30-06-2015 21:14:05
опять же, поиск по слову excel в данной ветви форума -  дает удобоваримую инструкцию

InfSub

скрытый текст

Выделить код

Код:

if(/\d+ (года|лет)/.test(iimGetLastExtract())){};


тут можно указать "Не"? Если да то куда вставлять "!"?

Hamzat пишет

тут можно указать "Не"? Если да то куда вставлять "!"?

туда же, куда и обычно, в начало условия:

скрытый текст

Выделить код

Код:

if(!/\d+ (года|лет)/.test(iimGetLastExtract())){/*действие, если не возраст*/};

InfSub пишет

в else рекомендовал бы добавить следующий код:

скрытый текст

Выделить код

Код:

iimPlayCode('WAIT SECONDS='+(((hours<a)?a-hours:b-hours+a)*3600-today.getMinutes()*60));

Спасибо большое. С ним вообще прекрасно, а то я эту проблему решил через костыль, который только озу тратил.

:whiteflag: Здравствуйте! И снова аймакрос не хочет кликать :angry: на этот раз на другом сайте.
Раньше спасал клик по координатам, но координаты периодически меняются, есть другой способ кликнуть?

Скриншот:
Noviytoche_9448764_17863041.jpg

Внешний код элемента:

Выделить код

Код:

<input checked="checked" name="group" id="RadioButtonYandex" tabindex="undefined" value="radioctl826" type="radio">


Что записывает аймакрос:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:RADIO FORM=ID:form1 ATTR=ID:RadioButtonYandex

День добрый.Нужна помощь, совсем запутался в коде.:/

Такой вопрос.Есть условие, где выдается два значения правда или ложь.Как-нибудь возможно сделать, чтобы если значение истина, то мой макрос вернулся на одну из предыдущих строк, которые уже выполнялись и еще раз их повторил? И затем снова дошел до условия и так пока не появиться значение ложь.

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Условие")


[firefox]

Eugene1111 пишет

возможно сделать, чтобы если значение истина, то мой макрос вернулся на одну из предыдущих строк, которые уже выполнялись и еще раз их повторил? И затем снова дошел до условия и так пока не появиться значение ложь.

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

if ( условие true/false ) break ; Бреак прервёт/остановит цикл

Даниил955447112 пишет

есть другой способ кликнуть

запишите скрипт или проблемный участок, через EVENT
Запись => Recording options => Experimental event recording mode
переключать режимы записи, можно и в процессе записи скрипта, не останавливая саму запись

01-07-2015 22:59:17
Eugene1111
немного расширю ответ PRESIDENT'a

скрытый текст

Выделить код

Код:

var macro1 = 'здесь код, который выполняется единожды в каждом цикле, к примеру вход на страницу';
var macro2 = 'здесь код, который нужно повторить, если условие - истина';
var macro3 = 'здесь код, который будет выполняться, после';

while(true){  // Если требуется повторить весь код многократно
    iimPlayCode(macro1);
    do{
        iimPlayCode(macro2);
        var r=iimGetLastExtract();
    }while(r==true);   // пока условие - истина, код из macro2 будет повторяться
    iimPlayCode(macro3);
};

InfSub пишет

Eugene1111
немного расширю ответ PRESIDENT'a

Спасибо огромное.Я отправляю на нужном моменте из iim---js, а вернуться в середину кода в iim, откуда я отправил не получиться никак? [firefox]

Eugene1111
приведенный код - в js
iim-код, записывается в переменные
я же, вроде бы, все подробно расписал

в чистом iim-скрипте, так сделать - нельзя

Товарищи, подскажите пожалуйста такую вещицу.

Запускаю js из iim:

Выделить код

Код:

URL GOTO=imacros://run/?m=path/file.js

Каким образом можно передать переменную из iim в этот js?
Есть идеи?

Вариант записи в файл и вытягивание не совсем подходит

Ребята такое дело на странице есть тег

Выделить код

Код:

TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh

Но когда на странице нет определенной информации (всегда разной) то тег выглядит так

Выделить код

Код:

TAG POS=2 TYPE=DIV ATTR=CLASS:_52eh

Вопрос: Как сделать так чтобы выбирался то что нужно именно мне?

Hamzat
что значит нужной вам?
если у вас прописан к коде:

Hamzat пишет

TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh

он и будет выбираться и ни какой другой

03-07-2015 21:01:18

spy686 пишет

Каким образом можно передать переменную из iim в этот js?

только записью в файл, iim не предназначен для управления js, скорее наоборот

InfSub пишет
Hamzat пишет

TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh

он и будет выбирать и ни какой другой

Это естественно, но когда на странице нет определенной инфы то он приобретает TAG POS 2, и соответственно скрипт не находит  TAG POS 3.

Hamzat

как-то так

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh
TAG POS=2 TYPE=DIV ATTR=CLASS:_52eh
SET !ERRORIGNORE NO

InfSub пишет

Hamzat

как-то так

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh
TAG POS=2 TYPE=DIV ATTR=CLASS:_52eh
SET !ERRORIGNORE NO

Это к сожалению мне не подходит, так как содержимую я загоняю в EXTRACT, а последующим сохраняю то в такое случае сохраниться не нужную мне инфа. У меня тут возникла одна идея, тот тег который мне нужен имеет такую содержимую "Живет в Город", я хочу загнать содержимую в EXTRACT и разделить

скрытый текст

Выделить код

Код:

var w = iimGetLastExtract();
    var b = w.split(' в ');
    f = b[0];


и далее f проверить через if на "Живет"... Теоретически должно работать , что скажите?

нужна помощь, есть контейнеры такого вида

скрытый текст
<div class="group-list-item" id="task-1304"><a href="javascript:void(0)" onclick="window.App.open_yt_task_window('1304');"><div class="yt-task-image"><img alt="Default" class="thumbnail" src="https://i.ytimg.com/vi/f03-wJxs968/default.jpg"><div class="task-bonus">4®</div></div></a></div>

по которым нужен клик, пробовал вот так EVENT TYPE=CLICK SELECTOR="#task-*>A>DIV>IMG" BUTTON=0 но не работает

Hamzat
если вы пишете через js то вообще в чем проблема получить нужные данные?
если

TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh EXTRACT=TXT

вернет #EANF# значит запускаете второй код ... куда уж элементраней

03-07-2015 21:21:58
korozist
в EVENT звездочка - не работает

03-07-2015 21:25:10
Hamzat
или у вас всегда, третий тег присутствует?
опишите по человечески проблему, а не так что каждое слово из вас приходится вытягивать, и в место одного поста - разводить тут обсуждение на пол страницы

InfSub
если вы пишете через js то вообще в чем проблема получить нужные данные?
если

TAG POS=3 TYPE=DIV ATTR=CLASS:_52eh EXTRACT=TXT

вернет #EANF# значит запускаете второй код ... куда уж элементраней

))) Очередной раз моя не внимательность)) Спасибо сократили 20 строк кода) Хотя так работал))

Hamzat пишет

Спасибо сократили 20 строк кода)

это сократит еще 3-4

Hamzat пишет

тег который мне нужен имеет такую содержимую "Живет в Город"

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:_52eh&&TXT:"*Живет в Город*" EXTRACT=TXT

Все получилось...

InfSub пишет

korozist
в EVENT звездочка - не работает

а как тогда можно сделать ? по координатам не вариант

korozist
извлеките id и подставьте в event

InfSub пишет

korozist
извлеките id и подставьте в event

можешь пожалуйста подсказать как это осуществить ?

korozist

как-то так:

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=DIV ATTR=ID:"task-*" EXTRACT=HTM
SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/id=\\"(.*?)\\"/).pop()")
EVENT TYPE=CLICK SELECTOR="#{{!VAR1}}>A>DIV>IMG" BUTTON=0

Скрипт работает со 2й вкладкой

Выделить код

Код:

iimPlayCode('TAB OPEN\nTAB T=2\nURL GOTO='+url+'')

Следующим шагом

Выделить код

Код:

iimPlayCode('TAB T=1');

Не хочет переходить в 1ю вкладку..  не пойму, в чем проблема ?

Татьянa пишет

Не хочет переходить в 1ю вкладку..  не пойму, в чем проблема ?

Приведенный Вами код, аналогичен запуску двух разных iim-скриптов.
тыц

Добрый день. Застрял с кодом, никак не получается. Ауди недавно сайт обновили, теперь фотки неудобно качать.

url
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Мне нужно последовательно качать много файлов.
Сделал этот скрипт - не пашет:
скрытый текст

Выделить код

Код:

TAB T=1
SET !VAR1 19927
ADD !VAR1 {{!LOOP}}
URL GOTO=https://www.audi-mediacenter.com/en/photos/detail/24h-le-mans-2015-{{!VAR1}}
TAG POS=1 TYPE=A ATTR=TXT:large<SP>(2.1<SP>MB)
TAB T=2
TAB T=1


Попробовал сделать другой, непосредственно на адрес с фото, тоже не получается:
скрытый текст

Выделить код

Код:

TAB T=1
SET !VAR1 19927
ADD !VAR1 {{!LOOP1}}
SET !VAR2 A153695
ADD !VAR2 {{!LOOP2}}
URL GOTO=https://audimediacenter-a.akamaihd.net/system/production/media/{{!LOOP1}}/images/896aa72c160488758b7e58b7566166a705c7e73a/{{!LOOP2}}.jpg
SAVEAS TYPE=CPL FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss}}


Написал два SET VAR на 19927 и на A153695.jpg, но из-за постоянно меняющегося кода 896aa72c160488758b7e58b7566166a705c7e73a не получается запустить последовательность.

JMC55

Download потеряли, потому и не пашет:

Выделить код

Код:

SET !VAR1 19927
ADD !VAR1 {{!LOOP}}
URL GOTO=https://www.audi-mediacenter.com/en/photos/detail/24h-le-mans-2015-{{!VAR1}}
TAG POS=1 TYPE=A ATTR=TXT:Download*
TAG POS=1 TYPE=A ATTR=TXT:large*

флуд
пожскажите как сделать чтоб скрипт правильно вводил капчу!!! дело в том что капчу на рукапче определяют правельно а скрипт в адресную строку пишет длиный текст со всякой ерундой! заранее спасибо!

прежде чем задать вопрос, прочтите  правила форума iMacros
правила темы iMacros: раздел 1.2, пункты: 1.2.4 и 1.2.5

InfSub

InfSub пишет

JMC55

Download потеряли, потому и не пашет:

Выделить код

Код:

SET !VAR1 19927
ADD !VAR1 {{!LOOP}}
URL GOTO=https://www.audi-mediacenter.com/en/photos/detail/24h-le-mans-2015-{{!VAR1}}
TAG POS=1 TYPE=A ATTR=TXT:Download*
TAG POS=1 TYPE=A ATTR=TXT:large*

Спасибо большое за подсказку!

Нужна помощь, как сделать автоматическое заполнение первого поля значениями из цикла? При этом необходимо каждый раз снова запускать скрипт чтобы он получал новые данные со страницы и записывал их в csv по очереди. Меняется только первое поле для заполнения, со вторым проблем нет.

скрытый текст

Выделить код

Код:

var WHAT;
for (var i =2; i<5; i++) {
        WHAT = i;
}

var WHERE = "A";
var macro;
macro =   "CODE:";
macro +=  "TAB T=1" + "\n"; 
macro +=  "URL GOTO=http://*/" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/search ATTR=ID:what_org CONTENT={{WHAT}}" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/search ATTR=ID:where_org CONTENT={{WHERE}}" + "\n"; 
macro +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/search ATTR=*" + "\n"; 
macro +=  "TAG POS=1 TYPE=A ATTR=ID:f*" + "\n"; 
macro +=  "TAG POS=1 TYPE=H1 ATTR=TXT:* EXTRACT=TXT" + "\n"; 
macro +=  "TAG POS=1 TYPE=LI ATTR=TXT:* EXTRACT=TXT" + "\n"; 
macro +=  "PROMPT {{!EXTRACT}}" + "\n"; 
macro +=  "SAVEAS TYPE=EXTRACT FOLDER=* FILE=RESULT.csv" + "\n"; 

for (var j = 0; j < 10; j++) {
    iimPlay("macro");
}

tgkd пишет

как сделать автоматическое заполнение первого поля значениями из цикла?

скрытый текст

Выделить код

Код:

var macro =  .....
for(...){
    iimSet('имя_iim_переменной', 'значение');
    iimPlay(macro)
};

InfSub, Спасибо)

Здравствуйте. удалено. И так, сам вопрос, есть макрос:

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !LOOP -99999
SET !TIMEOUT 120
SET !ERRORIGNORE YES
URL GOTO=https://*****
TAB T=1
TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать
TAB T=2
WAIT SECONDS=6
EVENT TYPE=CLICK SELECTOR="#watch8-sentiment-actions>SPAN>SPAN>BUTTON" BUTTON=0
WAIT SECONDS=4
'Close tabs and continue...
TAB T=1
'New Counter
WAIT SECONDS=20
'NC
TAB CLOSEALLOTHERS
WAIT SECONDS=3


какую нужно добавить переменную что-бы при выполнении "TAG POS=1 TYPE=BUTTON FORM=NAME:myForm ATTR=TXT:Начать" если кнопка есть то продолжалась работа скрипта, а если её нету то нужно перезагружать страницу с интервалом скажем 60 сек пока она не появится или к примеру пропустить все подальшые действия и перейти к строке "URL GOTO=https://******" и продолжить выполнение скрипта с этой строки


исправлено
Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler]

InfSub

Как можно вывести текст в строку? Допустим есть

Выделить код

Код:

macros +=  'TAG POS=1 TYPE=H1 ATTR=TXT:Abcd EXTRACT=TXT' + '\n';

и нужно перевести "Abcd" в строку JS.

А возможно ли такое:
На странице есть 10 DIV-ов с одинаковым классом cell2.
Мне нужно по порядку выгрузить HTML этих DIV-ов.
iimPlay("CODE: TAG POS=1 TYPE=DIV ATTR=CLASS:cell2 EXTRACT=HTM"); - выгружает первый DIV  с таким классом.
А можно ли указать в такой конструкции кода, чтоб выгрузил   2 по счету DIV или 3?

romanstr
у вас уже бобавлено игнорирование ошибок SET !ERRORIGNORE YES, так что не найденные команды будут игнорироваться
как вариант, сделать цикл на js, читайте тему, примеров полно

tgkd

tgkd пишет

нужно перевести "Abcd" в строку JS.

что значит перевести в строку js?

08-07-2015 16:56:54
mmmaks2004
TAG POS=1 ...
TAG POS=2 ...
...
TAG POS=10 ...

tgkd
если речь о получении результата Extract'a то: var result = iimGetLastExtract()


господа, не забываем пользоваться поиском, все это неоднократно обсуждалось на форуме, все основы использования iMacros и связки js+iMacros описаны со всех сторон

InfSub
Спасибо, это то что нужно.

:whiteflag: Здравствуйте!

Как сделать чтобы аймакрос вставил электронный адрес почты в сервисе "Яндекс почта", в поле "Кому".
Все методы записи в аймакросе перебрал. Так и не смог добиться успеха.

Скриншот:
Noviytoche_9403223_17964940.jpg

Яндекс почта (для экспериментов):
https://mail.yandex.ru/
Логин: timur.baryshnikov@yandex.ru
Пароль: qwerty80

Даниил955447112
Не совсем верное решение, но работает )

скрытый текст

Выделить код

Код:

SET !VAR1 testmail@ya.ru
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(5)>DIV>DIV:nth-of-type(3)>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV>DIV>FORM>TABLE>TBODY>TR:nth-of-type(3)>TD:nth-of-type(2)>DIV:nth-of-type(2)>DIV" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(5)>DIV>DIV:nth-of-type(3)>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV>DIV>FORM>TABLE>TBODY>TR:nth-of-type(3)>TD:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>INPUT" CHARS="{{!VAR1}}"


В идеале нужно достать ID и подставлять потом
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:./ ATTR=ID:nb-39

nb-39 меняется

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

undoxone

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#fwr_text" KEYS="[8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8]"

одна 8 = 1 Backspase


Сначала прикрепите все что нужно, потом пишите текст, иначе удалит вместе с текстом

В общем не получается у меня этот примитивный фокус, возможно ивент не хочет в связке с пост филдом, или же где то какие то особые условия нужны

скрытый текст

Выделить код

Код:

URL GOTO=https://vk.com/ozsharaka
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Настоящий<SP>Иисус<SP>в<SP>контакте!<SP>Официальная<SP>его<SP>группа<SP>vk.com/ozsharaka٫<SP>читай<SP>исключай<SP>то<SP>что<SP>делать<SP>нельзя<SP>что<SP>бы<SP>научиться<SP>быть<SP>собой!<SP>Каждое<SP>Его<SP>слово<SP>правда<BR>https://vk.com/terminator.genisys?z=photo3599220_370014271%2Fwall-95898480_179<SP>http://vk.com/audio2000127440_380603488_-55327726_1095<SP>
EVENTS TYPE=KEYPRESS SELECTOR="#fwr_text" KEYS="[8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8]"
WAIT

undoxone
Разные ID я для примера кидала.

скрытый текст

Выделить код

Код:

EVENT TYPE=MOUSEDOWN SELECTOR="#post_field" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="Сюда текст текст...."


В вашем случае

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" KEYS="[8,8.......]"

Прочитайте мое сообщение выше, по поводу написания поста

Камрады, ткните плиз носом где я ошибку не вижу, а то в ступор вошел)

скрытый текст

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
SET !TIMEOUT 60
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAB T=1
TAG POS=1 TYPE=A ATTR=DATA-SNID:gp&&CLASS:sn-icon&&TXT:
TAB T=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(7)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>SPAN>SPAN>SPAN>DIV>SPAN" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=MOUSEDOWN SELECTOR="#\\:0\\.f" BUTTON=0
EVENT TYPE=MOUSEMOVE SELECTOR="#\\:0\\.f" POINT="(123,105)"
EVENT TYPE=MOUSEUP POINT="(123,105)"
SET !DATASOURCE test1.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
EVENTS TYPE=KEYPRESS SELECTOR={{!COL1}}
WAIT SECONDS=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(7)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>SPAN>SPAN>SPAN>DIV>SPAN" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(7)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>SPAN>SPAN>SPAN>DIV>SPAN" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(7)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>SPAN>SPAN>SPAN>DIV>SPAN" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(7)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV" BUTTON=0
WAIT SECONDS=3
SET !DATASOURCE test2.csv
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS={{!COL1}} TYPE=SPAN ATTR=CLASS:g-h-f-za-B
WAIT SECONDS=1
EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(7)>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>SPAN:nth-of-type(2)" BUTTON=0
EVENT TYPE=MOUSEUP POINT="(107,613)"
WAIT SECONDS=3
TAG POS=2 TYPE=DIV ATTR=TXT:Попрощаться
WAIT SECONDS=1
TAB T=1
TAB CLOSEALLOTHERS
WAIT SECONDS=3


Собственно не пойму, почему с 14 по 18 линии не работает круг, т.е. в test1.csv 3 строчки вида "текст", сохранен в utf8

Protey
{{!LOOP}} нельзя сбросить на 1 или иное другое число, команда SET !LOOP число только единожды выставляет значение переменной, в первом цикле при первом вхождении, далее ни на что не влияя

Коллеги, добрый день!

Возник вопрос. Мы реализовали с помощью iMacros систему автоматического тестирования функционала. Каждый тест представляет собой папку с набором iim файлов, которые запускаются через js файл, являющийся контроллером. На каждый тест такая папка, в каждой свой js и свои файлы iim. Нужно было реализовать каким-то образом автозапуск группы тестов. Сделали батник, который вызывает глобальный js файл, который по сути "дергает" jsники из каждого теста. Выглядит он примерно так:

скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=Tests/Script_1/control.js")
iimPlayCode("URL GOTO=imacros://run/?m=Tests/Script_2/control.js")


И так далее, на каждый тест, который нужно запустить. Проблема в следующем: отрабатывают первые ~7 тестов, а потом 9-й, 13-й и еще парочка. То есть по непонятным причинам пропускается часть. Если убрать, например, строки первых 7 тестов и запустить, то восьмой запустится. Если вернуть - перестанет запускаться. Есть идеи, в чем может быть проблема? Все тесты имеют совершенно одну структуру.

Ну или может быть, есть идеи, как иначе можно реализовать запуск группы тестов?

Jawdet
По поводу (пропускает,прыгает) в js
Пару стр. назад. InfSub Писал:
проблема в том, что вызов js из js - часто отрабатывает криво, и проблема не в содержимом файла, а в самой процедуре вызова js из другого js - так что, это баг имакроса 

Татьянa пишет

Jawdet
По поводу (пропускает,прыгает) в js
Пару стр. назад. InfSub Писал:
проблема в том, что вызов js из js - часто отрабатывает криво, и проблема не в содержимом файла, а в самой процедуре вызова js из другого js - так что, это баг имакроса 

Понял вас. Может быть, подкинете идею, как иначе можно реализовать?

InfSub пишет

команда SET !LOOP число только единожды выставляет значение переменной

другими словами, SET !LOOP можно использовать в коде только один раз?
ладно, а если использовать js, зациклить его и в нем использовать, к примеру, командные строки iimPlay("test/test1.iim",60); и iimPlay("test/test2.iim",60);, где в test1.iim и test2.iim присутствует команды SET !LOOP, {{!LOOP}} в обеих .iim будет работать цикл или он будет сбрасываться?
по логике цикл должен сбрасываться, но все таки, а вдруг, как думаешь?)

Protey, не совсем так, переменной !loop единожды можно передать (стартовое) значение, т.е. заменить 1, установленную по умолчанию, на своё значение, далее с каждым циклом значение !loop увеличивается на 1 измеить в процессе работы его уже нельзя

10-07-2015 22:21:53
Protey, из js, проще передать нужное значение в iim через функцию iimSet('имя_iim_переменной', 'значение') и забыть про !loop

Всем привет)). Такая ситуация возникла потребность рандомизировать клик скрипта... Есть на сайте сайдбар DIV с классом "_55y4". Нужно рандомно нажимать на разные ссылки находящийся в этом сайд баре. Скорее вопрос заключается в том что можно ли это сделать если каждая ссылка в сайд баре имеет  свой отдельный div,span и т.п?

10-07-2015 22:52:58
Либо есть ли какая то другая возможность это сделать?

Hamzat
... EXTRACT=HTM и далее парсинг кода js'ом, для извлечения ссылок и перехода по ним

10-07-2015 22:59:39
Jawdet
нужно смотреть ваши скрипты, вариантов решения, в принципе - куча, какая из реализаций подойдет вам - нужно смотреть

InfSub пишет

Hamzat
... EXTRACT=HTM и далее парсинг кода js'ом, для извлечения ссылок и перехода по ним

EXTRACT=HTM какой у Вас опыт работы с данной командой? У меня не получилось даже попробовать сразу mozilla падает.

Hamzat
Вы каким образом команду использовали? Как используется EXTRACT знаете?

InfSub пишет

Hamzat
Вы каким образом команду использовали? Как используется EXTRACT знаете?

если честно EXTRACT=HTM никогда не использовал, но вот EXTRACT=TXT использую в каждом скрипте так что опыт есть.

Hamzat, тогда перечитайте пункты правил этой темы 1.2.2 - 1.2.5 и оформите пост так, как там написано (ссылка, у меня в подписи)

InfSub
версия imacros 8.8.1,  браузер Mozilla 27.01 portable.
Код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:uiFutureSideNav EXTRACT=HTM


Ссылка
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

хм, у меня, данная версия FF+iMacros, "думала" секунд 30, но все же извлекла нужный кусок кода, более поздние версии - справляются на ура, да и не советовал бы я, так извлекать группы, все равно в левом меню их не полный список

полный список групп
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

InfSub
мне особа список групп не нужен, данным действием хотел сделать просто рандомные клики или по другому гулялку на сайте, по другому fb блокирует основную задачу скрипта. А вот гулять по группам из полного списка это не плохая идея. Спасибо.

У меня в макросе 3 loop и у всех разное значение

скрытый текст

Выделить код

Код:

SET !LOOP 1
TAG POS={{!LOOP}}

SET !LOOP 10
TAG POS={{!LOOP}}

SET !LOOP 5
TAG POS={{!LOOP}}


Как сделать, чтобы каждый loop шёл своим ходом при новых циклах макроса?

12-07-2015 14:28:00
В макросе есть одна строчка для рандома в секундах.
Но, мне нужно сделать 50 рандомных строчек для 1 цикла.
И для этого нужно вставить в макрос 50 рандомных строк.
Затем для каждой строки указать свои min=4,max=7.

Дело в том, что если указать одну рандомную строку, допустим от 5 до 10 секугд.
А затем вставить одинаковых 50 строк - WAIT SECONDS={{рандом}}, то везде
будут одинаковые задержки в 1 цикле.

Можно ли как нибудь, сделать такую рандомную строку, чтобы при одном цикле
везде были разные задерждки?

скрытый текст

Выделить код

Код:

SET рандом EVAL("var min=4,max=7;Math.floor(Math.random()*(max-min+1))+min;")
WAIT SECONDS={{рандом}}
WAIT SECONDS={{рандом}}
WAIT SECONDS={{рандом}}
WAIT SECONDS={{рандом}}
и т.д.

Алим, как работает !loop
По поводу рандомного времени, включите фантазию...

скрытый текст

Выделить код

Код:

WAIT SECONDS=EVAL(....)

оффтоп
Заранее извиняюсь за оффтоп. Такое дело, вопрос к тем кто пользуются fb, как Вы думаете фильтры fb будут относиться, лучше если в конце каждого цикла будет CLEAR или будет только хуже? (немного о скрипте: Скрипт проверяет базу email ов  через поиск, если владелец там зареган то сохраняет инфу о нем. И через примерно 50 циклов поиск по email адресам блокируют, прикрутил рандомную гулялку по сайты помогло, но все поиск блокируется примерно через 100 - 110 циклов. Вот думаю что будет если использовать CLEAR?

Интересует вопрос работы на ubuntu и дебиан . кто работал или работает на таких ОС с imacros ??? как там со стабильностью  ?
Хочу заказать себе дешовенький VPS , на виртуализации openVZ и установить туда ос с графической оболочкой, и установить браузер с imacros (Mozila , pale moon или что-то другое)
Сразу пишу, что все что написано выше я на практике ни разу не выполнял и советников у меня нету , так что пишите все подряд , мне будет интересен любой Ваш опыт!

kolshix, я, уже писал об этом, разве что в другом контексте, работает в принципе, так же, как и на виндоус, только посоветовал linux mint, а не ubuntu, с DE: MATE или LMDE, т.к. Cinnamon - хоть и красив, но ресурсов жрет немерено

13-07-2015 18:30:45

Скажите пожалуйста, вот например переменная равно 1, как можно сделать чтоб при каждом цикле прибавлялся 2, т.е чтоб значение менялись 3,5,7,9 и т.д. Как я понял из слов InfSub с помощью loop сделать не возможно.

Hamzat, математику ни кто не отменял и уж что такое арифметическая прогрессия, должны бы помнить, да и подобные примеры, уже были на форуме

пример:

Выделить код

Код:

PROMPT EVAL("1+2*({{!LOOP}}-1)")


14-07-2015 01:01:37

Hamzat пишет

Как я понял из слов InfSub с помощью loop сделать не возможно.

как видно из примера, вы не правильно поняли
нельзя изменить значение {{!LOOP}} внутри цикла, возможно только задать первоначальное значение {{!LOOP}}, но кто вам мешает использовать {{!LOOP}} для расчета?

InfSub пишет

арифметическая прогрессия

О извините, даже не подумал об этом)

Коллеги, все же ваша помощь нужна. Опишу суть:

Есть система тестирования веб функционала, реализованная на iMacros и Js. Реализована она следующим образом:

Есть набор папок вида "Script_1", "Script_2", и так далее. В каждой папке есть файлы iim с определенными сценариями и файл control.js, который является управляющим файлом для макросов. Каждый файл control.js выглядит примерно так:

скрытый текст

Выделить код

Код:

try{

var control; //Управляющая переменная 

control = iimPlay("Tests_future/Script_1/test_1.iim"); 
    if(control <0){
       throw "Err1";
       }

control = iimPlay("Tests_future/Script_1/test_2.iim"); //Запускаем тест 2
    if(control <0){
       throw "Err2";
       }


С самим Js проблем нет, поэтому не особо смотрите на его содержимое. Суть в том, что каждый тест запускается своим control.js, находящимся в папке соответствующего теста. Недавно понадобилось запускать тесты не по одному, а все последовательно, для проверка всего функционала. Сначала пытался реализовать задачу вот так:

скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=Tests/Script_1/control.js")
iimPlayCode("URL GOTO=imacros://run/?m=Tests/Script_2/control.js")


то есть создать js файл, который бы запускал контроирующие js каждого теста. Но это оказался плохой вариант, т.к. в iMacros глючит процедура вызова js из js, и некоторые тесты просто не запускаются.

Как можно реализовать поочередный запуск тестов?
Заранее спасибо за ответы.

Jawdet, объедините вызов тестов в один js-скрипт, без промежуточных js-файлов

InfSub пишет

Jawdet, объедините вызов тестов в один js-скрипт, без промежуточных js-файлов

Очень трудоемко получится, в jsниках много специфической логики для каждой проверки. Вариантов последовательного запуска нет? Может быть, с какими-то сторонними решениями..

Jawdet, *.cmd/*.bat - скрипт для запуска FF с параметрами (параметр - строка запуска нужного вам js)

Спасибо за подсказку! :)

флуд
Привет всем, подскажите можно ли сделать так. Например есть ключевые слова для поиска "Поиск1","Поиск2","Поиск3". Как сделать так чтобы слова для поиска брались последовательно?

задаем вопрос так, чтобы суть проблемы была понятна не только вам

InfSub
Ну хорошо)) Так есть ключевые слова для поиска в гугле, я хочу записать все эти слова в переменную !VAR или обычный var в js, далее мне нужно в поиск вставлять эти слова последовательно, т.е вставить поиск первое слова сделать необходимые действии, вставить второе и т.д.

И еще, клик по ссылке (TAG POS) можно сделать так чтобы ссылка открывалась новом окне?

Hamzat пишет

И еще, клик по ссылке (TAG POS) можно сделать так чтобы ссылка открывалась новом окне?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="...." BUTTON=1

где ... - идентификатор ссылки

Hamzat пишет

хочу записать все эти слова в переменную !VAR или обычный var в js, далее мне нужно в поиск вставлять эти слова последовательно, т.е вставить поиск первое слова сделать необходимые действии, вставить второе и т.д.

кто мешает записать их с разделителем и потом разбить в eval() на элементы массива (для iim) или сразу записать, как массив (для js)?

:whiteflag: Здравствуйте!

Можно ли отсеять дубликаты скопированные аймакросом перед вставкой в поле ввода?

Пример дубликатов скопированных аймакросом :
Владимир Петрович хороший
Владимир Петрович хороший
Владимир Петрович хороший
Владимир Петрович хороший

Что должно быть после отсеивания:
Владимир Петрович хороший

И второй вопрос: при выполнении аймакросом функции REFRESH выдаётся ошибка самим аймакросом на некоторых сайтах. Которые при закрытии или обновления страницы выдают диалоговые окна.
Как сделать что бы аймакрос обновлял страницу обходя эти сообщения?

Текст ошибки из окна состояния аймакроса:
RuntimeError: unhandled confirmEx dialog detected. Dialog message: "Эта страница просит вас подтвердить, что вы хотите уйти — при этом введённые вами данные могут не сохраниться.", line 1 (Error code: -1450)

Спасибо мыслящим людям!

красный цвет - используется, только, администрацией форума

InfSub

Ребят, вот уже неделя как я ищу ответ на проблему такого рода. пишу макросы и джава скрипты на биткоин краны, те что с обычной капчей подключены к рукапче, очень портит жизнь гуголская 2.0 , на сервисе она попадает и успешно её разгадывают ввдодом либо галок к соответствующему ответу к картинке или цифровым порядковым номером без запятой, обычно таких ответа 2-3. да я думаю многие знакомы с ней там где надо найти торт, мороженко или дорожные размытые знаки. это проблема номер раз.
Вторая проблема в том что макрос не кликает по заданным координатам, вообще мне нужно решить такую задачу

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467402]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467419]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467430]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467447]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3548424]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3548432]


цифры в скобках меняются, команды CLICK почему то не работают и макрос выдает ошибку

пользуюсь мазилой 27.0.1 iMacros 8.6

не ругайте если уже отвечали, не умею пользоваться форумами. прошу понять и простить :D

Сразу скажу что я не знаком с смысло-логической структурой да и вообще механикой скриптов, собираю свои методом подбора из разных готовых под свои нужды, и собственно уйму вариантов перепробывал а все никак не получаеться сделать так что бы скрипт заходя в группу контакта комментировал первую запись (хотелось бы конечно научиться комментировать записи чуть ниже чем просто первые позиции), то есть сейчас представленый код заходя в группу выбырает комментировать, входит в поле набора а вставлять или набирать кейпрессом наотказ не хочет какие бы я в ивентах названия не вставлял обьектов (пост, реплай) всё тщетно

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=DIV ATTR=TXT:Комментировать..
EVENTS TYPE=KEYPRESS SELECTOR CHARS="настоящий....!"
TAG POS=1 TYPE=DIV ATTR=ID:reply_field-************************************
WAIT SECONDS={{!VAR1}}
TAG POS=2 TYPE=DIV ATTR=TXT:Комментировать..
TAG POS=1 TYPE=DIV ATTR=ID:reply_field-************************************

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS=" http://v...
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Настоящий...

TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button


я понимаю что случай простейший, скажите как сделать так что бы в окно комментария вводился мой текст или хотя бы вставлялся, какие команды, события или обьекты нужны

Даниил955447112 пишет

Можно ли отсеять дубликаты скопированные аймакросом перед вставкой в поле ввода?

можно, если используете js

Даниил955447112 пишет

Что должно быть после отсеивания:

что должно быть в сообщении, чтобы на него можно было корректно ответить - читаем тут, пункты 1.2.4 и 1.2.5

Даниил955447112 пишет

Как сделать что бы аймакрос обновлял страницу обходя эти сообщения?

скрытый текст

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=
REFRESH

Здравствуйте. Как поменять город и страну вконтакте с помощью макрос. Мучаюсь над этим макросом никак не могу написать.
:D:D:D:D

16-07-2015 17:29:08

JoeWline пишет

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467402]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467419]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467430]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3467447]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3548424]
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:anim[3548432]

попробуй вместо цыфр поставить "*" , может поможет

попробуй вместо цыфр поставить "*" , может поможет

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

JoeWline пишет

не пробовал но пост то у них один, значит и жать будет вместо 6 на одну и ту же

изменение позиции с помощью POS=номер_позиции - ни кто не отменял

Как в макросе можна кликнуть на эту кнопку чтобы она развернулась??  Как выбрать потом город если на него макрос не реагирует( при нажатии не записует ни какого действия)?

скрытый текст
SnimokJPG_7169299_18056227.jpg

Вконтакте↑

lsalex144 пишет

Как в макросе можна кликнуть на эту кнопку чтобы она развернулась??  Как выбрать потом город если на него макрос не реагирует( при нажатии не записует ни какого действия)?


Вконтакте↑

запишите скрипт или проблемный участок, через EVENT
Запись => Recording options => Experimental event recording mode
переключать режимы записи, можно и в процессе записи скрипта, не останавливая саму запись.

InfSub пишет

изменение позиции с помощью POS=номер_позиции - ни кто не отменял

И вправду помогло) спасибо большое. не знал что можно менять и так вот все работать будет.

Вопрос еще такого рода... буду экстрактить из поля чисто циферные значения "123456789" цифры будут не все а некоторые из них но вместе, и теперь вопрос когда эти 2-3 цифры будут скопированы в буфер как им назначить соответсвующий TAG POS= ? я понимаю что без js не обойтись, но как это все дело собрать в кучу и чтоб работало не знаю, с js опыта еще меньше чем с iMacros

JoeWline, что значит выражение:

JoeWline пишет

цифры будут не все а некоторые из них но вместе

dash1.gif

JoeWline пишет

цифры будут скопированы в буфер

EXTRACT, если вы о нем, не имеет ни какого отношения к буферу обмена

JoeWline пишет

как им назначить соответсвующий TAG POS= ?

что значит соответствующий? соответствующий чему? тем цифрам, что экспортированы в extract с сайта?

огромная просьба, задавая вопрос - перечитайте его пару раз, и убедитесь, что он не вызовет еще с десяток наводящих вопросов

InfSub пишет

что значит соответствующий? соответствующий чему? тем цифрам, что экспортированы в extract с сайта?

вы все верно поняли. в ответе будет число допустим 38 как мне расчленить число 38 на цифры 3 и 8 ... в ответе будут цифры от 1 до 9 . это самый сложный для меня вопрос.  эти цифры от 1 до 9 будут равны TAG POS=.... (1) { TAG POS=1} ; (2) {TAG POS=2} и т.д.

JoeWline пишет

в ответе будут цифры от 1 до 9

скрытый текст

Выделить код

Код:

var m='',n='19';
n=n.split('');
for(;n[0]<=n[1];n[0]++){
    m+='POS='+n[0]+'.......\n';
};
iimPlayCode(m);

где n - значение из EXTRACT

не так я наверное блин выразился :(

в ответе будут цифры от 1 до 9 но все вместе, одним ответом. например 273,18,56. нужно разделить каждое число на цифры и присвоить им значение TAG POS= каждой цифре из ответа. если ответ в экстракте будет 18 то надочтоб присвоило TAG POS=1  и TAG POS=8

З.Ы. в ответе не может быть повторений цифр например 22 77 552. все цифры в числе будут разными.

для ответа, используем кнопку "Ответить", кнопка "Цитировать" - для цитирования выделенного мышью фрагмента текста

InfSub

JoeWline пишет

например 273,18,56. нужно разделить каждое число на цифры и присвоить им значение TAG POS= каждой цифре из ответа. если ответ в экстракте будет 18 то надочтоб присвоило TAG POS=1  и TAG POS=8

так что в итоге нужно? не уже ли так сложно описать ситуацию не кусками?
если у вас число 273,18,56 то вам нужно:

перебрать все числа из 273,18,56 (2,7,3,1,8,5,6):
POS=2.......
POS=7.......
POS=3.......
POS=1.......
POS=8.......
POS=5.......
POS=6.......

или
конкретные (1,8):
TAG POS=2 ...
TAG POS=8 ...

??

18-07-2015 14:21:01

вариант решения

Выделить код

Код:

var m='',i,n='273,18,56';
n=n.replace(/,/g,'').split('');
for(i in n){
    m+='POS='+n[i]+'.......\n';
};
iimPlayCode(m);

результат будет, как в первом примере:
POS=2.......
POS=7.......
POS=3.......
POS=1.......
POS=8.......
POS=5.......
POS=6.......

Привет всем. Нужна помощь!!
-У меня есть несколько аккаунтов, нужно чтобы скрипт на первом круге по очереди  поменял у всех аккаунтов на город 1 , потом на город 2 и т.д., что мне нужно дописать??
-И как сделать так чтобы макрос загружал логин и пароль с тхт файла, по очереди ??

скрытый текст

Выделить код

Код:

var log =login
var pas =password
iimSet("log",log);
iimSet("pas",pas);
var open ='CODE:SET !ERRORIGNORE YES\n SET !TIMEOUT_STEP 0\n URL GOTO=https://vk.com/\n TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{log}}\n SET !ENCRYPTION NO\n TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{pas}}\n TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=SPAN ATTR=TXT:Моя<SP>Страница\n WAIT SECONDS=2\n TAG POS=1 TYPE=A ATTR=TXT:Показать<SP>подробную<SP>информацию\n WAIT SECONDS=1\n EVENT TYPE=CLICK SELECTOR="#profile_full_info>H4>A" BUTTON=0\n WAIT SECONDS=3'
iimSet('open',open)

//Ukraine 
iimPlay(open);
for (g=36;g>=0;g--){
    iimSet('go',g)
    i=iimPlay('CODE:SET !TIMEOUT_STEP 0\n EVENT TYPE=CLICK SELECTOR="#dropdown{{go}}" BUTTON=0\n EVENT TYPE=MOUSEDOWN SELECTOR="#container{{go}}>DIV>DIV>UL>LI:nth-of-type(2)" BUTTON=0')
    if(i>0){
        break
    }
}
iimPlay('CODE:WAIT SECONDS=1');

//--------------------Kiev 
for (g=1;g<=37;g++){
    iimSet('go',g)
    i=iimPlay('CODE:SET !TIMEOUT_STEP 0\n EVENT TYPE=CLICK SELECTOR="#dropdown{{go}}" BUTTON=0\n EVENT TYPE=MOUSEDOWN SELECTOR="#container{{go}}>DIV>DIV>UL>LI:nth-of-type(2)" BUTTON=0')
    if(i>0){
        break
    }
}
iimPlay('CODE:WAIT SECONDS=10');

//-------------------Dnepropetrovsk 
for (g=1;g<=37;g++){
    iimSet('go',g)
    i=iimPlay('CODE:SET !TIMEOUT_STEP 0\n EVENT TYPE=CLICK SELECTOR="#dropdown{{go}}" BUTTON=0\n EVENT TYPE=MOUSEDOWN SELECTOR="#container{{go}}>DIV>DIV>UL>LI:nth-of-type(3)" BUTTON=0')
    if(i>0){
        break
    }
}

lsalex144 пишет

скрытый текст

Выделить код

Код:

var open ='CODE:...
iimSet('open',open)

? это что за новое веяние? теперь скрипты передаются через iimSet? dash1.gif

lsalex144 пишет

-И как сделать так чтобы макрос загружал логин и пароль с тхт файла, по очереди ??

поиск по теме по команде DATASOURCE, с аккаунтами, думаю - аналогично

InfSub пишет
lsalex144 пишет

скрытый текст

Выделить код

Код:

var open ='CODE:...
iimSet('open',open)

? это что за новое веяние? теперь скрипты передаются через iimSet? dash1.gif

Не знаю у меня всё работает.
А по поводу первого вопроса можно что то сделать??

lsalex144 пишет

Не знаю у меня всё работает.

у Вас работает iimPlay(open) зачем там iimSet('open',open) ?

lsalex144 пишет

по поводу первого вопроса можно что то сделать??

я вам уже ответил:

InfSub пишет

поиск по теме по команде DATASOURCE, с аккаунтами, думаю - аналогично

опечатался только, с городами - аналогично

InfSub
Сорян что непонятки такие) у меня просто крыша едет от этого всего программирования. числа будут с экстаркта рандомные минимум дву значные числа, максимум четырёх...и надо будет  это рандомное число разложить его на цифры и присвоить их TAG POS


Цитируем только то, на что отвечаем, правила, пункт 2.9
не нужно захламлять тему излишним цитированием

JoeWline
Чем Вас не устраивает решение из предыдущего поста?

Привет.:D
Вот мой скрипт.

скрытый текст

Выделить код

Код:

for(m=1;m<=4;m++){
iimSet('m',m);    
var open ='CODE:SET !ERRORIGNORE YES\n SET !TIMEOUT_STEP 0\n SET !DATASOURCE_DELIMITER :\n SET !DATASOURCE  C:\\Users\\коля\\Desktop\\1.txt\n SET !LOOP 2\n URL GOTO=https://vk.com/\n TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{!COL1}}\n SET !ENCRYPTION NO\n TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{!COL2}}\n TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=SPAN ATTR=TXT:Моя<SP>Страница\n WAIT SECONDS=2\n TAG POS=1 TYPE=A ATTR=TXT:Показать<SP>подробную<SP>информацию\n WAIT SECONDS=1\n EVENT TYPE=CLICK SELECTOR="#profile_full_info>H4>A" BUTTON=0\n WAIT SECONDS=3'
}
//Ukraine 
iimPlay(open);
for (g=36;g>=0;g--){
    iimSet('go',g)
    i=iimPlay('CODE:SET !TIMEOUT_STEP 0\n EVENT TYPE=CLICK SELECTOR="#dropdown{{go}}" BUTTON=0\n EVENT TYPE=MOUSEDOWN SELECTOR="#container{{go}}>DIV>DIV>UL>LI:nth-of-type(2)" BUTTON=0')
    if(i>0){
        break
    }
}
iimPlay('CODE:WAIT SECONDS=1');
//--------------------Kiev 
for (g=1;g<=37;g++){
    iimSet('go',g)
    i=iimPlay('CODE:SET !TIMEOUT_STEP 0\n EVENT TYPE=CLICK SELECTOR="#dropdown{{go}}" BUTTON=0\n EVENT TYPE=MOUSEDOWN SELECTOR="#container{{go}}>DIV>DIV>UL>LI:nth-of-type(2)" BUTTON=0')
    if(i>0){
        break
    }
}
iimPlay('CODE:WAIT SECONDS=10');
//-------------------Dnepropetrovsk 
for (g=1;g<=37;g++){
    iimSet('go',g)
    i=iimPlay('CODE:SET !TIMEOUT_STEP 0\n EVENT TYPE=CLICK SELECTOR="#dropdown{{go}}" BUTTON=0\n EVENT TYPE=MOUSEDOWN SELECTOR="#container{{go}}>DIV>DIV>UL>LI:nth-of-type(3)" BUTTON=0')
    if(i>0){
        break
    }
}


Как подставить после этого кода
скрытый текст

Выделить код

Код:

for(m=1;m<=4;m++){
iimSet('m',m);    
var open ='CODE:SET !ERRORIGNORE YES\n SET !TIMEOUT_STEP 0\n SET !DATASOURCE_DELIMITER :\n SET !DATASOURCE  C:\\Users\\коля\\Desktop\\1.txt\n SET !LOOP 2\n URL GOTO=https://vk.com/\n TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{!COL1}}\n SET !ENCRYPTION NO\n TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{!COL2}}\n TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button\n WAIT SECONDS=1\n TAG POS=1 TYPE=SPAN ATTR=TXT:Моя<SP>Страница\n WAIT SECONDS=2\n TAG POS=1 TYPE=A ATTR=TXT:Показать<SP>подробную<SP>информацию\n WAIT SECONDS=1\n EVENT TYPE=CLICK SELECTOR="#profile_full_info>H4>A" BUTTON=0\n WAIT SECONDS=3'


перед } код который отвечает за город.
Суть скрипта в том, чтобы он зашол на акаунты 4 разных, и в каждом поменял на определёный город(по очереди). Потом на втором круге опять зашол на каждый и опять поменял.

lsalex144
Перенести закрывающую скобку } в конец скрипта

Здравствуйте.
SET !EXTRACT {{!URLCURRENT}} скопировал адрес

например
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


как выделить с адреса только 261377491_501??

lsalex144, учитесь пользоваться поиском, аналогичных примеров в теме - достаточно

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/ll(.*?)/).pop()")

удалено, флуд, правило темы, 1.4
Для этого есть отдельная тема

InfSub

оффтоп
В текстовом файле находится Русский текст,и скрипт его передаёт иeроглифами. Брал текст в двойные кавычки,не помогает,помогает только перекодировка текста через нотепад++,но   это не вариант. Может ли кто-то что-то подсказать по этому поводу?

InfSub я пользовался поиском,и видел что не  однократно задавался этот вопрос,но внятного решения этой проблемы я так и не понял и поэтому задал его ещё раз.

Gergi, уже не однократно давался ответ, что файлы должны быть в кодировке UTF-8.

Gergi, UTF-8 универсальная кодировка, файлы в иных (местных) кодировках, не читались и читаться не будут, если Вас не устраивает UTF - ищите конверторы и не разводите оффтоп

Может кто подскажет. Суть в следующем: перехожу по ссылке, открывает окно, в коде это окно описывается так.

скрытый текст

Выделить код

Код:

<div class="x-window x-layer x-window-default x-closable x-window-closable x-window-default-closable x-border-box x-resizable x-window-resizable x-window-default-resizable" style="width: 803px; height: 700px; right: auto; left: 164px; top: 0px; z-index: 19001;" id="d988MkdProfileCommunalServicesWin-1185" tabindex="-1">


Мне нужно прокрутить страницу в этом окне вниз, скроллбар имеется.
URL GOTO=javascript:window.scrollBy(0,20000) не помогает, это окно поднимается вместе со страницей которая на заднем плане. Почитав форум не нашел ничего подходящего. Все рекомендуют указать FRAME NAME, но я не могу найти имя или id этого окна. Так же размеры этого окна указаны в коде, и как бы я не менял масштаб и разрешение экара, все бестолку.

скрытый текст

Выделить код

Код:

var u;
iimPlay('CODE:URL GOTO=file:///D:\\1.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
t=iimGetLastExtract().split('\n');    
for (u=1;u<=t;u++){    
    iimSet("nomer_stroki",u);
     iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
}
if(u > a.length) 
u = 1;


Посмотрите пожалуйста что тут не так,доходит до последней строки,возвращается назад к первой но дальше не продолжает. А надо что бы продолжал.

Gergi пишет

скрытый текст

Выделить код

Код:

var u;
iimPlay('CODE:URL GOTO=file:///D:\\1.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
t=iimGetLastExtract().split('\n');    
for (u=1;u<=t;u++){    
    iimSet("nomer_stroki",u);
     iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
}
if(u > a.length) 
u = 1;


Посмотрите пожалуйста что тут не так,доходит до последней строки,возвращается назад к первой но дальше не продолжает. А надо что бы продолжал.

сделайте цикл например

скрытый текст

Выделить код

Код:

for (;;) {
    тут код
}

Hamzat пишет

сделайте цикл например

Я что только не делал,с утра всякие эксперимент,ничего не получается.

besfamilnij
читаем правила темы, пункт 1.2.4
Gergi
во-первых, код оформляется в спойлере, в теге code, правила темы, пункт 1.3.2
во-вторых, правила темы, пункт 1.5
в-третьих, что такое переменная а в вашем коде?
в-четвертых, сброс счетчика (u), должен быть в самом цикле, а не за его пределами

Я же не отдельно про js  спрашиваю,он же в связке с iim
Весь компот из за того что бы не указывать число 71
Уже второй месяц ломаю мозг

скрытый текст

Выделить код

Код:

SET !VAR6 71
' ============================================ '
SET !VAR2 EVAL("var l={{NSTROKA}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")

Gergi

оффтоп
от того, что в коде присутствует или отсутствует iimPlay() - ни чего не изменится
к тому же, на ошибки в js - я указал (пункты 3 и 4), если вы не понимаете, как их исправить, гугл в помощь, эта тема не посвящена обучению js

25-07-2015 04:08:22
по поводу же:

Gergi пишет

SET !VAR2 EVAL("var l.......

вам уже давали ответ, вы его не поняли, что именно вы хотите услышать еще?

Gergi
я вам дважды задал вопрос, что есть переменная а в вашем коде... и где ответ?, а потом вы говорите о том что вам не помогают... может быть, вместо того, чтобы флудить на тему, какие все плохие, научитесь читать и отвечать на уточняющие вопросы, если изначально у вас не получается их задать так, чтобы было понятно, что есть что?

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///D:\\2.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n');     
alert(a.length)  
var u;  
for (u=1;u<=a;u++){    
    iimSet("NSTROKA",u);
     iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
if(u > a.length) 
u = 1;
}


Вот переменная (a) что там не понятного

Gergi пишет

что там не понятного

свой код посмотрите и спросите у себя, что там было не понятного

В любом случае переменная (a) проблему не решает.

Gergi пишет

В любом случае переменная (a) проблему не решает.

если, вы не знаете, как ее решить, то это еще не значит, что проблема не решается, это раз
во-вторых, что у вас в переменной a?

25-07-2015 04:54:07
отлично, одну ошибку вы увидели

a=iimGetLastExtract().split('\n');

25-07-2015 05:03:23
ваш цикл, выполняется в пределах от u до а, как может быть выполнено условие: где u больше а внутри цикла?

25-07-2015 05:02:21
хорошо, напишу проще, к примеру, цикл от 1 до 7
u увеличивается до того момента, пока не становится равно 7
как может в нем сработать условие, что если u больше 7?

Gergi пишет

не знаю

кстати, вы писали, что a у вас равно количеству строк... вот только равно ли?
вы что-то пропустили, вам, не кажется?
сделайте alert(a) перед циклом... (именно alert(a) а не alert(a.length) вы ведь в цикле используете a а не alert(a.length))

Проблема в этой части,всё остальное я решу.

скрытый текст

Выделить код

Код:

if(u > a.length) 
u = 1;

по поводу цикла - нет не может, в цикле

for (u=1;u<=a;u++){

где a=7 при условии что u<=a и на каждом этапе цикла увеличиваться на 1 (u++)
u будет равно числам из диапазона от 1 до 7 и условие if(u > a.length) ни когда не сработает
соответственно проверка должна быть на условие последнего прохода цикла т.е. u==7 или if(u == a.length)

25-07-2015 05:20:24

Gergi пишет

всё остальное я решу

я вижу как вы решаете, полное отсутствие понимания что и зачем...

25-07-2015 05:22:13
вернемся к утверждению что:

Gergi пишет

В любом случае переменная (a) проблему не решает.

? не решает ли?

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///D:\\2.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n');  
alert(a)  
var u;  
for (u=1;u<=a;u++){    
    iimSet("NSTROKA",u);
     iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
     if(u == a.length) 
    u = 1;
}


Что то тут не так :sick:

Gergi
в конце-то концов, вы читать что вам пишут будете?

for (u=1;u<=a.length;u++){

Gergi
это в последний раз, когда я вам разжевываю чистый js, будут аналогичные вопросы, подпадающие под 1.5, буду удалять

Так работает if(u == 5) но не подходит,вся задумка в том чтобы само переключалось

Gergi
читайте еще раз

25-07-2015 05:37:15
короче...

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///D:\\2.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n').length;  
var u;  
for (u=1;u<=a;u++){    
    iimSet("NSTROKA",u);
    iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
    if(u == a) u = 1;
}


Gergi, я Вас - предупредил

InfSub пишет

Gergi
читайте еще раз

оффтоп
Я читаю и думаю,то ли я вообще ничего не понимаю,то ли вы на до мной прикалываетесь! Короче говоря ночь потрачена в пустую:(

Gergi
Ты с номером строки из текстового документа сравниваешь или с длиной этой строки.:|
Тебе же модер ясно написал : split и length это разные вещи.
С чем конкретно ты сравниваешь, ты на ходу код уже пару раз переделываешь и разные тут выкладываешь.
ставь везде алерты и проверяй все значения u и a   смотри работает ли условие u<=a


iimPlay('CODE:URL GOTO=file:///D:\\2.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n').length;

допустим у тебя в текстовом документе

2.txt
111
22222
3333
4444444
55

Тогда a=iimGetLastExtract() просто извлечёт всё содержимое 2.txt
Вот этим  a=iimGetLastExtract().split('\n') ты создаёшь массив с несколькими значениями твоего a
в а[0] будет то что в первой строке 111,
в а[1] то что во второй 22222
в а[2] то что в третей 3333
и т.д.
и тут u<=a сравнивать u с а вообще нельзя,
это равно что пытаться сравнивать чёрное с кислым, число с массивом нельзя сравнивать:(
а вот это a=iimGetLastExtract().split('\n').length; тут считает число символов в строке, но у тебя тут не строка а массив...
например такая конструкция а[2].length; выдаст 5
оно посчитает число символов в третей строке, т.е. число троек, а их там четыре тройки
и length выдаёт всегда на одно значение больше, поэтому вернёт 5

Здравствуйте. У меня вопросик к форумчанам, подскажите алгоритм imacroc на разгадывание рекапчи, той что с картинками, через сервис рукапчи. Если можно с примером.

Спасибо всем за помощь! Вот этот js почти то что надо :rock: Но есть нюансы.Он считает из iim только D:\1.txt

скрытый текст

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///D:\\1.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract().split('\n').length; 
var u;  
for (u=1;u<=a;u++){    
    iimSet("NSTROKA",u);
    iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
    if(u == a) u = 0;
}


Вот код iim
скрытый текст

Выделить код

Код:

SET !DATASOURCE D:\1.txt
SET !DATASOURCE_LINE {{NSTROKA}}
URL GOTO={{!COL1}}
SET !DATASOURCE D:\2.txt
SET !DATASOURCE_LINE {{NSTROKA}}
URL GOTO={{!COL1}}
SET !DATASOURCE D:\3.txt
SET !DATASOURCE_LINE {{NSTROKA}}
URL GOTO={{!COL1}}


оффтоп
Скажу сразу что сегодня пол дня экспериментировал многие варианты  но ничего не получилось

Gergi
Ты по ходу ответы что тебе пишут вообще не читаешь и не пытаешься вникнуть.:(

Что у тебя в 1-2-3.txt
Вот эта команда у тебя не правильная

a=iimGetLastExtract().split('\n').length;

Это ты посчитал длину массива, т.е. число строк в в твоём текстовом документе.
И потом  u сравниваешь с a c числом строк.
Вообще бред полный:(:(:(

PRESIDENT пишет

Gergi
Что у тебя в 1-2-3.txt

У меня в 1-2-3.txt строки,и каждый раз разное количество,и поэтому хочу сделать автоматическое переключение от последней строки к первой.

26-07-2015 10:08:05
PRESIDENT Возможно ты помнишь мой предыдущий вопрос. То что я раньше спрашивал про число 71 которое надо брать из .TXT файла,этот вопрос уже решился. Спасибо InfSub и PRESIDENT Что  помогли,всё работает как я хотел. А это уже другой вопрос.

Gergi пишет

в 1-2-3.txt строки,и каждый раз разное количество,и поэтому хочу сделать автоматическое переключение от последней строки к первой.

скрытый текст

Выделить код

Код:

for(s=1; s<99999; s++){
iimPlay("CODE:SET !DATASOURCE D:\\1.txt\nSET !DATASOURCE__LINE "+s+"\nSET !EXTRACT {{!COL1}}"); 
a=iimGetLastExtract();
if(a == '')s=1; 
else { 
...
...
}

PRESIDENT пишет
Gergi пишет

в 1-2-3.txt строки,и каждый раз разное количество,и поэтому хочу сделать автоматическое переключение от последней строки к первой.

скрытый текст

Выделить код

Код:

for(s=1; s<99999; s++){
iimPlay("CODE:SET !DATASOURCE D:\\1.txt\nSET !DATASOURCE__LINE "+s+"\nSET !EXTRACT {{!COL1}}"); 
a=iimGetLastExtract();
if(a == '')s=1; 
else { 
...
...
}

Спасибо! Возможно я что то не так делаю,но пока что мне не удаётся заставить его работать. Кручу дальше эксперименты.:sick:

Опиши задачу конкретно.
Что такое 1.тхт 2.тхт 3.тхт и как они должны переключаться ?
Когда кончатся все строки в 1.тхт переходить к 2.тхт, когда там кончатся все строки переходить к следующему или что да как, распиши подробно.

PRESIDENT пишет

Опиши задачу конкретно.Что такое 1.тхт 2.тхт 3.тхт и как они должны переключаться ?Когда кончатся все строки в 1.тхт переходить к 2.тхт, когда там кончатся все строки переходить к следующему или что да как, распиши подробно.

Например в D:\\1.txt  5 строк,в D:\\2.txt  две строки,в D:\\3.txt три строки, надо что бы при одном цикле из D:\\1.txt появилась первая строка,из D:\\2.txt появилась тоже первая строка,из D:\\3.txt появилась тоже первая строка,при втором цикле надо что бы появились вторые строки,при третьем цикле из D:\\1.txt надо что бы появилась третья строка а из D:\\2.txt появилась опять первая строка а  из D:\\3.txt появились третья

Сделай для каждого из 1-2-3.тхт свой счётчик строк
NSTROKA_1, NSTROKA_2, NSTROKA_3
в конце каждого цикла увеличивай их значение на 1
NSTROKA_1++; ...
а когда строки кончились присваивай им опять еденицу
if (кончились строки в 1.txt) NSTROKA_1 =1;
...

PRESIDENT пишет

а вот это a=iimGetLastExtract().split('\n').length; тут считает число символов в строке, но у тебя тут не строка а массив...

данное выражение - посчитает количество элементов массива, так что тут все верно - это будет количество строк в файле

27-07-2015 11:13:27

PRESIDENT пишет

Вот эта команда у тебя не правильная

скрытый текст

a=iimGetLastExtract().split('\n').length;

Это ты посчитал длину массива, т.е. число строк в в твоём текстовом документе.
И потом  u сравниваешь с a c числом строк.
Вообще бред полный:(:(:(

с учетом того, что требуется посчитать количество строк, и создать цикл, который будет выболняться столько раз, сколько строк в массиве, то с данной командой все в порядке
PRESIDENT, ты, по моему, сам запутался =)

27-07-2015 11:20:07
другой вопрос, что считывать файлы и считать количество строк, таким образом - не всегда правильно и удобно, но это уже нюансы

Не совсем удобно,потому что считает ещё и пустые строки

Gergi, а зачем вам пустые строки в файле?

InfSub пишет

Gergi, а зачем вам пустые строки в файле?

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

Ну вот так как раз и не будет считать пустые строки

скрытый текст

Выделить код

Код:

for(s=1; s<99999; s++){
iimPlay("CODE:SET !DATASOURCE D:\\1.txt\nSET !DATASOURCE__LINE "+s+"\nSET !EXTRACT {{!COL1}}"); 
a=iimGetLastExtract();
if(a == '')s=1;
...


как раз если находит пустую строку if(a == '') то s=1; сбрасывает цикл или что там ещё нужно

PRESIDENT пишет

Ну вот так как раз и не будет считать пустые строки

скрытый текст

Выделить код

Код:

for(s=1; s<99999; s++){
iimPlay("CODE:SET !DATASOURCE D:\\1.txt\nSET !DATASOURCE__LINE "+s+"\nSET !EXTRACT {{!COL1}}"); 
a=iimGetLastExtract();
if(a == '')s=1;
...


как раз если находит пустую строку if(a == '') то s=1; сбрасывает цикл или что там ещё нужно

Я этот вариант так  и не запустил,пользуюсь другим

PRESIDENT пишет

или что там ещё нужно

думаю - пропускать и переходить к следующей - нужно

InfSub пишет

думаю - пропускать и переходить к следующей - нужно

Думаю там поверх ещё один цикл сделать нужно перебирать 1-2-3.тхт
и когда кончились строки if(a == '') просто брякать (break) выйти из этого цикла

если используете [url=https://forum.mozilla-russia.org/viewtopic.php?pid=689373#p689373
код, описанный выше[/url], то - как-то так:]

Выделить код

Код:

iimPlay('CODE:URL GOTO=file:///D:\\1.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
var a=iimGetLastExtract().split('\n'); 
var l=a.length;
var u;  
for (u=1;u<=l;u++){
    if(a[(u-1)]=='')continue;
    iimSet("NSTROKA",u);
    iimDisplay("Строка №="+u)
    iimPlay("t.iim",60);
    if(u == l) u = 0;
}

Gergi
Ты здесь,
смотри тебе поверх этого ещё один цикл сделать нужно

скрытый текст

Выделить код

Код:

for( i=1;  i<=3;  i++){ // <--- Пребирать по очереди 1-2-3.тхт
for(s=1; s<99999; s++){
iimPlay("CODE:SET !DATASOURCE D:\\"+i+".txt\nSET !DATASOURCE__LINE "+s+"\nSET !EXTRACT {{!COL1}}"); 
a=iimGetLastExtract();
if(a == '') break; // <--- Если пустая строка, кончились строки, то выйти из цикла, идти к следующему *.тхт
...
}}

PRESIDENT пишет

if(a == '') break; // <--- Если пустая строка, кончились строки, то выйти из цикла, идти к следующему *.тхт

не корректно ставить тут break, если пустая строка, должно быть continue, а если строки кончились - break

27-07-2015 11:40:17
только данное выражение - не проверит, что строки кончились...

InfSub
Ну или так, тогда просто будет лишний перебор пустых строк, и так ведь подразумевается, раз пустая строка значит конец записей

Gergi пишет
InfSub пишет

Gergi, а зачем вам пустые строки в файле?

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

27-07-2015 11:49:34
Gergi
я еще раз повторяю, данный вопрос, не имеет отношения к проблемам iMacros'a нужна помощь с js - пишите в тему по запросу скриптов.

скрытый текст

Выделить код

Код:

SET !VAR1 2 Эту двойку можно как то брать из текстового файла? Что бы тут её не указывать.
SET !VAR2 EVAL("var l={{NSTROKA}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\1.txt
SET !DATASOURCE_LINE {{!VAR2}}
URL GOTO={{!COL1}}


может мой вопрос легче будет решить через iim

27-07-2015 12:19:18
Или подскажите это реально ли решить без js ? Если нет,то закрываю тему что бы не морочить себе и людям голову. Через js понимаю что можно но для меня это сложно.

Gergi пишет

Или подскажите это реально ли решить без js ?

у вас в iim тот же, js просто через eval()
может быть и можно решить, вкраплением js в iim с помощью eval(), но это уж точно не самый простой способ

InfSub пишет
Gergi пишет

Или подскажите это реально ли решить без js ?

у вас в iim тот же, js просто через eval()
может быть и можно решить, вкраплением js в iim с помощью eval(), но это уж точно не самый простой способ

За пол часа решил свою задачу чисто в iim кое где eval() добавил,и сам в шоке что всё так просто оказалось:music:

Бат файлом можно запустить iim а как его остановить? Кроме того что бы браузер закрыть.

Здравствуйте. не могу понять почему не работает код. пишет:

скрытый текст

Выделить код

Код:

"can not parse macro line: iimPlay('CODE:SET !TIMEOUT_STEP 0\n SET !ERRORIGNORE YES\n SET !EXTRACT_TEST_POPUP NO\n TAG POS=1 TYPE=DIV ATTR=TXT:Вв* EXTRACT=TXT'); (Error code: 910)"

lsalex144
какое расширение у файла? js или iim?

31-07-2015 23:23:31
команда:

SET !EXTRACT_TEST_POPUP NO

бесполезна в данном контексте (при запуске кода из js)

EVENTS TYPE=KEYPRESS SELECTOR="#u_0_29" CHARS= Вот это число u_0_29 постоянно меняется  много чего перепробовал,ничего не получается. Подскажите пожалуйста если кто то знает как это решить.

удалено, флуд

InfSub

Попробуй в другом формате команду записать, потому что здесь нельзя цифры звёздочкой заменить.

Не получается реализовать клик по ссылке активации в письме, которое приходит на mail.ru:

скрытый текст
B2gpEP1.jpg
При регистрации на сервисе:
smartdnsproxy.com/SignUp

При использовании TAG POS=1 TYPE=IMG ATTR=
Получается переход по ссылке, но  активации не происходит.


Кто то может подсказать/помочь?

Xeedum

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:https://*.googleusercontent.com/proxy/*/verify.png

скрытый текст

Выделить код

Код:

TAG POS=6 TYPE=SPAN ATTR=TXT:Оксана<SP>Кошелева


как можно фамилию удалить?

InfSub

скрытый текст
В mail.ru нет ссылок:
googleusercontent.com/proxy/

Не работает решение. Уже чего не подставлял в TAG POS=1 TYPE=IMG ATTR=SRC:
видать заморочки в  mail.ru
Идет переадресация/переход  на главную.  А если кликнуть вручную, идет переход на ссылку активации :)
Есть разница

Закину 1 WMZ  на кошель за реально работающую подсказку/решение именно для активации писем с  mail.ru  :)
Кошель можно сразу в личку.
аська в профиле также рабочая

Xeedum пишет

Не работает решение.

да, на mail.ru - действительно не работает

offtop
лениво мне было, лезть на mail... =)

пробуй так

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:http://www.smartdnsproxy.com/VerifyAccount?x=*


04-08-2015 18:36:50
offtop - icq
она еще живая? )))

InfSub пишет

...

скрытый текст
Затестил разные варианты с TAG POS=1 TYPE=A ATTR=HREF:
Не пашет  - один вариант на главную перенаправляет, но активация не происходит

аська в профиле рабочая

Xeedum пишет

Не пашет

у меня работает без проблем, еще раз проверил

оффтоп
Всем привет! Возможно это не совсем оффтоп, но все же. Такой вопрос, можно ли с помощью imacros убрать дубликаты слов в txt файле (imacros + js) или в тексте который находится в переменной?

Hamzat
Используй replace - заменить. Указываешь что заменить (какую нибудь букву, слово, текст) на что заменять. В твоём случае нужно будет, заменять на пусто, на ничего, короче говоря просто удалять.

PRESIDENT пишет

Hamzat
Используй replace - заменить. Указываешь что заменить (какую нибудь букву, слово, текст) на что заменять. В твоём случае нужно будет, заменять на пусто, на ничего, короче говоря просто удалять.

Ну как я укажу например заменить слово авто на avto? Точнее вместо слово авто там может быть любое слово, я же не смогу собрать базу всех Русских слов)) По другому ни как?

Это у тебя текст или просто набор слов в столбец, с каждой строки новое слово ?

PRESIDENT пишет

Это у тебя текст или просто набор слов в столбец, с каждой строки новое слово ?

Блин не то написал))) Да у меня набор слов в столбец. Нужно убрать из него дубликаты типо есть несколько слов

скрытый текст
Текст1
Текст2
Текст3
Текст4
Текст1  - Нужно убрать

Преобразуй твой текст в массив, набор слов, потом чем то типа этого уберёшь повторы.

скрытый текст

Выделить код

Код:

text=['Тут','был','повтор','нафиг','повтор','нужно','удалить','нафиг']
text.sort(); 
for (var i = text.length - 1; i > 0; i--){
if (text[i] == text[i - 1]) text.splice( i, 1);}
alert(text);

for (var i = text.length - 1; i > 0; i--){


скрытый текст

Выделить код

Код:

//text=['Тут','был','повтор','нафиг','повтор','нужно','удалить','нафиг']
// Извлекаем всё из текстового файла
   iimPlay("CODE:URL GOTO=file:///D:\\my_text.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT");
   a=iimGetLastExtract(); 
   text=a.split('\n'); // преобразуем в массив
   text.sort(); // Сортируем массив
   for (var i = text.length - 1; i > 0; i--){
   if (text[i] == text[i - 1]) text.splice( i, 1);}
   txt=text.join('\n')
   alert(txt);
   iimPlay("CODE:SET !EXTRACT "+txt+"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.txt");

PRESIDENT пишет

for (var i = text.length - 1; i > 0; i--){


скрытый текст

Выделить код

Код:

//text=['Тут','был','повтор','нафиг','повтор','нужно','удалить','нафиг']
// Извлекаем всё из текстового файла
   iimPlay("CODE:URL GOTO=file:///D:\\my_text.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT");
   a=iimGetLastExtract(); 
   text=a.split('\n'); // преобразуем в массив
   text.sort(); // Сортируем массив
   for (var i = text.length - 1; i > 0; i--){
   if (text[i] == text[i - 1]) text.splice( i, 1);}
   alert(text);

Все работает спасибо. Но вот еще один вопрос, можно ли все то опять сохранить в txt файл в том формате который был до манипуляций? Пример:
До

скрытый текст
Тест1
Тест2
Тест3
Тест1

После
скрытый текст
Тест1
Тест2
Тест3

Ты не знаешь как сохранить в текстовый файл ?

PRESIDENT пишет

Ты не знаешь как сохранить в текстовый файл ?

После манипуляций текст если сохранить он сохраняется в формате

Выделить код

Код:

"""Текст1"",""Текст2"",""Текст3"""

alert(text.join('\n'));    может так красивше будет:)


скрытый текст

Выделить код

Код:

...
   txt=text.join('\n')
   alert(txt);
   iimPlay("CODE:SET !EXTRACT "+txt+"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.txt");

PRESIDENT
Большое спасибо за помощь,

оффтоп
PRESIDENT можно тебя задать еще один вопрос? но уже в личку, а то чую InfSub будет против:/

05-08-2015 20:32:23

PRESIDENT пишет

alert(text.join('\n'));    может так красивше будет:)


скрытый текст

Выделить код

Код:

...
   txt=text.join('\n')
   alert(txt);
   iimPlay("CODE:SET !EXTRACT "+txt+"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.txt");

Кстати что за фигня в алерт все норм работает, а при сохранение выдает

скрытый текст
SyntaxError: can not parse macro line: Текст2 (Error code: -910)

Hamzat пишет

оффтоп
PRESIDENT можно тебя задать еще один вопрос? но уже в личку, а то чую InfSub будет против:/

есть правила поведения на форуме, в том числе и по обсуждаемым вопросам, а подобные высказывания, в следующий раз, будут расценены, как пункт правил 3.13

Hamzat пишет

Кстати что за фигня в алерт все норм работает, а при сохранение выдает

скрытый текст
SyntaxError: can not parse macro line: Текст2 (Error code: -910)

не корректный синтаксис выражения, потому и ошибка

Выделить код

Код:

iimPlay('CODE:SET !EXTRACT "'+txt+'"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.txt');

InfSub
Как извлечь XPath выделенного элемента ?

PRESIDENT пишет

InfSub
Как извлечь XPath выделенного элемента ?

XPath - указатель на элемент, как в EVENT'e SELECTOR, что именно ты хочешь извлечь?

InfSub

не корректный синтаксис выражения, потому и ошибка

Выделить код

Код:

iimPlay('CODE:SET !EXTRACT "'+txt+'"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.txt');

Опять та же ошибка

P.S
Обсуждение могло вызвать Ваше недовольство, не потому что он нарушал правила форума или же отдельной ветки Imacros (там и нет нечего запрещающего) , а просто потому что это было бы не удобно другим юзерам. А расценивать то что призывает облегчить жизнь юзерам (даже если учесть что указано Вам Никнейм) нарушением правила 3.13 является некорректным, опять же решать Вам.

Hamzat,

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

06-08-2015 09:08:16

Hamzat пишет

Опять та же ошибка

это возможно, если ваш текст содержит двойные кавычки, очистите от них предварительно текст или заэкранируйте их

InfSub

это возможно, если ваш текст содержит двойные кавычки, очистите от них предварительно текст или заэкранируйте их

В тексте нет кавычек. Скрипт выдает ошибку что то с второй строкой. До того как добавить команду

Выделить код

Код:

txt=text.join('\n')

Все сохранялось, но в одну строчку, а с командой в алерте все окей, а сохраняться не хочет.

Подскажите что прописать чтобы скрипт находил нужную доменную ссылку и кликал по ней.
Вообщем кликал по баннеру, ссылки разные, но домен у них одинаковый (надеюсь вы меня поняли :))

buben88 пишет

Подскажите что прописать чтобы скрипт находил нужную доменную ссылку и кликал по ней.Вообщем кликал по баннеру, ссылки разные, но домен у них одинаковый (надеюсь вы меня поняли )

Сомневаюсь что так тебе кто то поможет. Надо видеть код.

buben88

Что то типа такого

TAG POS=1 TYPE=A ATTR=HREF:*домен*&&TXT:*

Хотя клик по банеру, это типа клик по картинке, тег может отличаться.
Просто запиши несколько команд кликов и сравни. Теги и домен должны быть одинаковые, различия замени звёздочками.

Hamzat
версии FF и iM
откуда берется многострочный текст?
приведите пример реального текста (в спойлере)
приведите вывод alert(txt);
где текст ошибки? (или он тот же, что и тут)

Откройте :rolleyes:

скрытый текст

PRESIDENT пишет

buben88

Что то типа такого

TAG POS=1 TYPE=A ATTR=HREF:*домен*&&TXT:*

Хотя клик по банеру, это типа клик по картинке, тег может отличаться.
Просто запиши несколько команд кликов и сравни. Теги и домен должны быть одинаковые, различия замени звёздочками.

Спасибо большое
Такой код работает

Выделить код

Код:

FRAME F=1
TAG POS=1 TYPE=A ATTR=HREF:*домен*&&TXT:*

и даже так

Выделить код

Код:

FRAME F=1
TAG POS=1 TYPE=A ATTR=HREF:*домен*

С ссылкой такого плана

Выделить код

Код:

http://домен.com/aaa.php?a=a2001a77b50ec8f65103aae860c8c77b&b

А такой не хочет

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

как можно решить?
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

или как кликать по ссылке с такими цифрами

Выделить код

Код:

http://click.a-ads.com/79811/9515/

Выделить код

Код:

click.a-ads.com
buben88 пишет

или как кликать по ссылке с такими цифрами

TAG POS=1 TYPE=A ATTR=HREF:*цифры*

InfSub пишет
buben88 пишет

или как кликать по ссылке с такими цифрами

TAG POS=1 TYPE=A ATTR=HREF:*цифры*

Да пробовал я еще вчера так, не работает :angry:

07-08-2015 17:51:50
InfSub
Все разобрался, Большое спасибо за помощь
Надо было вписать

Выделить код

Код:

FRAME F=3

Только что это такое я хз ;)

InfSub пишет

Hamzat
версии FF и iM
откуда берется многострочный текст?
приведите пример реального текста (в спойлере)
приведите вывод alert(txt);
где текст ошибки? (или он тот же, что и тут)

FF 27.01 portable, imacros 8.6.0

скрытый текст
Текст1
Текст2
Текст3
Текст4
Текст1

alert(txt)
скрытый текст
Текст1
Текст2
Текст3
Текст4

Текст ошибки
скрытый текст
SyntaxError: can not parse macro line: Текст2 (Error code: -910)

Так

InfSub пишет

откуда берется многострочный текст?

файл, страница?

InfSub
Это у него в текстовом файле.
Нужно было повторы удалить, скрипт тут, на предыдущей стр,
теперь почему то результат не сохраняет, у меня всё норм работает.

Может с переходом на новую строку заморочка и это поможет

txt=txt.replace(/\n/gi,"\\r\\n");

Hamzat пишет

alert(txt)

скрытый текст
Текст1
Текст2
Текст3
Текст4

alert(txt) если судить по коду выше (см. цитату от PRESIDENT) должен был вывести текст в виде:

Текст1,Текст2,Текст3,Текст4

а не многострочный, как у вас
ищите ошибку или приведите весь получившийся код

07-08-2015 22:31:58
если взять весь код, то должно получиться так:

скрытый текст

Выделить код

Код:

var a,i;
// Извлекаем всё из текстового файла
iimPlay('CODE:URL GOTO=file:///D:\\my_text.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetLastExtract(); 
a=a.split('\n'); // преобразуем в массив
a.sort(); // Сортируем массив
alert(a)    // for test
for (i = a.length - 1; i > 0; i--){
if (a[i] == a[i - 1]) a.splice( i, 1);}
alert(a)    // for test


iimPlay('CODE:SET !EXTRACT "'+a+'"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.

InfSub

скрытый текст

Выделить код

Код:

...
a=a.join('\n')
alert(a);


Преобразует опять массив в строку с разделителем \n
И вот эта строка у него не сохраняется в тхт, может глюк версии имакроса.

Может с переходом на новую строку заморочка и это поможет

txt=txt.replace(/\n/gi,"\\r\\n");

Да помогло спасибо. Кстати у тебя какая версия imacros?

Hamzat пишет

Да помогло

Тогда в в команде преобразования массива в строку join('\n'), укажи разделитель не \n , а сразу \\r\\n.

скрытый текст

Выделить код

Код:

...
   txt=text.join('\\r\\n');
 //alert(txt);
   iimPlay('CODE:SET !EXTRACT "'+txt+'"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=my_text_1.txt');


И эта строчка будет уже не нужна
txt=txt.replace(/\n/gi,"\\r\\n");

08-08-2015 03:32:57

Hamzat пишет

какая версия imacros?

Мазилка портабелька 3.6
имакрос 6.3
Имакрос чуток расковырял, для себя делал:
паузу переделывал, и убрал эти глупые кавычки при сохранении в файл.

Ребята такое дело при использование команды SAVE_ELEMENT_SCREENSHOT иногда бывает что некоторая часть этого скрина бывает покрытой черной маской, это можно как то убрать?

скрытый текст
Можно ли как уменьшить размер скрина без использование php?

Ребят.помогите.
Столкнулся с одной проблемой, а точнее с regex

Суть проблемы состоит в том,что я копирую заголовок ( EXTRACT=TXT)  , и загружаю картинку с заголовком..
В некоторых заголовках присутствуют символы,запрещаемые при сохранение в наименовании картинки.

В регулярках я ноль. Попробывал почитать- не получается..
У кого какие идеи?

tfyuguih;i

скрытый текст

Выделить код

Код:

txt=txt.replace(/1|2|3/g,'');


где цифры - лишние символы (заменить цифры, соответственно, символами)

InfSub пишет

tfyuguih;i

скрытый текст

Выделить код

Код:

txt=txt.replace(/1|2|3/g,'');


где цифры - лишние символы (заменить цифры, соответственно, символами)

это в js или в самом iim?

tfyuguih;i
js, через eval() можно и в iim

спасибо;)

InfSub пишет

tfyuguih;i
js, через eval() можно и в iim

InfSub пишет

tfyuguih;i
js, через eval() можно и в iim

что тут исправить?

скрытый текст

Выделить код

Код:

var q,m;
var txt=/{{!EXTRACT}}/;
txt.replace(/+|-|!|@|#|$|%|^|&|*|(|)|;|\|/|<|>|/g,'');
for (m=1;m<=30;m++){
for (q=7;q<=50;q++)
iimSet('m',m)
iimSet('q',q)
iimPlay('12345678')
}}

tfyuguih;i пишет

что тут исправить?

txt = txt.replace(/+|-|!|@|#|$|%|^|&|*|(|)|;|\|/|<|>|/g,'');

сайт нестабильно работает, долго загружает страницу, в результате цикл прерывается.

скрытый текст
a8bef000caf9.png

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

nvrbjs пишет

как сделать так

прочесть Мини FAQ по iMacros for Firefox, конкретно - раздел Модификаторы

удалено, флуд

InfSub

Здравствуйте не могу прикрепить фотографию на стену групп вк помогите пожалуйста...

Можете показать реальный пример запуска внешней программы imacros ом?
Faq читал, просто не очень понятно.

09-08-2015 21:18:10

volchsek пишет

Здравствуйте не могу прикрепить фотографию на стену групп вк помогите пожалуйста...

Загружаете фот вк вырезаете ссылку и вставляете в пост  картинка сама прикрепляется.

Hamzat пишет
volchsek пишет

Здравствуйте не могу прикрепить фотографию на стену групп вк помогите пожалуйста...

Загружаете фот вк вырезаете ссылку и вставляете в пост  картинка сама прикрепляется.

мне нужно с компьютера с папки! он загружает фотографию только когда я нажму в ручную на кнопку прикрепить фотографию в автомате он этого то вдруг загрузит то нет

Как можно убрать лишние кавычки или все?

"Ksenia Smirnova"
""
"Ирина Наимова"
""
"Павел Гурский"

Используй мой имакрос он сохраняет без кавычек:)

PRESIDENT пишет

Используй мой имакрос он сохраняет без кавычек:)

Но он не в столбик сортирует. Попробую опять.

Gergi пишет

он не в столбик сортирует

А как ?smile_28.gif


Ну или попробуй чёто типа такого

скрытый текст

Выделить код

Код:

iimPlay("CODE:URL GOTO=file:///D:\\test.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT");
    a=iimGetLastExtract().replace(/"/g,'');
    iimSet('TEST',a)
    iimPlay("CODE:SET !EXTRACT {{TEST}}\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=test_1.txt");

PRESIDENT пишет
Gergi пишет

он не в столбик сортирует

А как ?

Всё в одну строку,открываю файл через нотепад++ и в шоке от такой каши

Gergi пишет

Всё в одну строку

В моём имакросе перед сохранением добавь это

скрытый текст

Выделить код

Код:

a="\""+a+"\"";
a=a.replace(/\n/gi,"\\r\\n");
iimPlay("CODE:SET !EXTRACT "+a+"\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=test.txt");

Никогда бы не мог подумать что эта мелочь меня так измотает!:sick: Уже пару часов ломаю мозг,не хочет перебирать строки из TXT Файла

скрытый текст
var u,g,d;
for (u=1;u<=111;u++){         
    for (g=1;g<=1;g++){
    iimPlay("1d.iim",60);
}   
    for (d=1;d<=2;d++){
    iimSet("NSTROKA",d);
    iimPlay("2d.iim",60);   
   
  }
}

Ну и в чём проблема ?

вот кусок макроса 2d.iim

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\x\xx\xxx.txt
SET !DATASOURCE_LINE {{NSTROKA}}
EVENTS TYPE=KEYPRES SELECTOR="*" CHARS={{!COL1}}


В TXT файле 50 строк,а он берёт постоянно только две первых

Gergi
Может Вы откроете глаза и исправите 2 на 50 в своем цикле?

Ну ты же сам в цикле задал от одного до двух

Gergi пишет

for (d=1;d<=2;d++){   
iimSet("NSTROKA",d);

:D прикол в том что мне надо брать по две строки,поэтому там и двоечка

Gergi пишет

брать по две строки

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\x\xx\xxx.txt
SET !DATASOURCE_LINE {{NSTROKA}}
EVENTS TYPE=KEYPRES SELECTOR="*" CHARS={{!COL1}}
ADD NSTROKA 1
SET !DATASOURCE_LINE {{NSTROKA}}
EVENTS TYPE=KEYPRES SELECTOR="*" CHARS={{!COL1}}


скрытый текст

Выделить код

Код:

for (d=1;d<=25;d=d+2){   
iimSet("NSTROKA",d);

Спасибо InfSub,сейчас затестим :)

Толи вы меня не поняли,то ли я где то туплю.
Вот мой код,мне надо что бы 2d.iim вытащил из TXT файла две строки,и потом запустился 1d.iim и так до утра,2d.iim вытаскивает по две строки,всего строк 50

скрытый текст

Выделить код

Код:

var u,g,d;
for (u=1;u<=111;u++){          
    for (g=1;g<=1;g++){ 
    iimPlay("1d.iim",60);
}    
    for (d=1;d<=2;d++){
    iimSet("NSTROKA",d);
    iimPlay("2d.iim",60);   
    
  }
}


В данном варианте,он вытаскивает только две первых строчек

Gergi пишет

мне надо что бы 2d.iim вытащил из TXT файла две строки,и потом запустился 1d.iim

А что же ты у себя в коде сначала запускаешь потом только :(

как-то так

Выделить код

Код:

var u;
for (u=1;u<=111/2;u=u+2){
    iimPlay("1d.iim",60);  
    iimSet("NSTROKA",u);
    iimPlay("2d.iim",60);   
}

PRESIDENT пишет
Gergi пишет

мне надо что бы 2d.iim вытащил из TXT файла две строки,и потом запустился 1d.iim

А что же ты у себя в коде сначала запускаешь потом только :(

Ну это задумка такая

13-08-2015 01:18:00
Спасибо InfSub,вот это уже другой компот,и всё заработало как было задуманно :beer:

13-08-2015 01:41:20
InfSub,а в 2d.iim как должно быть?

Gergi пишет

2d.iim как должно быть?

так

InfSub пишет
Gergi пишет

2d.iim как должно быть?

так

Я видел что он перебирает строки,и от радости не заметил что , что если так то берёт по 2 раза одну и ту же строку. Мне надо что бы первая и вторая строка взялись,потом 3я и 4я и так далее...

13-08-2015 07:03:37
Извините,я сейчас на свежую голову посмотрел и и увидел ошибку,я переменную не указал. Всё работает.

Всем привет! Подскажите, на странице есть пять надписей(ссылок) в столбик, они меняются постоянно, что прописать что бы макрос кликал на любые эти пять ссылок, но не на повторяющиеся? Никак не могу решить проблему, заранее спасибо!

13-08-2015 12:10:00
есть команда TAG POS=1 TYPE=SPAN ATTR=TXT:****
что прописать, что бы переход осуществлялся по 1 ссылке на странице, потом по 2 ссылке на странице, а не по определенной названием.

Если клик по ссылкам, то должно как то так быть

TAG POS=1 TYPE=A ATTR=HREF:*&&TXT:*

меняй номер позиции POS=1-2-3-4 и будет тебе клик по разным ссылкам

Работает, но немного коряво, первую щелкает, а последующие нет

Все получилось, спасибо, ещё маленький вопрос, как сделать что бы команду BACK пропускало если ссылка в ошибку выходит?

astronaft2024 пишет

как сделать что бы команду BACK пропускало если ссылка в ошибку выходит?

использовать управляющий js-скрипт

Здравствуйте, как сделать чтобы imacros переходил по страницам и нажимал на кнопки соцсетей сайт

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


нажатие на некоторые кнопки я вроде как сделал, а вот с переходом на следующую страницу проблемма. Подскажите пожалуйста ошибка.
скрытый текст

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
SET !ERRORIGNORE YES
CMDLINE !DATASOURCE hist.txt
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>SPAN>A:nth-of-type(2)>SPAN" BUTTON=0
TAB T=2
EVENT TYPE=CLICK SELECTOR="#sharerDialogButtons>BUTTON:nth-of-type(2)" BUTTON=0
TAB T=1

Тебе в тему напишите за меня

Vsasyok007 пишет

нажатие на некоторые кнопки я вроде как сделал, а вот с переходом на следующую страницу проблемма. Подскажите пожалуйста ошибка.

Может, ошибка при установке кода кнопок на сайт? По некоторым кнопкам нельзя перейти. Я бы делал так:

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
URL GOTO=http://history-autocars.ru/
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_vkontakte&&TXT:
TAB T=2
TAB T=2
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_facebook&&TXT:
TAB T=2
TAB T=1
TAB T=2
TAB CLOSE
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_twitter&&TXT:
TAB T=2
TAB T=1
TAB T=2
TAB CLOSE
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_odnoklassniki&&TXT:
TAB T=2
TAB T=2
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_moimir&&TXT:
TAB T=2
TAB T=2
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_lj&&TXT:
TAB T=2
TAB T=2
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_friendfeed&&TXT:
TAB T=2
TAB T=2
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_moikrug&&TXT:
TAB T=2
TAB T=1
TAB T=2
TAB CLOSE
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-share-icon<SP>b-share-icon_gplus&&TXT:
TAB T=2
TAB T=2
TAB CLOSE
TAB T=1

18-08-2015 12:57:47
Здравствуйте. не могу разобраться, что у меня не так...  Скрипт заполняет персональные данные на сайте - день, месяц и год рожденья. Данные генерируются рандомно.  День и месяц вставляются хорошо, а вот с годом проблема, генерируются цифры типа "2435". 
Что я не так понимаю в коде?

скрытый текст

Выделить код

Код:

'рандомно устанавливает день рожденья, с 1го по 29е число

SET !VAR1 EVAL("Math.floor(Math.random()*29 + 1);")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:bigForm ATTR=NAME:bday CONTENT={{!VAR1}}

'рандомно устанавливает месяц рожденья, с 1го по 12й месяц. 
SET !VAR2 EVAL("Math.floor(Math.random()*12 + 1);")
TAG POS=1 TYPE=SELECT FORM=NAME:bigForm ATTR=NAME:bmonth CONTENT=%{{!VAR2}}

'рандомно устанавливает год рожденья в указанном диапазоне.
SET !VAR3 EVAL("Math.floor(Math.random()*1999 + 1970);")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:bigForm ATTR=NAME:byear CONTENT={{!VAR3}}

udalov пишет

Math.floor(Math.random()*1999 + 1970

Это ты получается к 1970 году прибавляешь рандомное число от нуля до 1999, измени это на 30

...random()*30 + 1970

udalov
чтобы не было путаницы, обычно записывают так:

Math.floor(Math.random() * (max - min + 1)) + min;

udalov, спасибо за ответ, но не работает, разобрался сам)))

Коллеги, приветствую!
Столкнулся на работе с проблемой - дали заказ написать на iMacros тест, проверяющий некоторые элементы макетника. Проблема в том, что при переходе на него появляется simple auth форма, которая просит ввести логин и пароль для доступа к странице. Форма, как вы понимаете, не Jsная. Как это можно обойти, iMacros своими силами не хочет логиниться?

Добрый день!
Возникла такая проблемка
при накрутке лайков вконтакте
СЛУЧАЙНЫМ ОБРАЗОМ появляется

либо отдельно фотография
TAG POS=1 TYPE=SPAN ATTR=ID:pv_like_link*

либо стена с фото
TAG POS=1 TYPE=SPAN ATTR=ID:like_link*

Если оставить одну из строк - будет 50% ошибок.
Подскажите кто знает.

Ребята сделала автоматический запуск imacrosa при старте firefox таким способом imacros://run/?m=subscribe.iim , теперь что прописать в строку чтобы этот макрос автоматически выполнялся циклически ?

slavabest

Попробуй сначала так

TAG POS=1 TYPE=SPAN ATTR=ID:*like_link*

или оставь обе команды, или переходи на js, используй операторы if... else...


segunover
переходи на js, и в самом начале скрипта задай цикл (число повторов)

Выделить код

Код:

for (i=0; i<=999; i++){ 
тут твой скрипт
или запуск твоего subscribe.iim-а
}

Привет, никто не сталкивался с такой проблемой в Мазиле: Скрипты все исчезли и все однажды. Путь все верно, все нормально. Просто не видит скрипты, ПРОПАЛИ. Думал записать снова и просто отредактировать каждый, так не записывает. Просто есть слово ИЗБРАННОЕ и все.
Вот вообще не пойму в чем дело. Кто подскажет???

Ах да, еще внизу написано, что при синхронизации произошла неизвестная ошибка.
Может это что то значит?

Стрелочку возле избранного нажми.

Сергей Сергеев
Процедуры для диагностики и устранения проблем

PRESIDENT пишет

slavabest

Попробуй сначала так

TAG POS=1 TYPE=SPAN ATTR=ID:*like_link*

или оставь обе команды, или переходи на js, используй операторы if... else...


Спасибо - получилось, я оставил обе строчки, и добавил игнор ошибок.

Сергей Сергеев пишет

Привет, никто не сталкивался с такой проблемой в Мазиле: Скрипты все исчезли и все однажды. Путь все верно, все нормально. Просто не видит скрипты, ПРОПАЛИ. Думал записать снова и просто отредактировать каждый, так не записывает. Просто есть слово ИЗБРАННОЕ и все.Вот вообще не пойму в чем дело. Кто подскажет???Ах да, еще внизу написано, что при синхронизации произошла неизвестная ошибка.Может это что то значит?
                    Отредактировано Сергей Сергеев (21-08-2015 23:13:49)

Всем спасибо! Уже решил проблему!

всем привет!
подскажите пожалуйста как можно реализовать такой процесс:
чтобы происходило  посещение страниц по очереди, которые будут браться с файла, допустим txt ?

akila пишет

как можно реализовать такой процесс

так, например

Выделить код

Код:

SET !DATASOURCE file.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

Здравствуйте!

С старых версиях была такая функция как DirectScreen. Нужно поработать на сайте где есть java applet...

скрин
Selectclic_9400809_18527063.png

И еще есть видео на эту тему http://www.youtube.com/watch?v=sGbRKJz2p9s

Как можно найти версию в которой такая функция есть? в историях такой версии нет...

xxmm
Это было и есть в полной версии iMacros (iMacros Browser), а не в плагине для FF

Да действительно, но все равно не идет, аплет у этого сайта. хитрый какой то не фиксирует imacros браузер то что я делаю в аплете, жаль....

InfSub пишет

xxmm
Это было и есть в полной версии iMacros (iMacros Browser), а не в плагине для FF

Маленькая ошибка в большём коде.
Кто поможет решить?

Проблема в бесконечном цикле "количество".
Должен выполнять указанное количество.


скрытый текст

Выделить код

Код:

// С какого по счёту логина и пароля начинать?
var логин = 1;

// Сколько аккаунтов использовать для рассылки (loginvk)?
var акк = 2;

// Кол-во отправленных сообщений с каждого аккаунта
var количество = 2;

//Из файла открывает сылки людей ВК
var путь = "C:\\Users\\Admin\\Desktop\\люди.txt"

var сообщение = "Здравствуйте! Хорошего дня"

//////////// 

var е = 1;

for (var z=1;z<=акк;z++){

// Здесь идёт вход, авторизация ВК

for (i=1;i<=1;i++){
iimSet("логин",логин);
логин++
iimPlay("вход.iim",60);
}

// Здесь разгадывается капча

for (s=1;s<=3;s++){
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
if (i>0){
iimPlay("antigate.iim",60);
}
}

if (i<0){
}

// Здесь идёт проверка на наличие слов "Моя страница". Если не обнаруживает, то
// должен всё прервать и занова воспроизводить первый макрос вход.iim - это работает

for (i=1;i<=1;i++){
if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Моя<SP>Страница CONTENT=EVENT:MOUSEOVER")>0){

// Здесь ошибка. Бесконечно воспроизводит макрос открыть.iim
// открывает страницы людей из файла люди.

for (i=1;i<=количество;i++){
iimSet("путь",путь);
iimSet("е",е);
е++
iimPlay("открыть.iim",60);

// Если в статусе посещения написано Заходил(а) или онлайн, то идут следующие проверки.
// Если в статусе пусто, то занова воспроизводит макрос открыть.iim

var h1=iimPlayCode("SET !TIMEOUT_PAGE 2 \n TAG POS=1 TYPE=B ATTR=TXT:заходил*")
var h2=iimPlay("онлайн.iim",60);
if (h1>0 || h2>0){

// Если на странице нет кнопки отправить сообщение, то добавляет в друзья.
// Если есть кнопка отправить сообщение, то отправляет сообщения без добавления в друзья.  

h= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение")
if (h>0 ){ 
}

if (h<0 ){
h= iimPlayCode("TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья")
}

// Здесь разгадывается капча

for (s=1;s<=3;s++){
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
if (i>0){
iimPlay("antigate.iim",60);
}
}

if (i<0){
}

// Отправляет сообщение

n= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=ID:mail_box_to_header")
if (n>0 ){ 
iimSet("сообщение",сообщение);
iimPlay("сообщение.iim",60);
}

// Добавляет в друзья, если нет кнопки отправить сообщения

if (n<0 ){
iimPlay("дружба.iim",60);
}

// Вот здесь проблема чуть ниже.
// Если поставить break, то делает только 1 цикл. А нужно чтобы указанное количество выполнял и
// выходил из акаунта. Как это сделать?

}else{
}
}

for (i=1;i<=1;i++){
iimPlay("выход.iim",60);
}

// Если нет слова моя страница, то весь код обрывается этим кодом внизу и начинает занова.
// и эта работает.

break
}else{
}
}
        
iimDisplay(z);    
iimSet("z", z);
}

Алим пишет

Проблема в бесконечном цикле "количество".

переменные измени, у тебя в 2х циклах и условиях одна и та же переменная i:

скрытый текст

for (i=1;i<=1;i++){
        if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Моя<SP>Страница CONTENT=EVENT:MOUSEOVER")>0){

        // Здесь ошибка. Бесконечно воспроизводит макрос открыть.iim
        // открывает страницы людей из файла люди.

        for (i=1;i<=количество;i++){
            iimSet("путь",путь);
            iimSet("е",е);
            е++
            iimPlay("открыть.iim",60);
           
            ...
           
                for (s=1;s<=3;s++){
                    i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
                    if (i>0){
                        iimPlay("antigate.iim",60);
                    }
                }

                if (i<0){
                }

InfSub пишет
akila пишет

как можно реализовать такой процесс

так, например

Выделить код

Код:

SET !DATASOURCE file.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

Спасибо - помогло !

InfSub пишет

переменные измени, у тебя в 2х циклах и условиях одна и та же переменная i:

Теперь выполняет указанное количество циклов. Помогло. Большое спасибо.

Добрый день.
В smofast при просмотре видео,
аймакросом не могу сделать клик на проигрование видео!?
То есть, при клике на видео запись в скрипт не происходит (при любом режиме записи)
Может через экстракт юрл адреса попробывать?
Кто, что может подсказать?

slavabest
IMacros для FF не работает с флешем, с ним работает только полная версия iMacros Browser

slavabest
Смотри снифером заголовки, что в ответ серверу отсылаются.
Пробуй имитировать.

Ребята, подскажите пожалуйста можно ли реализовать на imacros такую задачу:
Есть несколько аккаунтов логин:пасс для одного (!) сайта и список данных (строки). Нужно одновременно (!) авторизоваться во всех аккаунтах на этом одном сайте и вводить данные из списка. Ввод данных не так важен, важно можно ли сделать так, чтобы авторизация была одновременно в нескольких аккаунтах 1 сайта. Как это сделать с помощью imacros?
Заранее благодарю за подсказку!

Lavella пишет

можно ли сделать так, чтобы авторизация была одновременно в нескольких аккаунтах 1 сайта

iMacros только автоматизирует ваши действия, но не меняет функционала браузера (FF).
Вы можете без iMacros'a одновременно авторизоваться под несколькими аккаунтами на одном сайте (используя одно окно и несколько вкладок FF)?.. Думаю, ответом будет - нет, это и есть ответ на Ваш вопрос

28-08-2015 02:21:07
теоретически, используя FF с несколькими профилями или portable версии можно заставить iMacros сделать то, что вы хотите, используя datasource файл с меткой времени, в которое нужно авторизоваться, но запускать все FF и соответственно скрипт, считывающий этот файл - вам придется вручную

Если запустишь одновременно несколько профилей мазилы, то в каждом сможешь зайти в один акк.
Получится одновременно несколько мазил и несколько акаунтов.

InfSub пишет

iMacros только автоматизирует ваши действия, но не меняет функционала браузера (FF).
Вы можете без iMacros'a одновременно авторизоваться под несколькими аккаунтами на одном сайте (используя одно окно и несколько вкладок FF)?.. Думаю, ответом будет - нет, это и есть ответ на Ваш вопрос

Спасибо за ответ!
А если с помощью Multifox войти в разные учетки, допустим, можно с помощью макроса "гулять" вкладкам и вводить данные?

Lavella
думаю - да, если вкладки открыты в одном окне - то ни каких проблем быть не должно

InfSub пишет

думаю - да, если вкладки открыты в одном окне - то ни каких проблем быть не должно

Можно будет просто ссылаться типа TAB T=1 TAB T=2 и пр?

Lavella
да

С открыванием вкладок по очереди TAB T=1 ... T=2 ... T=3 проблем не будет,
а вот с обратным переключением с T=3 на T=2 или T=1 иногда возникают проблемы.
Там пиши на одно значение меньше, если с T=3 надо переключится на T=2, то пиши на одно меньше T=1
если с T=3 надо переключится на T=1, то пиши на одно меньше T=0 и т.д.

PRESIDENT пишет

то пиши на одно меньше T=0 и т.д.

T=0 и минусовые значения используются только в случае, когда старт скрипта происходит не с первой вкладки

удалено
читаем правила темы, пункт 1.4

InfSub

всем привет,
уже весь мозг себе сломал за неделю
подскажите пожалуйста как можно реализовать с помощью iMacros комментирование записей на стене во вконтакте, дилема состоит вот в чем, есть код для одной страницы к примеру :

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#reply_link-38595680_1415>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#reply_field-38595680_1415" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-38595680_1415" CHARS="привет"
EVENT TYPE=CLICK SELECTOR="#reply_button-38595680_1415" BUTTON=0


вся проблемв в том,ч то 38595680_1415 на всех страницах и записях будут разные

можно ли как то указать в сценарии iMacros обобщенно эти переменные

Заранее спасибо .

соблюдаем правила постинга кода

InfSub

akila пишет

можно ли как то указать в сценарии iMacros обобщенно эти переменные

при использовании event - использовать шаблоны, например * - нельзя

а как можно реализовать такой процесс, подскажи пожалуйста

так тоже не работает

скрытый текст

Выделить код

Код:

SET !VAR1 "Текст комментария"
TAG POS=1 TYPE=A ATTR=TXT:Комментировать
TAG POS=1 TYPE=DIV ATTR=ID:reply_field-* CONTENT={{!VAR1}}

TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-*

akila, поиском пользоваться пробовали?

offtop
конечно пробовал через поиск - решения  данного вопроса на форуме нет, я уже около недели над этим пыхчу...

решение, на форуме - есть

InfSub

28-08-2015 17:00:27
я конечно прошу прощения за назойливость, но дважды всю ветку перечитал за неделю - не нашел, могли бы вы ,так сказать свежим глазом, пролить свет на мой вопрос?
Заранее спасибо !

ребят, кто может скинуть обучающие  демо сценарии, что в папке Demo-Firefox на русском языке, а то с англ напряг
заранее спасибо

akila пишет

не нашел, могли бы вы ,так сказать свежим глазом, пролить свет на мой вопрос?

читайте внимательно ответы

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

пример
"текст"
"текст"
"текст" и так далее.

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt


тогда как вот этот
скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:info*
TAG POS=R1 TYPE=A ATTR=TXT:* EXTRACT=HREF
TAG POS=R1 TYPE=A ATTR=TXT:* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt


сохраняет в файл в виде двух столбцов
пример
"урл", "текст"
"урл", "текст"
"урл", "текст"

Чего во втором коде такого хитрого, что я не могу понять и что именно позволяет сохранять данные в два столбца?


29-08-2015 11:06:19

Lavella пишет

подскажите пожалуйста можно ли реализовать на imacros такую задачу

Здравствуйте. Попробуйте использовать расширение Multifox, может быть, с ним получится... 

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

У тебя первый раз в екстракт сохраняет урл EXTRACT=HREF
и второй раз к этому же экстракту добавляет извлечённый текст EXTRACT=TXT

PRESIDENT пишет

У тебя первый раз в екстракт сохраняет урл EXTRACT=HREF
и второй раз к этому же экстракту добавляет извлечённый текст EXTRACT=TXT

Это я догадался... Не могу понять, какая команда в коде "второй раз к этому же экстракту добавляет извлечённый текст"

udalov
прочтите, как действует extract - и все станет понятно
при extract'e нескольких объектов подряд, они добавляются в одну системную переменную {{!EXTRACT}}, не перезаписывая друг друга, если ее не очищать
по этому при сохранении - вы видите результат 2 extract'ов - это заложено в функционал iMacros'a и для этого не требуется дополнительных команд

подскажите пожалуйста, где подробно можно прочесть о команде EXTRACT

Помогите сделать такую функцию, к примеру есть файл с постами.

скрытый текст
Пост 1
Пост 2
Пост 3
Пост 4

И есть к примеру 4 групп (число естественно намного больше, это только пример)где нужно опубликовать эти посты, но при этом один и тот же  пост не должен публиковаться в одну группы.
скрытый текст
Группа 1 (Пост 1)
Группа 2 (Пост 2)
Группа 3 (Пост 3)
Группа 4 (Пост 4)

Вот кончились посты и группу, но мне цикл нужно повторить, но тогда условия "но при этом один и тот же  пост не должен публиковаться в одну группы" нарушается, и по этому нужно сделать так
Повтор цикла:
скрытый текст
Группа 1 (Пост 2)
Группа 2 (Пост 3)
Группа 3 (Пост 4)
Группа 4 (Пост 1)

Т.е текст нужно как бы сдвинуть вниз. Такое реально сделать?

Подскажите пожалуйста, как можно  извлечь id (а именно только цифры)из данного кода :

скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" id="reply_field-9894944_4324" class="fl_l reply_field" onfocus="return Wall.showEditReply('-9894944_4324', event);" contenteditable="true"></div>


заранее спасибо

akila
  Один из вариантов, как можна вырезать инфу, от ... и до ...
  нам нужно вырезать от reply_field- до " class="

скрытый текст

pars_infa = '... id="reply_field-9894944_4324" class="fl_ ...';
  // Делаем первую метку, откуда, от reply_field-
   metka_1 = pars_infa.indexOf ( 'reply_field-' , 0 );
  // Делаем вторую метку, до куда, до " class="
   metka_2 = pars_infa.indexOf ( '" class="' , 0 );
   id = pars_infa.substr( metka_1 + 12 , metka_2 - ( metka_1 + 12 ) );
   alert(id);

большое спасибо !

akila пишет

подскажите пожалуйста, где подробно можно прочесть о команде EXTRACT

Тут http://wiki.imacros.net/!EXTRACT И смотрите там же внизу страницы, особенно пример http://wiki.imacros.net/Demo-Extract

30-08-2015 10:52:14

Hamzat пишет

Помогите сделать такую функцию, к примеру есть файл с постами...
Т.е текст нужно как бы сдвинуть вниз. Такое реально сделать?

Лично я бы не стал заморачиваться, а подготовил бы большой файл с постами и текстом вручную, накопивастив всё с нужным сдвигом, например, в екселе. А потом всё вставил в csv файл.

Извиняюсь, может не нашел, но все пересмотрел вроде. Не могу добиться, что бы скрипт отправлял сообщение, все делает, выставляет критерии в одноклассниках, класс, фото 5, открывает отправить сообщение и не пойму какой командой вводить сообщение... Помогите пожалуйста. Я так понимаю команда CHARS="какой то текст", но пишет ошибку

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:js-photoLayerClose<SP>ic<SP>photo-layer_close&&DATA-LOG-CLICK:{"target":"close"}&&TXT:
TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
TAG POS=1 TYPE=DIV ATTR=ID:ok-e-m
TAG POS=1 TYPE=DIV ATTR=CLASS:disc_input_btn&&UID:uidTrigerSendMsg&&TXT:
BACK

Заполнять форму, вводить сообщение, что то типа

TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=ID:text CONTENT=тут ваш текст

Все равно не вставляет сообщение...
Или я не правильно вставил строку?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:написать<SP>сообщение
TAG POS=1 TYPE=DIV ATTR=ID:ok-e-m
TAG POS=1 TYPE=TEXTAREA FORM=ACTION:* ATTR=ID:text CONTENT="Привет"
TAG POS=1 TYPE=DIV ATTR=CLASS:disc_input_btn&&UID:uidTrigerSendMsg&&TXT:
BACK


соблюдаем правила постинга кода

InfSub

UmNick

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-m" CHARS="ваш текст"

31-08-2015 00:13:21

Hamzat пишет

Т.е текст нужно как бы сдвинуть вниз. Такое реально сделать?

при использовании управляющего js-скрипта - реально
только не вижу смысла так запутывать скрипт, не проще ли сделать как-то так:

скрытый текст
Группа 1 (Пост 1)
Группа 2 (Пост 1)
Группа 3 (Пост 1)
Группа 4 (Пост 1)
Группа 1 (Пост 2)
Группа 2 (Пост 2)
Группа 3 (Пост 2)
Группа 4 (Пост 2)
и т.д.

Hamzat пишет

Помогите сделать такую функцию

читаем правила темы, пункт 1.4, все просьбы написать за Вас, только в теме: «iMacros Скрипты. Поиск и заказ скриптов»

спасибо, помогло :)

читаем правила темы, пункт 1.4, все просьбы написать за Вас, только в теме: «iMacros Скрипты. Поиск и заказ скриптов»

Извиняюсь не догледел.

только не вижу смысла так запутывать скрипт, не проще ли сделать как-то так:

скрытый текст
Группа 1 (Пост 1)
Группа 2 (Пост 1)
Группа 3 (Пост 1)
Группа 4 (Пост 1)
Группа 1 (Пост 2)
Группа 2 (Пост 2)
Группа 3 (Пост 2)
Группа 4 (Пост 2)
и т.д.

Принципе так норм, но когда количество постов и групп не равно, то когда могут одни посты публиковаться в одну группу. Проблемы решил так, массивом в js выдергиваю последний пост и вставляю в первый, таким образом посты как бы сдвигаются вниз.

оффтоп
В последняя время очень часто не могу зайти на форум (не именно в эту ветку, а вообще)есть какие то проблемы? Или только у меня?

вопросы о работе форума - задаем тут

InfSub

Hamzat пишет

когда количество постов и групп не равно

скрытый текст

Выделить код

Код:

cur=pos-max*(Math.ceil(pos/max)-1);
где:
pos - текущая позиция в цикле, счетчик, увеличивающийся на 1
max - максимально (групп/строк в файле)
cur - результирующая позиция в диапазоне от 1 до max

Здравствуйте. Подскажите пожалуйста, возможно ли сделать чтобы макрос в одноклассниках открывал обсуждения на фотографиях с условием что их больше "0" нуля.

скрытый текст

Выделить код

Код:

var macros;
var macrosrun;
var s_n = "\n";

    macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;
 macros += "URL GOTO=http://ok.ru/profile/568042737892/photos"+s_n;
i = 1
do {
   i += 1;
 macros += "TAG POS="+i+" TYPE=SPAN ATTR=TXT:">0""+s_n;
   
    macrosrun = iimPlay(macros); 
 macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n; 
} while (i < 50)


правила темы, 1.2.4 и 1.2.5

InfSub

Мэтры, может кто знает? Решил возобновить использование макросов и управляющих скриптов для сборов сатох с кранов, нарыл пяток приличных кранов, написал по аналогии макрос, стал тестить после разгадывания на рукапче возвращает некое словосочетание, копирует его и вставляет в поле ввода результата в солвмедия, но вот тут и загвоздка после разгадывания на рукапче, приходит нормальное текстовое содержание, макрос его забирает и вставляет в поле ввода, но вставляет не
2-3 слова как в капче, а вот такой набор символов:

var s_t_id_ii='8phBMtXZEL'; var s_t_prodid='2';lizard poisons spock

из которых только 3 последних слова в данном случае результат присланный с рукапча, откуда остальное берется и как с этим бороться? Есть идеи? Я не особо силен в программировании, тямы не хватает, могу написать по аналогии, почистить, добавить, но не более. Помогите пожалуйста.

P.S. Могу предположить, что поменяли код где то, потому что на прошлой неделе еще все работало.

Покажи кусок кода, отправки на рукапчу, вернее когда уже ответ оттуда извлекаешь, и как в поле для ввода вставляешь.

Кстати солвемедия прекрасно и так разгадывается, не нужно ни куда капчу отправлять.
Я сейчас только с кранов с капчой от солвемедия  собираю.

PRESIDENT пишет

Покажи кусок кода
удалено, правила форума, пункт 2.9 - излишнее цитирование

все работало до прошлой пятницы, потом стало эту фигню вставлять, а код вот:

скрытый текст

Выделить код

Код:

TAB OPEN
TAB T=2
URL GOTO={{SERVICE}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\jupiterbitcoin.png
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://rucaptcha.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=2
TAB CLOSE

TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give<SP>me<SP>my<SP>bits,<SP>baby!


код размещается в теге code, а не только в спойлере, спойлер используется для скрытия больших кусков кода, более 4 строк
с отсылкой на рукапча и вставкой в поле солвмедиа, и нажатием кнопки.

03-09-2015 00:01:38

PRESIDENT пишет

удалено, правила форума, пункт 2.9 - излишнее цитирование
Я сейчас только с кранов с капчой от солвемедия  собираю.

у меня есть такой скрипт тоже, но там нужный тип капчи редко попадается, и мало собирает.
Если ... удалено, для этого есть ЛС правила темы, пункт 1.4

InfSub

Попробуй так

Выделить код

Код:

iimPlay("CODE:TAB OPEN\nTAB T=2\nSET !TIMEOUT 30\nURL GOTO="+service);
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT="+key);
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\CAPCH\\jupiterbitcoin.png");
 iimPlay("CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*");
 iimPlay("CODE:TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT");text=iimGetLastExtract().split(';');
 iimPlay("CODE:WAIT SECONDS=1\nTAB CLOSE"); 
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=* ATTR=ID:adcopy_response CONTENT="+text[2].replace(/ /g,'<SP>'));
 iimPlay("CODE:WAIT SECONDS=1");
 //iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:*orm ATTR=ID:*");
 iimPlay("CODE:TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give*");


И обрами свой код в спойлер, модер  увидит, ругать будет.

Спасибо, попробую.
удалено, правила темы, пункт 1.4

InfSub

PRESIDENT пишет

Попробуй так

Выделить код

Код:

iimPlay("CODE:TAB OPEN\nTAB T=2\nSET !TIMEOUT 30\nURL GOTO="+service);
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT="+key);
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\\CAPCH\\jupiterbitcoin.png");
 iimPlay("CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*");
 iimPlay("CODE:TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT");text=iimGetLastExtract().split(';');
 iimPlay("CODE:WAIT SECONDS=1\nTAB CLOSE"); 
 iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=* ATTR=ID:adcopy_response CONTENT="+text[2].replace(/ /g,'<SP>'));
 iimPlay("CODE:WAIT SECONDS=1");
 //iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:*orm ATTR=ID:*");
 iimPlay("CODE:TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give*");

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

скрытый текст

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 0
FILTER TYPE=IMAGES STATUS=OFF
CMDLINE !DATASOURCE dann.csv

SET SERV {{!COL1}}
SET SERVICE EVAL("var SERV=\"{{!COL1}}\"; if(SERV == 1){\"https://rucaptcha.com/imacros.html\";} else \"http://antigate.com/imacros.html\";")
SET API EVAL ("var SERV=\"{{!COL1}}\"; if(SERV == 1) \"{{!COL2}}\"; else \"{{!COL3}}\";")

SET BTC {{!COL4}}
TAB T=1
URL GOTO=http://jupiterbitcoin.com/?r=UCSVYWUNREMVSBAB

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{BTC}}

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=jupiterbitcoin.png WAIT=YES
TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=2

TAB OPEN
TAB T=2
URL GOTO={{SERVICE}}
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\jupiterbitcoin.png
ONDIALOG POS=1 BUTTON=OK CONTENT=
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://rucaptcha.com/in.php ATTR=*
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=2
TAB CLOSE

TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give<SP>me<SP>my<SP>bits,<SP>baby!

FILEDELETE NAME=C:\CAPCH\jupiterbitcoin.png
WAIT SECONDS=1

Ну по аналагу со своим кодом сделай

скрытый текст

Выделить код

Код:

...
TAB CLOSE

TAB T=1
SET OTVET EVAL ("txt=\"{{!EXTRACT}}\";text=txt.split(';')[2].replace(/ /g,'<SP>');text;")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{OTVET}}
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give*
...

PRESIDENT пишет

Ну по аналагу со своим кодом сделай

Не прошло, вставляет вот это

__undefined__

имеется список моих групп нужно что бы макрос заходил в каждую из них по очереди

TAG POS={{!LOOP}} TYPE=IMG ATTR=SRC:https://pp.vk.me/c*/v*/*/*.jpg&&CLASS:groups_row_img

... но он заходит только в 20-25 дальше начинает перепрыгивать команду,  либо просто прочитывает но не переходит, даже переходит на закрепленную вкладку с верху  помогите пожалуйста

volchsek пишет

дальше начинает перепрыгивать команду

открючите игнорирование ошибок, это как минимум подскажет вам - где ошибка

InfSub пишет

открючите игнорирование ошибок, это как минимум подскажет вам - где ошибка

RuntimeError: Error loading page https://vk.com/al_groups.php?__query=club48260982&_ref=groups&_tstat=336%2C0%2C30%2C369%2Cgroups_list&al=-1&al_id=316130427&_rndVer=37940, line 2 (Error code: -933)

volchsek
и в чем сложность? iMacros Вам выдал причину Вашей проблемы

Error loading page

если вы попробуете открыть эту ссылку - получите белый лист..

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

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

не можете? нужна помощь? пожалуйста, имейте уважение, к участникам форума и предоставьте всю, информацию, что может потребоваться для решения, конкретно вашей проблемы, без лишних вопросов и вытягивания из вас по крупице - всей необходимой информации

Ребята, подскажите, пожалуйста, кому не сложно. Голову сломала, не понимаю как вытащить project_153215 из кода

скрытый текст

Выделить код

Код:

<article class="single " id="project_153215" name="innovation" data-user_id="22">             
<div class="heading-line clearfix">                 
<div class="td1">


Заранее благодарю!


1.2.5, правила размещения кода, на форуме

InfSub

Lavella

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=ARTICLE ATTR=ID:project_* EXTRACT=HTM
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/project_\\d+/)")

Ребята помогите мозг сломал. Короче сделал скрипт на fb (sender по группам) если быть краток то функции его такова, что он с начало вставляет ссылку в поле пост импортирует контент , потом вставляет сам пост и публикует. Проблема в том, что когда он вставляет пост и нажимает опубликовать, то фб выдает такое предупреждение.

скрытый текст
190e0bbf2d.jpg

Проблема скорее всего с самой структуре фб, а не в коде, но все же. Вот собственно код (точнее кусок кода) для проверки.
скрытый текст

Выделить код

Код:

link = 'https://www.facebook.com/1614430545485061/videos/1614433565484759/'
post = 'Привет всем.'
iimPlay('Code:'
        + 'TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message\n'
        + 'TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT='+link+'\n'
        + 'WAIT SECONDS=10\n'
        + 'TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT=\n'
        + 'WAIT SECONDS=1\n'
        );
    iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* Extract=htm')
    id_chars=iimGetLastExtract().split('id="')[1].split('">')[0]
    iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#'+id_chars+'" CHARS='+post+'\nWAIT SECONDS=2\nTAG POS=1 TYPE=BUTTON ATTR=TXT:Опубликовать')

InfSub пишет

и в чем сложность? iMacros Вам выдал причину Вашей проблемы

сложность в том что я не очень понимаю как исправить эту ошибку:rolleyes:

volchsek
значит, перечитайте еще раз то, что написано в спойлере, красным, если вам не понятно о чем там речь, рекомендую почитать правила темы iMacros, конкретно пункт 1.2

Ребята, кто-нибудь может на пальцах объяснить POS TYPE ATTR. Читаю, смотрю примеры - вроде все понятно. Нестандартная задача - сразу в ступор. Как кликнуть по ссылке, текст которой меняется? Помогите девушке :blush:

Hamzat пишет

Проблема скорее всего с самой структуре фб, а не в коде, но все же.

проблема в неправильном нажатии на кнопку

04-09-2015 22:41:42

Lavella пишет

кто-нибудь может на пальцах объяснить POS TYPE ATTR

...
POS - позиция данного тега с данными атрибутами (TYPE, ATTR) на странице
TYPE - имя/название тега (DIV, A, TD и т.д.)
ATTR - уникальное значение, по которому можно выделить данный тег среди других

Lavella пишет

Как кликнуть по ссылке, текст которой меняется?

найти неизменную часть у этой ссылки в коде, либо если ссылка имеет постоянную позицию на сайте - использовать POS="номер ссылки"

Строчка кода из вк извлекает имя и фамилию со страницы пользователя
и оставляет только имя. Как сделать, чтобы оставлялось только фамилия?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TITLE ATTR=* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\s(.*)/,'')")

InfSub пишет

проблема в неправильном нажатии на кнопку

Да проблему решил, но как то это все странно, когда записываешь то записывался POS=1, изменил на POS=2 все работает. удалено что за фигня.

rtfm.gif мат, в том числе, в завуалированной форме - запрещен

InfSub

Алим пишет

Как сделать, чтобы оставлялось только фамилия?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TITLE ATTR=* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/(.*)\s/,'')")

Благодарю InfSub , работает!

Ребята, а у вас было такое что imacros вроде как нажал на кнопку, но действии не произошло? Например кнопка "вход" записал все рабочее, и иногда когда запускаешь скрипт кнопка нажимается, но страница не грузится.  Можно ли это как то исправить. Иногда очень мешает. Mozilla 27 portable, imacros 8.6

Hamzat
попробуйте поставить задержку перед нажатием на кнопку
поэксперементируйте с командой нажатия, например, запишите ее через event
какой прок от версии FF и iM, если вы не указываете проблемный сайт и проблемную строку кода?

OffTop:
Это практически, аналогично вопросу: «Периодически заклинивает ключ в замке, не могу открыть дверь. Может быть железная дверь виновата?»

Конкретно, в данном случае, версия FF и iM - последнее, что может потребоваться для решения Вашей проблемы.

InfSub пишет

Hamzat
попробуйте поставить задержку перед нажатием на кнопку
поэксперементируйте с командой нажатия, например, запишите ее через event
какой прок от версии FF и iM, если вы не указываете проблемный сайт и проблемную строку кода?

OffTop:
Это практически, аналогично вопросу: «Периодически заклинивает ключ в замке, не могу открыть дверь. Может быть железная дверь виновата?»

Конкретно, в данном случае, версия FF и iM - последнее, что может потребоваться для решения Вашей проблемы.

Вот к примеру кусок кода

скрытый текст

Выделить код

Код:

iimPlay ('Code:'
    + 'SET !ERRORIGNORE YES \n'
    + 'SET !TIMEOUT_STEP 1 \n'
    + 'TAB CLOSEALLOTHERS \n'
    + 'URL GOTO=https://www.facebook.com\n'
    + 'WAIT SECONDS=1\n'
    + 'TAG POS=1 TYPE=INPUT:EMAIL ATTR=NAME:email CONTENT='+login+'\n'
    + 'TAG POS=1 TYPE=INPUT:PASSWORD ATTR=NAME:pass CONTENT='+pass+'\n'
    + 'TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:persist_box CONTENT=YES\n'
    + 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=*\n'
    + 'WAIT SECONDS=1\n'
    );


В данном случае это происходит иногда, на счет поставить "задержку перед нажатием на кнопку", не пробовал попробую. Вообще такая как бы недуг встречался и на других сайтах. Вот и подумал что такое не только у меня.
скрытый текст
Еще такое уточнение, скрипты я обычно пишу в js, в iim такой проблемы не припоминаю. Проблема может в этом быть? или это "эффект плацебо"

Здравствуйте, Татьяна! не могу разобраться вот в чем имеется список моих групп их 100 сделал макрос который заходит в каждую из них загружает фото выходит и так в следующую, но проблемма в том что он проходит нормально только 20 групп дальше начинает либо перепрыгивать либо просто читает но не выполняет!!


скрытый текст

Выделить код

Код:

SET !REPLAYSPEED SLOW
SET !ERRORIGNORE YES
TAG POS={{!LOOP}} TYPE=IMG ATTR=SRC:https://pp.vk.me/c*/v*/*/*.jpg&&CLASS:groups_row_img
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=span ATTR=class:add_media_lnk
TAG POS=1 TYPE=NOBR ATTR=TXT:Прикрепить CONTENT=EVENT:MOUSEOVER
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\Users\ALLLLLLLLLLLLLLLLLLL\Desktop\фэйки\1\{{!LOOP}}.jpg
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post&&CLASS:flat_button<SP>fl_l
BACK


1.2.5, правила размещения кода, на форуме

InfSub

PRESIDENT пишет

скрытый текст
a1=Math.floor(Math.random()*100);  // <--- здесь 100 число строк в 1.тхт
iimPlayCode('SET !DATASOURCE 1.txt\nSET !DATASOURCE_LINE '+a1+'\nSET !EXTRACT {{!COL1}}')
str=iimGetLastExtract();

Hamzat, уберите:

Hamzat пишет

+ 'SET !TIMEOUT_STEP 1 \n'

он скорее всего, просто не успевает у Вас авторизоваться

как создать бесконечный цикл? имеется 100 моих групп, мне нужно что бы imacros заходил только  в  первые 30 групп, и начинал сначала  до бесконечно

правила, пункт 2.1  Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском.

InfSub

volchsek

скрытый текст
for (;; ){                        // <--- Это бесконечный цикл
for (i=1; i<=30; i++){ // <--- Это перебор твоих 30 групп

  тут твой скрипт
  где i это будет номер группы

  }
}

PRESIDENT, благодарю

PRESIDENT, почему то с js он загружвет только одно  и тоже фото а без как мне надо разные что то нужно в js подправить

volchsek

for (i=1; i<=30; i++){
i - это будет номер группы

Покажи весь код как ты делаешь.

PRESIDENT

скрытый текст

Выделить код

Код:

for (;; ){                        // <--- Это бесконечный цикл
for (i=1; i<=30; i++){ // <--- Это перебор твоих 30 групп

iimPlay("may.iim")

 }
}

При чём тут iimPlay("may.iim")smile_29.gif
и где ты тут i используешь.
Я даже красным выделил smile_15.gif
i - это и будем меняющийся номер
и где в твоём скрипте ты ето  i используешь ???

Ты сейчас просто по кругу гоняешь свой may.iim скрипт smile_12.gif

PRESIDENT,

скрытый текст

Выделить код

Код:

SET !REPLAYSPEED SLOW
SET !ERRORIGNORE YES
SET !REPLAYSPEED SLOW
TAG POS=1 TYPE=DIV ATTR=ID:wrap1
TAG POS={{!LOOP}} TYPE=IMG ATTR=SRC:https://pp.vk.me/c*/v*/*/*.jpg&&CLASS:groups_row_img 
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=span ATTR=class:add_media_lnk
TAG POS=1 TYPE=NOBR ATTR=TXT:Прикрепить CONTENT=EVENT:MOUSEOVER
TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию
TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT=C:\Users\ALLLLLLLLLLLLLLLLLLL\Desktop\фэйки\3\{{!LOOP}}.jpg
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post&&CLASS:flat_button<SP>fl_l
BACK

Тебе нужно вместо {{!LOOP}} i поставить.
Только правильно поставить, не просто тупо в скрипте заменить {{!LOOP}} на i

PRESIDENT, этот скрипт который я вам отослал ходит по моим группам но он не начинает грузить фото после где то 21 пройденной группы

скрытый текст

Выделить код

Код:

var Path='C:\\Users\\ALLLLLLLLLLLLLLLLLLL\\Desktop\\фэйки\\3\\', iP=iimPlay, iD=iimDisplay; 


for (;; ){                        
for (i=1; i<=30; i++){
iimDisplay(i);
iimPlay('CODE:TAG POS=1 TYPE=DIV ATTR=ID:wrap1'); 
iimPlay('CODE:TAG POS='+i+' TYPE=IMG ATTR=SRC:https://pp.vk.me/c*/v*.jpg&&CLASS:groups_row_img'); 
iimPlay('CODE:EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0');
iimPlay('CODE:TAG POS=1 TYPE=span ATTR=class:add_media_lnk');
iimPlay('CODE:TAG POS=1 TYPE=NOBR ATTR=TXT:Прикрепить CONTENT=EVENT:MOUSEOVER');
iimPlay('CODE:TAG POS=1 TYPE=NOBR ATTR=TXT:Фотографию');
iimPlay('CODE:TAG POS=1 TYPE=INPUT:FILE ATTR=ID:choose_photo_upload CONTENT='+Path+i+'.jpg');
iimPlay('CODE:WAIT SECONDS=5');
iimPlay('CODE:TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post&&CLASS:flat_button<SP>fl_l');
}
}


volchsek пишет

не начинает грузить фото после где то 21 пройденной группы

Запиши клик по 20-й  группе, которая скриптом нормально проходится
и клик по 21-й, 22-й, 23-й
посмотри в чём отличие
скорее всего где то здесь

TAG POS=1 TYPE=IMG ATTR=SRC:https://pp.vk.me/c*/v*/*/*.jpg&&CLASS:groups_row_img

PRESIDENT, а вы его тестировали?! он во первых не выходит назад в группы

volchsek пишет

а вы его тестировали

Меня нету в соцсетях.
Просто переделал твой скрипт на JS

volchsek пишет

не выходит назад в группы

там в конце BACK забыл добавить, добавь у себя.

PRESIDENT, ясно back тоже не работает видно в js нужно по другому

volchsek пишет

back тоже не работает видно в js нужно по другому

Всё везде прекрасно работает

скрытый текст
...
iimPlay('CODE:WAIT SECONDS=5');
iimPlay('CODE:TAG POS=1 TYPE=BUTTON ATTR=ONCLICK:wall.sendPost()&&ID:send_post&&CLASS:flat_button<SP>fl_l');
iimPlay('CODE:BACK');
}
}

PRESIDENT, у меня он на столько быстро срабатывает что фото не загружается

правила, пункт 2.9
Не надо цитировать весь ответ, хотите процитировать конкретную часть, выделите и нажмите "цитировать", нужно сохранение форматирования, нажмите "ответить" и удалите лишнее, либо просто нажмите на никнейм пользователя слева, к которому обращаетесь, для вставки его имени в поле ответа

InfSub

volchsek пишет

на столько быстро срабатывает что фото не загружается

Ну что ты как маленький.
Поставь в настройках имакроса среднюю или медленную скорость воспроизведения, поставь галочку Показывать яваскрипт во время проигрывания.
Увеличь пазу WAIT SECONDS с 5 сек на 10-20 после загрузки фото.
Такие то глупости мог бы уже не писать, сам исправлять...:|

пытаюсь заполнить карту точками
список городов в txt файле
строчки все заполняются все ок
но...перед сохранением точки на сайте настроено, что карта должна определить координаты...
определять она их начинает если нажать пробел или стереть символ в поле города...или если печатать название города, т.е. когда ручками то по-всякому
а через imacros никак
KEY=8 и KEY=13 пробовал и CHAR=" " тоже и <SP> и тыкать в другое поле..

eclipseg
Ты сайтом ошибся, тут экстрасенсов нет.

PRESIDENT пишет

Ты сайтом ошибся, тут экстрасенсов нет.

почему экстрасенсов?
мне надо вариант, как можно сэмулировать нажатие клавиш еще...

eclipseg пишет

пытаюсь заполнить карту точками

Какую карту, где, что ?
Адрес сайта .

Привет.
ищу для JS паузу, но не могу найти.
Нашел только отложенный запуск http://alljs.ru/articles/timeout/overview.
Но он в iMacros не работает.
Выдает:

ReferenceError: setTimeout is not defined, line 6 (Error code: -991)

Есть ли пауза для JS, которая будет работать в iMacros без использования iim ?

spy686
думаю, самым простым и действенным будет реализация через iim-код, что-то типа:

скрытый текст

Выделить код

Код:

function sleep(sec){
    iimPlayCode('WAIT SECONDS='+sec);
};

spy686
Если ты всё равно имакрос используешь чем тебе WAIT SECONDS не угодил ?
Или я чето не допонял...

PRESIDENT пишет

spy686
Если ты всё равно имакрос используешь чем тебе WAIT SECONDS не угодил ?
Или я чето не допонял...

если бы была пауза в JS, не зачем было бы нагружать систему лишним вызовом или сборкой iim.

10-09-2015 21:37:09

InfSub пишет

spy686
думаю, самым простым и действенным будет реализация через iim-код, что-то типа:

спасибо.
тогда придется iim все таки прикручивать.

Подскажите как посчитать количество слов на странице во всех полях , встречалась какае-то команда но не помню,

можно и через js с циклами через BODY - но так долго , может ещё что-то есть и без учитывания  заглавной буквы -
К примеру мне нужно подсчитать на странице все слова "dog" + "Dog" ...
Пишите кто что знает - пытаюсь оптимизировать скрипт под старый комп

Задам глупый вопрос: есть возможность зашифровать код iim скрипта так, чтобы в браузере работал, а понять человеку код было нельзя?

spy686 пишет

если бы была пауза в JS, не зачем было бы нагружать систему лишним вызовом или сборкой iim.

чтобы ее реализовать, придется инклудить в код целую библиотеку, отсутствующую в iMacros... зачем.. реально проще через iim

11-09-2015 12:35:58

kolshix пишет

Подскажите как посчитать количество слов на странице

например так:

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET WORD "текст"
TAG POS=1 TYPE=BODY ATTR=* EXTRACT=TXT
PROMPT EVAL("'{{!EXTRACT}}'.match(/{{WORD}}/gi).length-1")

Но где-то может не работать и выпадать с ошибкой из-за содержимого body (туда попадает html)


11-09-2015 12:41:51

udalov пишет

есть возможность зашифровать код iim скрипта

iim -нет
js - нет, только обфусцировать код

InfSub
Как всегда спасибо , огромнейшое , 
Хоть и в iim не заработало - перенёс в js - все супе !
(Пришлось дописать в extract один результат , так как бывало выпадало null значение, но это мелочи )

kolshix пишет

Пришлось дописать в extract один результат , так как бывало выпадало null значение, но это мелочи

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=BODY ATTR=* EXTRACT=TXT');
var r,word='искомое слово или фраза';
r=((r=iimGetLastExtract().match(new RegExp(word,'gi')))!=null)?r.length:0;

Пишу скрипт для накрутки голосования за фотографии в приложении "ПоискВС" Вконтакте

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


. Фотографии для голосования за них выводятся во фрейме, его "имя" меняется при каждом заходе в приложение. Приходятся каждый раз его редактировать? Кто посоветует, как это побороть?
Код:

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
SET !REPLAYSPEED FAST
SET !TIMEOUT 3
SET !ERRORIGNORE YES
'FILTER TYPE=IMAGES STATUS=ON
SET !VAR1 EVAL("var random=Math.floor(Math.random()*1 + 2); random;")

FRAME NAME="fXDe9976"
'FRAME NAME="fXDa9c6c"
'FRAME NAME="fXD5476c"
'FRAME NAME="fXDed181"
'FRAME NAME="fXD148d5"
'FRAME NAME="fXD8cfed"
'FRAME NAME="fXD4bd4a"
'FRAME NAME="fXDf8bad"
'FRAME NAME="fXD2cce5"
'FRAME NAME="fXD3f476"
'FRAME NAME="fXDa99b7"
'FRAME NAME="fXD7e4eb"
'это были фреймы от предидущих заходов.

SET !VAR2 EVAL("var a=['Мне нравится','Мне очень нравится'],r=Math.floor(Math.random()*2 + 0);a[r];") 
TAG POS=1 TYPE=TD ATTR=TXT:{{!VAR2}}
'TAG POS=1 TYPE=TD ATTR=TXT:Мне<SP>нравится
WAIT SECONDS={{!VAR1}}

Попробуй меняющуюся  часть замени звёздочкой

FRAME NAME="fXD*"

Ребята, подскажите, пожалуйста, есть код (открытие окна просмотра видео в отдельном окне или вкладке):

скрытый текст

Выделить код

Код:

<TD style= align=center><
A onclick="var w=window.open(this.href,'popupWindow','width=700,height=550,left=320,top=0');
w.focus();return false;" 
href="/viewer/14669"><IMG title="Просмотреть видео" style= alt=play src="/images/icons/play16x16.png"></A> </TD>


Можно каким-то образом открыть окно просмотра через EVAL?
SET !VAR1 EVAL("var w=window.open...) - не работает.

Lavella

можно как то так

TAB OPEN
TAB T=2
URL GOTO=начало ссылки(домен сайтa)/viewer/14669

PRESIDENT пишет

Попробуй меняющуюся  часть замени звёздочкой FRAME NAME="fXD*"

C этого и начал - не помогло...

udalov
А в хтмл коде там  нигде не видно, может где спарсить можно.
Может что то типа такого в коде увидишь 266246518

скрытый текст

Выделить код

Код:

var i;
for (i=1;i<=222;i++){
var w;
for (w=1;w<=1;w++){
iimSet("NSTROKA",w);
iimPlay("1/3.iim",60);  
}
iimPlayCode("URL GOTO=imacros://run/?m=Тест.js")
var x;
for (x=1;x<=1;x++){
iimSet("NSTROKA",x);
iimPlay("1/2.iim",60);
 }
}


Что же тут не так? Не могу остановить скрипт,кнопка пауза работает,а стоп не работает. Приходится браузер закрывать.

Gergi
Глюки версий выше 7.x :(
Сам когда то расковыривал макроплеер исправлял глюки с функциями, паузой и этим стопом.

Попробуй в конце каждого цикла паузу в 1 сек поставь, иногда помогает.


Зачем ты перед каждым циклом var втыкаешь ???

Что у тебя в Тест.js
Может ты из него опять пытаешься этот скрипт запустить или переменные общие используешь.

Gergi пишет

for (x=1;x<=1;x++){

зачем, вообще, тут цикл.. код, ради кода?

InfSub пишет
Gergi пишет

for (x=1;x<=1;x++){

зачем, вообще, тут цикл.. код, ради кода?

Получается не нужен? Мне нужно зациклить весь код,и что бы при одной прокрутке по одному разу сработали 3.iim Test.js и 2.iim

Gergi пишет

Мне нужно зациклить весь код

он у вас уже зациклен:

for (i=1;i<=222;i++){

Всем привет, возникла такая проблема в imacros...
У меня макрос на рассылку - открываю всех людей на 3 страницах (на каждой 16 человек), вторая часть идет отправка сообщений. Когда откроет все вкладки, ожидание 15 секунд, отправляет сообщение 1 человеку, переходит на вторую вкладку, где уже прогрузилось текстовое окно, в некоторых случаях прогрузилась полностью страница, а макрос тупит и не отправляет сразу. Скорость стоит фаст, точно так же на медиуме. Отправляет где то секунд через 4-5...
Может есть какая то команда, чтобы сразу отправлял сообщение, когда появляется текстовое окно?

(я сократил макрос)

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
EVENT TYPE=CLICK SELECTOR="#main>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(16)>DIV:nth-of-type(2)>DIV>A>IMG" BUTTON=1
EVENT TYPE=CLICK SELECTOR="#main>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>A:nth-of-type(2)>SPAN" BUTTON=0
TAB T=2
WAIT SECONDS=15
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:message CONTENT=(ТЕКСТ СООБЩЕНИЯ)
TAG POS=1 TYPE=DIV ATTR=TXT:Отправить
TAB T=3
...

kolbasa559 пишет

есть какая то команда

скрытый текст

Выделить код

Код:

SET !TIMEOUT_STEP 5

где 5 - кол-во сек, для ожидания загрузки нужного элемента

14-09-2015 13:43:09

InfSub пишет

скрытый текст

Выделить код

Код:

SET !TIMEOUT_STEP 5

где 5 - кол-во сек, для ожидания загрузки нужного элемента

Спасибо, сегодня попробую :)

Мне нужно сделать двойной клик левой кнопкой мыши по изображению, пытался нагуглить, не нашел или может руки кривые. Подскажите плз, нужно, чтобы вторая строка делала двойной клик.

скрытый текст

Выделить код

Код:

CLICK X=506 Y=693
CLICK X=384 Y=209
WAIT SECONDS=3
TAB CLOSE

kolbasa559
Ну если один клик по координатам проходит, то сделай короткую паузу между кликами
первый клик
паза 0.2-0.5 сек
второй клик

PRESIDENT пишет

паза 0.2-0.5 сек

напиши, пожалуйста команду полностью :)

kolbasa559
Шутишь что ли ?

скрытый текст

Выделить код

Код:

CLICK X=506 Y=693  'Первый клик 
WAIT SECONDS=0.3   'Пауза
CLICK X=506 Y=693  'Второй клик

PRESIDENT пишет

Шутишь что ли ?

Спасибо, ну я прост не понял о какой пауза ты: ) недавно с аймакроом работать начал: )

кто нибудь знает как средствами imacros перезагрузить браузер , и желательно по-проще ? в последнее время браузер жрет 800 оперативы,  с чем связано не знаю,  когда работал на vk.com не более 400 за трое суток без прерывной  работы жрал , а тут за 15 мин до 800 поднимается .

kolshix спроси на форуме разработки, может есть какая команда

kolshix пишет

кто нибудь знает как средствами imacros перезагрузить браузер , и желательно по-проще ? в последнее время браузер жрет 800 оперативы,  с чем связано не знаю,  когда работал на vk.com не более 400 за трое суток без прерывной  работы жрал , а тут за 15 мин до 800 поднимается .

в подобном случае, adblocker'ом отключал flash (то что мелькает - реклама).

spy686 пишет
kolshix пишет

кто нибудь знает как средствами imacros перезагрузить браузер , и желательно по-проще ? в последнее время браузер жрет 800 оперативы,  с чем связано не знаю,  когда работал на vk.com не более 400 за трое суток без прерывной  работы жрал , а тут за 15 мин до 800 поднимается .

в подобном случае, adblocker'ом отключал flash (то что мелькает - реклама).

adblocker - для imacros плохо - из-за него часто падает браузер (если я конечно не путаю с аналогами flashblock) - если это блокировщик рекламы , то там есть полезная фича с помощью которой можно полностью отчистить всю страницу от нненужных элементов и оставить только те которые нужны , я таким макаром на 80% страници обрезал.

kolshix
Переходи на старую добрую портабельку 3.6 + имакрос 6.3:)
Новые мазилы все жрут немерено.:(
Вот смотри работают 4 портабельки c запущенными имакросами
и только запустил новую мазилку(40.0.3)
Даже ещё имакрос не стартанул.
Смотри сколь жрёт.:(

скрытый текст
hdDmI.gif

PRESIDENT пишет

Переходи на старую добрую портабельку 3.6

соглашусь.
но нужная какая фича на старой версии  не работала, помоему чтото с картинками - пришлось перейти на более свежу версию.
Может подскажете более менее стабильную связку iMacros+FF 3.6?

spy686
Да, начиная с 7-й версии имакрос может скринить часть экрана.
Старый имакрос мог только подгружать картинку, но не все сайты дают второй раз загрузить капчу.:(
Но старый имакрос может скринить всю страницу, давно уже хочу как то поковырять макролеер на эту тему, обучить его нужную часть скринить.

kolbasa559 пишет

удалено, правила 2.6, 2.9
ссылка на описание проблемы

Мой вопрос актуален, все так же подтормаживать начинает на скорости фаст  промежуток между действиями 2,5-5 сек, а бывает и мгновенно отправляет :) но когда запускаю вторую часть в другом макросе, то начинает активно отправлять :) возможно дело в мозилле? Она у меня памяти жрет, мне кажетчя оч много :) 1,3 гб :) на вирусы чистил, что еще можно сделать? :) или мб есть какая то команда на запуск другого макроса? Это неполностью, но наверно решило бы проблему :)

Подскажите, как реализовать нажатие кнопки ESC в imacros?

1212oao пишет

Подскажите, как реализовать нажатие кнопки ESC в imacros?

воспользоваться поиском по теме, по слову кнопки

kolbasa559 пишет

мне кажетчя оч много  1,3 гб

1,3 гб  smile_13.gif
Дельный совет smile_16.gif

PRESIDENT пишет
kolbasa559 пишет

мне кажетчя оч много  1,3 гб

1,3 гб  smile_13.gif
Дельный совет smile_16.gif

прожорливость сильно зависит от оборудования и сайта - сейчас один потихоньку долблю, дак он по 800-900 мегабай жрет //
хоть и пользуюсь старыми версиями    //  вк так не жрал _))

InfSub пишет
1212oao пишет

Подскажите, как реализовать нажатие кнопки ESC в imacros?

воспользоваться поиском по теме, по слову кнопки

Поиском воспользовался еще до написания вопроса в теме, но к сожалению ответ не найден.
Подскажите пожалуйста.

1212oao
Если, Вас отправили в поиск, значит - ответ есть, при том, на первой же странице поиска

InfSub пишет

1212oao
Если, Вас отправили в поиск, значит - ответ есть, при том, на первой же странице поиска

Спасибо! Информацию нашел, но не могу понять, что нужно прописать в imacros.
Ситуация:
Вконтакте, время от времени появляется окно, о том что нужно привязать мыло или подтвердить номер телефона. И соответственно мне нужно это окно убрать. Нажатие ESC спасает только когда я у компьютера. Как автоматизировать процесс?

PRESIDENT пишет

А откуда скачать эту портабельку?
Да и решит ли это мою проблему, которую я описал? Чтобы у меня макрос пошел норм, мне нужно его запустить, он 1 страницу отправит, останавливаю макрос и запускаю по новой, только тогда всем отправляет по фасту :)

kolbasa559 пишет

А откуда скачать эту портабельку?

простите, а FAQ - для кого написано?

18-09-2015 14:34:40

kolbasa559 пишет

Да и решит ли это мою проблему

тут нет экстрасенсов, выложите код скриптов, Вам посоветуют, как их можно оптимизировать

Всем привет :rock:

скрытый текст

Выделить код

Код:

SET !VAR3 1
SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR3}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")


В старой мазиле не работает EVAL Может есть альтернатива этому коду?

Gergi
Я не понимаю тебя,  ты в иим-ах вставляешь js код.
Пиши сразу на js и забудь этот бред с иим-ами как страшный сон.

InfSub пишет

тут нет экстрасенсов, выложите код скриптов, Вам посоветуют, как их можно оптимизировать

Хорошо, буду каждый раз копировать, когда буду что то спрашивать :)
У меня макрос на рассылку - открываю всех людей на 3 страницах (на каждой 16 человек), вторая часть идет отправка сообщений. Когда откроет все вкладки, ожидание 15 секунд, отправляет сообщение 1 человеку, переходит на вторую вкладку, где уже прогрузилось текстовое окно, в некоторых случаях прогрузилась полностью страница, а макрос тупит и не отправляет сразу. Скорость стоит фаст, точно так же на медиуме. Отправляет где то секунд через 4-5... Можно исправить только, если в отдельном макросе у меня вторая часть - отправка сообщений. И я запускаю этот макрос заново. Т.е. у меня нормально идет макрос только со 2 раза. Я сократил макрос, т.к. там одни и те же действия.
удалено, в выложенном коде практически отсутствуют - описанные выше действия

InfSub

kolbasa559

Тебе же модер уже ответил, поставь сет тайтоут и/или сет таймуот стер.
Ток разберись с  мазилой сначала, 1 гиг это очень много.

Всем Доброго утра
Короче ковырял интернет как снизить потребление оперативы Мозилой (Палмуном)
Статьи все однотипные , но в этой немного новенького:
http://www.textomir.ru/pk-net/kak-uskorit-mozilla-firefox-prosto.html
Потом случайно наткнулся на RequestPolicy - Штука блокирует запросы со страници сайта на котором находитесь к другим адресам
Штука очень хорошая , но для работы с Imacros нужно немного поднастроить - так как есть элементы которые нужно разрешить , а другие нет - к примеру видел запросы к метрике , а накой они мне нужны.
Лично очистил весь список разрешенных сайтов и потехоньку добавлял нужные .
Тестил пока 3 часа , потребление уменьшилось на 75 % - (Палмун ещё не тестировал ) - надеюсь потребление таким и останется
------------------------------

Подскажите пожалуйста,как прописать,что-бы 4варианта текста менялись,например 1текст на одном сайте,другой текст на 2сайте,и так по очереди,а то,что только не перепробовал,ни чего не помогает.Напишите,какие коды нужна прописать

peterburg87 пишет

Подскажите пожалуйста,как прописать,что-бы 4варианта текста менялись,например 1текст на одном сайте,другой текст на 2сайте,и так по очереди,а то,что только не перепробовал,ни чего не помогает.Напишите,какие коды нужна прописать

можно через перемешку массива (можно перемешку номеров), а потом поочерёдное извлечение - но нет готового кода под рукой
--------------
вот попроще :
создать файл - поместить туда 4 варианта текста - потом код случайным образом выбирает один из 4-х текстов

скрытый текст

Выделить код

Код:

SET NOMERSTROKI EVAL("Math.floor(Math.random()*4 + 1);")
SET !DATASOURCE text.txt
SET !DATASOURCE_LINE {{NOMERSTROKI}}
код который записали CONTENT={{!COL1}}


-------
как настроить считывание текста , смотрите видео в faq и читайте форум

20-09-2015 11:24:59
такой вопрос :
кто нибудь с помощью imacros крутил клики рекламы на сайте, сильно ли палевно ? у меня на сайте 3 рекламодателя , хочу попробовать по 25 кликов на каждой рекламке сделать , вот интересен результат? (пока небыло времени потестить , хочу моб интернет заказать и через bat файл делать переподключение к интернету для смены ip - все пока в теории, а ведь на практике всегда бывает по другому )
------
Пишите , любая инфа будет интересна

Подскажите,можно ли в .iim сделать проверку условий? Например через js вызываю 1.iim если условие (истина) 1.iim вызывает 2.iim  если условие не истина 1.iim вызываем 3.iim

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

скрытый текст

Выделить код

Код:

SET !DATASOURCE file1.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}


далее нужно чтобы в определенное место тоже вставлялись значения из файла.
вопрос: можно ли в одном сценарии реализовать обращение к разным файлам, если да - то как, подскажите пожалуйста .

такой процесс смог реализовать, прописывая в file1.txt через запятую вторые значения с кодом
{{!COL2}} но такой вариант очень геморойно получается, очень нужно чтобы вторая вставка была именно с другого файла
заранее спасибо.

не работает,я записал первые 3 строки,и создал файл,добавил 4 текста,но ни чего не происходит,просто заходит на сайт и ни чего не пишет.
в скрипт добавил эти 3 сточки

скрытый текст

Выделить код

Код:

SET NOMERSTROKI EVAL("Math.floor(Math.random()*4 + 1);")
SET !DATASOURCE text.txt
SET !DATASOURCE_LINE {{NOMERSTROKI}}
а с четвёртой не понял,какой код писать,а в файле text.txt у меня написано так
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Текст<SP>1
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Текст<SP>2
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Текст<SP>3
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT=Текст<SP>4


правила темы, код размещается в телах спойлер и код

InfSub

Да utf-8
У меня вот такой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8881205 RECORDER=FX
SET !REPLAYSPEED MEDIUM
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\sayty.txt
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
SET NOMERSTROKI EVAL("Math.floor(Math.random()*4 + 1);")
SET !DATASOURCE text.txt
SET !DATASOURCE_LINE {{NOMERSTROKI}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}


получает он пишет не текст,а ссылку с файла sayty.txt

kolshix
AD блок тоже самое делает:)


Запуск батниак из скрипта не проблема реализовать, в факе есть пример.
Почти для всех 3G модемов, реконект выглядит примерно так

скрытый текст
@echo off
echo RECONEKT
rasdial имя подключения /disconnect
Sleep 5000
rasdial имя подключения

нo бывaет после рубута ИП не всегда с первого раза меняется, поэтому желательно 2 ребутить.


peterburg87

peterburg87 пишет

получает он пишет не текст,а ссылку с файла sayty.txt

Ты два раза одну и туже переменную используешь.
И для извлечения сайта и для извлечения текста у тебя {{!COL1}}
Используй разные и будет всё норм

PRESIDENT пишет

kolshix
AD блок тоже самое делает:)

я тоже сначала так подумал, нет не также - - визуально схоже и все
--------------
adblock блокирует подозрительные ссылки и всего (понятно что можно настроить чтоб все блокировалось) - а так же визуально меняется страница -- так же не раз замечал большее потребление оперативки адблоком , к то муже на браузере у меня стоял адблок и оперативу всеравно браузер жрал

RequestPolicy - заблокировал все к чертям собачим и при этом уменьшилось потребление оперативы
-----
короче тоже самое делает - но нюансы разные и результат
--------------------
по поводу батника наверно с Вами свяжусь , вижу что пробовали работать - я пока все это в теории читал , батником пользовался но давно -- осталось проверить кликабельность и оплату за клики

kolshix

offtop
Всегда юзаю адблок, никогда не замечал что бы он оперативу жрал.
Ещё есть такая приблуда носкрипт называется, попробуй тоже не плохо.
Блокирует все сторонние скрипты, что к сайту не относятся.
Можна и на уровне доменов настроить и на уровне отдельных скриптов. Так же хорошо режет флешь и всякую подобную хрень, которая в основном и жрёт оперативу.

И ещё раз, переходи на старую портабельку 3.6
реально лучше, никакие полмуны и близко не сравнятся.(по потреблению)

PRESIDENT пишет

И ещё раз, переходи на старую портабельку 3.6

Я пользуюсь именно этой версией,но почему через неё не загружается фото на фейсбук.

PRESIDENT

И ещё раз, переходи на старую портабельку 3.6

А какую вервию imacros Вы для него используете?  Хватает ?

Hamzat
У меня такая конструкция.

скрытый текст
a2cc44684e5c.jpg

PRESIDENT пишет

Hamzat
У меня такая конструкция.

А там новый метод записи поддерживается? в imacros багов  нет? B самое главное залей пожалуйста архив с ff 3.6 на какой нибудь файлобменик, а то  в гугле все ссылки устаревшие.

Hamzat
Меня почти всё устраивает, двух вещей в имакросе не хватает,
это скрин выделенной области, идёт только в версиях выше 7.
И сет таймоут в новых версиях можно ноль поставить, в старых минимум 1 сек.
Все остальные новые навороты, они нафих не нужны.

Тут в факе есть сыль на все версии мазилок, портабельных в том числе.
Качай любую понравившеюся. Потом через поиск дополнений ставишь имакрос,
только зайди в историю версий и выбери желаемую.
И ещё поставь адблок. :)

На мой взгляд, да и по отзывам с других форумов, имакрос 6.3.1.1 самая стабильная версия.
Да и у себя я имакрос немного профиксил. Убрал дурацкие кавычки при сохранении в текст. файл и подковырял цикл, работу с функциями и паузу.

Этот код работает,но вопрос в том как сюда можно добавить iimPlay("3.iim",60);  Принцип такой: Если условие истина,вызываем 2.iim если не истина вызываем 3.iim

скрытый текст

Выделить код

Код:

var w;
for (w=1;w<=111;w++){
iimSet("NSTROKA",w);
iimDisplay("Цикл="+w)
iimPlay("1.iim",60);  
i=iimPlayCode("TAG POS=1 TYPE=A ATTR=TXT:Истина")
if (i>0){
for (i=1;i<=1;i++){
iimDisplay(w)
       b=iimPlay("2.iim")
       if (b>0){
          break

      }  
   }

}
}


код пишется в тегах CODE, а при больших размерах кода (более 3-4 строк) - убирается в спойлер:
&#91;spoiler]&#91;code]Ваш код&#91;/code]&#91;/spoiler]

InfSub

Gergi пишет

Если условие истина,вызываем 2.iim если не истина вызываем 3.iim

скрытый текст

Выделить код

Код:

...
 
i=iimPlayCode("TAG POS=1 TYPE=A ATTR=TXT:Истина")
if(i>0) iimPlay("2.iim");
   else iimPlay("3.iim");

"по поводу старой версии мозилы 3.6 - оффтоп"
по поводу старой версии мозилы 3.6 - самое западло, что мне нужно одно дополнение - которое выполняет x-forwarded (не помню как пишется) замену ip - многие сайты такие ip даже не воспринимают , а некоторые воспринимают / сейчас вот и долблю один сайт через эту подмену  ip - на старую версию я не нашел нужное дополнение , но это не важно // раньше мозила и палмун (включены 2 для теста ) через 30 минут жрали по 800 (Даже проц умудрялись съедать , я нетбук не мог через диспетчер даже отрубить) , а уже сутки с RequestPolicy  и скачет от 100 до 220 (и проц не жрут)...  в RequestPolicy нужно настроить переход по ссылкам , а то он их блочит сразу , но я не заморачивался , пока мне это не нужно , все пока работает на минимуме , а это главное

PRESIDENT пишет

Оказывается всё проще чем я себе думал :) Спасибо что помог,искренне благодарен.:beer: Ещё один вопрос возник. Вот кусок кода,всё работает,но постоянно в адресной строке мелькает эта ссылка.

скрытый текст

Выделить код

Код:

var y;
iimPlay('CODE:URL GOTO=[b]file:///C:\\Test1\\Test2.txt[/b]\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
n=iimGetLastExtract().split('\n');
for (y=1;y<=n;y++){
iimSet("NSTROKA",y);


Можно ли её спрятать из адресной строки что бы не появлялась там?

код пишется в тегах CODE, а при больших размерах кода (более 3-4 строк) - убирается в спойлер:
&#91;spoiler]&#91;code]Ваш код&#91;/code]&#91;/spoiler]

InfSub

Так извлекай из текстового файла строки по порядку, не открывай его в браузере.

Для старого имакроса

Выделить код

Код:

for (y=1;y<99999;y++){
  iimPlay("CODE:CMDLINE !DATASOURCE C:\\Test1\\Test2.txt\nSET !DATASOURCE_COLUMNS 2\nSET !LOOP "+y+"\nSET !EXTRACT {{!COL1}}"); 
  n=iimGetLastExtract();
  if(n == '') break; else{ 

Тут твой скрипт

}

PRESIDENT
Спасибо!

удалено, полное нежелание пользоваться поиском

InfSub

Подскажите,чего этот код не работает?

скрытый текст

Выделить код

Код:

var z;
for (z=1;z<=10;z++){
iimSet("NSTROKA",z); 
iimPlay("1/1.iim");
i=iimPlayCode("TAG POS=9 TYPE=SPAN ATTR=TXT:Истина")
if(i>0)
iimSet("NSTROKA",z);
iimPlay("1/2.iim");
else
iimSet("NSTROKA",z);
iimPlay("1/3.iim");
    
  }


сколько раз мне еще повторить, код пишется в тегах CODE, а при больших размерах кода (более 3-4 строк) - убирается в спойлер:
&#91;spoiler]&#91;code]Ваш код&#91;/code]&#91;/spoiler]

InfSub

Gergi
...
if(i>0)
{
iimSet("NSTROKA",z);
iimPlay("1/2.iim");
}
else
{
iimSet("NSTROKA",z);
iimPlay("1/3.iim");
}

PRESIDENT я реально при много благодарен:rock:

Есть ещё один наболевший вопрос,который не даёт мне покоя:sick:

скрытый текст
TAG POS=6 TYPE=INPUT:TEXT ATTR=* CONTENT=Привет

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

Написал код,для добавлений в друзья,первый человек из списка добавляется,а все остальные нет,подскажите команду,что-бы добавляла по очереди из списка

peterburg87
Покажи код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья
EVENT TYPE=CLICK SELECTOR="#pv_box>A" BUTTON=0
WAIT SECONDS=10


код пишется в тегах CODE, а при больших размерах кода (более 3-4 строк) - убирается в спойлер:
&#91;spoiler]&#91;code]Ваш код&#91;/code]&#91;/spoiler]

InfSub

peterburg87 пишет

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья
EVENT TYPE=CLICK SELECTOR="#pv_box>A" BUTTON=0
WAIT SECONDS=10

TAG POS={{!LOOP}} TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья

не работает,может код кнопки другой надо

23-09-2015 01:21:54
Если я ставлю на запись и нажимаю добавить в друзья пользователя,пишет вот этот код TAG POS=1 TYPE=BUTTON ATTR=ID:вод сюда надо код добавить,а какой не знаю,пробовал этот код TAG POS=1 TYPE=A ATTR=ID:top_back_link первого из списка добавляет,а остальных нет,подскажите как прописать код,чтобы добавляла по очереди из списка

peterburg87
Тебе нужно номер позиции увеличивать.
POS=1 ...
POS=2 ...
POS=3 ...


js
for (a=1; a<=10; a++){
iimPlay('CODE:TAG POS='+a+' TYPE=BUTTON ATTR=TXT:Добавить*друзья');
iimPlay('CODE:EVENT TYPE=CLICK SELECTOR="#pv_box>A" BUTTON=0');
iimPlay('CODE:WAIT SECONDS=10');}

Спасибо большое,с POS Увеличил,и всё работает.

Подскажите пожалуйста,нужен код ссылки для входа в гости в одноклассниках к пользователю,только не 1 в поиске а случайного,и каждый раз что-бы заходил,к разным пользователям.
Ставил на запись,выдаёт такие коды

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#вот тут,был код пользователя,а надо другой>DIV>DIV>UL>LI>DIV>DIV>DIV>DIV>DIV>DIV>A" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#вот тут,был код пользователя,а надо другой>DIV>DIV>UL>LI>DIV>DIV>DIV>DIV>A>DIV>IMG" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#вот тут,был код пользователя,а надо другой>DIV>DIV:nth-of-type(2)>UL>LI:nth-of-type(10)>DIV>DIV>DIV>DIV>A>DIV>IMG" BUTTON=0


код пишется в тегах CODE, а при больших размерах кода (более 3-4 строк) - убирается в спойлер:
&#91;spoiler]&#91;code]Ваш код&#91;/code]&#91;/spoiler]

InfSub

peterburg87
Запиши клик в другом формате, не через EVENT, а что бы TAG POS= ...
И принцип как выше я тебе отвечал, меняй номер позиции, сделай рандом(случайное число)

пробовал несколько вариантов,не работает,если Вас не затруднит,напишите пожалуйста код, перехода к пользователю.

Подскажите, пожалуйста, можно ли заставить imacros делать скриншот не всей страницы, а только ее части?

Lavella
Смотри команду SAVE_ELEMENT_SCREENSHOT

peterburg87
У меня нет акаунта в ОК

PRESIDENT пишет

Lavella
Смотри команду SAVE_ELEMENT_SCREENSHOT

Все равно не получается, нужен скриншот формы, нашла ID формы, не понимаю как к ней обратиться :(

Получилось!

TAG POS=1 TYPE=DIV ATTR=ID:имя_формы CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

Спасибо!!! :)

Привет ребята есть такой код

скрытый текст

Выделить код

Код:

iimPlay ('Code:'
             + 'SET !DATASOURCE '+description+''+n
             + 'SET !DATASOURCE_LINE '+i+''     +n
             + 'ADD !EXTRACT {{!COL1}}'         +n
             + 'SET !DATASOURCE '+titles+''     +n
             + 'SET !DATASOURCE_LINE '+i+''     +n
             + 'ADD !EXTRACT {{!COL1}}'         +n
             + 'SET !DATASOURCE '+pictures+''   +n
             + 'SET !DATASOURCE_LINE '+i+''     +n
             + 'ADD !EXTRACT {{!COL1}}'         +n
             + 'SET !DATASOURCE '+accounts+''   +n
             + 'SET !DATASOURCE_LINE '+i+''     +n
             + 'ADD !EXTRACT {{!COL1}}'         +n
            );
    d = iimGetLastExtract(1); // Описание
    t = iimGetLastExtract(2); // Название
    p = iimGetLastExtract(3); // Картинки
    a = iimGetLastExtract(4).split('&');
    mail = a[0];
    pass = a[1];


Что он делает объяснять не надо по-моему , ошибка в том что если a пустой то выдается ошибка.
скрытый текст
TypeError: iimGetLastExtract(...) is null, line 44 (Error code: -991)

44 строка это как раз  a = iimGetLastExtract(4).split('&');. Ошибка я так понимаю  в том что там есть split, я хотел сделать так
скрытый текст

Выделить код

Код:

if (a !==) a.split('&');mail = a[0];pass = a[1];


Но почему то не работает. Может объясните в чем ошибся?

Hamzat

Hamzat пишет

if (a !== ) a.split('&');

А что это if (a !== ) что ты проверяешь этим, что а не равно чему ???
и какое потом действие a.split('&')  <--- что это ???

Попробуй так

Выделить код

Код:

a = iimGetLastExtract(4).split('&');
if(a){mail = a[0];pass = a[1];}

PRESIDENT
if (a !== '' ) забыл, т.е если а не пусто то выполняем условию. a.split('&') разделяет a. В а хранится логин пароль в формате mail&pass.

Hamzat пишет

то выполняем условию. a.split('&')

надо куда то сохранить
a = a.split('&')

И ты выше уже сделал это,
a = iimGetLastExtract(4).split('&');
зачем ещё раз то ???

if (a !== '' ) запиши проще if(a)
Но у тебя потом идёт несколько команд, которые должны выполнится при соблюдении условия в ифе, поэтому их нужно в фигурные скобки.{ ... }

скрытый текст
...
a = iimGetLastExtract(4).split('&');
if(a){
mail = a[0];
pass = a[1];
...
}

PRESIDENT
Split должен быть внутри  if . Я хочу сделать так

скрытый текст

Выделить код

Код:

a=iimGetLastExtract(4);
if (a !== '') {
    a=a.split('&');
    mail  = a[0];
    pass = a[1];
}


Я делаю что не так?

Hamzat пишет

самое главное залей пожалуйста архив с ff 3.6 на какой нибудь файлобменик, а то  в гугле все ссылки устаревшие.

еще раз повтовяю, FAQ для кого писалось?

Как соединить(сохранить) 2 скриншота, в один файл(скриншот)или как сделать из двух строк, один скриншот ?
Вроде есть команда SCREENSHOTINCLUDE но как ей пользоваться не знаю.
Пример:

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\2\ FILE=1.jpg
TAG POS=1 TYPE=IMG ATTR=ID:cp_Task CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAG POS=1 TYPE=SPAN ATTR=ID:cp_ion CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


Спасибо!

InfSub пишет
Hamzat пишет

самое главное залей пожалуйста архив с ff 3.6 на какой нибудь файлобменик, а то  в гугле все ссылки устаревшие.

еще раз повторяю, FAQ для кого писалось?

Раньше  там не было ссылки на скачивание  ff,теперь буду знать.

Как с помощью imacros изменять настройки мазилы. Например удалить куки, историю?

Очистить кеш и куки смотри команду CLEAR.
Что ещё ты хочешь настраивать ???

Алим пишет

Как с помощью imacros удалить куки, историю?

CLEAR

Алим пишет

Как с помощью imacros изменять настройки мазилы?

Смотри мини FAQ - Видео ... там есть .. смотри видео про проксЮ !

kolshix
Привет,
тебе идея/задача перезапуска фаерфокса через определенное время ещё актуально ?


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

Ждем пару (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 сек

Выделить код

Код:

SET pathToFirefox=D:\FAERFOX\
timeout /T 5 /NOBREAK
taskkill /F /IM FirefoxPortable.exe
timeout /T 20 /NOBREAK
START "РЕСТАРТ МАЗИЛКИ" %pathToFirefox%\FirefoxPortable.exe imacros://run/?m=твой_скрипт.js
timeout /T 5 /NOBREAK
exit

InfSub
Не знаете почему код не работает?

скрытый текст

Выделить код

Код:

a=iimGetLastExtract(4);
if (a !== '') {
    a=a.split('&');
    mail  = a[0];
    pass = a[1];
}

Hamzat
Что выдаёт алерт(а), если не существует переменной а
undefined или #EANF#  ???

if(a!='#EANF#' && a!=''){
...

PRESIDENT пишет

Hamzat
Что выдаёт алерт(а), если не существует переменной а
undefined или #EANF#  ???

if(a!='#EANF#' && a!=''){
...

Алерт выдает пустоту. if (a !=='') не срабатывает.

PRESIDENT пишет

Если в текстовике одна строка, а потом ещё одна пустая то алерт выдаст пусто
а если просто одна строка то алерт выдаст #EANF# не существует

В данном случае у меня была одна строка в файле.

h2o2 пишет
zello пишет

Поступить наоборот Переписать все в JS  и от туда работать с макросом
Проще и удобней JS Создаст на лету макрос , получит из него данные обработает их и  передаст обратно
вот пример передачи данных в макрос ис Джава скрипта:

Если бы я умел, то давно бы написал на JS :-( Я посчитал, что имакрос легче понять на моем уровне.  Может все же подскажешь, примером, как мне сделать 2й пунктик?

Дело в том, что у JS из соображений инф. безопасности ЗАБЛОКИРОВАНО прямой доступ к жесткому диску клиента

26-09-2015 23:20:11
Народ! А ай макросе я могу сливать инфу на диск?

Доктор ТуамОсес
Смотри команду SAVEAS переводится как "сохранить как"

А как из JS передать строку в iMacros, чтобы оно потом её записал в файл?

В имакросе есть исполняемые файлы(скрипты) 2-х видов
*.iim - это просто команды самого имакроса и *.js , думаю понятно что это
В факе расписано как в js запустить команду/ы самого имакроса.
Для примера, простой .iim
 

URL GOTO=https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=191

а так это выглядит в .js

iimPlay("CODE:URL GOTO=https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=191");


Твоя проблемка решается как то так

Выделить код

Код:

var a='TEST';
iimPlay("CODE:SET !EXTRACT "+a+"\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=1.txt");

/*
FOLDER=* это папка имакроса по умолчанию
там можешь нужный тебе путь прописать, к примеру 
FOLDER=C:\\Capch\\1\\
*/

Привет всем
Помогите с синтаксисом.
Есть такой кусок кода на яве для imacros

скрытый текст

Выделить код

Код:

if(iimPlayCode('TAG POS=1 TYPE=div ATTR=id:double_your_btc_bet_win&&class:bold center double_your_btc_bet_win_message&&style:*block*')){iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=ID:double_your_btc_bet_hi_button')}
else{iimPlayCode('TAG POS=1 TYPE=A ATTR=ID:double_your_btc_2x')&&iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=ID:double_your_btc_bet_lo_button')}


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

Выделить код

Код:

<div id="double_your_btc_bet_win">

и по стилю

Выделить код

Код:

style=display:none

или

Выделить код

Код:

style=display:block


определять дальнейшие действия.

bor970

там может эта форма всегда на сайте есть, просто стилями скрывает то одно то другое.
И имакрос всегда её(форму) будет видеть. Поэтому условие всегда будет труе.

Получается макрос не видит стили? Может тогда следить за текстом в этом диве? Он это может отслеживать?

Ребята скажите команда  что делает команда SET !FILELOG ? в wiki практически информации о команде нету. И кстати в старых версиях, а также в браузере iamcros  в настройках есть пункт Лог, в моем случаем в версии 8.8.1  его нету. Куда он пропал?

Hamzat пишет

Раньше  там не было ссылки на скачивание  ff,теперь буду знать.

оффтоп
Она там присутствует практически с момента создания FAQ, а несколько месяцев назад, добавлена ссылка ещё и на портативные версии

PRESIDENT пишет

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

Ждем пару (5-10) сек
убиваем просец, фаерфокс taskkill /F /IM FirefoxPortable.exe
опять ждём пару (10-30) сек
И запускаем снова мазилку с параметрами, что бы в ней сразу стартанул нужный скрипт
start "РЕСТАРТ МАЗИЛКИ" "D:\FirefoxPortable.exe" imacros://run/?m=твой_скрипт.js

Для паузы используй команду слеп или если будет ругаться
то так
ping -n 3 -w 5000 192.168.254.254 >nul
где -w 5000 это пауза в миллисекундах 5000 = 5 сек

Спасибо за инфу, так и представлял, просто не умею с батником работать - у меня скрипт примерно 40 циклов выдерживает , потом пропадают задания, чтоб появились нужно поменять x-forward - через imacros не поменять - но перезапуск мозилы дает новый ip - как раз то что мне и нужно
------------------
Скрипт работает на ура  , таймаут не понадобился , imacros сам запускает нужный мне батник , когда мне нужно
_______________
Еще раз спасибо

Hamzat

Hamzat пишет

что делает команда SET !FILELOG

в версии для FF - ни чего, опция работает только в полной версии iMacros Browser

Господа, будьте внимательней, в WiKi для всех команд - указано на какой платформе (какой браузер) работает та или иная опция

Hamzat пишет

InfSub
Не знаете почему код не работает?

iimGetLastExtract(4) - не является строкой, это object, его нельзя проверить на пустоту выражением if(a!=''){...}
28-09-2015 14:14:16
bor970

bor970 пишет

Получается макрос не видит стили? Может тогда следить за текстом в этом диве? Он это может отслеживать?

видит, ошибки в коде исправьте, в параметре attr= могут быть пробелы только при использовании кавычек

PRESIDENT пишет

На всякий случай вдруг сгодится.
...
Для паузы используй команду слеп или если будет ругаться
то так
ping -n 3 -w 5000 192.168.254.254 >nul
где -w 5000 это пауза в миллисекундах 5000 = 5 сек

offtop

TIMEOUT 5

на Win7 и выше

PRESIDENT и InfSub -- СПАСИБО ЗА ПОМОЩЬ!

InfSub

iimGetLastExtract(4) - не является строкой, это object, его нельзя проверить на пустоту выражением if(a!=''){...}

Спасибо буду знать, но вот так работает a = iimGetLastExtract(4); if (a) {.......}

Hamzat пишет

но вот так работает a = iimGetLastExtract(4); if (a) {.......}

функция: iimGetLastExtract(номер) - работает не совсем корректно, при нескольких экстрактах, в каких-то ситуациях (в основном при пустом экстракте) - возвращается тип данных object, а при каких-то string, предполагаю - это баг данной функции, в связи с чем и был сделан аналог iimGetExtract() не принимающий значения в скобках
я бы порекомендовал не использовать данную функцию с параметром (т.е. с цифровым номером в скобках), а бить данные самостоятельно:

например, так:

Выделить код

Код:

var extract=iimGetLastExtract().split('[EXTRACT]');    // old function
или
var extract=iimGetExtract().split('[EXTRACT]');        // new function


28-09-2015 20:12:25
к тому же - не проще ли хранить логин и пароль в разных ячейках, а не соединять их символом &, который, к тому же, может быть входить в пароль...
например
не правильно:
vasia&vasia&ko_passwd

правильно:
"vasia","vasia&ko_passwd"

InfSub
iimGetLastExtract()
iimGetExtract()

Вот спасибо, даже сам не знал.
Оказывается полезно иногда в фак заглядывать.smile_19.gif


Hamzat
Раз пишешь на JS пора бы уже и массивы начать осваивать. smile_20.gif

Hamzat

Раз пишешь на JS пора бы уже и массивы начать осваивать. smile_20.gif

Как бы осваиваю, а что не так ?

InfSub
Cспасибо полезная инфа,

PRESIDENT пишет

iimGetLastExtract()
iimGetExtract()

погонял тут еще немного обе функции, в общем, они обе кривые, работают полностью идентично, только iimGetExtract() не принимает значения. Т.е. iimGetExtract() == iimGetExtract(3), хотя в wiki и написано обратное


тестировался следующий код:

Выделить код

Код:

var a,n='\n';
iimPlayCode('SET !EXTRACT 1'+n+'ADD !EXTRACT 2'+n+'ADD !EXTRACT 3'+n+'ADD !EXTRACT 4'+n);
a=iimGetExtract().split('[EXTRACT]');
alert(iimGetExtract()+n+typeof(a[0])+' '+typeof(a[1])+' '+typeof(a[2])+' '+typeof(a[3])+n+a.length);


теперь о багах:
возьмем 4 заполненных extract'a: (все работает как и должно)
скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT 1'+n+'ADD !EXTRACT 2'+n+'ADD !EXTRACT 3'+n+'ADD !EXTRACT 4'+n);

результат:

1[EXTRACT]2[EXTRACT]3[EXTRACT]4

тип:
string string string string

длина массива с данными: 4


сделаем пустым любой extract, кроме первого: (все работает как и должно)

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT 1'+n+'ADD !EXTRACT 2'+n+'ADD !EXTRACT '+n+'ADD !EXTRACT 4'+n);

результат:

1[EXTRACT]2[EXTRACT][EXTRACT]4

тип:
string string string string

длина массива с данными: 4


теперь сделаем первый extract - пустым: (теряем 1 элемент в массиве и получаем массив со сдвигом на 1 позицию)

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT '+n+'ADD !EXTRACT 2'+n+'ADD !EXTRACT 3'+n+'ADD !EXTRACT 4'+n);

результат:

2[EXTRACT]3[EXTRACT]4

тип:
string string string undefined

длина массива с данными: 3


уберем значения у первых двух extract'ов: (теряем 2 элемента в массиве и получаем массив со сдвигом на 2 позиции)

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT '+n+'ADD !EXTRACT '+n+'ADD !EXTRACT 3'+n+'ADD !EXTRACT 4'+n);

результат:

3[EXTRACT]4

тип:
string string undefined undefined

длина массива с данными: 2


уберем значения у первых трех extract'ов: (теряем 3 элемента в массиве и получаем массив со сдвигом на 3 позиции)

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT '+n+'ADD !EXTRACT '+n+'ADD !EXTRACT '+n+'ADD !EXTRACT 4'+n);

результат:

4

тип:
string undefined undefined undefined

длина массива с данными: 1


сделаем все extract'ы пустыми: (теряем все элементы в массиве кроме нулевого, равного пустой строке)

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT '+n+'ADD !EXTRACT '+n+'ADD !EXTRACT '+n+'ADD !EXTRACT '+n);

результат:


тип:
string undefined undefined undefined

длина массива с данными: 1


29-09-2015 01:00:35
Что можно сказать, по этому поводу... да только то, что такое поведение функции, может поломать всю логику написанного вами кода, так как данные попадут не туда, куда следовало и результатом будет ошибка
Что делать:
- по возможности, проверять входные данные, попадающие в EXTRACT;
- стараться не использовать несколько EXTRACT'ов подряд, если вы не уверены, что первый EXTRACT - не будет пустым

Доброй ночи. У меня возникла проблема, я не могу никак понять как сделать такое: у меня есть *.txt, в нём логин у формате "qwer-t@mail.ru" и пароль "qwert123" в качестве разделителя двоеточие ":"(нет нигде никаких пробелов и каждый логин с новой строки)

скрытый текст
797194eae2788416afa2221ceb2360fe.jpg

Сначала мне нужно извлечь логин и вставить в поле на сайте, а после сделать такое и с паролем.
Может кто подсказать как реализовать такое, вот всё што я умею.
скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
CLEAR
URL GOTO=http://******
Wait seconds=0.5
TAG POS=1 TYPE=A ATTR=TXT:Registration
Wait seconds=1
SET !VAR1 EVAL("var ")
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:registration-form ATTR=ID:r-email CONTENT={{!VAR1}}@gmail.com
Wait seconds=0.5
SET !VAR2 EVAL("")
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:registration-form ATTR=ID:r-pass CONTENT={{!VAR2}}
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=TXT:Register
Wait seconds=1


В интернете я перепробовал все возможные ключевые слова но так ничего и не понял.

lyosha
если бы вы заглянули в FAQ - то нашли бы ответ на свой вопрос, в одном из видео...

зачем придумывать велосипед и сохранять данные в придуманном вами формате (разделитель двоеточие)
есть стандарт CSV с которым и работает iMacros:

"данные в первой ячейке","данные во второй ячейке","и т.д."

если вам принципиально нужно, чтобы разделителем было двоеточие, то есть команда:


например, так:

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
CLEAR
SET !DATASOURCE_DELIMITER :
SET !DATASOURCE auch.csv
URL GOTO=http://******
Wait seconds=0.5
TAG POS=1 TYPE=A ATTR=TXT:Registration
Wait seconds=1
SET !VAR1 EVAL("var ")
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:registration-form ATTR=ID:r-email CONTENT={{!COL1}}
Wait seconds=0.5
SET !VAR2 EVAL("")
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:registration-form ATTR=ID:r-pass CONTENT={{!COL2}}
WAIT SECONDS=1
TAG POS=1 TYPE=A ATTR=TXT:Register
Wait seconds=1


что вы хотите получить в результате в этой строке?

TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:registration-form ATTR=ID:r-email CONTENT={{!COL1}}@gmail.com

при условии, что у вас будет в {{!COL1}} полный е-мейл из файла? конструкцию вида: vasia_pupkin@mail.ru@gmail.com ???

InfSub
извиняюсь заранее, может я неправильно объяснил, но я хочу не сохранить в текстовый документ, а наоборот взять из файла логин и вставить на сайте в поле логин, после пароль, далее нажать кнопку "регистрация" и повторить процедуру уже со следующей строкой(логином и паролем).
То есть я не могу понять(описать в макросе после EVAL) как скопировать в буфер знаки пускай до знака "@", и после скопировать пароль после двоеточия.

скрытый текст
что вы хотите получить в результате в этой строке?TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:registration-form ATTR=ID:r-email CONTENT={{!COL1}}@gmail.comпри условии, что у вас будет в {{!COL1}} полный е-мейл из файла? конструкцию вида: vasia_pupkin@mail.ru@gmail.com ???

да я так и хочу

lyosha
Ты вообще тестил что тебе написали.
Этот скрипт и извлекает данные из auch.csv
и первое значение запоминает в COL1
второе запоминает в COL2
потом в нужном месте эти COL-ы используются у тебя в скрипте.

Можна без SET !DATASOURCE_DELIMITER :

При условии что данные у тебя в файле в таком формате

"логин1","пасс1"
"логин2","пасс2"
"логин3","пасс3"

Т.е. разделитель не двоеточие а запятая

lyosha пишет

но я хочу не сохранить в текстовый документ, а наоборот взять из файла логин и вставить на сайте в поле логин, после пароль

я Вам выше привел пример, как это сделать с вашим кодом, что не так? (убрал только концовку с @gmail.com)

29-09-2015 02:23:46

InfSub пишет

сохранять данные в придуманном вами формате

имелся в ввиду формат записи вида: логин:пароль - придуманная вами

29-09-2015 02:24:58
о проблемах с таким видом записи только писал несколько часов назад на этой же странице

Извините за беспокойство, после сообщения PRESIDENT разобрался, всё заработало, спасибо Вам.

Интересует поиск на странице с чатом, надо найти определенное слово, но не знаю как. Ни id, ни надписи полностью я не знаю, только часть. Появляется оно совершенно рандомно раз в сутки, так что скопировать элементы страницы можно только увидев слово. Вот и интересует, как найти надпись и подать сигнал... Без разницы, появится в виде кнопки или кто-то слово напишет в чате.

Друзья помогите пож-та, не могу вызвать POP up ajax окно..
код с сайта:

Выделить код

Код:

<div class="personal-message card__contact-message i-bem" data-bem="{&quot;personal-message&quot;:{&quot;method&quot;:&quot;sendPersonalMessage&quot;,&quot;params&quot;:{&quot;user_id&quot;:&quot;2777091&quot;}}}"><button class="button button_theme_islands button_size_s personal-message__button button__control i-bem button_js_inited" role="button" type="button" title="Отправить продавцу личное сообщение" data-bem="{&quot;button&quot;:{}}"><span class="button__text">Написать продавцу</span></button><div class="modal modal_theme_islands modal_autoclosable personal-message__done popup popup_autoclosable i-bem" data-bem="{&quot;modal&quot;:{},&quot;popup&quot;:{&quot;zIndexGroupLevel&quot;:20}}"><div class="modal__table"><div class="modal__cell"><div class="modal__content"><div class="personal-message__done-wrapper">Ваше сообщение отправлено!</div></div></div></div></div><div class="modal modal_theme_islands modal_autoclosable personal-message-popup popup popup_autoclosable i-bem" data-bem="{&quot;modal&quot;:{},&quot;popup&quot;:{&quot;zIndexGroupLevel&quot;:20}}"><div class="modal__table"><div class="modal__cell"><div class="modal__content"><div class="personal-message-popup__form"><div class="personal-message-popup__title">Вопрос о Nissan Murano I (Z50)</div><textarea class="textarea textarea_theme_islands textarea_size_m textarea_width_available personal-message-popup__message textarea__control i-bem textarea_js_inited" placeholder="Ваше сообщение" maxlength="5000" data-bem="{&quot;textarea&quot;:{}}"></textarea><div class="popup popup_theme_islands popup_target_anchor tooltip tooltip_theme_error tooltip_to_right personal-message-popup__message-error i-bem" data-bem="{&quot;popup&quot;:{&quot;directions&quot;:[&quot;right-center&quot;]}}">Введите сообщение<div class="tooltip__tail"></div></div><button class="button button_theme_islands button_size_l button_type_submit personal-message__submit button__control i-bem" role="button" type="submit" data-bem="{&quot;button&quot;:{}}"><span class="button__text">Отправить</span></button><div class="personal-message-popup__closer" title="Закрыть"></div></div></div></div></div></div></div>

<span class="button__text">Отправить</span> - это ссылка на кнопку, но не хочет она вылазить когда записал действия..

InfSub
Большое спасибо за тест. Кстати, почему бы результаты теста не отправить разработчикам?

Здравствуйте, столкнулся с такой проблемой, при заполнении формы атрибут ATTR=NAME: принимает разные значения (при каждом заходе генерируется произвольно). получается, что значение не может быть добавлено в форму. можно ли каким-то образом сначала получить значение ATTR=NAME:"****", чтобы потом подставить его при добавлении информации?

Попробуй просто звездочкой замени меняющуюся часть
ATTR=NAME:*
Если не прокатит надо хтмл код формы парсить и там смотреть.

Спасибо за ответ. * пробовал, не помогает, html посмотреть firebugом не проблема. я только не знаю как это значение imacros получить. только начал изучать

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


29-09-2015 22:05:27
я так понимаю что сейчас многие таким образом реализуют защиту от ботов.

скрытый текст

Выделить код

Код:

URL GOTO=http://www.faucetpanda.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:KAXRtHHQVHaFmSF5tgXHnLyelO3 CONTENT=


значение ATTR=NAME:KAXRtHHQVHaFmSF5tgXHnLyelO3 при каждом новом посещении новое, поэтому значение просто не заносится в поле Your address:

Всё прекрасно заносится, как надо и куда надо:)

скрытый текст

Выделить код

Код:

if(iimPlayCode('TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:*')>0)
   iimPlayCode('TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT=bitcoin_koshel');
else
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT=bitcoin_koshel');

Спасибо, сейчас попробую. Если не трудно, объясните пожалуйста, почему POS=2, чтобы больше глупых вопросов не задавал)))

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:address CONTENT=1
TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT=2


На сайте 2 формы для ввода текста у одной имя address у другой эти кракозябли.
И когда ставим звёздочку значит берём первую форму TAG POS=1 с любым именем, звёздочка означает любое значение.
А нам нужна именно вторая.
В общем отключи стили на странице сам увидишь и поймёшь:)

спасибо большое, вы очень помогли. сейчас попробовал у себя, работает))) еще раз большое спасибо

удалено
правила, пункт 2.15

InfSub

здравствуйте, запускаю 2 макроса один ходит по группам пишет сообщения, второй ходит по группам отправляет  фото, но когда запускаю через открыть новое окно один из них не работает то есть стоит, пока другой не отключу

volchsek
какой тип макросов? iim или js?
Для JS - нужно использовать разные профили Firefox'a

iim

InfSub пишет

какой тип макросов? iim или js?

volchsek пишет

iim

В таком случае, прочитайте раздел 1.2 и оформите нормально вопрос

а что не правильно в моем вопросе?

версия FF, версия iMacros, проблемный код

InfSub

запустить обфусицированный код на imacros для FF не получится?

удалено - offtop, публикации сообщений о поиске того или иного скрипта, или просьбы "написать за вас" разрешены только в теме: iMacros Скрипты. Поиск и заказ скриптов

InfSub

taniks

Поиск слова/фразы на странице

Выделить код

Код:

var my_text='помогите пожалуйста';

  for(i=0; i<99; i++){ 
      iimPlayCode('wait seconds=1'); 
   if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"'+my_text+'"')<0)
   {
       iimDisplay('Нет нихрена');
       iimPlayCode('REFRESH'); 
   }
   else
   {
    iimDisplay('Ура нашли');
    alert('Ура нашли, что искали');
    break; // или i=999;
   }}

Здраствуйте..   Есть один вопрос..   Есть простая команда       TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image    Как из етой строки извлечь TYPE=DIV;  Мне нужно именно "DIV"  в переменну или же в текстовий док.. .  Есть две ситуации.. Когда  TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image   И   TAG POS=1 TYPE=IMG  ATTR=ID:adcopy-puzzle-image  ..    Нужно сделать так штоб если TYPE=DIV виполнялося условие А ;  ну а если TYPE=IMG  условие B..    ))     Спасибо..

Добрый день. Целый день бьюсь с кодом, но никак. Помогите. Есть скрипт для постинга в группы в Фейсбуке. С одного аккаунта идет постинг, с другого нет. В чем может быть проблема?
Версия FF - 41.0 Версия Imacros - 8.9.4

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE fb_post_group.csv
SET !DATASOURCE_COLUMNS 1
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB T=1
URL GOTO={{!COL1}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT=НОВОСТИ<sp>ЭКОНОМИКИ<sp>СУБСИДИИ<sp>НА<sp>ТРЕТЬЕГО<sp>РЕБЕНКА<sp>РОСТ<sp>ЦЕН<sp>А<sp>ТАКЖЕ<sp>ПОВЫШЕНИЕ<sp>ПЕНСИЙ<sp>В<sp>2016<sp>ГОДУ<BR>ССЫЛКА<BR>
WAIT SECONDS=5
TAG POS=2 TYPE=BUTTON ATTR=TXT:Опубликовать
WAIT SECONDS=30

Может проблема с самим акаунтом в фейсбуке.. Они люблять за перебор действий.. Блокировать акаунти.. Тоесть за N - количество постов лайков..  и такое сякое они банять акаунт на время от несколькох дней до несколькох часов..

И скрипт может бить не причом..  Попробуй с третього акаунта..   Или же тот второй акаунт попробуй с другого Ип или через прокси.. ..

HellishFire
Сообщений от службы поддержки нет. Заходила с разных компьютеров. В ручную постит нормально с него.

Елена2015
В тебя скрипт витягует нужную информацию с сsv файла..   Попробуй создать новий чистий Csv файл .. и туда может закинь всю нужную информацию..

В меня була ситуация когда шото сталося с самим файлом  сsv.  и имакрос толком не мог  снего инфу витянуть.. Я создал новий документ и все налагодилося...

Или же установи новий профиль для Firefox и туда встанови новий чистий имакрос.. может тогда поможет..  Незнаю..

Правила, раздел 2, пункт 2.17 Не рекомендуется: Создавать сообщения или подписи на любом языке, кроме русского и английского, не снабжая их переводом (пользователи русскоязычного форума должны понимать то, что пишут остальные участники форума, английский считается международным языком)

InfSub

Этот параметр

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT=


не видит строку куда  надо вводить слово. С одного Аккаунта запись макроса такая
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT=


А с другого Аккаунта такая
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=DATA-REACTID:.16.1.$status.1.0.0.$editor0.0.0.$bg2o2&&CLASS:_209g<SP>_2vxa&&DATA-OFFSET-KEY:bg2o2-0-0&&DATA-BLOCK:true&&TXT:


Так что тут проблема намного глубже чем вам кажется. Я не первый день ломаю себе мозг этим вопросом,пока что всё без результатно!:sick:

Gergi
Епрст, точно. Сейчас сравнила коды у себя с разных аккаунтов. Самое интересное, что в первый раз все публиковалось нормально, а на следующий день вот такая ерунда - не публикуется

HellishFire

HellishFire пишет

Когда  TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image   И   TAG POS=1 TYPE=IMG  ATTR=ID:adcopy-puzzle-image  ..    Нужно сделать так штоб если TYPE=DIV виполнялося условие А ;  ну а если TYPE=IMG  условие B..    ))

Уже от кого от кого, но от тебя таких детских вопросов не ожидал :(:(:(

if else
if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image')>0)
{
Действие 1
}
if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=IMG  ATTR=ID:adcopy-puzzle-image')>0)
{
Действие 2
}

PRESIDENT
Та прикол втому што я таким способом как ти сказал так и делал.. но оно и в первом и втором случае виполняет условие толька А.. 

Суть вот в чем капча от солмедии если нормально загрузилася то видает TYPE=IMG  а если капча не прогрузилася .. она как би есть но толька синий фон.. то видает
TYPE=DIV..   
Если делать через условие которое ти сказал оно видает всегда толька Действие 1..

Я от думал может можна суто DIV или IMG  както извлекать в переменную Var1 и тогда делать условие если .... ((..   Незнаю чи так б получилося.. но шото другого способа как научить имакрос при плохой прогрузки капчи .. щераз обновлять капчу.. ..

Я счас иду в зал на тренировку.. потом загляну..))

Делай  EXTRACT=HTM
и смотри разницу. В одном случае начинается
<div style=""
в другом случае.
<img style=""

Надеюсь дальше поймешь что делать:/

Как я понимаю, значение Сookies извлечь средствами imacros никак нельзя (только стереть их) ?

Если так, то может кто подскажет - как через яваскрипт извлечь их и сохранить в файл через  imacros
(Установлено, например, дополнение Сookies-Мanager+)

можно ли каптчу полученную через CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT вывести в окно Prompt? Кто пробовал?

Есть блок:

скрытый текст

Выделить код

Код:

<div id="user_block6791058" class="user_block clear_fix">  
<div class="friends_bigph_wrap fl_l">    
<a onclick="return nav.go(this, event);" href="/id6791058" class="img">
<img src="/images/deactivated_100.png" class="friends_photo_img">
</a>  
</div>  
<div class="info fl_l">    
<div class="friends_field">
<a onclick="return nav.go(this, event);" href="/id6791058">
<b>Иван Иванов</b>
</a>
</div>    
<div class="friends_field">МГУ</div>    
<div class="lists clear_fix" id="lists6791058">
</div>  
</div>
<div class="actions fl_r">
<a class="friends_act" onclick="return showWriteMessageBox(event, 6791058)" href="write6791058">Написать сообщение</a>
<a class="friends_act" href="/friends?id=6791058">Просмотреть друзей</a>
<a class="friends_act" onclick="return Friends.deleteFriend(event, 6791058, this)">Убрать из друзей</a>
<a onclick="return Friends.ddShow(6791058, this, event)" class="lists_select friends_act">Настроить списки</a>
</div>
<div id="res6791058" class="fl_l">
</div>
</div>


Известно только:

Выделить код

Код:

img src="/images/deactivated_100.png"


Как вытянуть 6791058 ?
ну или какой-нить тег с этим параметром.

наподобие :

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/images/deactivated_100.png extract=htm


но получить htm на уровень выше:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=onclick:"return nav.go(this, event)" extract=htm

spy686
А что так не идёт ?

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:*user_block clear_fix* EXTRACT=HTM");a=iimGetLastExtract();

Hamzat пишет

можно ли каптчу вывести в окно Prompt?

PROMPT - выводит только текст

PRESIDENT пишет

spy686
А что так не идёт ?

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:*user_block clear_fix* EXTRACT=HTM");a=iimGetLastExtract();

т.к. необходим id только того блока в котором src="/images/deactivated_100.png"

spy686
Ну EXTRACT=HTM
потом смотри что спарсило и регуляркой вырежи нужный ID.

PRESIDENT пишет

spy686
Ну EXTRACT=HTM
потом смотри что спарсило и регуляркой вырежи нужный ID.

В том то и дело как спарсить


скрытый текст

Выделить код

Код:

<a onclick="return nav.go(this, event);" href="/id6791058" class="img">
<img src="/images/deactivated_100.png" class="friends_photo_img">
</a>


Известно только:

img src="/images/deactivated_100.png

т.е. как получить что-то наподобие:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=IMG:SRC:"*images/deactivated_100.png*" extract=htm


Вариант:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=onclick:"*nav.go(this, event)*"&&class:"img" extract=htm


не устраивает, т.к. будет парсить первый блок в котором не

<img src="/images/deactivated_100.png" class="friends_photo_img">

spy686
сделай проще, клик по deactivated_100.png для входа в анкету (либо извлечение урла анкеты для открытия в соседней вкладке) и от туда извлечение id или сразу удаление анкеты

08-10-2015 21:16:26
либо - так:

скрытый текст

Выделить код

Код:

'перейти на страницу https://vk.com/friends и пролистать страницу друзей - до конца, после запустить скрипт, к примеру, на 100 циклов'
SET !EXTRACT_TEST_POPUP NO
TAG POS={{!LOOP}} TYPE=IMG ATTR=SRC:https://vk.com/images/deactivated_100.png EXTRACT=TXT
TAG POS=R1 TYPE=A ATTR=TXT:"Убрать из друзей"

InfSub

(либо извлечение урла анкеты для открытия в соседней вкладке)

при extract=href только ссылка на картинку

клик по deactivated_100.png для входа в анкету и от туда извлечение id

Вариант, че сам не дапер :dumb:, хоть уже и делал подобное
Спасибо!

или сразу удаление анкеты

анкета заблочена - не получится

spy686 пишет

анкета заблочена - не получится

кодом, приведенным мной, я вычищал собственную анкету от заблоченных - он рабочий

InfSub пишет
Hamzat пишет

можно ли каптчу вывести в окно Prompt?

PROMPT - выводит только текст

Спс за ответ! Еще один вопрос, обфусицированный код плагином запустить ник как нельзя? Обфусицированный именно iim код имею виду.

Hamzat пишет

обфусицированный код плагином запустить ник как нельзя? Обфусицированный именно iim код имею виду.

нет, какой возможности - нет, т.к. IIM-код - не язык программирования, а просто управляющие последовательности/команды

InfSub пишет
Hamzat пишет

обфусицированный код плагином запустить ник как нельзя? Обфусицированный именно iim код имею виду.

нет, какой возможности - нет, т.к. IIM-код - не язык программирования, а просто управляющие последовательности/команды

Возможно вы меня не правильно поняли, в браузере  imacros есть возможность скрыть код, и файл iim переделывается в файл iimx, вот я говорю этот файл iimx плагинам запустить как то можно?

Hamzat пишет

Возможно вы меня не правильно поняли, в браузере  imacros есть возможность скрыть код, и файл iim переделывается в файл iimx, вот я говорю этот файл iimx плагинам запустить как то можно?

нет, это функционал только полной версии iMacros

09-10-2015 16:02:25

Hamzat пишет

Возможно вы меня не правильно поняли

скорее - Вы не верно выразились, но о чем речь - я понял

Обфуска́ция или запутывание кода — приведение исходного текста или исполняемого кода программы к виду, сохраняющему ее функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию при декомпиляции.

данная возможность - есть у js, т.к. js - язык программирования
iim-код, как уже говорил - язык команд, но не программирования, шифрование и дешифровка кода (не путать с обфускацией) производится на уровне интерпретатора (в данном случае iMacros Browser'a)

Подскажите по регуляркам... Надо сохранить в файл цифры из строки. Пример строки: 1111 Qwe rty uio
По задумке, делается EXTRACT строки, из него удаляются все буквы, а цифры сохраняются в файл.

скрытый текст

Выделить код

Код:

TAG POS=3 TYPE=DIV ATTR=TXT:1111<SP>Text<SP>qwe<SP>rty* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/[A-Za-z]+/,'')")
SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt


На деле удаляются не все буквы, а только первое слово, в файл записывается 1111 rty uio.
Что  я пропустил в регулярном выражении, подскажите...

udalov

вариант 1:
если блок цифр всегда один, как в примере

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\d+/).pop()")


вариант 2:
если цифры разбросаны по строке, например:

текст<sp>с<sp>цифрами<sp>1234<sp>и<sp>с<sp>цифрами<sp>33<sp>и<sp>т.д.

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\d+/g).join('')")

результат: 123433

udalov
Твоя мысля в принципе верная была, только надо ещё модификатор g добавить, значит искать по всему тексту.

Вот кусок макроса

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\test\1.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}


в TXT файле находятся много вот таких ссылок
скрытый текст

Выделить код

Код:

www.youtube.com/watch?v=qT54tcXINCk/


макрос их по очереди берёт по одной и вставляет в адресную строку,мне надо что бы в конце каждой ссылки подставлялось слово qfhuomvd
скрытый текст

Выделить код

Код:

надо что бы получалось так www.youtube.com/watch?v=qT54tcXINCk/qfhuomvd


Если это можно реализовать,помогите пожалуйста.Если нет скажите что бы не убивал время зря.

Ну и в чём проблема, допиши в скрипте, там где используешь извлечённую ссылку +qfhuomvd
   url <---  твоя ссылка из тхт датая
   iimPlay("CODE:URL GOTO="+url+"qfhuomvd");


Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

PRESIDENT пишет

Ну и в чём проблема, допиши в скрипте, там где используешь извлечённую ссылку +qfhuomvd
   url <---  твоя ссылка из тхт датая
   iimPlay("CODE:URL GOTO="+url+"qfhuomvd");


Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

а как это в iim будет выглядеть?
просто у меня скрипт в формате iim и уже достаточно давно работает,и претензий к нему не имею,поэтому не хотелось бы сейчас из-за этого переделывать всё

Gergi пишет

а как это в iim будет выглядеть?

Шутишь что ли ?
Так же само будет выглядеть, только без  iimPlay("CODE:

URL GOTO={{!COL1}}qfhuomvd

PRESIDENT Спасибо за подсказку и не нервничай так:lol: Ты спец,а я же только учусь :rock:

Опять не получилось как было задумано:sick: Получается мне не просто надо добавить это qfhuomvd а надо заменить это   gfth на это qfhuomvd

Подскажите как извлечь данные из таблицы Excel. Допустим нужно перейти по 3 ссылкам находящимся в первой строке и трёх разных столбцах

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !DATASOURCE datasourses.csv
SET !DATASOURCE_COLUMNS 3
SET !DATASOURCE_LINE 1
URL GOTO={{!COL1}}
WAIT SECONDS=30
URL GOTO={{!COL2}}
WAIT SECONDS=30
URL GOTO={{!COL3}}
WAIT SECONDS=30


У меня в адресной строке сразу вставляются все три через разделитель ;
В чём моя ошибка?

Gergi пишет

в TXT файле находятся много вот таких ссылок
www.youtube.com/watch?v=qT54tcXINCk/

А где ты тут gfth  нашёл  ?

я просто не заметил что в конце каждой ссылки такое есть gfth
получается так www.youtube.com/watch?v=qT54tcXINCk/ gfth
а мне  надо что бы получалось так www.youtube.com/watch?v=qT54tcXINCk/qfhuomvd

dorosholeg пишет

все три через разделитель ;

скрытый текст

Выделить код

Код:

SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE datasourses.csv
...


Gergi
используй команду replace (заменить)
смотри чуть выше на этой странице, есть пример кода как использовать

PRESIDENT пишет

удалено
Gergi
используй команду replace (заменить)
смотри чуть выше на этой странице, есть пример кода как использовать

я то видел,но как то туго доходит

предупреждение, пункт правил - [url=https://forum.mozilla-russia.org/misc.php?action=rules#rule2.9
2.9[/url]]Gergi
Сколько раз мне еще Вам повторять, цитируйте - то, на что отвечаете или не цитируйте вовсе
при чем тут ответ PRESIDENTdorosholeg'у в вашем ответе PRESIDENT'у?

InfSub

replace

Выделить код

Код:

SET !COL1 EVAL("'{{!COL1}}'.replace(/gfth/,'qfhuomvd')")
URL GOTO={{!COL1}}

PRESIDENT пишет

replace

Выделить код

Код:

SET !COL1 EVAL("'{{!COL1}}'.replace(/gfth /,'qfhuomvd')")
URL GOTO={{!COL1}}

Какой же я тупой :blush:

11-10-2015 17:25:07
PRESIDENT может ты в спешке что то пропустил,либо я протупил но не работает.

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\1.txt
SET !DATASOURCE_LINE {{!VAR2}}
SET !COL1 EVAL("'{{!COL1}}'.replace(/gfth /,'qfhuomvd')")
WAIT SECONDS=5
URL GOTO={{!COL1}}


Такое впечатление что этой строки вообще нет
скрытый текст

Выделить код

Код:

SET !COL1 EVAL("'{{!COL1}}'.replace(/gfth /,'qfhuomvd')")

После gfth пробел убери :/

Я его ещё сразу убрал,посмотри может ещё где то какая то ерунда

Где же ты убрал.
Разницу видишь

SET !COL1 EVAL("'{{!COL1}}'.replace(/gfth /,'qfhuomvd')")
SET !COL1 EVAL("'{{!COL1}}'.replace(/gfth/,'qfhuomvd')")

Подскажите, как с помощью EVAL сделать так, чтобы после определенного количества воспроизведений цикла макрос переходил ко второй строке файла.
То есть нужно, что бы после определенного количества воспроизведений (в моем случае 47), макрос переходил к второй строке файла link.txt

Вот мой код

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !DATASOURCE google_pages.txt
SET !linesInFile 47
SET !LOOP 1
SET innerLoop EVAL("var i = \"{{!LOOP}}\" % \"{{linesInFile}}\"; (i == 0) ? \"{{linesInFile}}\" : i;")
SET !DATASOURCE_LINE {{innerLoop}}
URL GOTO={{!COL1}}
TAG POS=1 TYPE=DIV ATTR=CLASS:"kqa es"
SET !LOOP 1
SET !DATASOURCE links.txt
SET !DATASOURCE_LINE 1
SET !linksCount 70
SET linkLoop EVAL("")
EVENTS TYPE=KEYPRESS SELECTOR="div[class=\"df b-K b-K-Xb URaP8 editable\"]" CHARS={{!COL1}}
TAG POS=1 TYPE=DIV ATTR=CLASS:"d-k-l b-c b-c-Ba qy jt"


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

InfSub

PRESIDENT
https://yadi.sk/i/3gmhKrMgjfFip

флуд, ответ, был дан - НЕ Вам

PRESIDENT пишет

kani339

Что за извращение в iim-ы интегрировать js.
Переделывай скрипт полностью на js и забудь этот iim , как страшный сон.

PRESIDENT Что ты там страшного увидел? Вопрос же изначально стоял о там как реализовать данную проблему в iim ты скинул кусок кода,я его стартанул он не сработал. Насчёт js это хорошо,но у меня много кусков кода iim управляются через js и всё как бы налажено и работает хорошо и сейчас переделывать всё в js не логично,поэтому хотелось бы реализовать эту проблему в iim


InfSub

PRESIDENT пишет

kani339

Что за извращение в iim-ы интегрировать js.
Переделывай скрипт полностью на js и забудь этот iim , как страшный сон.

Согласен что нужно в js все это делать, но поскольку вот начал делать так хотелось бы и доделать уже, есть варианты, как это можно реализовать? Буду крайне презнателен

kani339
Тебе не нужно всегда назначать для LOOP-а единицу, а то получается оно у тебя не меняется(не увеличивается)
Введи новую переменную допустим строка и  ей присвой значение из LOOP-а и if-ом делай проверку, как только значение строка стало больше 47, то... и дальше по тексту.
И не забудь опять обнулить строка

У меня скрипт, который  распознает капчу с картиками. Все идет нормально, и капчу распознает, но сигнал, на какие картинки нажимать - не дает. Я здесь выложу этот скрипт, вы подскажите пожалуйста, какой код добавить, чтобы после распознавания капчи нажимались верные картинки?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO

TAB T=1
URL GOTO=http://www.bitcoinfactory.org/
WAIT SECONDS=3

TAB T=1
FRAME NAME="I0_*"
TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:
WAIT SECONDS=3

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAB T=1 
ONDOWNLOAD FOLDER=D:\ FILE=ME_1.jpeg WAIT=YES 
TAG POS=1 TYPE=div ATTR=style:"display: *" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=3

TAB OPEN
TAB T=2

WAIT SECONDS=3
URL GOTO=http://anti-captcha.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT=ЗДЕСЬ_БЫЛ_КЛЮЧ
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT=D:\ME_1.jpeg
SET !TIMEOUT 400
SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:in.php ATTR=*
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://anti-captcha.com/in.php ATTR=*
TAB T=1
WAIT SECONDS=3
SET !TIMEOUT_STEP 5
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
FRAME NAME="I1_*"
WAIT SECONDS=5
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0
WAIT SECONDS=3
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>FORM>BUTTON" BUTTON=0


код, должен размещаться в спойлере

InfSub

PRESIDENT пишет

Тебе не нужно всегда назначать для LOOP-а единицу, а то получается оно у тебя не меняется(не увеличивается)

SET !LOOP 1

устанавливает !LOOP равным 1 только в первом цикле

InfSub пишет

устанавливает !LOOP равным 1 только в первом цикле

А если эта команда несколько раз, как у него, прописана ?

PRESIDENT пишет

А если эта команда несколько раз, как у него, прописана ?

добавлю, так как не сморел код полностью до этого и не видел дублей:

SET !LOOP 1

устанавливает !LOOP равным 1 только в первом цикле, при первом упоминании все остальные вызовы - бесполезны

Я, уже, писал ранее, повторюсь -команда

SET !LOOP номер

используется для установки первоначального значения счетчика
Т.е. если Вам нужно, чтобы при первом проходе цикла номер счетчика был НЕ равен 1, то используется данная команда
На дальнейшие вызовы в теле того же скрипта, а также все последующие вызовы при зацикливании этого скрипта - команда не реагирует и значение !LOOP будет всегда равно номеру цикла + первоначальное значение - 1

например:
запускаем скрипт: test1.iim 5 раз (в цикле из интерфейса плагина)
в теле скрипта - нет команды:

SET !LOOP номер

соответственно !LOOP будет равен 1 в первом цикле, 2 во втором и т.д.
исходя из нашей формулы:

скрытый текст
номер цикла: 2
первоначальное значение: 1
результат: 2+1-1=2

запускаем скрипт: test2.iim 5 раз
в теле скрипта - есть команда:

SET !LOOP 3

исходя из нашей формулы, получим:

скрытый текст
номер цикла: 2
первоначальное значение: 3
результат: 2+3-1=4


В связи с таким поведением, команду !LOOP НЕЛЬЗЯ использовать в скриптах, вызываемых из JS - работать НЕ будет

Макрос выдает ошибку

BadParameter: !DATASOURCE_LINE must be positive integer, line 6 (Error code: -911)

Пытаюсь поместить значения из переменной в !DATASOURCE_LINE, что делаю не так?

скрытый текст

Выделить код

Код:

var link = 1;
macros += "SET !DATASOURCE_LINE {{link}}" + "\n";

kani339

скрытый текст

Выделить код

Код:

var link = 1;
macros += "SET !DATASOURCE_LINE "+link+"\n";

PRESIDENT
Спасибо)

12-10-2015 11:23:54
Помогите правильно составить цикл, когда переменная totalPages  достигает  2, нужно переменную link увеличивать на один

скрытый текст

Выделить код

Код:

var totalPages = 2;
var link = 1;

for(i = 1; i <= loop; i++) {
    if(i > totalPages) {
        i = 1;
           
    }

До этой строчки

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I1_*"\nTAG POS=2 TYPE=DIV ATTR=TXT:Подтвердить');iimPlayCode('WAIT SECONDS=1');}}


всё отлично идет! Как на эту строчку переходит, скрипт останавливается, "Подтвердить" не нажимается. Никакую ошибку не пишет. Почему так? Подскажите, пожалуйста!!!!!!!!!!!!

PRESIDENT пишет

Марина89

JS

Выделить код

Код:

var f=0;  

 var Path='D:\\Captcha\\';
 var key='твой ключ';
 var bit='твой биткоин адрес';

     iimPlayCode('SET !TIMEOUT_STEP 0\nTAB CLOSEALLOTHERS');
     iimPlayCode('SET !TIMEOUT 30\nURL GOTO=bitcoinfactory.org');
     iimPlayCode('WAIT SECONDS=3');
   f=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA'); if(f>0){
     iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:'); iimPlayCode('WAIT SECONDS=5');
     iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
  if(iimGetExtract().indexOf('checked="true')<0){
     iimPlayCode('SET !TIMEOUT 30\nONDOWNLOAD FOLDER='+Path+' FILE=ME_1.jpeg WAIT=YES\nTAG POS=1 TYPE=div ATTR=style:"display: *" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAB OPEN\nTAB T=2');
     iimPlayCode('SET !TIMEOUT 30\nURL GOTO=anti-captcha.com/imacros.html');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key);
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'ME_1.jpeg');
     iimPlayCode('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); c=iimGetExtract().match(/\d+/g).join(''); iimPlayCode('WAIT SECONDS=1');
     iimPlayCode('TAB CLOSE');
  if(Number(c)>0){
  for(k=0; k<c.length; k++){  
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I1_*"\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');}
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I1_*"\nTAG POS=2 TYPE=DIV ATTR=TXT:Подтвердить');iimPlayCode('WAIT SECONDS=1');}}
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
  if(iimGetExtract().indexOf('checked="true')>0){   
    iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:address CONTENT='+bit);
    iimPlayCode('SET !TIMEOUT 30\nTAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Start*Claim');}}

12-10-2015 13:23:33
И еще вопрос: Какой код вставить в обычный imacros.iim, чтобы время простоя было разное? Например, минимум чтоб стояло 3600 секунд, максимум 4200 секунд. И чтобы после 1 цикла стоял, к примеру, 3750. После второго, к  примеру, 3960 секунд. И т.д.

kani339 пишет

когда переменная totalPages  достигает  2, нужно переменную link увеличивать на один

скрытый текст

Выделить код

Код:

var link = 1;

for(totalPages  = 1; totalPages  <= 9; totalPages ++) {
  if(totalPages > 2) link++;

  iimDisplay(link);
  iimPlay("CODE:WAIT SECONDS=1");
           
    }


Марина89 пишет

"Подтвердить" не нажимается.

скрытый текст

Выделить код

Код:

iimPlayCode(['SET !TIMEOUT 30\n+'FRAME NAME="I1_*"\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');iimPlayCode('WAIT SECONDS=1');}}

Почему переменная link не увеличивается на один?

скрытый текст

Выделить код

Код:

var macros;
var loop = 1;
var totalPages = 2;
var link = 1;
macros = "CODE:";
//macros += "SET !REPLAYSPEED FAST" + "\n";
macros += "SET !DATASOURCE pages.txt" + "\n";
macros += "SET !DATASOURCE_LINE {{i}}" + "\n";
macros += "URL GOTO=\"{{!COL1}}\"" + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"kqa es\"" + "\n";
macros += "SET !DATASOURCE links.txt" + "\n";
macros += "SET !DATASOURCE_LINE " + link + "\n";
macros += 'EVENTS TYPE=KEYPRESS SELECTOR="div[class=\\"df b-K b-K-Xb URaP8 editable\\"]" CHARS={{!COL1}}' + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"d-k-l b-c b-c-Ba qy jt\"" + "\n";
loop += prompt("How many times to play macros?:", loop);
     
for(i = 1; i <= loop; i++) {
    if(i > totalPages) {
        i = 1;
        link++;
    }

kani339
Тут у тебя loop  равно еденице var loop = 1;
И этот цикл ты делаешь от единицы до loop
а это loop  у тебя равно единица, т.е. до двух даже не доходит
for(i = 1; i <= loop; i++) {
и это условие никогда не сработает
if(i > totalPages) {

PRESIDENT пишет

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT 30\n+'FRAME NAME="I1_*"\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');iimPlayCode('WAIT SECONDS=1');}}

Спасибо большое за подсказку!!!!!!!!! А как добавить таймер, типа такого WAIT SECONDS=123 ?  После разгадывания капчи надо же ждать 2 минуты, потом нажать еще на кнопку. Вот как это еще добавить? А если можно, чтобы стояло на ожидание разный промежуток времени: минимум 120 секунд, максимум 300. Подскажите, пожалуйста, еще такую команду!!!!!!!

Марина89 пишет

чтобы стояло на ожидание разный промежуток времени: минимум 120 секунд, максимум 300

уже раз сто на форуме, поднимался этот вопрос, не ленитесь пользоваться поиском

скрытый текст

Выделить код

Код:

WAIT SECONDS=EVAL("min=120;max=300;Math.floor(Math.random()*(max-min+1))+min;")

Спасибо большое за вашу помощь!!!!!!! С вашими подсказками я начинаю больше узнавать возможности макроса, и применяю их для своих удобств в работе с компьютером. Т.к. я инвалид ДЦП  - печатаю носом, потому что руки не работают. Поэтому не  сочтите за назорливость, если слишком много спрашиваю. Я бы хотела узнать, а есть такая команда, чтоб при неудачном  прохождении какой-то строки. макрос возвращался бы назад на заданую строку? Например, неверно распознал капчу, как вернуться чтобы еще раз сохранил картинку и заново пошел распознавать?

Марина89 пишет

Я бы хотела узнать, а есть такая команда, чтоб при неудачном  прохождении какой-то строки. макрос возвращался бы назад на заданую строку? Например, неверно распознал капчу, как вернуться чтобы еще раз сохранил картинку и заново пошел распознавать?

Можно через js, можно через eval.

замучалась с одной кнопкой. Все работает, а вот последняя строка никак не нажимается - "Скачать". Посмотрите, пожалуйста!

скрытый текст

Выделить код

Код:

var f=0;  

 var Path='D:\\Captcha\\';
 var key='ключ';
 var bit='кошелек';

     iimPlayCode('SET !TIMEOUT_STEP 0\nTAB CLOSEALLOTHERS');   
     iimPlayCode('SET !TIMEOUT 30\nURL GOTO=bitcoinfactory.org');
     iimPlayCode('WAIT SECONDS=3');
   f=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA'); if(f>0){
     iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:'); iimPlayCode('WAIT SECONDS=5');
     iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
  if(iimGetExtract().indexOf('checked="true')<0){
     iimPlayCode('SET !TIMEOUT 30\nONDOWNLOAD FOLDER='+Path+' FILE=ME_1.jpeg WAIT=YES\nTAG POS=1 TYPE=div ATTR=style:"display: *" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAB OPEN\nTAB T=2');
     
     iimPlayCode('SET !TIMEOUT 30\nURL GOTO=resizepiconline.com/');
     iimPlayCode('WAIT SECONDS=5');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=iimDisplay:fileupload CONTENT='+Path+'ME_1.jpeg');
     iimPlayCode('WAIT SECONDS=5');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=BUTTON FORM=iimDisplay:options_form ATTR=iimDisplay:get_resize');
     iimPlayCode('WAIT SECONDS=5');
     iimPlayCode('SET !TIMEOUT 30\nONDOWNLOAD FOLDER='+Path+' FILE=ME_2.jpeg WAIT=YES\TAG POS=1 TYPE=A ATTR=HREF:#&&CLASS:download');


Уже как  только не пробовала записать - никак не нажимается.

13-10-2015 11:16:09

Hamzat пишет

Можно через js, можно через eval.

А как через eval? Подскажите, пожалуйста! Набросайте пример, если не сложно!

Марина89 через eval вернуться на несколько строк назад - нельзя
это возможно только через управляющий js

13-10-2015 12:02:16

Марина89 пишет

последняя строка никак не нажимается

код не проверял, но на вскидку - предположу, что проблема в этом:

Марина89 пишет

WAIT=YES\TAG

опечатка, вместо \n стоит просто \

InfSub пишет

через eval вернуться на несколько строк назад - нельзя

Сорри, не учел что в eval нельзя использовать iimPlay, хотя это логично...

Помогите, кто знает, как решить задачу.

Имеется текстовый документ "Люди.txt" в папке Datasources
Как в этот документ, сохранять во творой колонке слово "отправил"?
Продолжает сохранять в первую колонку
Нужно при каждом новом цикле, чтобы сохранял это слово во второй колонке следующей строки.

скрытый текст

Выделить код

Код:

SET !LOOP 1
SET !EXTRACT "отправил"
SET !DATASOURCE_LINE {{!LOOP}}
SET !DATASOURCE_COLUMNS 2
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Admin\Documents\Imacros\Datasources FILE=люди.txt


пример

Выделить код

Код:

вот так сохраняет слово отправил
"ссылка"
"ссылка"
"отправил"
"отправил"

а нужно
"ссылка","отправил"
"ссылка","отправил"

Алим
при условии, что ссылки там уже есть - ни как, только создавать новый документ и сохранять в него данные в 2 столбца

Как добавить в эту шапку

скрытый текст

Выделить код

Код:

var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n', t3='SET !ERRORIGNORE_YES 0\n', f=0;


эти команды?:
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO

Марина89 пишет

SET !EXTRACT_TEST_POPUP NO

В js скриптах эта команда не нужна.

PRESIDENT пишет

SET !EXTRACT_TEST_POPUP NO
В js скриптах эта команда не нужна.

А эта? SET !ERRORIGNORE YES
Мне нужно, чтоб ошибки пропускал

В js кодах оно не нужно.

PRESIDENT пишет

В js кодах оно не нужно.

Но ведь, бывают кое-какие изменения на сайте, из-за этого скрипт останавливается. Нельзя что ли, чтоб скрипт так же шел, если даже что-то не появилось?

Спасибо InfSub за ответ. Теперь понятно, что нельзя :)

Помогите, кто знает.
Допустим захожу по ссылке в поиск Гугла или Яндекс и нужно извлечь содержимое поисковой строки, спасибо.

dorosholeg
Зачем такие глупые вопросы ???
Нажми кнопку запись и запиши нужные команды.

PRESIDENT пишет

dorosholeg
Зачем такие глупые вопросы ???
Нажми кнопку запись и запиши нужные команды.

Да не получается не силён я в этом.

скрытый текст

Выделить код

Код:

URL GOTO=https://www.google.com/search?sclient=psy-ab&client=firefox-a&rls=org.mozilla:en-US:official&channel=sb&biw=827&bih=521&noj=1&q=imacros&oq=imacros&gs_l=serp.12..0i131l2j0l8.176161.260428.1.263030.27.14.0.2.2.0.120.1145.8j4.12.0....0...1c.1.64.serp..18.9.702.MBYb72zAnyg&gfe_rd=cr&ei=dCgdVt-oMceAYO3fuaAF
EVENT TYPE=CLICK SELECTOR="#lst-ib" BUTTON=0 EXTRACT=TXT
PROMPT {{!EXTRACT}}


Выскакивает пустое окошко.

dorosholeg

скрытый текст

Выделить код

Код:

URL GOTO=https://www.google.ru/#newwindow=1&q=imacros
TAG POS=1 TYPE=DIV ATTR=ROLE:main&&ID:res&&CLASS:med extract=txt

PRESIDENT пишет

dorosholeg

скрытый текст

Выделить код

Код:

URL GOTO=https://www.google.ru/#newwindow=1&q=imacros
TAG POS=1 TYPE=DIV ATTR=ROLE:main&&ID:res&&CLASS:med extract=txt

Всё равно не извлекает, выскакивает пустое окно

dorosholeg

скрытый текст
c2035cf8839a.jpg

Так это вы извлекли содержимое всей страницы а я спрашивал поисковую фразу в моём случае слово imacros

Неужели все-таки нет такой команды для js, чтоб не останавливался скрипт при некоторых ошибках???

dorosholeg

А звиняюсь, не правильно понял.
Попробуй так

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q extract=txt


Марина89
Да не нужна тебе эта проверка.

iimPlayCode('SET !ERRORIGNORE YES\n тут иим код')

Спасибо, получилось

PRESIDENT пишет

Марина89
Да не нужна тебе эта проверка.

Это не для проверки мне нужно. А для того, чтобы скрипт не останавливался. Вот для чего прописывают эту  команду SET !ERRORIGNORE YES в обычном imacros.iim ? Вот для этого мне нужно и в js-скрипте. Неужели нельзя это как-то прописать???

13-10-2015 20:04:51

PRESIDENT пишет

iimPlayCode('SET !ERRORIGNORE YES\n тут иим код')

Не поняла, что написано в конце кода? И куда этот код можно вставить?

Марина в пятый раз тебе пишу: не нужна в JS коде эта команда и без неё прекрасно работает.
Если тебе уже приспичело, хочется делать пропуск ошибки, то используй пример что я тебе привёл.

iimPlayCode('SET !ERRORIGNORE YES\n тут проблемный иим код')

А как сделать, чтобы этот скрипт повторялся снова и снова?  А то  он один раз пройдет и остановится.На воспр.цикл он не действует

скрытый текст

Выделить код

Код:

var iP=iimPlayCode, iD=iimDisplay, t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n',  f=0;  

 var Path='D:\\Captcha\\';
 var key='удалено';
 var bit='удалено';

     iP(t0+'TAB CLOSEALLOTHERS');   
     iP(t3+'URL GOTO=bitcoinfactory.org');
     weit(3);
   f=iP(t0+'FRAME NAME="I0*"\nTAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA'); if(f>0){
     iP(t0+'FRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:'); weit(5);
     iP(t0+'FRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
  if(iimGetExtract().indexOf('checked="true')<0){
     iP(t3+'ONDOWNLOAD FOLDER='+Path+' FILE=ME_1.jpeg WAIT=YES\nTAG POS=1 TYPE=div ATTR=style:"display: *" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
     iP(t0+'TAB OPEN\nTAB T=2');
     
     iP(t3+'URL GOTO=resizepiconline.com/');
     weit(2);
     iP(t0+'TAG POS=1 TYPE=INPUT:FILE ATTR=ID:fileupload CONTENT='+Path+'ME_1.jpeg');
     weit(2);
     iP(t0+'TAG POS=1 TYPE=BUTTON FORM=ID:options_form ATTR=ID:get_resize');
     weit(2);
     iP(t3+'ONDOWNLOAD FOLDER='+Path+' FILE=ME_2.jpeg WAIT=YES\nTAG POS=1 TYPE=A ATTR=HREF:#&&CLASS:download');
     weit(5);
     
     iP(t3+'URL GOTO=imacros2.rucaptcha.com/new/');
     iP(t0+'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key);
     iP(t0+'TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'ME_2.jpeg');
     iP('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');
     iP(t0+'TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); c=iimGetExtract().match(/\d+/g).join(''); weit(1);
     iP('TAB CLOSE');
  if(Number(c)>0){
  for(k=0; k<c.length; k++){  
    iP(t0+'FRAME NAME="I1_*"\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');}
iP(t3+'FRAME NAME="I1_*"\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');weit(1);}}
    iP(t0+'FRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
  if(iimGetExtract().indexOf('checked="true')>0){   
    iP(t0+'EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>FORM>BUTTON" BUTTON=0');
     weit(123);
    iP(t3+'EVENT TYPE=CLICK SELECTOR="#BtnOk>FORM>BUTTON" BUTTON=0');}}

     /***-= Ожидание=-***/
 function weit(s){iP('WAIT SECONDS='+s);}


И все-таки я не поняла, куда этот код вставить, чтобы игнорировал ошибки? Мне нужно пропускать, если капчу неверно разгадал и неверно нажал на картинки. Вот тогда у меня скрипт останавливается. А мне не надо, чтобы  он останавливался. Я же постоянно не сижу за компьютером, чтоб снова запускать.

PRESIDENT пишет

iimPlayCode('SET !ERRORIGNORE YES\n тут проблемный иим код')

ребят вот есть допустим такая строчка

TAG POS=1 TYPE=INPUT:FILE FORM=NAME:add_form ATTR=NAME:logo[] CONTENT=C:\Users\izi\Desktop\ff

подскажите как сделать чтобы из папки ff постились рандомные фото?

Марина89

Марина89 пишет

На воспр.цикл он не действует

для js скриптов - кнопка "цикл" не действует, циклы задаются в самом коде, например так:

скрытый текст

Выделить код

Код:

for(i = 0; i < 10; i++){
    /* тут код, который нужно повторить 10 раз*/
};

Марина89 пишет

куда этот код вставить, чтобы игнорировал ошибки?

команда SET !ERRORIGNORE YES вставляется в iim-код, который вы запускаете через функцию iimPlay()/iimPlayCode() и вставляется в тот код, в котором возможно возникновение ошибок при проигрывании, но их нужно пропустить
команда вставляется либо в начале скрипта, если его нужно выполнить полностью при любых обстоятельствах, либо перед проблемными строками кода, например:

скрытый текст
в случае, если изображение с id=photo не будет найдено, скрипт не завершится, а продолжит работу

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=1 TYPE=IMG ATTR=ID:photo EXTRACT=HREF


если же требуется обязательно завершить скрипт при какой-то ошибке, но выше уже указано SET !ERRORIGNORE YES, то перед строкой, ошибки от которой не игнорировать нелься - пишется команда SET !ERRORIGNORE NO

14-10-2015 11:32:22
действие SET !ERRORIGNORE YES распространяется на конкретный код вызванный из js с помощью iimPlayCode, при следующем вызове  iimPlayCode в том же js скрипте - SET !ERRORIGNORE YES действовать не будет, потребуется вызывать команду заново
т.е. она у вас должна быть встроена в весь iim-код, где это требуется


PRESIDENT
ты не прав, iMacros завершает iim-скрипт вызванный из js, в случае возникновения в iim ошибки, по этому, команда SET !ERRORIGNORE YES добавляется в часть скриптов, записанных в js


14-10-2015 11:16:05
milenadesy
нельзя считать содержимое локальной папки, если вы об этом
переименуйте файлы, к примеру, от 1 до 100 и подставляйте номер файла с помощью переменной
как получить рандомное число только недавно писал, полистайте форум

InfSub пишет

На воспр.цикл он не действует для js скриптов - кнопка "цикл" не действует, циклы задаются в самом коде, например так Код:
for(i = 0; i < 10; i++){
    /* тут код, который нужно повторить 10 раз*/

Извините, но что-то  никак не пойму, какой код сюда вставить /* тут код, который нужно повторить 10 раз*/  чтобы воспроизводился весь скрипт 10 раз?

Марина89 пишет

какой код сюда вставить

тот, что вы пытаетесь зациклить, нажимая кнопку "Воспр. (Цикл)"

InfSub пишет

тот, что вы пытаетесь зациклить, нажимая кнопку "Воспр. (Цикл)"

То есть написать сюда  " /* тут код, который нужно повторить 10 раз*/" название макроса, который я обычно выбираю и нажимаю "Вспр.(цикл)?

А что-то сейчас так делаю, но все-равно только один раз скрипт проходит и останавливается. Вот как сделала:

Выделить код

Код:

for(i = 0; i < 10; i++){
    /* 3.Bitcoin.js*/
};

Этот скрипт у меня под названием "3.Bitcoin.js"

Марина89
вы понимаете разницу между словом код и словом скрипт?

InfSub пишет

вы понимаете разницу между словом код и словом скрипт?

Я в этом деле новичок, и еще плохо разбираюсь в некоторых местах. Ну напишите, пожалуйста, что надо написать здесь?
/* тут код, который нужно повторить 10 раз*/"

Марина89
советую воспользоваться гуглом для поиска, соответствующих ресурсов по основам js, данная тема - не посвящена обучению js, для этого есть куча, соответствующих ресурсов
тема посвящена конкретным вопросам и решениям в связке JS+iMacros, но не элементарным вопросам программирования на js

14-10-2015 15:35:33

Марина89 пишет

Ну напишите, пожалуйста, что надо написать здесь?

содержимое файла 3.Bitcoin.js

InfSub пишет

Марина89советую воспользоваться гуглом для поиска, соответствующих ресурсов по основам js, данная тема - не посвящена обучению js, для этого есть куча, соответствующих ресурсовтема посвящена конкретным вопросам и решениям в связке JS+iMacros, но не элементарным вопросам программирования на js

Да не могу я правильно сформулировать вопросы в гугле. Здесь я узнала больше чем в поиске яндекса и гугла.

14-10-2015 15:47:04

InfSub пишет

содержимое файла 3.Bitcoin.js

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

Марина89 пишет

не могу я правильно сформулировать вопросы в гугле

js циклы - элементарно, Ватсон (с)

Уже как неделю бьюсь над этими вопросами, помогите Пожалуйста решить хоть один.
удалено, для самобичевания есть раздел флейм

Можно-ли извлекать строки из файла рандомно?
Можно-ли выбирать файл рондомно? (для извлечение строк)
Можно-ли запустить BAT файл через imacros?
Как очистить нужные куки или не все куки?
Можно-ли при извлечении строки из файла строка удалилась? (вырезать)
Как копировать текст в буфер обмена?


Правила, форума: пункт: 2.1  Задавать вопросы, ответы на которые есть в «FAQ» или легко находятся поиском...

InfSub

bop101
wiki.imacros.net + поиск по данной теме

ребят хелп  плз чё не  так   с эти местом  макрос не запускается  вообще

скрытый текст

Выделить код

Код:

SET GGG EVAL("Math.round((Math.random() * (4 - 1) + 1))") 
TAG POS=1 TYPE=INPUT:FILE FORM=NAME:add_form ATTR=NAME:logo[] CONTENT=C:\Users\izi\Desktop\ff\левые\213\{{GGG}}.jpg


Читаем правила!
Публикация кода, разрешена только в тегах code спрятанных в спойлер

InfSub

milenadesy
этот код - корректен, проверяйте остальной ваш код, либо попробуйте сбросить FF на дефолтовые настройки

если включен игнор ошибок SET !ERRORIGNORE YES - отключите, по сообщению об ошибке - сможете определить где конкретно ошибка

Помогите пожалуйста сделать правильную проверку, нужно когда файл pages.txt достигает последней строки (в моем случаи их 2) он начинает процесс заного, вроде все работает но ко всему еще нужно переменную link увелечить на один, после того как выборка урл с файла  pages.txt началась по новой.

скрытый текст

Выделить код

Код:

var macros,loop;
var totalPages = 2;
var link = 1;
macros = "CODE:";
macros += "SET !DATASOURCE pages.txt" + "\n";
macros += "SET !DATASOURCE_LINE {{i}}" + "\n";
macros += "URL GOTO=\"{{!COL1}}\"" + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"ZT5Tcc\"" + "\n";
macros += "TAB T=2" + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"kqa es\"" + "\n";
macros += "SET !DATASOURCE links.txt" + "\n";
macros += "SET !DATASOURCE_LINE " + link + "\n";
macros += 'EVENTS TYPE=KEYPRESS SELECTOR="div[class=\\"df b-K b-K-Xb URaP8 editable\\"]" CHARS={{!COL1}}' + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"d-k-l b-c b-c-Ba qy jt\"" + "\n";
macros += "WAIT SECONDS=1" + "\n";
macros += "TAB T=1" + "\n";
macros += "TAB CLOSEALLOTHERS" + "\n";
loop = prompt("How many times to play macros?", loop);

for( i= 1; i <= loop; i++) {
    if( i > totalPages ) {
         i=1;
         link++;
    }
    
    iimSet("i",i)
    iimDisplay("Loop Plays: "+i)
    iimPlay(macros)
}

kani339
в вашем коде - переменная i номер цикла, а вы ее объявляете как номер строки

14-10-2015 17:34:01

должно быть - как-то так, если я правильно понял, то что вы тут накодили...

Выделить код

Код:

for( i= 1; i <= loop; i++) {
    for(j=1;j <= totalPages;j++) {
         iimSet("i",j);
         iimPlay(macros);
         link++;
    }
    iimDisplay("Loop Plays: "+i);
}

InfSub пишет

kani339
в вашем коде - переменная i номер цикла, а вы ее объявляете как номер строки

14-10-2015 17:34:01

должно быть - как-то так, если я правильно понял, то что вы тут накодили...

Выделить код

Код:

for( i= 1; i <= loop; i++) {
    for(j=1;j <= totalPages;j++) {
         iimSet("i",j);
         iimPlay(macros);
         link++;
    }
    iimDisplay("Loop Plays: "+i);
}

Выдает ошибку

BadParameter: !DATASOURCE_LINE must be positive integer, line 8 (Error code: -911)

kani339
translate.google.ru

InfSub пишет

как переводится сообственно я знаю, меня интересует почему это происходит

kani339
ищите, где еще в вашем скрипте используется переменная j и что в нее попадает или задайте другое имя переменной

14-10-2015 18:24:06
строка

macros += "SET !DATASOURCE_LINE {{i}}" + "\n";

должна была остаться неизменной, если вы изменили {{I}} на {{J}} значит измените и iimSet('I',j) на iimSet('J',j)

InfSub
нашел ошибку, но всеравно почемуто переменна не увеличивается на один, я поставил

macros += "SET !DATASOURCE_LINE " + link + "\n";

у меня все время из этого файла берется первая строка

kani339 пишет

у меня все время из этого файла берется первая строка

код со всеми изменениями выложите

InfSub пишет
kani339 пишет

у меня все время из этого файла берется первая строка

код со всеми изменениями выложите

И всеравно ошибка

BadParameter: !DATASOURCE_LINE must be positive integer, line 2 (Error code: -911)

скрытый текст

Выделить код

Код:

var macros,loop;
var totalPages = 2;
var link = 1;
macros = "CODE:";
macros += "SET !DATASOURCE pages.txt" + "\n";
macros += "SET !DATASOURCE_LINE {{i}}" + "\n";
macros += "URL GOTO=\"{{!COL1}}\"" + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"ZT5Tcc\"" + "\n";
macros += "TAB T=2" + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"kqa es\"" + "\n";
macros += "SET !DATASOURCE links.txt" + "\n";
macros += "SET !DATASOURCE_LINE {{j}}" + "\n";
macros += 'EVENTS TYPE=KEYPRESS SELECTOR="div[class=\\"df b-K b-K-Xb URaP8 editable\\"]" CHARS={{!COL1}}' + "\n";
macros += "TAG POS=1 TYPE=DIV ATTR=CLASS:\"d-k-l b-c b-c-Ba qy jt\"" + "\n";
macros += "WAIT SECONDS=1" + "\n";
macros += "TAB T=1" + "\n";
macros += "TAB CLOSEALLOTHERS" + "\n";
loop = prompt("How many times to play macros?", loop);

for( i= 1; i <= loop; i++) {
    for(j=1;j <= totalPages;j++) {
         iimSet("j",j);
         iimPlay(macros);
         link++;
    }
    iimDisplay("Loop Plays: "+i);
    iimSet("i",i);
}

скрытый текст
Руки бы повыдергивать за такую писанину :(:(:(

macros += "SET !DATASOURCE_LINE " +i+ "\n";

И так же само с j

PRESIDENT пишет

скрытый текст
Руки бы повыдергивать за такую писанину :(:(:(

macros += "SET !DATASOURCE_LINE " +i+ "\n";

И так же само с j

скрытый текст
В таком случаи выдает

!DATASOURCE_LINE must be positive integer, line 2

ты link нигде не используешь

скрытый текст

Выделить код

Код:

var iP=iimPlayCode, iD=iimDisplay, t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n';  

var macros, loop, totalPages = 2, link = 1;
loop = prompt("How many times to play macros?", loop);

for(i= 1;i <= loop;i++){  iD("Loop Plays: "+i);
for(j=1;j <= totalPages;j++){
iP(t0+'SET !DATASOURCE pages.txt\nSET !DATASOURCE_LINE'+i+'\nSET !EXTRACT {{!COL1}}');
iP(t3+'URL GOTO='+iimGetExtract());
iP(t3+'TAG POS=1 TYPE=DIV ATTR=CLASS:*ZT5Tcc*\nTAG POS=1 TYPE=DIV ATTR=CLASS:*kqa es*');
iP(t0+'SET !DATASOURCE links.txt\nSET !DATASOURCE_LINE'+j+'\nSET !EXTRACT {{!COL1}}');
iP(t0+'EVENTS TYPE=KEYPRESS SELECTOR="div[class=\\"df b-K b-K-Xb URaP8 editable\\"]" CHARS='+iimGetExtract());
iP(t3+'TAG POS=1 TYPE=DIV ATTR=CLASS:*d-k-l b-c b-c-Ba qy jt*');
iP('WAIT SECONDS=1\nTAB CLOSEALLOTHERS');}}

kani339 пишет

BadParameter: !DATASOURCE_LINE must be positive integer, line 2 (Error code: -911)

еще бы, iimSet() ставится перед iimPlay() а не после

скрытый текст

Выделить код

Код:

for( i= 1; i <= loop; i++) {
    for(j=1;j <= totalPages;j++) {
         iimSet("i",i);
         iimSet("j",j);
         iimPlay(macros);
    }
    iimDisplay("Loop Plays: "+i);
}


14-10-2015 20:40:02
PRESIDENT
зачем столько извращений с EXTRACT'ами?
ты кстати, не все "зубочистки" убрал -> (\\)

14-10-2015 20:47:36
кстати, мой косяк, я в первоначальном коде пропустил обращение ко второму файлу, просто не дочитал код в переменной macros до конца, потому и не указал второй iimSet()

Я чёто там засомневался, в евенте же нельзя звездочки использовать.
И хз что у него  там за код был, поэтому оставил как есть, думаю дальше сам допрёт.

Как из этого скрипта удалить строки , которые мне не нужны? Я удаляю, скрипт запускаю - пишет ошибку, не воспроизводится.
Из этого скрипта

скрытый текст

Выделить код

Код:

var f=0;

 var Path='D:\\Captcha\\';
 var key='твой ключ';
 var bit='твой биткоин адрес';

iimPlayCode('SET !TIMEOUT_STEP 0\nTAB CLOSEALLOTHERS');
iimPlayCode('SET !TIMEOUT 30\nURL GOTO=bitcoinfactory.org');
iimPlayCode('WAIT SECONDS=3');
f=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA');
if(f>0){
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:');
    iimPlayCode('WAIT SECONDS=5');
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
    if(iimGetExtract().indexOf('checked="true')<0){
        iimPlayCode('SET !TIMEOUT 30\nONDOWNLOAD FOLDER='+Path+' FILE=ME_1.jpeg WAIT=YES\nTAG POS=1 TYPE=div ATTR=style:"display: *" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAB OPEN\nTAB T=2');

        iimPlayCode('SET !TIMEOUT 30\nURL GOTO=resizepiconline.com/');
        iimPlayCode('WAIT SECONDS=2');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=iimDisplay:fileupload CONTENT='+Path+'ME_1.jpeg');
        iimPlayCode('WAIT SECONDS=2');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=BUTTON FORM=iimDisplay:options_form ATTR=iimDisplay:get_resize');
        iimPlayCode('WAIT SECONDS=2');
        iimPlayCode('SET !TIMEOUT 30\nONDOWNLOAD FOLDER='+Path+' FILE=ME_2.jpeg WAIT=YES\nTAG POS=1 TYPE=A ATTR=HREF:#&&CLASS:download');
        iimPlayCode('WAIT SECONDS=5');

        iimPlayCode('SET !TIMEOUT 30\nURL GOTO=imacros2.rucaptcha.com/new/');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key);
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'ME_2.jpeg');
        iimPlayCode('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
        c=iimGetExtract().match(/\d+/g).join('');
        iimPlayCode('WAIT SECONDS=1');
        iimPlayCode('TAB CLOSE');
        if(Number(c)>0){
            for(k=0; k<c.length; k++){
                iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I1_*"\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');
            }

            iimPlay("Bitcoin/Bitcoin_1.iim");
            iimPlay("Bitcoin/Bitcoin_2.iim");

            iimPlayCode('SET !TIMEOUT_STEP 0\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>FORM>BUTTON" BUTTON=0');
            iimPlayCode('WAIT SECONDS=123');
            iimPlayCode('SET !TIMEOUT 30\nEVENT TYPE=CLICK SELECTOR="#BtnOk>FORM>BUTTON" BUTTON=0');
        }
    }

    if(iimGetExtract().indexOf('checked="true')>0){
        iimPlayCode('SET !TIMEOUT 30\nFRAME NAME="I1_*"\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');
        iimPlayCode('WAIT SECONDS=1');
    }
}
iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');


мне надо удалить вот эти коды:
скрытый текст

Выделить код

Код:

if(iimGetExtract().indexOf('checked="true')>0){
        iimPlayCode('SET !TIMEOUT 30\nFRAME NAME="I1_*"\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');
        iimPlayCode('WAIT SECONDS=1');
    }
}
iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');


Как это сделать? Почему без них скрипт не воспроизводится?

Сколько раз Вам повторить про тег CODE? Правила раздела iMacros, пункт 1.3.2 - предупреждение

InfSub

PRESIDENT пишет

в евенте же нельзя звездочки использовать.

а они там разве были?

Потому что открывается фигурная скобка ...>0){ и смотри где она закрывается iimPlayCode('WAIT SECONDS=1');}}
а там две скобки и ты удалила одну нужную.

Макрос извлекает из адресной строки ссылку и нужно удалить лишнее, оставив только цифры

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


и сохранить в таком формате
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

SET !EXTRACT {{!URLCURRENT}}
SET !EXTRACT EVAL("'https://vk.com/id{{!EXTRACT}}'.replace('https://vk.com/im?media=&sel=','')")
SAVEAS TYPE=EXTRACT FOLDER=* FILE=имя.txt


Иногда нет вконце буквы s после http.
И не сохраняет в таком формате.

Как сделать, чтобы сохраняло в обеих случаях?

Алим

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'https://vk.com/id'+'{{!EXTRACT}}'.match(/(\d+)$/g)")

InfSub спасибо, работает!

удалено, флуд.
Вопрос - должен быть понятен не только вам, но и окружающим

InfSub

Возникает такая ошибка, когда работаю с макросом в гугл+

скрытый текст

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


В строке первой, как он указывает ошибки нету она работает, так как надо, но вот данная ошибка бывает появляеться через раз. Использую Mozilla 41.0.1
Может стоит более ранее версию использывать?

PRESIDENT пишет

Скорее всего сайт не до грузился, увеличь сет тайм оут.

Мне теперь Firefox выдает "Неверное перенаправление на странице " Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.

Эта проблема может возникать при отключении или запрещении принятия кук.

Куки включены, вот скрипт

скрипт останавливаеться и выдает

скрытый текст

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

var pages = ' pages.txt ';
var links = ' links.txt ';

var p = 1; 
var l = 1; 

for (;;) { 

iimPlayCode ('SET !DATASOURCE '+pages+'\nSET !DATASOURCE_LINE '+p+'\nSET !EXTRACT {{!COL1}}'); 
url = iimGetLastExtract(); 

if (url) { 

iimPlayCode ('SET !DATASOURCE '+links+'\nSET !DATASOURCE_LINE '+l+'\nSET !EXTRACT {{!COL1}}'); 
link = iimGetLastExtract(); 

if (link) { 
iimPlay ('Code:' 
+ 'URL GOTO = '+url+'\n'   ===>> вот после того, как доходит до этой строки выдает ошибку Firefox
+ 'WAIT SECONDS = 3\n' 
+ 'TAG POS=1 TYPE=DIV ATTR=TXT:Share<SP>what\'s<SP>new...\n'
); 
iimPlayCode ('TAG POS=1 TYPE=DIV ATTR=ID::*.f Extract=htm') 
com = iimGetLastExtract().split ('id=":')[1].split ('.f')[0]; 
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#\\:'+com+'\\.f" CHARS="'+link+'"\nTAG POS=1 TYPE=DIV ATTR=CLASS:"d-k-l b-c b-c-Ba qy jt"\nWAIT SECONDS=1\n') 
p++; 
} 
else { 
break; 
} 
} 
else { 
p=1; 
l++; 
} 

}

kani339 пишет

Error loading page

Ошибка с загрузкой страницы. что тебе ещё тут не понятно, копай в этом направлении.

+ 'SET !TIMEOUT 60\nURL GOTO = '+url+'\n'

PRESIDENT
У меня страницы из файла даже вручну не грузятся, до этого все норм было.. В хроме эти же страницы загружаються

PRESIDENT пишет

Эта страница у меня тоже не грузится.

Неверное перенаправление на странице.

Все заработало))

Подскажите, что не так делаю? из файла ссылка вставляется в {{!COL3}} много раз

В цсв файле строка выглядит так 

скрытый текст

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

SET !DATASOURCE gplus.csv
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
TAG POS=1 TYPE=DIV ATTR=CLASS:"kqa es"
EVENTS TYPE=KEYPRESS SELECTOR="div[class=\"df b-K b-K-Xb URaP8 editable\"]" CHARS={{!COL3}}
TAG POS=1 TYPE=DIV ATTR=CLASS:"d-k-l b-c b-c-Ba qy jt"

kani339 пишет

из файла ссылка вставляется в {{!COL3}} много раз

проверь на другом сайте
проверь на другой версии ff и имакроса

16-10-2015 20:32:46
как правильно задать подобный вопрос - читаем тут, пункт 1.2

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

скрытый текст
----------------------------------------------------
есть текст

Выделить код

Код:

[url=http://11111111.jpg][img]http://2222222.jpg[/img][/url]
[url=http://11111111.jpg][img]http://2222222.jpg[/img][/url]
[url=http://11111111.jpg][img]http://2222222.jpg[/img][/url]

и так далее

особенности текста: нет ентеров (сплошной), закономерность прослеживается )), вместо 11111111 - различно рода текстовая ссылка и  вместо 2222222 - различно рода текстовая ссылка
-----------------------------------------------------
мне нужен код который удалит

Выделить код

Код:

[url=http://11111111.jpg][img]

и вот это[/img][/url] - остаться должно только 

Выделить код

Код:

http://2222222.jpg http://2222222.jpg http://2222222.jpg

сейчас работаю так :
1 - через iim читаю txt
2 - сплитом бью на массив по элементу[/url]
3 - .length - считаю элементы
4 - удаляю

Выделить код

Код:

[url=http://11111111.jpg][IMG]

через замену

Выделить код

Код:

nnnnnnn[ckl-1].replace(/\]\[IMG\]http(.*)/,'').replace(/\[url=/,'')

5 - получаю http://2222222.jpg
6 - открываю и сохраняю полученные ссылки для последующей работы
---------------------------------------------------------
Все работает , просто интересно взглянуть как это более профессионально выглядит , думаю есть возможность реализации EVAL и !LOOP

kolshix

Варианты
Пункты 1, 2, 3 остаются
Дальше рассмотрим любой элемент массива

Выделить код

Код:

[url=http://11111111.jpg][img]http://2222222.jpg[/img][/url]

их разделяет [img].
сплитом c [img] разобьём, его опять на 2 части
.split('[img]')
и дальше возьмём только вторую часть.
И тут опять 2 пути, как у тебя репласить заменить всё не нужное на пусто.
Или покрасивше профессиональнее регулярка, примерно такая
ищем http:// потом могут быть любые буковки/циферки \w+ потом идёт .jpg


Или чуть иначе.
Опять же регуляркой в элементе массива ищем такие конструкции
http:// любые буковки/циферки \w+ и .jpg только с модификатором /g (искать все совпадения)
найдется естественно 2,
из них брать только вторую


Ну или регуляркой выбираем то что между тегами [img]...[/img]


Ну или если судя по твоему примеру, нужна просто каждая вторая ссылка

PRESIDENT пишет

Ну или регуляркой выбираем то что между тегами ...

скрытый текст

Выделить код

Код:

[url=http://11111111.jpg][img]http://2222222.jpg[/img][/url][url=http://11111111.jpg][img]http://2222222.jpg[/img][/url][url=http://11111111.jpg][img]http://2222222.jpg[/img][/url]


- какой код чтоб из этого оставить http://2222222.jpg,http://2222222.jpg,http://2222222.jpg,
--
по идее тут iim с EVAL + сплит и регулярка ... напиши пожалуйста код регулярки
---
хотел конечно обойтись одним iim ,но всеравно топить в js придётся , так как текстов много , а url-ы считать не хочется )))

kolshix

Наверно как то так будет.

Выделить код

Код:

SET !VAR1 EVAL('var res={{!EXTRACT}}.match(/g\](http\:\/\/\w+\.jpg)/g).join(" ").replace(/g]/gi,""); res;')


Я с iim-ами не дружу:(, для меня это извращение в iim-ах JS код запускать :angry:

Как вставить строку в форму не удаляя первую?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT=первая строка
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT=вторая строка

bop101
Извлеки и сохрани сначала первый текст, потом добавь к нему второй и уже результат вводи.

Hamzat пишет

Можно через js, можно через eval.

А можете показать пример? К примеру: 20 строка дала ошибку, нужно вернуться к 15.

Марина89 пишет

К примеру: 20 строка дала ошибку, нужно вернуться к 15.

Вам уже отвечали на этот вопрос, что это невозможно
Это возможно сделать только внутри js-скрипта, разбив iim-код на части и запуская его по частям, делаете проверку, нужной вам части на ошибки. И, в случае ошибки, запускаете предыдущую часть. Это позволяет сделать js, но не eval()

Марина89 пишет
Hamzat пишет

Можно через js, можно через eval.

А можете показать пример

Как идея, загнать ошибку в Extract проверить через eval на if которые проверят ошибку, и в случае сходство запустить тот же iim файл который на данный момент воспроизводится.

К примеру: 20 строка дала ошибку, нужно вернуться к 15

Так нельзя (

Hamzat пишет

Как идея

для начала попробуйте реализовать "это"

InfSub пишет
Hamzat пишет

Как идея

для начала попробуйте реализовать "это"

в чем проблема?

Hamzat пишет

в чем проблема?

с помощью eval() в iim-коде?
в том, что вам придется запускать какой-либо файл - всегда, только вы сможете выбрать - какой файл, с помощью if в eval()

18-10-2015 23:31:04

Hamzat пишет

загнать ошибку в Extract

тоже хотелось бы взглянуть, как вы это сделаете в iim'e

InfSub

в том, что вам придется запускать какой-либо файл - всегда, только вы сможете выбрать - какой файл, с помощью if в eval()

почему нельзя выбрать какой именно файл? Ведь в eval работают все js конструкции?

тоже хотелось бы взглянуть, как вы это сделаете в iim'e

Возможно я не правильно выразился, я имел виду что типо TAG POS=1 TYPE=* ATTR=ID:error EXTRACT=TXT

Hamzat пишет

почему нельзя выбрать какой именно файл? Ведь в eval работают все js конструкции?

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

InfSub пишет

т.е. у вас не получиться сделать так, что если ошибки не произошло - то выполнять скрипт дальше, а если произошла, то загрузить скрипт повторно

Я дико извиняюсь если я что то не так понимаю, if в eval работает как по другому? Почему нельзя открыть eval присвоить Extract какой то переменно и эту переменную проверить в if? А уже внутри if вызвать файл повторно.

Hamzat пишет

А уже внутри if вызвать файл повторно.

попробуйте

PRESIDENT пишет

Зачем это извращение

вопрос не в этом
смысл дискуссии в поговорке: "семь раз отмерь, один отрежь" - интерпретируя ее к нашей ситуации, видим "идею", которая не имеет права на жизнь, если знать о том, что же такое eval(), как он работает и для чего нужен

19-10-2015 00:41:39
..но так как, большинство, любит наступать на собственные грабли, то ... дискутируемс =)

InfSub

как он работает и для чего нужен

Извиняюсь если что то не так, в wiki написано что в eval можно воспроизводить js команды, я и подумал что можно просто написать условию

Выделить код

Код:

if (error == 'Error captcha') window.location.href = "imacros://run/?m=1.iim"

По идее должно работать, по сути черт его знает, когда нет точной докуметации откуда мне знать?

Hamzat
функция eval() - есть практически в любом языке программирования, ее задача интерпретировать код записанный в () и возвращать результат, но не более того. Почитайте, если интересно, в большинстве языков - данная функция работает идентично.
К примеру, вы не вызовете через eval() такие функции, как alert(), prompt() и т.д. т.к. это не входит в ее область действия, в ее функционал

19-10-2015 01:02:00

Hamzat пишет

По идее должно работать

и соответственно, оно не должно работать и не будет, без всяких идей )

InfSub

ее задача интерпретировать код записанный в () и возвращать результат, но не более того.

Теперь все понятно.

и соответственно, оно не должно работать и не будет, без всяких идей )

скрытый текст
Жестко)

https://en.wikipedia.org/wiki/Eval

19-10-2015 01:30:38
Цитата с iMacros - Wiki:

6. EVAL in iMacros Browser and the IE plugin use Microsoft's JScript 8.0 (JScript .NET, framework version 3.5) eval method, so security restrictions apply.
    As a consequence, DOM/GUI methods like "compatMode()" or "alert()" are not available. (this also applies to iMacros for Firefox)

В двух словах - эти методы недоступны через eval() в целях безопасности

удалено, флуд, правила форума, пункт 2.6


InfSub

Как спарсить ссылки на youtub канале?
Так не получается:

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=A ATTR=TXT:* EXTRACT=HREF
PROMPT {{!EXTRACT}}


a так парсит не все видео:
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS={{!LOOP}}    TYPE=A    ATTR=TXT:*.*  EXTRACT=HREF
SAVEAS TYPE=EXTRACT  FOLDER=*   FILE=Rec.csv

bop101 пишет

Как спарсить ссылки на youtub канале?

Как то так:

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:yt-uix-sessionlink<SP>yt-uix-tile-link<SP><SP>spf-link<SP><SP>yt-ui-ellipsis<SP>yt-ui-ellipsis-2 EXTRACT=HREF
PROMPT {{!EXTRACT}}

хелпайте ребят как сделать чтоб  из файла 123 брались не первые две записи а рандомно их там около 200 ( знаю как сделать рандом но как привязать его сюда не могу понять)

скрытый текст

Выделить код

Код:

SET !DATASOURCE   C:\123.txt
'SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE_COLUMNS 100
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}    

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:add_form ATTR=NAME:title CONTENT={{!COL1}}    
TAG POS=1 TYPE=TEXTAREA FORM=NAME:add_form ATTR=NAME:text CONTENT={{!COL2}}

Милена
подставить вместо {{!LOOP}} в строку:

скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE {{!LOOP}}


рандомное число с помощью EVAL или переменной, содержащей число

19-10-2015 14:34:16

скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 200) + 1")

дак это  и  так там есть

скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE {{!LOOP}}

Милена
перечитайте ответ - еще раз, раз вы его не поняли



Gergi пишет

Подскажите пожалуйста как прикрутить к этому коду проверку ещё одного условия?

Вопрос - перенесен в отдельную тему

InfSub


блн не пойму ну глупая я(( е мог быты если не  сложно написать полностью эту часть  )))

Милена в чем сложность заменить в вашем коде строку:

скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE {{!LOOP}}


на
скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 200) + 1")


где 1 - первая строка, 200 - последняя в файле

19-10-2015 15:26:51
и получить вот такой код (убрал ненужное из кода):

скрытый текст

Выделить код

Код:

SET !DATASOURCE   C:\123.txt
'SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 200) + 1")

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:add_form ATTR=NAME:title CONTENT={{!COL1}}    
TAG POS=1 TYPE=TEXTAREA FORM=NAME:add_form ATTR=NAME:text CONTENT={{!COL2}}

блин у  меня ошибку выдаёт та строчка что ты дал(( блин не ловко так клянчить но с другой сороны хочу  уже доделать) что именно тут не так

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
URL GOTO=http://www.gusto.ua/new.html#select
'----Отладка----
SET !DATASOURCE   C:\vagina.txt
'SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE_COLUMNS 100
SET !LOOP 1
SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 200) + 1")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:add_form ATTR=NAME:title CONTENT=!DATASOURCE_LINE{{!COL1}}  
TAG POS=1 TYPE=TEXTAREA FORM=NAME:add_form ATTR=NAME:text CONTENT=!DATASOURCE_LINE{{!COL2}}


вот что пишет
скрытый текст

Выделить код

Код:

RuntimeError: Invalid DATASOURCE_LINE value: 32, line 9 (Error code: -951)

Милена

RuntimeError: Invalid DATASOURCE_LINE value: 32, line 9 (Error code: -951)

ошибка из-за того, что у вас недостаточно строк в файле 123.txt

19-10-2015 15:49:36
Милена
в следующий раз - читайте FAQ, там есть ссылка, на коды ошибок iMacros
ошибка 951:

DATASOURCE_LINE exceeds actual number of rows in data source file

DATASOURCE_LINE превышает фактическое количество строк в файле источника данных

спасибо))) и  последний вопрос и ушла) если в файле будет больше 200 будет ли ошибка или нет

Милена
ошибка возникает - только, если строка с номером не найдена

19-10-2015 16:19:43
соответственно, если максимальное значение (в данном случае - это 200) не превышает количество строк в файле:

скрытый текст

Выделить код

Код:

SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 200) + 1")


то ошибок не будет

и  снова зрдасте у  меня уже бобит капец

скрытый текст

Выделить код

Код:

RuntimeError: Invalid DATASOURCE_LINE value: 5, line 9 (Error code: -951)


я пыталась в   FAQ найти чёт никак   
скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
URL GOTO=http://www.gusto.ua/new.html#select
'----Отладка----
SET !DATASOURCE   C:\vagina.txt
'SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE_COLUMNS 14
SET !LOOP 1
SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 14) + 1")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:add_form ATTR=NAME:title CONTENT={{!COL1}}  
TAG POS=1 TYPE=TEXTAREA FORM=NAME:add_form ATTR=NAME:text CONTENT={{!COL2}}


извини за настырность) ладно там до 200 может не дотягывало но там больше 14 в любом случае я не пойму чтос ним не так

удалить

Выделить код

Код:

SET !DATASOURCE_COLUMNS 14 - нет такой команды
SET !LOOP 1 - ненужна
'SET !DATASOURCE_DELIMITER ; - не используется в Вашем коде

Милена пишет

я пыталась в   FAQ найти чёт никак

из FAQ - я Вам уже все процитировал, большего, Вы там не найдете


Выложите сам файл «vagina.txt», на файлообменник и дайте ссылку

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Милена
переменная !DATASOURCE_LINE - это количество строк, а не столбцов
в вашем файле, только 1 строка и куча столбцов (каждый столбец - разделен запятой)

тоесть мне надо поставить их вот так:
первая строка
вторая строка
третяя строка
четвёртая строка
и тд?

да

Hamzat пишет

Как то так:

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:yt-uix-sessionlink<SP>yt-uix-tile-link<SP><SP>spf-link<SP><SP>yt-ui-ellipsis<SP>yt-ui-ellipsis-2 EXTRACT=HREF
PROMPT {{!EXTRACT}}

Спасибо! Идем дальше)

Милена
в FAQ есть видео по основам, в том числе по работе с DATASOURCE - посмотрите и вам будет легче разобраться

Некропостинг, на вопрос - уже был дан ответ

milenadesy пишет

ребят вот есть допустим такая строчка

TAG POS=1 TYPE=INPUT:FILE FORM=NAME:add_form ATTR=NAME:logo[] CONTENT=C:\Users\izi\Desktop\ff

подскажите как сделать чтобы из папки ff постились рандомные фото?

1. переименовываете файлы в папке ff по порядку от 1 до 100, или сколько там их у Вас.
2. код скрипта:

Выделить код

Код:

'данные для рандомной генерации названия файла с фото
SET !VAR1 EVAL("var random=Math.floor(Math.random()*99 + 1); random;")

'в конце кода расширение фото нужно поменять на то, которое у ваших фотографий
TAG POS=1 TYPE=INPUT:FILE FORM=NAME:add_form ATTR=NAME:logo[] CONTENT=C:\Users\izi\Desktop\ff\{{!VAR1}}.jpg


предупреждение

InfSub

Пытаюсь запустить макрос через бат файл, но выдает ошибку

iMacros run command: macro Social0Media\Instagram\Instagram0Unfollow.js not found (Error code: -930)

Макрос не выставил пробелы, вот как это выглядит в бат файле


скрытый текст

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" imacros://run/?m=Social%20Media/Instagram/Instagram%20Unfollow.js


%20 - сам подставил нотепад, как правильно пробелы выставить?

kani339
%20 - в cmd - нет такого знака

скрытый текст

Выделить код

Код:

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" imacros://run/?m="Social Media/Instagram/Instagram Unfollow.js"

В макросе знаю как менять прокси, поочерёдно с повторами по кругу из текстового документа.

Когда скрипт воспроизводит макросы, то нужно указывать в каждом макросе код на изменение прокси.
А если не указывать, то прокси меняется на реальный ip адрес.

А вот если прокси изменяется напрямую через скрипт, то они не изменяются, пока не остановишь сам скрипт.
Как сделать, чтобы поочерёдно по кругу брались прокси из документа и менялись в самом коде скрипта?

скрытый текст

Выделить код

Код:

var iphttp=   '11.111.111.111'
var portall=  '11111'

iimPlay("CODE:URL GOTO=about:config \n WAIT SECONDS=1")
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setBoolPref("network.proxy.share_proxy_settings", true);
prefs.setCharPref("network.proxy.http", iphttp);
prefs.setIntPref("network.proxy.http_port", portall);

Алим
на сколько я помню, обзор, как работать с прокси - делал kolshix, ссылки есть в FAQ

Алим

то они не изменяются, пока не остановишь сам скрипт.

все изменяет без проблем

скрытый текст

Выделить код

Код:

var ip   =   '109.198.126.112';
var port =  '8080';

var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setBoolPref("network.proxy.share_proxy_settings", true);
prefs.setCharPref("network.proxy.http", ip);
prefs.setIntPref("network.proxy.http_port", port);
iimPlayCode ('PAUSE')

Как сделать, чтобы поочерёдно по кругу брались прокси из документа

Думаю с этим у вас проблем не будет, значение из файла приcваивай переменным ip и port.

скрытый текст

Выделить код

Код:

iimPlay("CODE:URL GOTO=about:config \n WAIT SECONDS=1")

для изменение глобальных настроек переход на about:config не нужен.


красный цвет текста - используется, только модераторами и администраторами форума

InfSub

PRESIDENT пишет

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

Мне нужно что- бы imacros вставил в форму из двух файлов по три рондомные строки и что-бы в форме получилось 6 строк.
Что нужно еще добавлять?
форма тут:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

SET !DATASOURCE 1.csv
SET !DATASOURCE 2.csv

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR1}}
SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR2}}

TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

Hamzat пишет

все изменяет без проблем

я имел введу не изменяется на свой реальный ip адрес.

InfSub пишет

на сколько я помню, обзор, как работать с прокси - делал kolshix, ссылки есть в FAQ

Так я по его видео и сделал. Там в видео не говорится как брать поочерёдно из документа прокси и чтобы они менялись в самом скрипте.
А мне надо именно это.

Алим
Чекаю прокси с авторизацией, каждый цикл берется новая прокси.
Может что то пригодится:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
FILTER TYPE=IMAGES STATUS=ON
SET !DATASOURCE proxy.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROXY ADDRESS={{!COL1}}
URL GOTO=http://ipgeobase.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:index ATTR=TYPE:text&&VALUE:&&NAME:address CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:index ATTR=TYPE:text&&VALUE:&&NAME:address EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=proxy_GUD.txt

bop101 пишет

Чекаю прокси с авторизацией, каждый цикл берется новая прокси.
Может что то пригодится:

Это поможет, если все действия выполняются в 1 макросе.

bop101 пишет

Что нужно еще добавлять?

как минимум изменить код так:

скрытый текст

Выделить код

Код:

SET !DATASOURCE 1.csv
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR1}}

TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

SET !DATASOURCE 2.csv
SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR2}}

TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}


либо так, если нужно 6 вставок:
скрытый текст

Выделить код

Код:

SET !DATASOURCE 1.csv

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

SET !DATASOURCE 2.csv

SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

SET !VAR2 EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
SET !DATASOURCE_LINE {{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!COL1}}

InfSub
Я до этого дошел, но застрял на том как мне вставлять строки в форму не изменяя предыдущих строк?

bop101 пишет

как мне вставлять строки в форму не изменяя предыдущих строк?

не понял вопроса, выше, потому и предложил такой код
Вам же PRESIDENT уже отвечал, как это сделать:

PRESIDENT пишет

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

скрытый текст

Выделить код

Код:

SET !VAR1 ""
SET !DATASOURCE 1.csv

SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>
SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>
SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>

SET !DATASOURCE 2.csv

SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>
SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>
SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*5 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>

TAG POS=1 TYPE=TEXTAREA ATTR=ID:textCtrl CONTENT={{!VAR1}}

Проверяю отдельным макросом как брать прокси из текстовго документа, через EVAL.

Если изменять прокси через SET, то после остановки imacros возвращается обратно реальный ip адрес.
Если изменять ip через EVAL вписывать в настройки мазилы, то после остановки или при воспроизведении следующего макроса, прокси остаётся.

Что здесь не так?

скрытый текст

Выделить код

Код:

SET !DATASOURCE_DELIMITER :
CMDLINE !DATASOURCE прокси.txt

SET !LOOP 1

SET !DATASOURCE_LINE {{!LOOP}}

' Переход к вкладке настроек
URL GOTO=about:config
WAIT SECONDS=1

SET !VAR1 EVAL("prefs=Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);prefs.setIntPref("network.proxy.type",1);")
SET !VAR2 EVAL("prefs=Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);prefs.setBoolPref("network.proxy.share_proxy_settings",false);")

SET !VAR3 EVAL("prefs=Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);prefs.setCharPref("network.proxy.http",'{{!COL1}}');")
SET !VAR4 EVAL("prefs=Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);prefs.setIntPref("network.proxy.http_port",{{!COL2}});")

URL GOTO=https://2ip.ru


Текстовый документ "прокси.txt" прописаны в один столбик
кодировка ютф-8. Расположена в папке в папке DATASOURCE

скрытый текст

Выделить код

Код:

11.111.111.111:11111
22.222.222.222:22222
33.333.333.333:33333


И самое интересное, что прокси адрес изменяется в настройках мазилы,
а когда открываешь/обновляешь сайт 2ip то показывает прежний.
И когда нажимаешь ок в настройках мазилы, то 2ip уже показывает на изменёный прокси адрес.

Как буд-то нехватает команды подтверждения, после изминения прокси адреса.

Алим

я имел введу не изменяется на свой реальный ip адрес..

А теперь я не понял, зачем тебе нужно чтоб менялся на свой реальный ip?
Ты же хочешь использовать прокси, так вот скрипт! Или я что то не понял?

Hamzat пишет

А теперь я не понял, зачем тебе нужно чтоб менялся на свой реальный ip?

мне не нужно, чтобы менялся на реальный ip. Мне нужно, когда скрипт воспроизводит несколько макросов, оставался всегда один и тотже прокси адрес, а при втором цикле скрипта, чтобы менялся на следующий прокси адрес. Прокси должны браться из текстовго документа.

удалено, флуд не по теме

InfSub

19-10-2015 20:41:45

Алим пишет

мне не нужно, чтобы менялся на реальный ip. Мне нужно, когда скрипт воспроизводит несколько макросов, оставался всегда один и тотже прокси адрес, а при втором цикле скрипта, чтобы менялся на следующий прокси адрес. Прокси должны браться из текстовго документа.

Так в чем проблема, управляющий js файл и прокси меняешь в глобальных настройках, естественно заранее подключив к нему свой файл где есть прокси.

Hamzat пишет

Так в чем проблема, управляющий js файл и прокси меняешь в глобальных настройках, естественно заранее подключив к нему свой файл где есть прокси.

Можно менять прокси и через макрос, если изминения будут вноситься через глобальные настройки мазилы about:config.
Таким образом, прокси будут сохраняться.

Алим пишет

Можно менять прокси и через макрос, если изминения будут вноситься через глобальные настройки мазилы about:config.
Таким образом, прокси будут сохраняться.

Что типо так

скрытый текст

Выделить код

Код:

for (i=1;;i++) {
    iimPlayCode ('SET !DATASOURCE Путь к прокси файлу\nSET !DATASOURCE_LINE '+i+'\nSET !EXTRACT {{!COL1}}');
    proxy = iimGetlastExtract().split(':') // При условия что у прокси в файле вид 109.198.126.112:8080
    var ip   =  proxy[0]
    var port =  proxy[1]

    var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
    prefs.setIntPref("network.proxy.type", 1);
    prefs.setBoolPref("network.proxy.share_proxy_settings", true);
    prefs.setCharPref("network.proxy.http", ip);
    prefs.setIntPref("network.proxy.http_port", port);
}

Алим

скрытый текст

Выделить код

Код:

var Cc=Components.classes,Ci=Components.interfaces;  
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 var str=Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
     prf.setIntPref("network.proxy.type", 1);


 for(pr=1; pr<=99999; pr++){
  iimPlayCode("SET !DATASOURCE proxy.txt\nSET !DATASOURCE_LINE "+pr+"\nSET !EXTRACT {{!COL1}}"); 
  neu_ip=iimGetLastExtract();
  if(neu_ip =='')break; else{ 
  var txt=neu_ip.split(':'); str.data=txt[0]; port=txt[1]; 
  prf.setComplexValue("network.proxy.http",Ci.nsISupportsString,str); 
  prf.setIntPref("network.proxy.http_port",port); 
  
  iimDisplay('Установлен проксь номер: '+pr+'\nIP: '+neu_ip);
iimPlayCode('WAIT SECONDS=3');
  
 /*
 Тут твой код или запуск какого нить иим-а
 */
}}

PRESIDENT
Вставил я там свой код. Всё тоже самое показывает 2ip.
У меня там много for, условий.

Нельзя как нибудь попроще сделать в iim это?

У тебя прокси не соксы случайно ?
И/или сайт 2ип.ру в исключения не прописал, что бы мазилка на него без проксей заходила ?
Тебе так или иначе нужен управляющий JS, так сразу пиши весь скрипт на js и забудь это извращение на iim-ах.:(

PRESIDENT пишет

У тебя прокси не соксы случайно ?
И/или сайт 2ип.ру в исключения не прописал, что бы мазилка на него без проксей заходила ?

Нет. http
У меня мозги расплавяться, если я начну переводить все эти iim в js, мне легче создать что-то новое )

Алим пишет

Всё тоже самое показывает 2ip.

Что именно показывает, твой родной айпи ???

Что-то у меня скрипт перестал правильно давать сигнал на распознавания капчи с картинками. Написала в тех.поддержку рукапчи, мне ответили: они капчу разгадывают правильно, это в скрипте дело, он не правильно подает сигнал. Посмотрите, пожалуйста!

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT 30\nURL GOTO=imacros2.rucaptcha.com/new/');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key);
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'ME_2.jpeg');
     iimPlayCode('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');
iimPlayCode('SET !TIMEOUT_STEP 0\nWAIT SECONDS=3');
     iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); c=iimGetExtract().match(/\d+/g).join(''); 
iimPlayCode('SET !TIMEOUT_STEP 0\nWAIT SECONDS=2');
     iimPlayCode('TAB CLOSE');
  if(Number(c)>0){
  for(k=0; k<c.length; k++){  
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I1_*"\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');}
  iimPlayCode('SET !TIMEOUT 30\nSET !ERRORIGNORE YES\nFRAME NAME="I1_*"\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV" BUTTON=0');

Марина89 пишет

Что-то у меня скрипт перестал правильно давать сигнал на распознавания капчи с картинками.

Что значит "перестал правильно давать сигнал"? Опишите подробно в чем ошибка.
P.S Может ваше проблема в том что на сервис дает правильный ответ, а при выборе этого ответа на каптче, гугл пишет что это не правильно? Если да то это ошибка не скрипта и не сервиса, а самого гугла или плохого ip.

ошибка в том, что этот код берет только цифры из ответа сервиса, а причин этому может быть 2:
кто-то криво переделывал под себя вариант скрипта, получающий результат по id каптчи
или это сделано специально, для определенных целей, например, под новую каптчу с картинками

Hamzat пишет

Что значит "перестал правильно давать сигнал"? Опишите подробно в чем ошибка.P.S Может ваше проблема в том что на сервис дает правильный ответ, а при выборе этого ответа на каптче, гугл пишет что это не правильно? Если да то это ошибка не скрипта и не сервиса, а самого гугла или плохого ip.

Когда с этого сайта http://imacros2.rucaptcha.com/new/ возвращается на сайт, где надо выбрать картинки, они выбираются не правильно, пишут "неверно разгадана капча" и появляется другая. Но скрипт-то идет дальше. И так постоянно. Тех.поддержка пишет, что все верно разгадывают. Ну я и сама проверила, разгадывают верно.  А сигнал поступает не верно.

Марина89
задайте вопрос разработчику данного скрипта

Каким оьразом можно сохранить звуковой файл воспроизведенный с сайта и сохранить его в папку Datasource

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Вот этот человек писал этот скрипт

PRESIDENT пишет

скрытый текст

Выделить код

Код:

var f=0;

 var Path='D:\\Captcha\\';
 var key='твой ключ';
 var bit='твой биткоин адрес';

iimPlayCode('SET !TIMEOUT_STEP 0\nTAB CLOSEALLOTHERS');
iimPlayCode('SET !TIMEOUT 30\nURL GOTO=bitcoinfactory.org');
iimPlayCode('WAIT SECONDS=3');
f=iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA');
if(f>0){
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:');
    iimPlayCode('WAIT SECONDS=5');
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
    if(iimGetExtract().indexOf('checked="true')<0){
        iimPlayCode('SET !TIMEOUT 30\nONDOWNLOAD FOLDER='+Path+' FILE=ME_1.jpeg WAIT=YES\nTAG POS=1 TYPE=div ATTR=style:"display: *" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAB OPEN\nTAB T=2');
        iimPlayCode('SET !TIMEOUT 30\nURL GOTO=anti-captcha.com/imacros.html');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key);
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+'ME_1.jpeg');
        iimPlayCode('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
        c=iimGetExtract().match(/\d+/g).join('');
        iimPlayCode('WAIT SECONDS=1');
        iimPlayCode('TAB CLOSE');
        if(Number(c)>0){
            for(k=0; k<c.length; k++){
                iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I1_*"\nTAG POS='+c[k]+' TYPE=DIV ATTR=CLASS:rc-imageselect-checkbox');
            }
            iimPlayCode('SET !TIMEOUT 30\nFRAME NAME="I1_*"\nTAG POS=2 TYPE=DIV ATTR=TXT:Подтвердить');
            iimPlayCode('WAIT SECONDS=1');
        }
    }
    iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME NAME="I0*"\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
    if(iimGetExtract().indexOf('checked="true')>0){
        iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:address CONTENT='+bit);
        iimPlayCode('SET !TIMEOUT 30\nTAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Start*Claim');
    }
}

Код размещается в тегах code внутри spoiler'a

InfSub

Марина89

скрытый текст
После этой строки

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); c=iimGetExtract().match(/\d+/g).join('');

посмотри алертом что у тебя с сайта принимается и сравни правильный ли ответ

iimDisplay(c);
alert(c);

Может с сайта тебе инфа в другом формате выдаётся, вместе с ид капчи
OK | ID-капчи | ответ123

Марина89 пишет

"неверно разгадана капча"

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

скрытый текст
Причины... Это в большинство случаев это "плохой ip" (это может быть прокси, vpn,vps) проще говоря гугл решил что вы робот. Методы борьбы... Попробуйте войти на том устройстве *(браузере) войти в свой акк гугл, рекомендую свой основной (если конечно он у вас есть), таким образом гугл понимает что вы человек, также попробуйте вручную разгадывать, должно со временем отпустить.

20-10-2015 20:01:41

InfSub пишет

например, под новую каптчу с картинками

Именно так и есть...

всем привет!!! помогите пожалуйста имеется список моих групп вк, в которых я состою, как мне извлечь только первое название группы, остальное не нужно пробовал сам, извлекается и открытая группа и кол-во участников..:rolleyes:

PRESIDENT

Может с сайта тебе инфа в другом формате выдаётся, вместе с ид капчи

Смысл в конструкция

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); c=iimGetExtract().match(/\d+/g).join('');


Вообще не вижу, если  ответ вида "123", то смысл извлекать только цифры? А если ответа вида "OK|ID666|123", то такая конструкция выдаст только ошибку ибо извлечет, и ид и ответ. Чем руководствовался автор скрипта?:/ Фиг знает...

Hamzat пишет

если ответа вида "OK|ID666|123", то такая конструкция выдаст только ошибку ибо извлечет, и ид и ответ

я бы не сказал, что конструкция выдаст ошибку, так как результатом будет 666123 - другой вопрос, что это неверное значение

проще говоря мне нужно извлечь ссылку, а он извлекает не только ссылку но и последующие 2 ненужных текста

удалено
какое отношение имеет данная цитата, к вашему вопросу?!
правила, пункт 2.9

где пример извлеченного текста и указания, что именно должно остаться?

InfSub

Hamzat пишет

Чем руководствовался автор скрипта?:/ Фиг знает...

Автор скрипта, руководствовался изначальным кодом, что был представлен.
И в скрипте не ставилась галочка показывать ID капчи.smile_15.gif

InfSub пишет

так как результатом будет 666123 - другой вопрос, что это неверное значение

Под ошибка принципе это и имел ввиду, ответ будет не правильным, а за каптчу деньги не вернут.

21-10-2015 09:37:44
PRESIDENT

Автор скрипта, руководствовался изначальным кодом

А это ты писал... Тогда претензий нет:D, Вообще скорее всего как я писал выше проблема вообше не скрипте, а в самой каптче счас у гугла это нормально (просит ответ от 2 до 10раз) и принципе все равно правильно водишь ты или нет.

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

Hamzat пишет

Ну так для себя, смысл в каптче извлекать только цифры

Ответ присылается в разных форматах: просто циферки, через запятую, через пробел или штрих или минус. Поэтому извлекаются только цифры.

Можно конечно добавить проверку на ОК и брать уже только ответ.

Как остановить скрип, когда на странице больше нету действия которое макрос должен выпонить, в моем случаи нажимает на кнопку для Фолловинга


скрытый текст

Выделить код

Код:

iimPlay('CODE:'
+ 'SET !ERRORIGNORE YES\n'
+ 'URL GOTO=http://twiends.com/\n'
+ 'TAG POS=1 TYPE=A ATTR=CLASS:"txtButton txtBlueBird"\n'
+ 'TAG POS=1 TYPE=INPUT ATTR=CLASS:"submit button selected"\n'
);

for(;;) {

    iimPlay('CODE:'
        + 'TAG POS=1 TYPE=I ATTR=CLASS:"netfollow twitter"\n'
        + 'WAIT SECONDS=2\n'
        + 'REFRESH\n'
    );
}

InfSub пишет

Hamzat пишет: если ответа вида "OK|ID666|123", то такая конструкция выдаст только ошибку ибо извлечет, и ид и ответ я бы не сказал, что конструкция выдаст ошибку, так как результатом будет 666123 - другой вопрос, что это неверное значение

Ответ выдает вида - 14356, никаких лишних символов нет. Но раньше же все нормально было, правильно подавал сигнал. Я уж сейчас и в гугл-аккаунт зашла через мозилу. Все-равно такая же проблема .

Марина89 пишет

Ответ выдает вида - 14356, никаких лишних символов нет. Но раньше же все нормально было, правильно подавал сигнал. Я уж сейчас и в гугл-аккаунт зашла через мозилу. Все-равно такая же проблема .

Попробуйте вручную, если такая же ошибка  не о каком  "не правильном сигнале" речь идти не может, проблема в самой каптче, и все так счас (ну почти у вес) у кого белые ip все норм. Решение как таковой нет, помочь может, от очистки куки и кеша до их замены (на старые). Попробуйте вручную водить такие капчи ( с авторизованным аккаунтом) тоже может помочь.

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

Вручную ввожу, нормально все, верно

21-10-2015 13:18:09
Пользуюсь еще такой командой: ATTR=title:role:"presentation"
Как сделать, чтобы после успешного выполнения команды с этой строкой, скрипт возвращался вначалао, и начинал работу заново?

удалено - флуд
правила, пункт 2.6
см. комментарии к предыдущему вашему посту


InfSub

Марина89 пишет

Ответ выдает вида - 14356

скрытый текст
слишком много цифер, должно быть 2-3.
посмотри  что тебе с рукапчи отвечают, в каком формате.
Увеличь здесь паузу, что бы успела увидеть какой ответ рукапча прислала.
[spoiler]

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); c=iimGetExtract().match(/\d+/g).join(''); 
iimPlayCode('WAIT SECONDS=20');


и потом сравни что алерт выдал

alert(c);


Марина89 пишет

Но раньше же все нормально было, правильно подавал сигнал.

Так и нефиг лезть было в скрипт. Тебе дали полностью готовое решение, готовый скрипт, зачем туда лезешь, что то меняешь.[/spoiler]


kani339 пишет

Как остановить скрип

break;

Бывает, когда нажимаешь "Я не робот" сразу ставится зеленая галочка, без капчи, но не всегда. Как сделать, чтобы сразу, если появляется эта  галочка без капчи срабатывали эти команды?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#opener" BUTTON=0"'
EVENT TYPE=CLICK SELECTOR="#claimsubmit" BUTTON=0


А если капча появляется, чтобы эти команды пропускались. Я сделала вот так:
скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nSET !ERRORIGNORE YES\nATTR=title:role:"presentation"\nEVENT TYPE=CLICK SELECTOR="#opener" BUTTON=0"');
iimPlayCode('SET !TIMEOUT 30\nSET !ERRORIGNORE YES\nATTR=title:role:"presentation"\nEVENT TYPE=CLICK SELECTOR="#claimsubmit" BUTTON=0');


Когда сразу галочка появляется - срабатывает хорошо. Но когда капча появляется, скрипт тормозит, топчится на одном месте. Подскажите, что делать?

Вот эта строка (как раз что ты когда то и пыталась удалить) и означает, если галочка стоит(значение чекбокса труе), то жать кнопку/и

if(iimGetExtract().indexOf('checked="true')>0){ 
дальше идут команды нажатия кнопок

Марина89 пишет

Я сделала вот так

В JS коде эта фигня не нужна:|

SET !ERRORIGNORE YES

PRESIDENT пишет
kani339 пишет

Как остановить скрип

break;

Да это знаю, но вот как  правильно сделать проверку на сущетсования элемента , например есть кнопка

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=CLASS:"button_btn"


она пропадает со страницы и нужно остановить скрипт

kani339
Через if делай проверку условия, если условие false, то break.
Смотри пару страниц назад, для Gergi уже разжёвывали это.

скрытый текст

Выделить код

Код:

if(iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=CLASS:*button_btn*')<0) break;

Подскажите как сжать изображение ?

скрытый текст

Выделить код

Код:

FRAME NAME=I1_*
TAG POS=1 TYPE=DIV ATTR=ID:rc-imageselect CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


Сохраняется в .jpg
Размер файла в 50% получается 101 - 108 КБ, а надо что-бы до 100 укладывался при отправки на сервер

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:getcapcha.php ATTR=NAME:file CONTENT={{tempfolder}}{{tempfile}}


Спасибо

код постится в тегах code и убирается в спойлер

InfSub

Как сделать так, чтобы imacros нажимал только на непосещенные ссылки?

Скрипт использует пока такой код:

скрытый текст

Выделить код

Код:

TAG POS={{LN}} TYPE=A ATTR=CLASS:username&&TXT:*


читаем правила форума iMacros, конкретно - пункты 1.2.4 и 1.2.5, если хотите, чтобы на Ваш вопрос ответили

InfSub

Koks пишет

Подскажите как сжать изображение ?

А чем вы его хотите сжать? Если прямо в imacros скрипте то ни как (пока не мере мне не удалось), но если отдельным файлом то в принципе есть много вариантов, как наиболее удобный это html и css, а также php. Как я понял речь идет о рекаптчи v2, чтоб на анти каптчу отправить? Если так то я когда то делал такую фигню вот вот вам готовый файл на html и css там есть файл для наложении (картинка с вверху для работников), а также js файл как использовать

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Hamzat
Спасибо, но у меня все есть, и файл наложения у меня меньше весит. Может отправлять тело файла закодированное в base64. Если да то подскажите, что прописать.

Можно конечно без шаблона отправлять, тогда будет влезать по размеру, но увеличится цена с 50 до 70

Можно через

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


но пока макрос отработает, каптча от googla пропадет.

Koks

файл наложения у меня меньше весит

И? Он тоже меньше будет весит, если цвета поубавить... А смысл?

Может отправлять тело файла закодированное в base64.

Фиг его знает, не занимался этим, нужны так сказать не было...

Можно конечно без шаблона отправлять, тогда будет влезать по размеру, но увеличится цена с 50 до 70

Тот файл который я вам дал уменьшает изображение до 300px; вес сколько не знаю... оплата стандартная 50р за 1000 каптч. Сам пользовался. Больше не чем помочь не могу.

Плдскажите, как можно или можно вообще запустить два ай-макроса в  разных копиях браузера одновременно ?
И как записать хаотические движения мышью по сайту ?

darkstorm пишет

запустить два ай-макроса в  разных копиях браузера одновременно ?

В чём проблема то, запускай. прокрутку можно реализовать и имитацию движений мыши, через EVENT хотя не уверен.
Я консерватист, юзаю старую портабельку 3.6 и старый имакрос, там новых приблуд нету, да и слава Богу:)

Hamzat , Koks

оффтоп
А  что просто PHP-шкой нельзя картинку обработать ?
Да и некоторые капчи, около 20-30% процентов так разгадываются без антидот и рукапч:cool:.

PRESIDENT

оффтоп
А  что просто PHP-шкой нельзя картинку обработать ?
Да и некоторые капчи, около 20-30% процентов так разгадываются без антидот и рукапч:cool:.

скрытый текст
Конечно можно, но я не очень хорошо знаю php (да и лок сервером возня), а готовых решений не видел. Вот и сделал на том что знаю, свою функцию выполняет без проблем. На счет 20-30% не знаю не пробовал, это типо кликать на угад или что?

Здравствуйте!
Такая ситуация: скрипт аймакрос (iim) открывает ссылку, а там пустая страница.
Вот если обновить вручную эту пустую страницу (порой несколько раз надо обновлять), то она загружается нормально. То есть это проблема сервера, но как с этим  бороться? Ведь на данной странице (которая иногда пустая открывается) скрипт должен дальше работать и кликать по другой ссылке, которая должна быть на этой пустой странице.
Часто бывает так, что  и нормально страницы загружаются, с первого раза. Но бывает и пусто.
Видимо тут надо некое условие создать и добавить в скрипт. Но как научить скрипт отличать, где пустая страница (и её надо перезагрузить), а где нормально загрузилась с картинками и прочим содержимым?

Ищи какое нибудь слово или фразу на странице.
Если нету то  REFRESH

PRESIDENT пишет

Ищи какое нибудь слово или фразу на странице.
Если нету то  REFRESH

Слово и фраза есть. А как это реализовать? Какую команду надо добавить и как это условие правильно записать?
Подскажи-ка. Или дай ссыль, где посмотреть конкретные примеры.

Кстати, команда REFRESH не годится. Я у себя в Pale Moon через конфиг-настройки по отключал всё что потребляет оперативку, все кэши и т.д., поэтому у меня обновление страницы не работает (при нажатии F5, например) и возврата к предыдущей страницы нету. Надо по адресу (ссылке) переходить всегда.
То есть получается надо создать такое условие, если страница открылась пустая и на ней нет ключевого слова (или фразы), то исполняется команда не REFRESH, а повторяется предыдущая команда, то есть повторный переход по адресу данной страницы.
Примерно так, наверно?

Как определить FRAME  элемента на сайте , который должен появится не сразу? У меня код :

скрытый текст

Выделить код

Код:

iimPlayCode('FRAME F=2\nEVENT TYPE=CLICK SELECTOR="#recaptcha-anchor" BUTTON=0');


Мне нужно, когда нажмется "Я не робот" и сразу появляется галочка без капчи, (иногда так бывает) чтобы сразу сработала эта команда
скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT 30\nEVENT TYPE=CLICK SELECTOR="#captchaModal>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>INPUT:nth-of-type(3)" BUTTON=0');


А у меня почему-то не срабатывает ни эта, ни та команда. Как мне сделать, чтобы если галочка сразу появляется, нажималась бы эта кнопка: value:"Continue". А если бы сначала капча появлялась, эта кнопка сначала бы пропускалась:

Радамир , Марина89
Подобные вопросы почти на каждой странице обсуждаются.(на предыдущей в том числе)
иф-ом делайте проверку условия и если условие true/false то нужные действия.

Радамир

offtop по FF

Радамир пишет

у себя в Pale Moon через конфиг-настройки по отключал всё что потребляет оперативку

Попробуй портабельную мазилку 3.6.

PRESIDENT

offtop по FF

PRESIDENT пишет

Попробуй портабельную мазилку 3.6.

Нет. Мазилку я уже пробовал, и такую, и портабельную. Мазилка в любом случае жрёт больше оперативы чем Pale Moon (впрочем... если версия мазилки 3.6, то... кто его знает).
Кстати, у меня портабельная Pale Moon и она по скорости (с отключённой байдой, через конфиг), просто летает. :)

Радамир

offtop по FF
Гляди , работают 5 портабелек с запущенными скриптами и стартанул обычную 41 мазилку, через неё сейчас на форуме.
скрытый текст
70e9ba4c995c.jpg

Разницу чуешь :)
А ваш палмун и другие поделки выдающие себя за фф, туфта полная. Перебрал тоже уже кучу всяких версий.

PRESIDENT

offtop по FF
ну ты меня убедил. Здорово они работают, ФФ 3.6.24 портабки!
Решено. Перехожу на портабельную мазилку :beer:

23-10-2015 22:49:23
Ещё вопросик: оператор if («если») работает только в ява-скрипте (js) или же и в обычном тоже (iim)?
Просто у меня все скрипты (за исключением одного исполняющего) написаны как обычные iim. Не придётся ли мне под яву всё переделывать, если добавлять оператора if («если»)?

Радамир
Если собираешься и дальше со скриптами иметь дело, тебе в любом случае рано или поздно переходить нa JS придется. Так что не жди, а начинай сейчас переделывать скрипты. iim-ы это просто команды имакроса, там логику ты ни как не построишь.


Марина89 пишет

Мне нужно, когда нажмется "Я не робот" и сразу появляется галочка без капчи, (иногда так бывает) чтобы сразу сработала эта команда

На предыдущей странице , я тебе уже отвечал.

Почему у меня макрос перестал переходить на третью, четвертую и т.д. вкладки? Переходит только на вторую, а остальные только открывает "Новые вкладки", но  на них не переходит. И со второй на первую не переходит, только с командой TAB CLOSE.  А команды
TAB T=2
TAB T=3
не действуют. В чем причина может быть?

Установил портативную мазилку 3.6 и айМакрос к ней установил самый последний из возможных для версии ФФ 3.6 (7.3.0.0)
Непонятно, почему айМакрос выдаёт ошибку на команду EVENT? Пишет вот что:

скрытый текст
23LUg.png

И даже не признаёт команду EVENT и определяет черными буквами, среди всех остальных синих.

Радамир пишет

Непонятно, почему айМакрос выдаёт ошибку на команду EVENT

FAQ => История версий iMacros for Firefox
поиск по слову "EVENT" ...

new EVENT command...

Версия 8.2.4.1-signed
Выпущено February 20, 2013 270.4 kB
Работает с Firefox 4.0 и выше

This version features the new EVENT command. You can select this recording mode in the "Record Options" dialog on the "Rec" tab. EVENT is a new *experimental* method to automate web controls that the classic TAG command can not automate: Drag & Drop, Sliders, Tricky date controls and similar elements.

We also fixed some Firefox 18/19 compatibility issues.


а так же, не работает или работает криво - часть функций JS, т.к. FF 3.6 поддерживает только устаревшую спецификацию ECMAScript

InfSub пишет

а так же, не работает или работает криво - часть функций JS, т.к. FF 3.6 поддерживает только устаревшую спецификацию ECMAScript

Благодарю!
Теперь понятно, что FF 3.6 не работает с айМакросом, в котором поддерживалась бы команда EVENT.

P.S. ну PRESIDENT... ну подсказал мне... мазилку портабельную 3.6... :dumb:

Радамир
все зависит от предъявляемых к скрипту требований, если без event'a ни как - пробуйте более поздние версии, которые поддерживают iMacros v8.2.4.1 и выше
там, где event - не требуется, вполне возможно использовать и FF 3.6

а может EVENT можно заменить какой-нибудь другой аналогичной командой? чтоб и на мазилке 3.6 данный скрипт исполнялся? :/

Радамир пишет

может EVENT можно заменить

иногда можно с помощью TAG POS=... но все зависит от сайта

25-10-2015 02:53:20

PRESIDENT пишет

Зачем ты в iim-ах пытаешься запустить js

вроде бы, вопрос об EVENT'e был, а не об EVAL?!

Радамир
Я вообще старую 6.3 версию имакроса юзаю.
Да всё прекрасно работает, не нужны ни евенты ни евалы.

Радамир

Запись > Recording Options > Select the best record mode automatically

После чего, запиши запись на баннере

Марина89 пишет

Почему у меня макрос перестал переходить на третью, четвертую и т.д. вкладки? Переходит только на вторую, а остальные только открывает "Новые вкладки", но  на них не переходит. И со второй на первую не переходит, только с командой TAB CLOSE.  А команды
TAB T=2
TAB T=3
не действуют. В чем причина может быть?

ребят как   сдеать так  чтоб макрос  менял акаунт при  появлении капчи вк ( как сделать чоб последывательно брал акаунты с txt знаю) не знаю как  сделать  чтоб макрос чекнул капчу
вот сам  макрос на  всякий  случай

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !TIMEOUT 5
'SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE C:\99.txt
SET !DATASOURCE_LINE {{!LOOP}}

URL GOTO={{!COL1}}
SET !DATASOURCE C:\textapiar.txt
SET !DATASOURCE_LINE EVAL("Math.floor(Math.random() * 3) + 1") 
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!COL1}}
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=5

2.  Не рекомендуется:
2.1  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском

InfSub

LarisaPopkina
поиск по слову captcha

Марина89
Глянь тут

offtop
Возможно, мой вопрос не по теме. Я хотела бы узнать, можно ли создать горячую клавишу для  клика по определенной кнопке? Просто мышку туда-сюда двигать тяжело (я инвалид). Горячие клавиши  можно как-то создавать?

Ребята подскажите такую вещь, короче есть фрейм

Выделить код

Код:

FRAME F=1

Где 1 номер фрейма, на странице он динамический. Как  бы, без лишних замочек определить номер?

А есть ли горячая клавиша для "Воспроизвести", "Продолжить", "Стоп" макрос?

Hamzat пишет

Как  бы, без лишних замочек определить номер?

в цикле перебрать номера фреймов с поиском в них нужного элемента

Марина89 пишет

А есть ли горячая клавиша

нет

Не срабатывает этот код

скрытый текст

Выделить код

Код:

if(iimGetExtract().indexOf('checked="true')<0){


для того, чтобы  нажималась кнопка, если сразу появляется галочка без появлении капчи. Появляется эта зеленая галка при нажатии "Я не робот" без капчи, а скрипт все-равно все действие проходит, лишние деньги тратит. Пыталась сделать так:
удалено, код должен быть понятен окружающим, если вы вводите свои функции и переменные, типа iP и t0 - их значение должно быть указано
Ничего не происходит, проходит мимо и всё. Ну  должен ведь быть код, чтоб при появлении какого-то элемента нажималась нужная кнопка
Правила форума iMacros: Не рекомендуется задавать вопрос без указания: 1.2.4  Адреса сайта и страницы, на которой возникла проблема.

InfSub

Марина89

Не срабатывает этот код

скрытый текст

Выделить код

Код:

if(iimGetExtract().indexOf('checked="true')<0){

Код как раз и правильно срабатывает, ведь условие написано если галочка не стоит, т.е команда  отвечающая за галочку меньше 0 (т.е его нет) то выполняется команда разгадки каптчи.
Чтобы была возможность управлять скриптом в случае галочка сразу ставится добавьте к нему else.

скрытый текст

Выделить код

Код:

if(iimGetExtract().indexOf('checked="true')<0){
// Тут код в случае если галочки нет
}
else {
// Тут код если галочка сразу ставится
}
// Тут отчет времени или что то еще


Сорри если что не так понял )

Марина89, Hamzat:

Hamzat пишет

checked="true

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

InfSub

может быть в теле страницы

Там фрейм, checked меняется на true только в том случае если только галочка ставится. А если галочки нет то соответственно равно false. Какой в данном случаем проблемный сайт не знаю, но можно проверить на любом где есть каптча recaptcha 2.

Hamzat

Ставлю, как вы написали:
удалено
игнорирование требования модератора по исправлению кода.
удаление записей модератора из поста, правила форума - пункт 3.11

Выдает ошибку:

"SyntaxError: expected expression, got keyword 'else', line 22 (Error code: -991)"

В чем проблема?


InfSub

Марина89
удалено
А что собственно if должен проверить если extract у вас нет?

27-10-2015 18:15:17
удалено, правила, пункт 2.15


InfSub

Марина89

скрытый текст
Марина я тебе уже три раза на эту глупость ответил.
Не меняй ничего в скрипте, всё равно не понимаешь, что ты лепишь и будет всё прекрасно работать.
Код написан был мной, специально для тебя и если возникали проблемы/вопросы, именно по моему коду, обращайся в личку.

InfSub пишет

checked="true
может быть в теле страницы

Нет, там екстрактится только елемент именно этого чекбокса и труе/фальше только один раз используется.
Проблема в том что она расковыряла скрипт сама не понимая для чего.
Предполагаю из переделанного кода, что она недавно выкладывала(лень искать на какой странице), проблема в сет тайм оут при нажатии кнопки.
Я для сокращения ввел перемеренные

var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n'

Естественно при нажатии кнопки и/или загрузке страницы нужно ждать некоторое время и нужно t3 применять, а для поиска какого нить елемента достаточно нуля и можно t0 применять.
А у неё тайм оут при нажатии ноль был, вот сайт и не успевал среагировать/загрузиться.

Здравствуйте!

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
SET !VAR8 EVAL("var randomNumber=Math.floor(Math.random()*1 + 1); randomNumber;")
SET !VAR6 EVAL("var random=Math.floor(Math.random()*11 + 15); random;")
SET !VAR7 EVAL("var random=Math.floor(Math.random()*2 + 15); random;")
SET !DATASOURCE C:\Vk.txt
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
WAIT SECONDS={{!VAR8}}
URL GOTO={{!COL1}}
WAIT SECONDS={{!VAR7}}
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0

'=======тут живет мой текст и картинка между кавычек=======тут живет мой текст========

EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="удалено!"
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS={{!VAR8}}
WAIT SECONDS=8


Как здесь указать картинку? Спасибо!

Для размещения кода, используйте тег "Code" внутри тега "Spoiler"!
Рекламировать в сообщениях любые товары и услуги - запрещено, реклама удалена
Caps...

InfSub

Ребят не совсем по теме, но тут как то затрагивался такой вопрос. Такая проблема, FF не хочет работать с socks проксями, не знаете что не так? Также тут обсуждался вопрос измены прокси через about config, и там была команда измены логин, пароля для прокси. Но почему то это не работает, Вот сама команда

скрытый текст

Выделить код

Код:

var proxyAuth = 'loginpass' prefs.setCharPref("extensions.proxyauth.authtoken",proxyAuth);

Радамир пишет

А как реализовать такое, чтобы выполнялись условия:
аймакрос исполняет команду URL GOTO=Ссылка1 и переходит по данной ссылке. Если страница открывается нормально (с текстом и ссылками и картинками), то исполняется следующая команда URL GOTO=Ссылка2
А если открывается страница, но страница пустая (глюк сервера) то в таком случае надо, чтобы аймакрос снова исполнил ту же команду URL GOTO=Ссылка1. Если снова пустая страница, то снова исполняет эту же команду URL GOTO=Ссылка1 и так до 15 раз.


Вопрос - перенесен в отдельную тему

флуд
есть  коротенкий макрос на 12 строк он работает в циклах так  вот  подскажите как  сделать так  чтобы  после  определённого цикла он менял аккаунт(вк) записанный в txt

Читаем правила форума и темы iMacros


Правила форума:
2.  Не рекомендуется:
2.1  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском
2.3  Писать безграмотно, создавать сообщения, содержащие «аффтарскую» речь, специально сделанные ошибки; злостно нарушать правила русского языка.


Правила темы iMacros:
1.  Не рекомендуется:
1.2  Задавать вопрос без указания:
1.2.5  Проблемного кода, в случае возникновения ошибок или неправильной работы кода. Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler].

InfSub

Не могу сделать так что-бы слово Логин: не извлекала:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Логин:<SP>* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}

bop101

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по фразе: "удалить из строки"

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('Логин: ','')")

PRESIDENT пишет

Так засунь скрипт в цикл

А как засунуть? И главное не цикл в скрипт, а скрипт в цикл?
Вот скрипт:

скрытый текст

Выделить код

Код:

var url_1='https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=204';
  var i=5;
  
  
     iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url_1); 
   f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=DT ATTR=TXT:Радамир7'); 
   if (f<0){
     iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url_1);
  }


Как его засунуть в оператор while (цикл), чтоб повторялся 5 раз, в случае не нахождения искомого слова Радамир7?

Радамир пишет

как засунуть

элементарно Ватсон

Выделить код

Код:

var url='https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=204';

for(i=1; i<=15; i++){
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url); 
 f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=DT ATTR=TXT:Радамир'); 
 if(f<0)  // <--- если тег ATTR=TXT:Радамир не найден, то перезагрузить страницу
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url);
else break; // <--- если найден тег ATTR=TXT:Радамир, то выйти из цикла
}

PRESIDENT пишет
Радамир пишет

как засунуть

элементарно Ватсон

Выделить код

Код:

var url='https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=204';

for(i=1; i<=15; i++){
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url); 
 f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=DT ATTR=TXT:Радамир'); 
 if(f<0)  // <--- если тег ATTR=TXT:Радамир не найден, то перезагрузить страницу
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url);
else break; // <--- если найден тег ATTR=TXT:Радамир, то выйти из цикла
}

Благодарю!
Работает скрипт. Работает на искомое слово Радамир.
Но если я вставляю другое слово, например свежие, которое находится иногда на той же странице, то скрипт почему-то не останавливается и гонит цикл до конца.
Хотя искомое слово свежие иногда появляется. Иногда, потому что там оно находится в разделе "полезная информация", и там разные предложения появляются (и повторяются), как только обновляешь страницу. По идее получается, что должно было обновить страницу раза 3-4 (до появления текста со словом свежие и остановиться, а оно не останавливается и гонит скрипт до конца цикла, то есть 15 раз.
Хм... странно... :/

Вот скриншот страницы с искомым словом свежие

скрытый текст
23YhX.png

А вот скрипт с искомым словом свежие, вместо Радамир
скрытый текст

Выделить код

Код:

var url='https://forum.mozilla-russia.org/viewtopic.php?id=18806&p=204';

for(i=1; i<=15; i++){
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url); 
 f=iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=DT ATTR=TXT:свежие'); 
 if(f<0)  // <--- если тег ATTR=TXT:Радамир не найден, то перезагрузить страницу
   iimPlayCode('SET !TIMEOUT 30\nURL GOTO='+url);
else break; // <--- если найден тег ATTR=TXT:Радамир, то выйти из цикла
}

Радамир пишет
PRESIDENT пишет

Так засунь скрипт в цикл

А как засунуть?

Не рекомендуется: Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском. Например, по слову цикл

Радамир пишет

А вот скрипт с искомым словом свежие, вместо Радамир

Вы переменными iMacros пользоваться умеете? похоже, что нет... Нажмите на кнопку записать и сравните разницу!

31-10-2015 18:52:36
iMacros TAGs & translate

InfSub пишет

Нажмите на кнопку записать и сравните разницу!

Благодарю за подсказку!
Получилось!

Всем доброго времени суток. Подскажите пожалуйста как ввести слово по координатам

скрытый текст

Выделить код

Код:

CLICK X=145 Y=350 CONTENT=Слово


Координаты определяются и ставится курсор в строку ввода, но нужное слово не вводится. Подскажите, в чём проблема?
Зарание благодарен.
Жду ваших ответов...

Радамир пишет

InfSub а как сделать, чтоб не было 6-ти секундной задержки при поиске искомого слова в данном скрипте:


Вопрос - перенесен в отдельную тему

Можно ли как то вызвать сочетание клавиш CTRL + V через iim или через js

:) Здравствуйте.
Как можно сделать что бы Аймакрос удалял последний символ из EXTRACT

К примеру скопировал число 991, мне нужно что бы на выходе было число 990. То-есть последнее цифра всегда должна быть 0. Наверное можно как до добиться числа 99 на выходе, а как подставить ноль к концу я знаю. Или другой вариант подойдёт, число к примеру будет 991.74, как скопировать всё до точки -1 символ либо замена на 0, как скопировать всё до точки я знаю, но может быть есть вариант всё до точки -1 символ или замена на 0 сразу.

И второй вопрос, можно ли сделать что бы Аймакрос делил число скажем 990/100/2, в и тоге получил на выходе 4,5?

04-11-2015 12:02:08

Gergi пишет

Можно ли как то вызвать сочетание клавиш CTRL + V через iim или через js

скрытый текст
EVENT TYPE=KEYPRESS KEY=113

Где код 113, клавиша "F2".
Коды других клавиш, в том числе "CTRL + V" смотрите в таблице "Коды символов и клавиш keypress".
В интернете полно сайтов с таблицами. Ищите через поисковики.

Даниил955447112

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по фразе: "удалить из строки"

InfSub
:| Прошу прощения, но я всё облазил перед тем как задать вопрос. Если я что-то пропустил, то подскажите ссылку с ответом.
Нашёл только это на JS, но как это применить для Аймакроса я не знаю.

скрытый текст

Выделить код

Код:

var str = "abcdef";
alert(str.substring(0, str.length - 1));

Даниил955447112
а это, простите - что по вашему?:

InfSub пишет

например, поиск по фразе: "удалить из строки"

Даниил955447112 пишет

как это применить для Аймакроса я не знаю.

smile_29.gif
Имакрос это и есть JS плеер.

засунь этот скрипт в *.js файл не *.iim

Даниил955447112 пишет

как это применить для Аймакроса я не знаю.

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("var str='{{!EXTRACT}}';str.substring(0, str.length - 1)+'0';")


но, в вашем случае, более правильным будет:
скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/(\d+)\d/).pop()+'0'")


или использовать js, вместо iim, как выше написал PRESIDENT

Здравствуйте! Столкнулся с такой проблемой - при выполнении скрипта имакрос  экстрактится текстовое значение в виде : Имя_Фамилия, но я не могу придумать как создать папку с наименованием Имя_Фамилия и текстовым файлом внутри этой папки с таким же названием. А так же требуется сохранять в эту папку несколько скриншотов и хтмл страниц. С js особо не знаком, подскажите пожалуйста как такое реализовать.Заранее благодарен.

fora
iMacros - не умеет создавать папки
читайте FAQ, есть альтернативные решения

fora

Если тебе к примеру нужно сохранить капчу или какой нить файл в C:\CapNum
а папки CapNum на диске C: ещё нету, имакрос её создаст.smile_31.gif
Поэтому, как вариант, можна создать пустой текстовый файлик в папку(которой ещё нету)
а текстовик апосля удалить. Или сразу создавать/сохранять текстовик с нужными данными, папка создастся автоматом.

Gergi пишет

подскажите пожалуйста как вместо TAG POS=1 поставить !LOOP ?


Вопрос - перенесен в отдельную тему

Мэтры, помогите, перестала работать строчка в скрипте по копированию капчи
Рекапча2.0 в папку с капчей, перед тем как изменить размер и отправить на распознавание вот эта строчка
удалено, код должен быть понятен окружающим, если вы вводите свои функции и переменные, типа iP и weit - их значение должно быть указано

iMacros версии 8.9.4
Мож какой глюк на компе у меня?
Просто перестала вызываться капча такой строкой
удалено
переделал на такую
удалено
все заработало, т.е. изменил FRAME NAME="I0*" на   FRAME F=2 и все снова заработало. Вчера еще работало в первом варианте на том же компе.
Файрфокс версии 35.0.1
Видимо и картинка перестала копироваться по тем же причинам.
Подскажите, что делать, начинающему.

код должен быть в тегах code внутри спойлера

InfSub

Egorushka1974 пишет

Мэтры, помогите, перестала работать строчка в скрипте по копированию капчи

Там имена фреймов и т.п изменилась, просто запишите эти самые действии и увидите разницу.

Это я сообразил, не могу понять как перезаписать команду на копирование картинки, если солвмедиа и прочее я знаю, как здесь сделать не понимаю, первый раз с таким столкнулся, и гляньте в личку, я там за скрипт спрашивал.

Блин мальчишки и девчонки, ну не тупите. smile_26.gif
Такие то мелочи, было бы уже стыдно спрашивать.

iimPlayCode('ONDOWNLOAD FOLDER=* FILE=cap.jpeg WAIT=YES\nTAG POS=1 TYPE=div ATTR=style:"z-index:*" CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');

Доброго времени суток. Прошу помощи в разработке управляющего js для imacros

Имеется большая база url в формате *.csv (1 линк на строку, колонка всего одна)

Требуется сделать следующее:
1. Переходим по первой ссылке из файла *.csv
2. Если в коде страницы присутствует текстовое значение (к примеру "yes"), то сохраняем этот линк из активной строки браузера в отдельный текстовый документ. Если условие не выполняется, то берем следующий линк из списка и т.д.

Кому не сложно помогите разобраться. Пытаюсь параллельно сам(

Mr.Zork

например, так:

Выделить код

Код:

var f_url='url.csv';
var f_yes='yes.csv';

var i=1,u,n='\n';
while(iimPlayCode('SET !DATASOURCE '+f_url+n+'SET !DATASOURCE_LINE '+(i++)+n+'SET !EXTRACT {{!COL1}}'+n)==1){
    u=iimGetLastExtract();
    if(iimPlayCode('URL GOTO='+u+n+'SET !TIMEOUT_STEP 1'+n+'строка поиска'+n)==1){
        iimPlayCode('SET !EXTRACT '+u+n+'SAVEAS TYPE=EXTRACT FOLDER=* FILE='+f_yes+n);
    };
};
iimDisplay('End file: '+f_url);

заменить фразу "строка поиска" на искомую строку iMacros запроса вида:

TAG POS=1 TYPE=STRONG ATTR=TXT:Mr.Zork


на будущее, для этого есть поиск, все эти вопросы неоднократно обсуждались, собрать воедино - дело 5 минут!

InfSub
Огромное спасибо. Буду пробовать

Нужна помощь.:sick:
Запущено 3 Tor browser одновременно.
Нужно отследить ошибку на странице (TAB T=1) если есть то выполнить .bat и закрыть Tor браузер.

1) Или, по слову "error" на странице
2) Или, если открыто всего 1 вкладка (вместо 2-ух) то считать это ошибкой и выполнить .bat

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
URL GOTO=http://bit.ly/1MYjq2P
TAG POS=1 TYPE=A ATTR=TXT:Lancer<SP>la<SP>visionneuse
TAG POS=1 TYPE=A ATTR=TXT:Empezar<SP>la<SP>visionadora
TAG POS=1 TYPE=A ATTR=TXT:Start<SP>Viewer
TAG POS=1 TYPE=A ATTR=TXT:Начать<SP>просмотр
TAB T=2


Если для этого нужен JavaScript то куда его сохранить и как вызывать.
Выручайте. Спасибо.

код размещается в тегах code, внутри спойлера

InfSub

papacoca пишет

Если для этого нужен JavaScript то куда его сохранить и как вызывать.

Нужен JS.
см. https://forum.mozilla-russia.org/viewtopic.php?id=66458
Видео по настройке и использованию:
Управляющий JavaScript:

и для вызова .bat
там же:
запуск внешней программы с аргументами из js-скрипта:

07-11-2015 21:32:35
Кто юзает FF 3.6 + iMacros 6.3
функция SET !EXTRACT {{!FOLDER_DATASOURCE}} не работает ?
у меня в EXTRACT _undefaind_

получается в старой версии, еще нет такой функции?

spy686 пишет

https://forum.mozilla-russia.org/viewtopic.php?id=66458
Видео по настройке и использованию:Управляющий JavaScript:и для вызова .batтам же:запуск внешней программы с аргументами из js-скрипта

Буду изучать. спс.

Нужно "игнор ошибок в средине скрипта записать, так можно делать?

скрытый текст

Выделить код

Код:

TAB T=1
URL GOTO=http://bit.ly/1MYjq2P

SET !ERRORIGNORE YES

TAG POS=1 TYPE=A ATTR=TXT:Lancer<SP>la<SP>visionneuse
TAG POS=1 TYPE=A ATTR=TXT:Empezar<SP>la<SP>visionadora

papacoca
Вам уже дали, выше, ссылку на FAQ, не уже ли, так сложно прочесть (раздел Модификаторы)?

spy686 пишет

Кто юзает FF 3.6 + iMacros 6.3
функция SET !EXTRACT {{!FOLDER_DATASOURCE}} не работает
у меня в EXTRACT _undefaind_

вообще, судя по записям на офф. вики - команда появилась в октябре 2009 года, т.е. где-то в версии 6.2.х, но на FF 3.6.6 c iM 7.3.0.0 - тоже не работает
так что, предположу, что введена была, скорее всего где-то в 8 версии iMacros'a

spy686
Вы можете получить значение {{!FOLDER_DATASOURCE}} используя JS
пример, как это сделать, Вам уже приводился ранее (в связи с тем, что EVAL был введен позже, то работать будет только в js-скрипте)
нужно только заменить defsavepath на defdatapath

Подскажите, пожалуйста, какой функцией iMacros формата .js в браузере Tor можно изменить "Новая цепочка Tor для этого сайта"?

ottec
iMacros не управляет интерфейсом браузера

ottec

оффтоп
Погугли на тему: смена минба ИП в ТОРе.
Там есть много вариантов, с подробными инструкциями и скриптами.
А уже как запустить какой нить пхп или бат скрипт из имакроса в факе расписано.

PRESIDENT пишет

Блин мальчишки и девчонки, ну не тупите.
Такие то мелочи, было бы уже стыдно спрашивать.

Мэтр, это вам просто, а начинающего такие штуки ставят в тупик, иногда проще спросить.
Спасибо за ответ, четко и очень грамотно.

Можно ли в этом коде добавить переменную {{!VAR1}}

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS Char="t" MODIFIERS="ctrl"

Всем привет! Желаю сделать авторегистратор почтовых ящиков. Загвоздка в том, что не получается пока написать генератор случайных названий перед символом @ (собака).
Как генератор случайных чисел написать - знаю:

скрытый текст

Выделить код

Код:

'генерирует случайное число от 1 до 9999 и записывает в перменную VAR1
SET !VAR1 EVAL("Math.floor(Math.random()*999999 + 999);")


а вот как написать генератор случайных имен, состоящий их буквенных символов (без цифр), например таких sawertd, faserked, reofasrty, vaxaxdffg, и т.д. не знаю. Подскажите, кто знает.

Есть вот такой код (нашёл в нете):   

скрытый текст

Выделить код

Код:

Function RandUpperLettersENG(LenLetter As Integer)  
     Randomize  
     RandUpperLettersENG = Space(LenLetter)  
     For iCount% = 1 To LenLetter  
     Mid(RandUpperLettersENG, iCount%, 1) = Chr((Int(65 + (Rnd() * 26))))  
     Next  
    End Function


Но как его адаптировать под "SET !VAR1 EVAL..."? А то он написан на каком-то непонятном языке программирования.

Или вот ещё такой код нашёл:

скрытый текст

Выделить код

Код:

string dict = "abc...xyz"; //строка содержит все доступные символы
char c = dict[random % dict.length]; //в переменную с записывается случайный из них


как его приспособить, чтоб слово из 6-8 букв англ алфавита генерировались случайным образом?

dvitkovs пишет

генератор случайных названий

Вариант 1

Выделить код

Код:

a=Math.random().toString(36);    
alert(a);


Вариант 2

Выделить код

Код:

var result = '', a=Math.floor(Math.random()*15)+5;
    var words = '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM';
    var max_position = words.length - 1;
    for(i=0; i< a; ++i ){
    position = Math.floor (Math.random()*max_position);
    result = result + words.substring(position, position + 1);}
 
    alert(result)

PRESIDENT Спасибо! Первый вариант мне больше нравится за то, что он коротенький.
Но эти варианты видимо написаны для ява-скрипта? Я в ява ничего не понимаю. Мне бы просто комаанду макроса.
Вообще-то у меня есть сам скрипт готовый. Правда он уже давно писался и на данный момент нуждается в доработке, с учетом изменений на почтовом сайте (яндексе). Вот сам скрипт с пояснениями к каждой команде:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX

TAB T=1
'удаляем куки
CLEAR
'устанавливаем тайм-аут загрузки 360 сек
SET !TIMEOUT 360

SET !EXTRACT_TEST_POPUP NO

'Включаем игнорирование ошибок - это необходимо в случаях неправильного ввода капчи
SET !ERRORIGNORE YES

'Идем непосредственно на страничку регистрации аккаунта яндекса
URL GOTO=https://passport.yandex.ru/registration/mail?from=mail&require_hint=1&origin=hostroot_new_nol&retpath=https%3A%2F%2Fpassport.yandex.ru%2Fpassport%3Fmode%3Dsubscribe%26from%3Dmail%26retpath%3Dhttps%253A%252F%252Fmail.yandex.ru

'Заполнит поля имя. Можете заменить Андрея на любое имя, если хотите
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:firstname CONTENT=Андрей

'Заполнит поле фамилии. Также можно менять на любое
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:lastname CONTENT=Шариков

'Ждем 1 секунду. На всякий случай =)
WAIT SECONDS=1

'генерирует случайное число от 1 до 9999 и записывает в перменную VAR1
SET !VAR1 EVAL("Math.floor(Math.random()*9999+ 999);")

'генерирует случайное число от 1 до 9999 и записывает в перменную VAR2
SET !VAR2 EVAL("Math.floor(Math.random()*9999 + 999);")

WAIT SECONDS=1

'Заполнит поле логина vasiliy.pupkin + два случайных числа в диапазоне от 999 до 9999. Василия пупкина можете заменить на любой логин.
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:login CONTENT=vasiliy.pupkin{{!VAR1}}{{!VAR2}}
SET !ENCRYPTION NO

'Выбирает первый свободны логин из предложенных Яндексом
TAG POS=1 TYPE=SPAN FORM=NAME:NoFormName ATTR=CLASS:login__suggestedLogin

'Заполняет поле пароль - password12345. Подставляете свой пароль
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=ID:password CONTENT=password12345

'Повторно вводит пароль для подтверждения. Также замените на ваш пароль
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=ID:password_confirm CONTENT=password12345

'Выбирает в drop down меню секретный вопрос "девичья фамилия матери"
TAG POS=1 TYPE=SELECT FORM=NAME:NoFormName ATTR=ID:hint_question_id CONTENT=%1

'Ответ на секретный вопрос secretanswer-777. Замените на любой
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:hint_answer CONTENT=secretanswer-777

'Ждет 10 секунд пока вы вводите капчу. Можно поставить любое кол-во секунд
WAIT SECONDS=10

'Жмет кнопку Зарегистрироваться
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Зарегистрироваться

' extract and save email to file
WAIT SECONDS=2

'При удачном входе в почтовый ящик сохраняет логин в файл success.cvs, который вы раннее создали
TAG POS=1 TYPE=SPAN ATTR=CLASS:header-user-name<SP>js-header-user-name EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=success.csv

'Закрываем все лишнии вкладки браузера
TAB CLOSEALLOTHERS


Как там переписать строчки, где генерируестся случайное число на то, чтоб генерировалось случайное название из 6-7 латинских букв без цифр?

dvitkovs

по варианту 1: (немного доработан: убран "0." в начале каждой строки)

Выделить код

Код:

SET !VAR1 EVAL("Math.random().toString(36).substring(2)")


по варианту 2

08-11-2015 21:40:45

dvitkovs пишет

Я в ява ничего не понимаю

не путайте теплое с мягким, JS (JavaScript) и Java - два разных языка

dvitkovs пишет

А то он написан на каком-то непонятном языке программирования.

VB (Visual Basic)

InfSub Спасибо!
Первый вариант хорош, но там почему-то при генерации случайного слова, кроме буквенных символов, ещё и цифры присутствуют. :(

А можно ли как-то маленько подредактировать данный код, чтоб при генерации случайного слова, там не было бы цифр?
Вот тут:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.random().toString(36).substring(2)")

dvitkovs пишет

но там почему-то при генерации случайного слова, кроме буквенных символов, ещё и цифры присутствуют.

потому что число.toString(36) это шифрование числа по основанию 36, где 36 это 26 букв латинского алфавита и 10 цифр

чтобы не было чисел - можно сделать так, например:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("Math.random().toString(36).replace(/\d+|\./g,'')")


но лучше использовать вариант 2, он более предсказуем и даст конкретное кол-во символов из заданного диапазона

InfSub пишет

чтобы не было чисел - можно сделать так, например:

Спасибо! Это мне в принципе подходит.
На второй вариант не буду заморачиваться, потому что там всё как-то сложно. Я его попробовал и что-то оно у меня не получилось. Поэтому остановлюсь на первом варианте.

InfSub

offtop
Ты давай тоже народ  переучивай  писать на JS.
Хватит уже этого извращения с EVAL-ами. smile_15.gif
Это же маразм полный, в iim-ax JS-код запускать.
iim-ы вообще бред, это просто команды имакроса.
надо учить скрипты писать, а не тупой набор команд.

dvitkovs пишет

потому что там всё как-то сложно

ни чего сложного, просто набор символов вынесен в отдельную переменную и длина строки вынесена отдельно, но можно записать и все в одну строку
в результате в переменной {{LETTERS}} будет ваше "слово"


PRESIDENT

offtop
здесь не курсы по JS, не зная основ - iMacros'a написание кода на js, только еще больше запутает и вызовет град совершенно ненужных вопросов, по аналогии с теми , что тут возникали последние пару недель

08-11-2015 23:08:08
dvitkovs
вариант 2 - одной строкой - можно записать так: небольшой update кода

Выделить код

Код:

SET !VAR1 EVAL("var i=8,w='qwertyuiopasdfghjklzxcvbnm',r='',m=w.length;while(i--){r+=w.charAt(Math.floor(Math.random()*(m)));};")

где:
8 (i=8) - это длина слова
w - (w='qwertyuiopasdfghjklzxcvbnm') - символы, из которых будет генерироваться слово

PRESIDENT пишет

InfSub

offtop
Ты давай тоже народ  переучивай  писать на JS.
Хватит уже этого извращения с EVAL-ами. smile_15.gif
Это же маразм полный, в iim-ax JS-код запускать.
iim-ы вообще бред, это просто команды имакроса.
надо учить скрипты писать, а не тупой набор команд.

offtop на счет iim и JS
если не ошибаюсь, то если код iim запихивать в JS то iim файл самостоятельно генерить и выполняется, в последствии возрастает нагрузка на систему (запускал несколько десятков FF+iMacros на серваке, так там нагрузка зашкаливала, частая запись перезапись временного файлика, решилось установкой RAM диска)
после чего переписал все на iim и JS как упавляющий логикой iim-ов

spy686 пишет

переписал все на iim и JS как упавляющий логикой iim-ов

как вариант, все зависит от логики скрипта, не везде удобно/нужно создавать iim-файлы под 1-3 строки кода, если же код достаточно большой и неизменен, то да - так работать должно быстрее и с меньшей нагрузкой на диск

InfSub пишет

одной строкой - можно записать так:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var i=8,r='',w='qwertyuiopasdfghjklzxcvbnm',m=w.length,p;while(i--){p=Math.floor(Math.random()*(m));r=r+w.charAt(p);};")

Благодарю! Так даже лучше. ;)

spy686

скрытый текст
Пробовал когда то:
специально запускал две мазилки, с одинаковыми кодами,
один на iim-e другой такой же обёрнут в js. Разницы абсолютно ни какой smile_32.gif
А если не видно разницы, зачем ... smile_20.gif

PRESIDENT пишет

spy686

скрытый текст
Пробовал когда то:
специально запускал две мазилки, с одинаковыми кодами,
один на iim-e другой такой же обёрнут в js. Разницы абсолютно ни какой smile_32.gif
А если не видно разницы, зачем ... smile_20.gif

скрытый текст
когда один и на своей машине, то не заметно, но если юзать несколько десятков, то разница будет, но еще и загвозка была - на серваке ресурсы ограниченные
и если в js обвернуто не несколько строк, а если обвернутьт несколько десятков iim, которые содержат по несколько строк и параллельно несколько десятков FF используют один и тот же JS это не пройдет не замечено.
Написал, что было в опыте.

Товарищи, благодарю тех, кто оказал помощь в написании генератора случайных слов. Работает хорошо.
Но тут загвоздка в том, что почтовый сервер рамблера устроен так, что не принимает ввод пароля, при регистрации, в автомате. То есть: если я вручную ввожу пароль, то всё нормально. И внизу окошка появляется полосочка, показывающая надёжность пароля.

скрытый текст
24dy3.png

А вот ежели просто скопировать пароль и вставить, то ничего, никакой полоски не появляется.
скрытый текст
24dy2.png

И не появится до тех пор, пока не ввести вручную ещё один любой символ, или просто нажать на клавиатуре смещение стрелками влево-вправо или вверх-вниз, то есть инициировать ручное нажатие. Естественно, что просто так и макрос не может нормально вводить пароли при регистрации, чтоб почтовый сервер воспринимал как надо такой ввод.
Подскажите, как в таком случае быть? Есть ли какая-либо команда в макросе, например инициирующая ручное нажатие кнопок (влево-вправо, вверх-вниз) в окошке для ввода пароля? Или может есть способ имитации именно ручного ввода пароля?:/

dvitkovs
используй EVENT для ввода пароля (Запись => Record options => Experimental event recording mode)

InfSub пишет

dvitkovs
используй EVENT для ввода пароля (Запись => Record options => Experimental event recording mode)

Получилось! Ура!!!
Благодарю! :)

Всем приветы:)
- Вопрос №1 об использовании xpath в iim скриптах
- Среда: "VERSION BUILD=8601111 RECORDER=FX", Firefox 25.0.1
- Подозреваю, что дело в пробелах
- экстрацию произвожу отсюда:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


- Код:
скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
TAG XPATH="//div[normalize-space(@class)="cell<SP>in-area-cell<SP>middle-cell"][1]/descendant::a[@title="Phone"]/span[2]" EXTRACT=TXT
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=YellowpagescomauFirst.csv

Выделить код

Код:

//div[normalize-space(@class)="cell in-area-cell middle-cell"] [1]/descendant::a[@title="Phone"]/span[2]

На imacros wiki предлагают проверять xpath выражения расширением 'xpath checker', он показывает, что такая конструкция корректна и выдаёт нужный мне результат:

скрытый текст
O4KJLfl.jpg

А вот imacros говорит, что "SyntaxError: wrong format of TAG command, line: 4 (Error code: -910)".
Пробовал менять пробелы на <SP>:

Выделить код

Код:

TAG XPATH="//div[normalize-space(@class)="cell<SP>in-area-cell<SP>middle-cell"][1]/descendant::a[@title="Phone"]/span[2]" EXTRACT=TXT

Тогда результат такой:

скрытый текст
JgKjVWC.jpg

-Вопрос №2 всё о том же:
Как перебирать номер ноды в цикле?
Т.е. я не могу использовать вместо "[1]" конструкцию "[{{!LOOP}}]" внутри xpath-выражения, но как-то же можно это же обойти же?

Спасибо.

А чем тебе обычный TAG POS формат не нравится

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:contact-text EXTRACT=TXT

или

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:call-to-action<SP>first EXTRACT=TXT
TAG POS=2 TYPE=DIV ATTR=CLASS:call-to-action<SP>first EXTRACT=TXT
TAG POS=3 TYPE=DIV ATTR=CLASS:call-to-action<SP>first EXTRACT=TXT

Подскажите пожалуйста такой вопрос:
В браузере в адресной строке появляется ссылка в таком формате file:///C:/test/Text.txt  и тогда появляется  список строк которых мне надо копировать по одной при каждом цикле. в данный момент у меня копируются сразу 10 строк,а мне надо по одной.

Здравствуйте, не могли бы мне помочь с написанием джава скрипта?
Алгоритм выполнения:
1)Поиск на странице определенного слова в случае если нет заданного слова ждем пока не появится
2)После нахождения слова вписываем в строку (на пример 1)
3)Нажимаем на кнопку отправить
4)Ждем 30 секунд
5.1)Если на странице пишет ошибка в определенной строке в коде то нажать кнопку на странице сброс и идем к пункту 1 пропуская 2 пункт
5.2)Если на странице пишет принято (в той же строке что и 5.1) идем к пункту 1

Gergi
smile_29.gif

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\test\\Text.txt\nSET !DATASOURCE_LINE '+i+'\nSET !EXTRACT {{!COL1}}');
alert(iimGetExtract());


roma12975

Где iim код ?

код элементов страницы могу только дать(кнопок, строк)

скрытый текст

Выделить код

Код:

1)TAG POS=1 TYPE=SPAN ATTR=ID:banner
2)TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:Amount CONTENT=1
3)TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
5)TAG POS=1 TYPE=BUTTON ATTR=TXT:Сброс              (кнопка)
   TAG POS=2 TYPE=DIV ATTR=TXT:                              (строка в которой появятся принято или ошибка)


код размещается в тегах code внутри спойлера

InfSub

roma12975

Может возникнуть проблема, если слово ошибка и принято всегда есть на странице, а только скрывается стилями.

скрытый текст

Выделить код

Код:

for( ;; ){
   iimPlayCode('WAIT SECONDS=1');
if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=SPAN ATTR=ID:banner')>0){ // <--- Если найдено слово, то выполнится код в кавычках
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:Amount CONTENT=1')
   iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить')
   iimPlayCode('WAIT SECONDS=30'); 
}         <--- окончание кода
if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 код тега ошибка')>0) // <--- если есть тег ошибка, то жать кнопку сброс (строка ниже)
   iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Сброс');
  }

PRESIDENT

Спасибо но по моему не то. Я строки через контрл - ц копирую по одной строке (вернее хочу по одной)
я так понимаю через !EXTRACT  контент не копируется в буфер обмена? Может есть вариант экстрактить в буфер обмена? Было бы идеально.

Gergi

скрытый текст

Выделить код

Код:

var text='Текст для теста';

const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(text);

alert('Попробуй вставить куда нибудь текст из буфера обмена, нажми Ctrl+V');

PRESIDENT
Спасибо. Но есть 1 нюанс в строке где может выйти слово ошибка есть числа и они бывают разные

10-11-2015 22:51:20
можно ли как-то через екстракт сделать?

10-11-2015 22:54:07
а в этой строчке после ATTR=ID:banner писать TXT:слово
if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=SPAN ATTR=ID:banner ')>0)

там не одно слово вылазит мне конкретное нужно

zaskock пишет

я не могу использовать вместо "[1]" конструкцию "[{{!LOOP}}]" внутри xpath-выражения

Оказывается могу, вопрос решён

zaskock пишет

- Подозреваю, что дело в пробелах

Ошибся, - дело было в кавычках вида "xxx", которые достаточно было заменить на 'xxx'

PRESIDENT пишет

А чем тебе обычный TAG POS формат не нравится

долго объяснять, но в итоге получилось вот такое, может кому пригодится:

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX

'if requested tag is absent do not wait for it to appear
SET !TIMEOUT_STEP 0
'LOOP defines the # of the parent node to avoid extraction from the next node in case of target parameter is not specified in current listing
'extracts name from the <A> tag of the specified class:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::a[@class='listing-name']" EXTRACT=TXT
'extracts phone# from the <span> tag of the <A> tag with title attribute equal to Phone:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::a[@title='Phone']/span[2]" EXTRACT=TXT
'extracts fax# from the <span> tag of the <A> tag with title attribute equal to Fax:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::a[@title='Fax']/span[2]" EXTRACT=TXT
'extracts address in htm format (with all the attributes) from <P> tag of the specified class which:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::p[@class='listing-address mappable-address mappable-address-with-poi']|//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::p[@class='listing-address mappable-address']" EXTRACT=HTM
'extracts address in txt format from <P> tag of the specified class which:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::p[@class='listing-address mappable-address mappable-address-with-poi']|//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::p[@class='listing-address mappable-address']" EXTRACT=TXT
'extracts title from <A> tag of the specified class which is email:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::a[@data-email]" EXTRACT=TITLE
'extracts url from <A> tag of the specified class:
TAG XPATH="//div[normalize-space(@class)='cell in-area-cell middle-cell'][{{!LOOP}}]/descendant::a[normalize-space(@class)='contact contact-main contact-url']" EXTRACT=HREF
'extracts current url:
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=YellowpagescomauFirst.csv

PRESIDENT пишет

Gergi

скрытый текст

Выделить код

Код:

var text='Текст для теста';

const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(text);

alert('Попробуй вставить куда нибудь текст из буфера обмена, нажми Ctrl+V');

так то работает,а как же сделать что бы из TXT файла по одной строке по очереди брал?

Gergi пишет

Может есть вариант экстрактить в буфер обмена? Было бы идеально.

SET !CLIPBOARD {{!EXTRACT}}

Gergi пишет

как же сделать что бы из TXT файла по одной строке по очереди брал?

SET !DATASOURCE_LINE {{!LOOP}}

сделал так,но копирует в буфер всё содержимое тхт файла не по одной строке

скрытый текст

Выделить код

Код:

var u;
for (u=1;u<=11;u++){


iimPlay('CODE:URL GOTO=file:///C:\\Text.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
n=iimGetLastExtract().split('\n'); 



const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(n);
alert('n');

}

Gergi

скрытый текст

Выделить код

Код:

for (u=1; u<11; u++){
iimPlayCode('SET !DATASOURCE C:\\test\\Text.txt\nSET !DATASOURCE_LINE '+u+'\nSET !EXTRACT {{!COL1}}'); n=iimGetExtract();
const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(n);
alert('Попробуй вставить куда нибудь текст из буфера обмена, нажми Ctrl+V');
}

PRESIDENT пишет

Gergi

скрытый текст

Выделить код

Код:

for (u=1; u<11; u++){
iimPlayCode('SET !DATASOURCE C:\\test\\Text.txt\nSET !DATASOURCE_LINE '+u+'\nSET !EXTRACT {{!COL1}}'); n=iimGetExtract();
const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(n);
alert('Попробуй вставить куда нибудь текст из буфера обмена, нажми Ctrl+V');
}

Спасибочки:rock: Вроде вопрос исчерпан:beer:

Костыль для звукового сигнала iMacros'ом.

Бывает так, что нужно, чтобы iMacros оповещал звуковым сигналом о некотором процессе, например, об окончании работы таймера перед ручным вводом капчи.
Насколько я понял, нет возможности  для воспроизведения звуковых  файлов с собственного компьютера напрямую https://forum.mozilla-russia.org/viewto … 82#p676082
Предлагаю такой костыль:
Макрос открывает в новой вкладке страницы сайта с библиотекой звуков  и возможностью их проигрывать со страницы, жмёт кнопку воспроизвести звук (в моём примере - первый файл), закрывает вкладку и выполняет паузу, ожидая наших дальнейших действий. Естественно, код для нажатия кнопки воспроизведения звука на другом сайте будет другим.


скрытый текст

Выделить код

Код:

TAB OPEN
TAB T=2
URL GOTO=http://www.vidiko.ru/index.php?option=com_jukebox&view=category&id=44&Itemid=61
TAG POS=1 TYPE=A ATTR=CLASS:playtrack&&TITLE:Play/Resume&&TXT:
WAIT SECONDS=4
TAB CLOSE
pause

Всё же возник ещё вопрос
Как сделать проверку Text.txt файла что бы при нахождении пустоты #EANF# вернуть скрипт в исходное положение.

udalov пишет

Насколько я понял, нет возможности  для воспроизведения звуковых  файлов с собственного компьютера напрямую

в старых версиях можно настроить чтобы при открытии сразу начиналась мелодия и т.п и тогда ссылка вида file://C:/1.mp3 будет работать, а процес можно bat убить. В новых версиях, а именно тестил на 35 открывая ссылку вида file://C:/1.mp3 сразу начинается мелодия как в хроме.

здравствуйте помогите пжлс, как можно извлекать ссылки из txt файла по очереди и переходить по ним, начиная с 1?

volchsek пишет

здравствуйте помогите пжлс, как можно извлекать ссылки из txt файла по очереди и переходить по ним, начиная с 1?

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\t\Text\Text.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

еще имеется 100 сайтов в этом файле и на каждом нужно разместить объявление естественно значит нужно применять разные клики что можете посоветовать думаю работа сложная,

11-11-2015 13:30:17
имеется 100 сайтов в txt документе как можно сделать в notepad++ что бы они разделялись  "сайт" 
(imacros будет по очереди переходить по ним)

volchsek пишет

еще имеется 100 сайтов в этом файле и на каждом нужно разместить объявление естественно значит нужно применять разные клики что можете посоветовать думаю работа сложная,

Если все сайты сделаны на одинаковом движке, то записать макросом все действия по размещению объявления на одном сайте, сохранить получившийся код, потом в него подставить фрагмент кода, который Вам дали выше.

udalov пишет
volchsek пишет

еще имеется 100 сайтов в этом файле и на каждом нужно разместить объявление естественно значит нужно применять разные клики что можете посоветовать думаю работа сложная,

Если все сайты сделаны на одинаковом движке, то записать макросом все действия по размещению объявления на одном сайте, сохранить получившийся код, потом в него подставить фрагмент кода, который Вам дали выше.

нет все сайты разные!!!

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

udalov пишет

Насколько я понял, нет возможности  для воспроизведения звуковых  файлов с собственного компьютера напрямую

Всё есть и прекрасно работаетsmile_31.gif
Имакросом можна запустить vbs скрипт , а им уже в фоновом режиме любой звуковой файл.

Код запуска внешней программы описан в факе.


Gergi пишет

Как сделать проверку Text.txt файла что бы при нахождении пустоты #EANF# вернуть скрипт в исходное положение.

скрытый текст

Выделить код

Код:

for(u=1; u<11; u++){
iimPlayCode('SET !DATASOURCE C:\\test\\Text.txt\nSET !DATASOURCE_LINE '+u+'\nSET !EXTRACT {{!COL1}}'); n=iimGetExtract();
if(!n) u=1; 
else{

...
и дальше по тексту
}

Ребята скажите как можно вытащить куки  imacros-ом? document.cookie не работает, хотелось бы без использование bat,vbs скриптов. Единственно что получилось это получить document.cookie через url goto=javascript:document.cookie, но не удалось значение передать в сам скрипт. Спасибо )

Товарищи, а подскажите, как можно сделать чтоб не всё слово из таблицы .csv бралось и вводилось в нужное поле, а только часть его.
Например: у меня в файле .csv есть набор почтовых адресов вида "qwertwer@gmail.com" и надо, чтоб из этого файла, из этой таблицы брались значения до знака @, то есть qwertwer. И вписывалось в нужное поле. А знак @ и все что за ним (gmail.com) - не бралось бы.
Как так сделать?
Знаю, что если использовать звёздочку *, то это замена любых символов. А тут мне надо наоборот, чтоб не использовались символы, начиная с @ и далее. Подскажите, кто в курсе дела?

dvitkovs пишет

Товарищи, а подскажите, как можно сделать чтоб не всё слово из таблицы .csv бралось и вводилось в нужное поле, а только часть его.
Например: у меня в файле .csv есть набор почтовых адресов вида "qwertwer@gmail.com" и надо, чтоб из этого файла, из этой таблицы брались значения до знака @, то есть qwertwer.

Лично я в таких случаях вместо стандартного разделителя столбцов с данными использую собачку  SET !DATASOURCE_DELIMITER @ , получается, что в тексте qwertwer@gmail.com два столбца данных и макрос берёт из первого столбца по !COL1

Как в iim сделать так, чтобы при каждом новом цикле брались из 1 переменной поочерёдно, разные цифры?

скрытый текст

Выделить код

Код:

SET цифры 1,5,1,25,8,4
TAG POS={{цифры}}

udalov пишет

Лично я в таких случаях вместо стандартного разделителя столбцов с данными использую собачку  SET !DATASOURCE_DELIMITER @ , получается, что в тексте qwertwer@gmail.com два столбца данных и макрос берёт из первого столбца по !COL1

Благодарю! Это то, что надо! :)

Подскажите пожалуйста как воплотить в реальность такой код?

скрытый текст

Выделить код

Код:

var z;
for(z=1; z<3; z++){
iimPlayCode('SET !DATASOURCE C:\\Text.txt\nSET !DATASOURCE_LINE '+z+'\nSET !EXTRACT {{!COL1}}');

iimPlayCode('SET !TIMEOUT 1\nTAG POS=1 TYPE=TEXTAREA FORM=ID:u* CONTENT={{!EXTRACT}}');
}

Gergi пишет

как воплотить в реальность

smile_29.gif

скрытый текст
Или собери всё в одну строку, если ты просто екстракт использовать хочешь.

...
iimPlayCode('SET !DATASOURCE C:\\Text.txt\nSET !DATASOURCE_LINE '+z+'\nSET !EXTRACT {{!COL1}}\nTAG POS=1 TYPE=TEXTAREA FORM=ID:u* CONTENT={{!EXTRACT}}');
...

Или объяви переменную, и сохрани туда, и потом уже эту перемененную используй.

iimPlayCode('SET !DATASOURCE C:\\Text.txt\nSET !DATASOURCE_LINE '+z+'\nSET !EXTRACT {{!COL1}}'); var text=iimGetExtract();

iimPlayCode('SET !TIMEOUT 1\nTAG POS=1 TYPE=TEXTAREA FORM=ID:u* CONTENT='+text);

Алим пишет

Как в iim сделать так, чтобы при каждом новом цикле брались из 1 переменной поочерёдно, разные цифры?

скрытый текст

Выделить код

Код:

SET цифры 1,5,1,25,8,4
TAG POS={{цифры}}

скрытый текст

Выделить код

Код:

SET цифры 1,5,1,25,8,4
SET цифры EVAL("'{{цифры}}'.split(',')[{{!LOOP}}-1]")
TAG POS={{цифры}}

PRESIDENT
Спасибо,реализовал всё как было задумано:rock:
Только одна мелочёвка осталась.
Как сделать рандомизацию секунд в скрипте JS ?

Gergi

скрытый текст

Выделить код

Код:

sek = Math.floor(Math.random() * 20);
iimPlayCode('WAIT SECONDS='+sek);

как лучше сделать подскажите пжл. имеется 200сайтов нужно оставлять на них свои объявления, сложность в том что все сайты разные! у каждого свои координаты!!!! как записывать скрипт? каждый сайт посещать точно придется, +регистрироваться во всех, (это в ручную, затем браузер запомнит) сложность в том что как мне привязать ко всем 200 командам js который должен воспроизводить сам iim по дате и времени

например imacros не воспроизводится пока не наступит определенное число, или лучше что бы воспроизводился каждые. 7 или сколько напишу дней заранее благодарю

Делаешь клик по сайту и сохраняешь в текстовом файле: сайт и дата + время клика.
и потом всегда обращаешься к этому текстовому файлу и смотришь прошло ли 7 дней или сколько тебе там нужно.

Получение даты и времени

Выделить код

Код:

function getDate(){var d=new Date(); return  'Число  '+d.getDate()+' : '+(d.getMonth()+1)+' : '+d.getFullYear()+'\nВремя  '+d.getHours()+' : '+d.getMinutes()+' : '+d.getSeconds();}

 alert(getDate())


InfSub      Спасибо smile_46.gif

Подскажите, как надо правильно записать код ява-скрипта, для сохранения данных в файл?
Вот у меня в ява-скрипте записано так:

скрытый текст

Выделить код

Код:

var iP=iimPlayCode, t0='SET !TIMEOUT_STEP 0\n';

   iP(t0+'TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT');
   iP(t0+'SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=CONTROL.csv');


И содержимое, предложение-текст не записывается. То есть в файл идёт пустота.

А вот ежели записать просто, без оболочки ява, то всё записывается. То есть вот так, работает:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=CONTROL.csv

dvitkovs

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=CONTROL.csv');

InfSub, благодарю! :)

Подскажите пожалуйста как сделать три переменных и что бы не мешали друг  другу.

скрытый текст

Выделить код

Код:

var k;
for (k=1;k<=1;k++){
iimPlay("1.iim",60);  
 }
var t;
var s=prompt("Сколько раз? ",100)
for(t=1; t<s; t++){    
iimPlayCode('SET !DATASOURCE C:\\A.txt\nSET !DATASOURCE_LINE '+t+'\nSET !EXTRACT {{!COL1}}\nURL GOTO={{!EXTRACT}}');
w=iimGetExtract();
if(!w) t=0;
else{
}
iimPlayCode('SET !DATASOURCE C:\\B.txt\nSET !DATASOURCE_LINE '+t+'\nSET !EXTRACT {{!COL1}}'); 
x=iimGetExtract();
if(!x) t=1;
else{
}
iimPlayCode('SET !DATASOURCE C:\\C.txt\nSET !DATASOURCE_LINE '+t+'\nSET !EXTRACT {{!COL1}}'); 
n=iimGetExtract();
if(!n) t=0;
else{
}
}

У меня там три текстовых файла,и в каждом разное количество строк. Какую буковку менять t ? Ну  ведь этого не достаточно

SET !DATASOURCE_LINE не может быть равно 0

14-11-2015 17:19:20

Gergi пишет

Какую буковку менять t

ну так создайте несколько переменных

Спасибо,только это не пробовал,сейчас затестирую.

14-11-2015 17:24:22
Я делаю так но тоже не то

скрытый текст

Выделить код

Код:

var k;
for (k=1;k<=1;k++){
iimPlay("1.iim",60);  
 }
var t,w,y;
var s=prompt("Сколько раз? ",100)
for(t=1; t<s; t++){
for(w=1; w<s; w++){
for(y=1; y<s; y++){    
iimPlayCode('SET !DATASOURCE C:\\A.txt\nSET !DATASOURCE_LINE '+t+'\nSET !EXTRACT {{!COL1}}\nURL GOTO={{!EXTRACT}}');
w=iimGetExtract();
if(!w) t=0;
else{
}
iimPlayCode('SET !DATASOURCE C:\\B.txt\nSET !DATASOURCE_LINE '+w+'\nSET !EXTRACT {{!COL1}}'); 
x=iimGetExtract();
if(!x) w=1;
else{
}
iimPlayCode('SET !DATASOURCE C:\\C.txt\nSET !DATASOURCE_LINE '+y+'\nSET !EXTRACT {{!COL1}}'); 
n=iimGetExtract();
if(!n) y=0;
else{
}

}
}
}

как-нибудь так, например:

Выделить код

Код:

var s=prompt("Сколько раз? ",100);
var i,t1=1,t2=1,t3=1;
for(i=0; i<s; t1++,t2++,t3++,i++){
...
if(!iimGetExtract()) t1=1;
...
if(!iimGetExtract()) t2=1;
...
if(!iimGetExtract()) t3=1;
...
};


14-11-2015 17:27:08
Gergi
я вам еще раз повторяю:

SET !DATASOURCE_LINE не может быть равно 0

код обновлен

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

InfSub
Не знаешь как можно куки вытащить определенного сайта , без использование bat, vbs скриптов?

Доброго времени суток.
Прошу помощи у гуру.
Подскажите, как сделать скрин в аймакросе по координатам страницы?
Или как указать нужные координаты в командах:

скрытый текст

Выделить код

Код:

SCREENSHOT TYPE=PAGE FOLDER=folder_name FILE=file_name
SCREENSHOT TYPE=BROWSER FOLDER=folder_name FILE=file_name

Gergi
Я не знаю, как вы вставили приведенный код, в ваш скрипт
я так же, не знаю, содержимого, ваших файлов
Что же касается цифр, ну что тут скажешь, попробуйте на них попадать :D
Hamzat
Не пробовал, так что не подскажу, во всяком случае, сейчас, не имея компа под рукой, подожди, может PRESIDENT или kolshiks что ответят

14-11-2015 20:43:44
Nov
Тут обсуждается iMacros для FireFox и я что-то не помню в нём такой команды как screenshot

14-11-2015 20:52:09
Впрочем, судя по вики - я ошибаюсь...

InfSub пишет

Nov
Тут обсуждается iMacros для FireFox и я что-то не помню в нём такой команды как screenshot

14-11-2015 20:52:09
Впрочем, судя по вики - я ошибаюсь...

Есть еще и другие команды для сохранения картинок:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=* ATTR=* CONTENT=EVENT:SAVEITEM
TAG POS=1 TYPE=* ATTR=* CONTENT=EVENT:SAVEPICTUREAS
TAG POS=1 TYPE=* ATTR=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


Но мне важно выдернуть нужный кусок по координатам, любой командой какая сможет

Nov
Имелось ввиду начальная команда screenshot ...
Уберите код теги, см правила

Nov

Но мне важно выдернуть нужный кусок по координатам

Что имеется виду под координатами? Определенный тег или x,y координаты?

Hamzat пишет

Что имеется виду под координатами? Определенный тег или x,y координаты?

x и y

Nov
А для чего если не секрет.
Не капчу ли скринить на кранах случайно.

Как вариант можно заскринить всю страницу, потом php-шкой обрезать картинку.

Как извлечь из весь текст страницы в переменную EXTRACT

roma12975

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=body ATTR=* EXTRACT=TXT

Я из спортивного интереса задался вопросом: можно в ходе выполнения циклов iim делать рандомный клик?
Не по случайной ссылке на странице за каждый повтор, не по рандомным координатам Х\У за каждый повтор цикла, а клик в ходе любого случайного из например 100 циклов  повторов iim?

Описание задачи, для меня лично, совсем не понятно. я думаю лучше описать конкретный алгорим )

В iim будет так SET !LOOP 5
Подскажите пожалуйста а как будет в JS

Gergi пишет

как будет в JS

скрытый текст

удалено, замечание

Правила форума
3.  Запрещено:
3.6  Вести разговор на «вольные темы»...

InfSub

spy686 пишет

Описание задачи, для меня лично, совсем не понятно. я думаю лучше описать конкретный алгорим )

Вот алгоритм: допустим, собирает у меня скрипт сатоши с одного сайта. Каждые 10 мин обновляет страницу, через антигейт расшифровывает капчу, вводит её, ждёт 10 мин. И так в течении суток.  Когда же я жму это всё сам руками, бывает так, что промахиваюсь мимо кнопок, попадаю по рекламе. Наверняка система различает, где кликает человек, совершая ошибочные клики, а где - не человек.

Вот и есть такая задумка, в работе скрипта со 100, например, циклами в любом случайном цикле делать "ошибочный" клик по рекламе.

udalov пишет

где кликает человек, совершая ошибочные клики, а где - не человек.

найдите идентификатор рекламы и кликайте, в чем сложность? или в сотый раз разместить тут генератор случайных чисел и написать, как работает условный оператор if() ?

Добрый вечер.
Подскажите, плиз.
Может ли аймакрос узнать размер файла File.*, расположеного на диске?
и если может, то как?

Здравствуйте! Ситуация такая: есть ява-скрипт (script.js)
Нужен другой яваскрипт (или просто макрос), чтобы запускал первый ява-скрипт в назначенное время, допустм в 3 часа ночи. 
Как так сделать?

dvitkovs пишет

Здравствуйте! Ситуация такая: есть ява-скрипт (script.js)
Нужен другой яваскрипт (или просто макрос), чтобы запускал первый ява-скрипт в назначенное время, допустм в 3 часа ночи. 
Как так сделать?

Через планировщик батником можно, либо через условие на js

скрытый текст

Выделить код

Код:

while (true) {
    iimPlayCode ('SET !EXTRACT {{!NOW:hh}}');
    time = iimGetLastExtract();
    if (time == 3) iimPlayCode ('URL GOTO=imacros://run/?m=script.js')
}

Nov
FAQ => Дополнительные возможности

Ребята так и никто не разобрался куда вводить в about:config логин и пароль от прокси? Команда от kolshix не работает.

dvitkovs

Hamzat пишет

Через планировщик батником можно

Добавлю, только про поиск по теме, т.к. уже обсуждалось

16-11-2015 19:49:15

Hamzat пишет

Команда от kolshix не работает.

уточните, о какой команде речь

Здравствуйте. Перерыл форум но ответа не нашел.
Нужно нажать на правый рекламный баннер ютуб. http://prntscr.com/93g2my
Через Click не получается. Через другие способы тоже т.к. он меняется.
Возможно кто-то сталкивался. Подскажите на примере.

Hamzat пишет

А что конкретно у блока меняется? ид? фрейм?

Там постоянно разная реклама вылазит, то флеш элемент, то картинка, то фрейм

dimka457 пишет

Там постоянно разная реклама вылазит, то флеш элемент, то картинка, то фрейм

Ну так сделайте все, что найдет то и кликнет, либо просто кликайте через координаты.

Hamzat
команда без проблем работает в:

:::: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0

16-11-2015 20:50:20
полный код для изменения настроек прокси

udalov пишет

Вот и есть такая задумка, в работе скрипта со 100, например, циклами в любом случайном цикле делать "ошибочный" клик по рекламе.

Что первое приходит это:

два iim:
1. с коррекным кликом - clickOK
2. с некорректным кликом и координатами в переменной - clickBAD

скрытый текст

Выделить код

Код:

TAG POS={{POS}} TYPE=div ATTR=*


JS который управляет iim:

скрытый текст

Выделить код

Код:

// бесконечный цикл
for (q=1;2<=50;q++){ 


// clickBAD с вероятность 10%
if (Math.random()*(100-1)+1 < 10) {
var Random=(Math.random()*(25-5)+5);
    iimSet("POS", Random);
    iimPlay("clickBAD.iim",30);
}

// clickOK
    iimPlay("clickOK.iim",30)
}

InfSub

команда без проблем работает в

А между логин паролем указывали какой либо делитель?

Hamzat, InfSub, благодарю! Выбрал вариант с планировщиком задач, как более надёжный в плане того: установил один раз и забыл, а задача будет исполняться каждый день без участия человека (запуска управляющего ява-скрипта). :)

Hamzat пишет

А между логин паролем указывали какой либо делитель?

логин и пароль - кодируются в строку

удалено, флуд
правила темы iMacros:
1.5 Для ответов на вопросы, из серии: как сложить a+b в js и аналогичных - есть Google


InfSub

Приветствую! Столкнулся с проблемой, бьюсь уже 2 дня. Весь код уже написан не работает только эта часть. Итак: есть в отдельном файле (pass.js) вот такой код

скрытый текст

Выделить код

Код:

function generatePassword() {
    var length = 8,
        charset = "abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        retVal = "";
    for (var i = 0, n = charset.length; i < length; ++i) {
        retVal += charset.charAt(Math.floor(Math.random() * n));
    }
    return retVal;
}


Основной код лежит в iim файле. Мне нужно выполнить данную функцию и поместить значение в буфер обмена, затем макросом кликнуть по координатам и вставить данные из буфера обмена.
Вставить в форму методом
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ID:signupForm ATTR=NAME:email CONTENT={{!EXTRACT}}


не получится, так как нет ни ID ни VALUE.
Заранее спасибо за вашу помощь.

Наверняка спрашивали не раз, но... Прошу не кидаться помидорами
Извлекаю строку из тега body, вся строка в одном теге.

скрытый текст

Выделить код

Код:

<html><head></head><body>ACCESS_NUMBER:1083671:79055911737</body></html>


Как извлечь только последние 11 цифр? Заранее благодарю!

Поняла, вот так:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.slice(-11);")

Чистая запись макроса такая

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Эрмитаж


Можно ли сделать так что бы слово Эрмитаж бралось из TXT файла?
Я сделал так но не работает
скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Эрмитаж.txt
SET !DATASOURCE_LINE {{!LOOP}}
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!COL1}}

Можно ли выполнить функцию прямо в макросе? Или надо отдельно подключать js?
есть скрипт js

скрытый текст

Выделить код

Код:

function generatePassword() {
    var length = 3,
        charset = "abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        retVal = "";
    for (var i = 0, n = charset.length; i < length; ++i) {
        retVal += charset.charAt(Math.floor(Math.random() * n));
    }
    return retVal;
}
generatePassword();
immSet("PASS", generatePassword() ); //именно так ведь передают переменную в IMacros?


В макросе вызываю переменную и получаю undefined
скрытый текст

Выделить код

Код:

URL GOTO=imacros://run/?m=pass.js
PROMPT {{!generatePassword}}


Что я делаю не так?

bms.java
Значения не передаются между iim скриптами
Вызов js из iim ни чего не даст
Либо используете управляющий js и из него вызывайте iim-код, либо используйте eval внутри iim

скрытый текст

var length = 8,
        charset = "abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        retVal = "";
    for (var i = 0, n = charset.length; i < length; ++i) {
        retVal += charset.charAt(Math.floor(Math.random() * n));}

alert(retVal);

InfSub помоги. Второй день с этой проблемой мучаюсь. Башка не варит уже. Перепробовал сотни вариантов уже.
Скрипт js был выше. Мне нужно запихнуть значение этой функции в поле ввода пароля

скрытый текст

Выделить код

Код:

POS=1 TYPE=INPUT:TEXT FORM=ID:signupForm ATTR=ID:username CONTENT=(ЗНАЧЕНИЕ ФУНКЦИИ)

bms.java
Поиск по данной ветви форума (форма справа вверху страницы) по слову eval

InfSub спасибо все получилось. Через гугл не находил этого.

скрытый текст

Выделить код

Код:

'''генерим пароль
SET !VAR2 EVAL("var i=8,r='',w='abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789',m=w.length,p;while(i--){p=Math.floor(Math.random()*(m));r=r+w.charAt(p);};")
'''вставляем пароль в форму
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:signupForm ATTR=NAME:password CONTENT={{!VAR2}}
'''вставляем пароль в файл
SET !EXTRACT {{!VAR2}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=account_twich_password.txt

PRESIDENT как в старом анекдоте, если работает, то и не трогай. ..
Если вдруг потом потребуется оптимизация, то возможно и сделаю в js. А сейчас все равно еще весь код до конца не дописан, и этого вполне хватает.

удалено, флуд

Правила форума mozilla-russia.org
2.  Не рекомендуется:
2.6
  Многократно поднимать тему, если на поставленный вопрос ответ не был получен своевременно.


Правила форума iMacros
1.  Не рекомендуется:
1.4
  Создавать темы или сообщения с просьбой написать скрипт. Если Вам нужна помощь в написании скрипта с «нуля», то опишите свою просьбу в теме «iMacros Скрипты. Поиск и заказ скриптов»

Также - есть тема «Капчи, сохранение и распознавание. reCaptcha, Solve Media.»


InfSub

Gergi пишет

Я сделал так но не работает

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Эрмитаж.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

InfSub пишет
Gergi пишет

Я сделал так но не работает

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Эрмитаж.txt
SET !DATASOURCE_LINE {{!LOOP}}
PROMPT {{!COL1}}

не работает

Gergi
вы знаете что за команда PROMPT?
результат ее вывода - где?
Где ошибка, если она возникает?

InfSub пишет

Gergi
вы знаете что за команда PROMPT?
результат ее вывода - где?
Где ошибка, если она возникает?

Результат я вижу,и у меня PROMPT выводит нужный результат.
Возможно я не правильно задал вопрос,либо вы не внимательно прочитали мою беду.

Gergi пишет

Результат я вижу,и у меня PROMPT выводит нужный результат.

то что выводит prompt, то и подставляется вместо {{!COL1}} в вашем случае
в предоставленном вами коде, ошибок нет

Если эта команда вот в таком варианте

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Эрмитаж


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

Gergi

Что у тебя промт выдаёт ?

То и подставится вместо Эрмитаж
может в текстовике пробелы есть...

PRESIDENT пишет

Gergi

Что у тебя промт выдаёт ?

То и подставится вместо Эрмитаж
может в текстовике пробелы есть...

да,промпт выдаёт всё верно,я смотрел пробелы кавычки кодировки и всё что угодно и в js переделывал но не пошло.

Из текстовика берётся только одно слово или несколько слов ?

PRESIDENT пишет

Из текстовика берётся только одно слово или несколько слов ?

только одно

Тогда должно работать.
Ну как вариант попробуй в скрипте поставь ещё звездочки вокруг кола.

Gergi
во первых, что именно должен сделать код? только выделить элемент span? так он его и выделяет и идет дальше, если у вас нет ошибки
во вторых, код запускается откуда? из другого макроса/кода?
запишите его (только эти 3 строки) в #Current.iim и запустите
ошибки в студию, если есть

Здравствуйте, подскажите, пожалуйста, как сделать условие.. Если тег находится, то включается задержка.. а если не находится, то без задержек приступает к следующей команде.
вот кусок кода..

скрытый текст

Выделить код

Код:

TAG POS=10 TYPE=A ATTR=TXT:Нравится
WAIT SECONDS=40


он всегда ставит задержку 40 сек., а нужно, чтобы он ее ставил только тогда, когда тег выше находится.
-----------------------------------------------------------------
И еще вопросик.. как нажать кнопку плей на видео плеере на сайте:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


У меня проблема с нажатием кнопки плей, т.е. вызвать плеер получается, а нажать плей тоже получается, но не всегда...

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Просмотр
FRAME F=1
TAG POS=1 TYPE=BUTTON ATTR=CLASS:ytp-large-play-button<SP>ytp-button


Вот код, которым я запускаю..
вот так запускаю второе видео


скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=A ATTR=TXT:Просмотр
FRAME F=2
TAG POS=1 TYPE=BUTTON ATTR=CLASS:ytp-large-play-button<SP>ytp-button


т.е. POS=* меняется и FRAME F=* меняется.
но бывает и такое, после обновления страницы, что FRAME=* смещается на 2, т.е. запускать нужно так:


скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Просмотр
FRAME F=3
TAG POS=1 TYPE=BUTTON ATTR=CLASS:ytp-large-play-button<SP>ytp-button
Выделить код

Код:

TAG POS=2 TYPE=A ATTR=TXT:Просмотр
FRAME F=4
TAG POS=1 TYPE=BUTTON ATTR=CLASS:ytp-large-play-button<SP>ytp-button


если сделаешь как по первому варианту, то кнопка плей не нажмется.
Можно ли исправить код, чтобы он учитывал этот самый FRAME=* на случай если он изменится и менял его, или может как - то можно по другому.. более универсальную команду

kur-kur А клик по координатам во фрейме не пробовал?

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=A ATTR=TXT:Просмотр
FRAME F=2
CLICK X=298 Y=160


вот так? да, работает, но проблема останется, если FRAME F=* станет в этом видео не 2, а 4, то уже не сработает. Нужно что - то универсальное, чтобы вообще не требовалось указывать FRAME=*

вот так например:

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=A ATTR=TXT:Просмотр
CLICK X=298 Y=160


но так не работает ( (

kur-kur я в IMacros еще новичек, поэтому много не знаю. В голову приходит только попробывать циклом перебрать все фреймы. Их же там не много? От 1 до 4 вроде ты писал.

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

А как задать условие? неужели такой простейшей функции в imacros'e нету.

скрытый текст

Выделить код

Код:

TAG POS=10 TYPE=A ATTR=TXT:Нравится
WAIT SECONDS=40


Мне нужно, чтобы задержка 40 сек была только в случае, если тег выше нашелся... если он не нашелся, то команда WAIT SECONDS=40 пропускается и код выполняется дальше...

kur-kur
для этого пишется управляющий js-скрипт, который позволяет "ветвить" задачу по условиям

19-11-2015 13:05:03
kur-kur
при публикации кода - используйте спойлер, в правилах нашей темы - описано, как правильно размещать код и ссылки

Возник еще вопрос. Макрос вставляет мои данные в формы. Но чтобы активировать кнопку регистрации в каждой форме необходимо нажать клавишу(ctrl,alt,enter,стрелки). Вручную все получается, а макросом почему нет. Вот код который пробовал.

скрытый текст

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="#username" KEY=13
EVENT TYPE=KEYPRESS SELECTOR="#signupForm>DIV:nth-of-type(2)>DIV>INPUT" KEY=13
EVENT TYPE=KEYPRESS SELECTOR="#signupForm>DIV:nth-of-type(4)>DIV>INPUT" KEY=13


и
скрытый текст

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="#username" KEYS=[13]
EVENT TYPE=KEYPRESS SELECTOR="#signupForm>DIV:nth-of-type(2)>DIV>INPUT" KEYS=[13]
EVENT TYPE=KEYPRESS SELECTOR="#signupForm>DIV:nth-of-type(4)>DIV>INPUT" KEYS=[13]


оба не нажимают, либо нажимают но не обрабатываются на сайте. Что можно сделать?

Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler]

InfSub

bms.java пишет

чтобы активировать кнопку регистрации в каждой форме необходимо нажать клавишу(ctrl,alt,enter,стрелки)

ссылку на проблемный сайт, в первый раз слышу, чтобы для ввода данных в форму, требовались такие комбинации

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Вставляю в формы вот таким образом
скрытый текст

Выделить код

Код:

'''вырезаем ник
TAB T=2
TAG POS=1 TYPE=INPUT ATTR=ID:mail* EXTRACT=TXT
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; s.substring(0,s.indexOf('@'));")
'''вставляем в файл
SET !EXTRACT {{!VAR1}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=account_twich_login.txt
SET !EXTRACT {{!VAR1}}
'''вставляем в поле ввода логин
TAB T=3
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:signupForm ATTR=ID:username CONTENT={{!EXTRACT}}

bms.java

скрытый текст

Выделить код

Код:

URL GOTO=http://www.twitch.tv/signup
EVENTS TYPE=KEYPRESS SELECTOR="#username" CHARS="test_name_users"
SET !ENCRYPTION NO
EVENTS TYPE=KEYPRESS SELECTOR="#signupForm>DIV:nth-of-type(2)>DIV>INPUT" CHARS="qwertyuiop["
EVENTS TYPE=KEYPRESS SELECTOR="#signupForm>DIV:nth-of-type(4)>DIV>INPUT" CHARS="example@example.com"

InfSub
Всё понял. Спасибо. Перепишу код.

InfSub
Вот полный код:


Нужно, чтобы задержка 40 сек выполнялась только, если находится тег TAG POS=* TYPE=A ATTR=TXT:Нравится
А задержка 10 сек. выполнялась только, если находится тег TAG POS=1 TYPE=A ATTR=TXT:Вход (выше этой задержки)

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

kur-kur пишет

Нужно, чтобы

поиск по теме, по слову iimPlay или iimPlayCode

19-11-2015 14:11:40

kur-kur пишет

SET !ERRORCONTINUE YES

FAQ, раздел - Модификаторы

поправил ссылку на FAQ

Здравствуйте, а есть ли способ нажимать "ok" когда выходит окно с логином и паролем подключения к прокси (firefox)?
или может есть способ сделать так, чтобы это окно не появлялось (периодически появляется, не знаю почему, то ли связь с прокси пропадает, то ли авторизация отваливается

kur-kur
FAQ => Видео по настройке и использованию: => Работа с прокси-серверами в iMacros

kur-kur
ну и как вариант, может работать такая комбинация:

скрытый текст

Выделить код

Код:

ONLOGIN USER=user_name PASSWORD=user_password

спасибо

В iim работает,хотел завернуть а js  выдаёт ошибку:sick:

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\Test.txt\nSET !DATASOURCE_LINE '+t1+'\nSET !EXTRACT EVAL(''{{!COL1}}'.replace('это','на это')')\nURL GOTO={{!EXTRACT}}');


Помогите пожалуйста решить этот вопрос.

Экранирование кавычек ни кто не отменял

InfSub пишет

Экранирование кавычек ни кто не отменял

Я как бы уверен что проблема в них,но что то не получилось их экранировать,видать не имею понятия как их экранировать.

Gergi
Ну так сделайте без eval, что за извращение пихать js внутри eval в js
Что мешает использовать iimGetExtract() и iimPlay ?

Здравствуйте есть ли такая команда что бы как при наведении мыши окно выходило (в одноклассниках)

Правила форума iMacros
1.  Не рекомендуется:
1.2  Задавать вопрос без указания:
1.2.4  Адреса сайта или страницы, на которой возникла проблема...

InfSub

Как рандомную строку из файла не извлекать повторно в процессе?

bop101
сохранить номер строки и проверять - была/нет

Есть управляющий start.js-файл, который запускает файлы 1.js и 2.js
Содержимое файлов:

start.js

start.js

Выделить код

Код:

for(i = 0; i < 4; i++){
iimPlayCode('CLEAR');
iimPlayCode("URL GOTO=imacros://run/?m=test/1.js");
iimPlayCode("URL GOTO=imacros://run/?m=test/2.js");
};


содержимое файлов 1 и 2:

1.js

Выделить код

Код:

for(i = 0; i < 5; i++){
iimPlayCode('SET !TIMEOUT 20\nURL GOTO=yandex.ru\nSET !EXTRACTADD {{!URLCURRENT}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=testUrls.txt');
};


2.js

Выделить код

Код:

for(i = 0; i < 5; i++){
iimPlayCode('SET !TIMEOUT 20\nURL GOTO=mail.ru\nSET !EXTRACTADD {{!URLCURRENT}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=testUrls.txt');
};


По моей логике, файл  start.js должен по очереди запускать файлы 1.js и 2.js , каждый из которых делает по 5 циклов. Однако, в файле testUrls.txt виду следующие данные:

данные
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


т.е. start.js за второй, третий и четвёртый цикл работыне запускает файл 2.js а только файл 1.js.

Что  я делаю не так?

udalov
аналогичный вопрос и ответ

udalov пишет

SET !EXTRACTADD

команда устарела, используйте ADD !EXTRACT
wiki

udalov
Удали сначала текстовый файл, может в нем сохраняются ещё старые записи.

PRESIDENT пишет

udalov Удали сначала текстовый файл, может в нем сохраняются ещё старые записи.

Делал так каждый раз)))

Здравствуйте! Подскажите,  как игнорировать полную загрузку страницы?
Ситуация такая:  надо извлечь определённый текст из нужного поля на странице, но сама страница грузится очень долго, хотя нужный текст появляется на странице быстро.
А особенность imacrosa такова, что пока страница целиком не загрузится, то он будет ждать её полной загрузки и только потом перейдёт к команде по извлечению текста.
Как сделать так, чтоб как только появился нужный текст на странице, imacros его тут же извлекает и сохраняет, и переходит к следующей команде, не дожидаясь полной загрузки страницы?

dvitkovs
почитать официальную вики и использовать поиск по данной теме - не пробовали?.. dash1.gif

скрытый текст

Выделить код

Код:

SET !TIMEOUT_PAGE 5

или более старый вариант:

Выделить код

Код:

SET !TIMEOUT 5


к тому же, в вашем же, собственном скрипте - есть информация об этом

InfSub пишет

dvitkovs
почитать официальную вики и использовать поиск по данной теме - не пробовали?..

скрытый текст

Выделить код

Код:

SET !TIMEOUT_PAGE 5

или более старый вариант:

Выделить код

Код:

SET !TIMEOUT 5


к тому же, в вашем же, собственном скрипте - есть информация об этом

А вы уверены, что это именно то, что мне надо? Я ведь не за таймаут загрузки страницы спрашивал, а за то, чтоб как только на данной странице появится нужная фраза, то аймакрос её тут же берёт и сохраняет, даже не смотря на то, что страница ещё грузится. А фраза появится может в любой момент. Может через 3 секунды, а может через 4 минуты. И это зависит от прокси-севрера, потому что коннект через него. Поэтому таймаут загрузки страницы тут не уместен.
Мне надо именно так, чтоб макрос не дожидался когда страница загрузится, пусть даже она грузилась бы полчаса. Как только появился текст на грузящейся странице - всё, сохраняем его. Но так не получается, потому, что макрос ждёт полной загрузки страницы. А мне полная не нужна, достаточно частичной. Но как сделать чтоб при грузящейся странице макрос сохранял фразу нужную???

25-11-2015 19:59:51

InfSub пишет

к тому же, в вашем же, собственном скрипте - есть информация об этом

речь идёт уже о совсем другом скрипте, который мне нужен для другого.

dvitkovs пишет

А вы уверены, что это именно то, что мне надо?

как вы описали проблему, так я вам и ответил

dvitkovs пишет

Мне надо именно так, чтоб макрос не дожидался когда страница загрузится, пусть даже она грузилась бы полчаса. Как только появился текст на грузящейся странице - всё, сохраняем его.

сделайте цикл в js, который будет прерываться и передавать задание дальше, как только найдет нужный элемент на странице

InfSub пишет

bop101
сохранить номер строки и проверять - была/нет

Не магу найти такую команду или нужно вручную проверять?

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

bop101 пишет

Не магу найти такую команду или нужно вручную проверять?

js, простите, Вам для чего дан? наверное, для того, чтобы построить логику работы скрипта...

26-11-2015 01:30:20

bop101 пишет

а вообще я делаю это с рандомным файлом

может быть - проще сделать с одним файлом, чем "изобретать велосипед"?

bop101

Неповторяющийся рандом.
Запускать не более 9 раз (рандом установлен до 9)
иначе зависнет.

Выделить код

Код:

var num=[];   
   
   while(true){
   var n=Math.floor(Math.random()*9);
   if(num.indexOf(n)==-1){
   iimDisplay("Выпало число "+n);
   alert(n);
   num.push(n);break;}}

PRESIDENT
Ваш вариант, выполнится только 1 раз (один цикл)

26-11-2015 02:00:07

тогда уж - так, хотя бы:

Выделить код

Код:

var n,num=[],max=9;

while(num.length<max){
    n=Math.floor(Math.random()*max)+1;
    if(num.indexOf(n)==-1){
        iimDisplay("Выпало число "+n);
        //alert(n);
        num.push(n);
    };
};
alert(num);

InfSub пишет

Ваш вариант, выполнится только 1 раз

Так его в принципе и нужно только 1 раз в каждом цикле запускать. smile_19.gif

PRESIDENT пишет

Так его в принципе и нужно только 1 раз в каждом цикле запускать. http://www.web-ip.ru/images/smiles/smile_19.gif

так у Вас же есть цикл в коде, зачем создавать еще один?

Снова вопрос. Есть опять же кусочек кода на js

скрытый текст

Выделить код

Код:

var text = createObject('strings');
text.load('c:\\temp\\text.txt', 'windows-1251');

function word()
{
   return text(Math.floor(Math.random() * text.length));
}


выполненное значение нужно поместить в форму
скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#u_0_1" CHARS=ЗНАЧЕНИЕ ФУНКЦИИ


Как из imm вызвать этот код и поместить в форму? Или же выполнить код прямо внутри макроса

bms.java пишет

Как из imm вызвать этот код

Зачет тебе этот iim, оберни команду в js

скрытый текст

Выделить код

Код:

a=word();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#u_0_1" CHARS='+a);

Написал вот так

скрытый текст

Выделить код

Код:

var text = createObject('strings');
text.load('C:\Видео курсы\\text.txt');

function word()
{
   return text(Math.floor(Math.random() * text.length));
} 
a=word();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#u_0_1" CHARS='+a);


А в imm вызвал так
скрытый текст

Выделить код

Код:

'''вставляем в поле ввода логин
TAB T=3
URL GOTO=imacros://run/?m=path/imena.js


выдает ошибку
скрытый текст
iMacros run command: macro path\imena.js not found (Error code: -930)

Что не так написал?

26-11-2015 17:35:45

bms.java пишет

iMacros run command: macro path\imena.js not found (Error code: -930)

С этим разобрался. Теперь такая ошибка

скрытый текст
ReferenceError: createObject is not defined, line 1 (Error code: -991)

bms.java пишет

А в imm вызвал так

Нахрена тебе этот iim smile_29.gif  сразу JS запускай

bms.java пишет

iMacros run command: macro path\imena.js not found

с путём проблема, пишет файл не найден
если оба скрипта в одной/родной паке имакроса то путь не нужен , сразу имя скрипта указывай.

...run/?m=imena.js

PRESIDENT
Да весь код написан на imacros, только вот для выбора случайной строки из файла использовал js. Не переписывать же из за одной функции все 75 строк imacros в js?

да что там переписывать, каких то 75 строк.:)


bms.java пишет

createObject

имакрос сам по себе с объектами не работает

26-11-2015 17:50:31

А суть этого кода, что он должен делать ?

Выделить код

Код:

var text = createObject('strings');
text.load('C:\Видео курсы\\text.txt');

function word()
{
   return text(Math.floor(Math.random() * text.length));
} 
a=word();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#u_0_1" CHARS='+a);

PRESIDENT пишет

да что там переписывать, каких то 75 строк.:)


bms.java пишет

createObject

имакрос сам по себе с объектами не работает

26-11-2015 17:50:31

А суть этого кода, что он должен делать ?

Выделить код

Код:

var text = createObject('strings');
text.load('C:\Видео курсы\\text.txt');

function word()
{
   return text(Math.floor(Math.random() * text.length));
} 
a=word();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#u_0_1" CHARS='+a);

Код вроде как :D должен выбирать рэндомную строку из файла

26-11-2015 18:14:42
PRESIDENT
Будь добр, просто скажи как эту функцию засунуть прямо в iim(выполнить в макрсе). Может есть встроенная в imacros функция для выбора рэндомной строки из файла.
З.Ы Пытался сейчас переписать все в js, тупо через iimPlayCode, так все перестало работать.

bms.java

SET !DATASOURCE C:\Видео курсы\text.txt  <---путь к текстовику
SET !DATASOURCE_LINE 1  <---номер строки

Как то так это будет на JS

Выделить код

Код:

iimPlayCode('URL GOTO=file:///C:\\Видео курсы\\text.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
   text=iimGetExtract().split('\n');    
   r=Math.floor(Math.random() * text.length);
iimPlayCode('SET !DATASOURCE C:\\Видео курсы\\text.txt\nSET !DATASOURCE_LINE '+r+'\nSET !EXTRACT {{!COL1}}');
   txt=iimGetExtract();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#u_0_1" CHARS="'+txt+'"');

bms.java пишет

Есть опять же кусочек кода на js

P.S.
Вообще-то, createObject - это VB и еще парочка языков, но не js, a .load - это, вроде как функция из jquery

По поводу того, как вызывать скрипт из скрипта - описано в FAQ, ну а вообще, используйте пример, приведённый PRESIDENTОм, а iim-скрипты из js без проблем вызываются функцией iimPlay()

PRESIDENT пишет

SET !DATASOURCE C:\Видео курсы\text.txt  <---путь к текстовику
SET !DATASOURCE_LINE 1  <---номер строки

проверил через PROMPT {{!DATASOURCE_LINE}} выдает число 1, а не строку в файле. Как извлечь сами данные то?

так ты экстракт проверяй, а не номер строки.

PRESIDENT пишет

так ты экстракт проверяй, а не номер строки.

Проверял - вообще пусто

Все разобрался. Может кому пригодится

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var randomName=Math.floor(Math.random()*26 + 1); randomName;")
SET !DATASOURCE text.txt
SET !DATASOURCE_LINE {{!VAR1}}
PROMPT {{!COL1}}


Выбирает случайную строку из файла.

Подскажите какой строчкой вставить адрес кошелька на сайте http://elenabitco.in ? Теги поля для ввода всегда меняются.

ottec пишет

Подскажите какой строчкой вставить адрес кошелька на сайте http://elenabitco.in ? Теги поля для ввода всегда меняются.

сделай так

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT=кошелек


а вообще почитай тему, тут про это написано

Смотри здесь, как раз про твою проблему

Мэтры, подскажите, вызов *.js из *.js нужно как то заканчивать доп командой
после отработки вызываемого скрипта и возвращения в управляющий скрипт?
скрипт вызывается у меня так

скрытый текст

Выделить код

Код:

..........................................................
//============забираем с reCaptcha/BITCOIN/5-10-20min======20min================
 iimPlayCode("URL GOTO=imacros://run/?m=reCaptcha/BITCOIN/5-10-20min/faucetminenu.js");
 iimPlay("CODE:WAIT SECONDS=2.5");
 
//============забираем с reCaptcha/BITCOIN/5-10-20min======20min================
 iimPlayCode("URL GOTO=imacros://run/?m=reCaptcha/BITCOIN/5-10-20min/fr-ee-bitcoin.js");
 iimPlay("CODE:WAIT SECONDS=2.5");
.......................................................


После вызова скрипта, его исполнения и возврата в управляющий скрипт не могу остановить исполнение
управляющего скрипта нажатием кнопки СТОП в iMacros, приходится закрывать Мозилу полностью.
Пока не нашел как это исправить.

Egorushka1974
Это глюки новых версий имакроса.
С функциями, циклами, паузами в них всегда глюки, поэтому я и сижу на старом добром 6.3 имакросе.

PRESIDENT пишет

Egorushka1974
Это глюки овых версий имакроса.
С функциями, циклами, паузами в них всегда глюки, поэтому я и сежу на старом добром 6.3 имакросе.

Ясно, а все ли команды он поддерживает? по крайней мере те что в скриптах с рекапчей? Которые есть на форуме в твоей теме.

Egorushka1974 пишет

а все ли команды он поддерживает?

в 7 версии имакроса не поддерживается EVAL, EVENT (и соответственно, EVENT:SAVE_ELEMENT_SCREENSHOT)... за подробностями - в историю версий

dvitkovs

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\d+/)")

Всем привет.
Подскажите что не так в коде

скрытый текст

Выделить код

Код:

var macros;
var macrosrun;
var s_n = "\n";
var w;

for (i=38; i<=170; i++) {  
    iimSet("NCKL",i)
    macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n;     
    macros += "TAG POS="+i+" TYPE=A ATTR=* EXTRACT=href"+s_n; 
    macros += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=Olx.ua.csv"; 
    macrosrun = iimPlay(macros); 
 }


Сайт 
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Нужно чтобы собрал ссылки на объявления а он собирает все ссылки

ошибка в этой строке TAG POS="+i+" TYPE=A ATTR=* EXTRACT=href  а как правильно прописать что-то не получается

и подскажите как еще реализовать переход на следующую страничку и продолжить сбор на следующих страничках

заранее спасибо

Хочу выдернуть прокси с сайта

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Но там прокси записан простым текстом. Как то можно его извлечь?
Может через .innerHTML как нибудь можно?
З.Ы Текст находится между двумя тегами - <font class="spy14"> и <script type="text/javascript">

Artvirus пишет

ошибка в этой строке TAG POS="+i+" TYPE=A ATTR=* EXTRACT=href 
а как правильно прописать


...TYPE=A ATTR=class:marginright5*link*linkWithHash*detailsLink EXTRACT=HREF

Artvirus пишет

как реализовать переход на следующую страничку

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

вроде получается :)
Вот так и делай, задай новый цикл и меняй цифры в конце строки

Выделить код

Код:

for(s=1; s<=9; s++){
iimPlayCode('http://olx.ua/nedvizhimost/prodazha-kvartir/?page='+s);
...
...
}


bms.java пишет

Но там прокси записан простым текстом.

Там информация о порте выдаётся JS кодом

PRESIDENT Спасибо за помощь

dvitkovs пишет

...FILE=ID.csv{{!COL4}}
...FILE={{!COL4}}ID.csv

smile_29.gif
При чём здесь ID.csv
TYPE=EXTRACT это что загружать
FOLDER=C:\  директория куда загружать
FILE=ID.csv файл в который загружать
тебе именно экстракт нужно обрабатывать

dvitkovs
что такое поиск, видимо, вам не известно?.. и правила форума, вы, видимо, тоже не читали?...
тыц

ссылка на сайт в спойлере. Скрипт открывает слевой строны фото товара на весь экран.
Как сохранить данное фото, с номером 01 и с названием товара h1 ?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


код макроса, который извлекает название товара и открывает фото товара, но сохраняет фото без нумерации и названия товара.
как это сделать?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=H1 ATTR=ID:itemTitle EXTRACT=TXT
CLICK X=140 Y=346
CLICK X=149 Y=327
ONDOWNLOAD FOLDER=* FILE={{!EXTRACT}}_{{нумерайция 01}}.jpeg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=ID:viEnlargeImgLayer_img_ctr CONTENT=EVENT:SAVEPICTUREAS

dvitkovs
поиск по теме по словам !EXTRACT и SAVEAS
и RTFM на офф. wiki по этим же командам

28-11-2015 20:33:57


Алим
где вы видели переменные iMacros с пробелами в наименовании?

к тому же, сколько раз можно говорить, что: координаты работают только на том компьютере, на котором записаны, и приводить их без комментариев, на что идет клик - бесполезно из-за различий в разрешении монитора (или размера открытого окна браузера) и соответственно, из-за различий в расположении элементов на сайте

InfSub пишет

где вы видели переменные iMacros с пробелами в наименовании?

На счёт координатов я знаю. Вообще не видел с пробелами, но и не знал, что так нельзя. Буду теперь знать.

Алим

вариант - без координат, с сохранением:

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=H1 ATTR=ID:itemTitle EXTRACT=TXT
SET !VAR1 EVAL("'{{!EXTRACT}}'.trim().split('\\n')[0]")
SET !EXTRACT NULL

TAG POS=1 TYPE=IMG ATTR=ID:icImg EXTRACT=HREF
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace('s-l300','s-l600')")

URL GOTO={{!EXTRACT}}
ONDOWNLOAD FOLDER=* FILE={{!VAR1}}_01 WAIT=YES
TAG POS=1 TYPE=IMG ATTR=* CONTENT=EVENT:SAVEPICTUREAS

dvitkovs
Может, вы для начала попробуете выполнить код, если вам не понятна его суть, и посмотрите на результат?

Если вы, пытаетесь дописать столбцы, к уже существующим данным (строкам), это - невозможно
Каждая команда saveas, записывает данные на новую строку в файле

Ну и в чем проблема? Вы постом выше уже процитировали решение:

скрытый текст

Выделить код

Код:

SET !EXTRACT почта
ADD !EXTRACT искомый_id
SAVEAS.....

dvitkovs
Приведите весь код

29-11-2015 00:02:03

dvitkovs пишет

А что надо написать в данном  коде (что под спойлером) вместо слов почта и искомый_id ?

Это вы меня спрашиваете? Наверное, вопрос к вм, что вы туда пытаетесь сохранить, на сколько я понял, это мыло и id

Уважаемый, dvitkovs

offtop
Я Вам в последний раз делаю устное замечание:
на все Ваши вопросы - есть ответы в данной теме, в том числе и по кавычкам, которые убрать - нельзя и по проблеме с excel'ем (поиск по слову excel - справа вверху страницы, если вы не догадались)
И, очень рекомендую почитать правила, как форума, так и темы iMacros, дабы не разводить обсуждение элементарных вещей на пол страницы, а если уж возникли подобные вопросы, решать их за 1-2 поста

удалено, флуд
прежде чем что-то заявлять, хотя бы, прочтите - кому адресовано сообщение

InfSub

InfSub пишет

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=H1 ATTR=ID:itemTitle EXTRACT=TXT
SET !VAR1 EVAL("'{{!EXTRACT}}'.trim().split('\\n')[0]")
SET !EXTRACT NULL

TAG POS=1 TYPE=IMG ATTR=ID:icImg EXTRACT=HREF
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace('s-l300','s-l600')")

URL GOTO={{!EXTRACT}}
ONDOWNLOAD FOLDER=* FILE={{!VAR1}}_01 WAIT=YES
TAG POS=1 TYPE=IMG ATTR=* CONTENT=EVENT:SAVEPICTUREAS

Работает.

А как сделать, чтобы ещё работал и здесь

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Заметил, что если в заголовке находится слеш /, то не сохраняет с названием товара.

Алим

скрытый текст
замените эту строку:

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.trim().split('\\n')[0]")

на эту:

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.trim().replace(/\\//g,' - ').split('\\n')[0]")

У меня сейчас так

скрытый текст

Выделить код

Код:

var s=prompt("первый ",100);
var i,m1=1,t1=1,t2=1,t3=1;
for(i=0; i<s; m1++,t1++,t2++,t3++,i++){


А хочу сделать так, тоесть добавить var z=prompt("второй ",5);
скрытый текст

Выделить код

Код:

var s=prompt("первый ",100);
var z=prompt("второй ",5);
var i,m1=1,t1=1,t2=1,t3=1;
for(i=0; i<s; m1++,t1++,t2++,t3++,i++){

удалено, флуд

Правила форума
2.  Не рекомендуется:
2.6
  Многократно поднимать тему, если на поставленный вопрос ответ не был получен своевременно. Многократное поднятие темы чаще 1 раза в течение недели сообщениями типа «up» может быть расценено как флуд.

Gergi пишет

А хочу

smile_29.gif отлично, вы это уже сделали ....

скрытый текст

Выделить код

Код:

var s=prompt("первый ",100);
var z=prompt("второй ",5);
var i,m1=1,t1=1,t2=1,t3=1;
for(i=0; i<s; m1++,t1++,t2++,t3++,i++){

29-11-2015 14:42:31
а теперь может прекратите флеймить и напишете ТАК, чтобы Вас поняли?

InfSub пишет

удалено
а теперь может прекратите флеймить и напишете ТАК, чтобы Вас поняли?

так а куда же букву z присвоить?

InfSub
В начале имени товара, приписывает Подробные сведения о
Как это сделать, чтобы убирал?

Gergi пишет

так а куда же букву z присвоить?

простите, а я знаю, что именно вы пытаетесь сделать.., я уже в 3 раз это у вас пытаюсь выяснить, и Gergi постарайтесь на этот раз ответить на мой вопрос ... butcher.gif

удалено, флуд
экстрасенсы в отпуске

InfSub

Алим
по аналогии с /, ну не ужели так сложно посмотреть как сделано?

удалено, флуд
какое отношение к вашему вопросу имеет вопрос Алима?

InfSub

offtop
smile_6.gif
Я  всё чаще и чаще захожу сюда просто поржать.

Gergi

напиши блин что и куда эта Z втыкаться должна.
В цикл в for(...) её хочешь воткнуть ???

PRESIDENT пишет

offtop
smile_6.gif
Я  всё чаще и чаще захожу сюда просто поржать.

Gergi

напиши блин что и куда эта Z втыкаться должна.
В цикл в for(...) её хочешь воткнуть ???

Неуже ли кто то понимает о чём речь идёт:D ДААААААААААААААА

Если тебя не понятно, тебе 4 раза модер написан не понятно что ты хочешь. smile_177.gif


InfSub

offtop
Не я передумал в модеры идти. У меня нету столько терпения как у тебя.
Тебе уже при жизни памятник ставить нужно smile_17.gif

InfSub
и в справочнике js смотрю и не понимаю.
Там наверное какие-то знаки нужно вставить, а не само Подробные сведения о

Например, если былобы так, я понял

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('текст','')")
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('Подробные сведения о','')")

Алим

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('текст','').replace('Подробные сведения о','')")

PRESIDENT посмотрел по твоей анологии и сделал ))

Вот получилось

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('Подробные сведения о','').trim().replace(/\\//g,' - ').split('\\n')[0]")

Gergi пишет

Неуже ли кто то понимает о чём речь идёт

offtop
Gergi

Не .... .... .... .... .... .... .... .... .... .... .... .... / Руми Джалаледдин

куда в этой цитате вставить слово "сердцах"?


Ваш вопрос аналогичен, из серии "принеси то, не знаю что, положи туда, не знаю куда"

Всем приват.

Подскажите ка в конце ссылки вырезать  вот это #740b8b30ca

SET !EXTRACT EVAL(\"str='{{!EXTRACT}}' как тут правильно прописать чтобы обрезало только #740b8b30ca

Вот полная ссылка

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Заранее спасибо

Artvirus

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\#\w+/)")

Я в шоке:usch:  Что тут не понятного?
var z=prompt("второй ",5); не работает,потому что буква z нигде не присвоена? Как ещё можно объяснить?

скрытый текст

Выделить код

Код:

var s=prompt("первый ",100);
var z=prompt("второй ",5);
var i,m1=1,t1=1,t2=1,t3=1;
for(i=0; i<s; m1++,t1++,t2++,t3++,i++){


Такое впечатление что вы на приколе от меня:sick:

Artvirus
а прочитать хотя бы последних 2 страницы - не судьба? например, это?

29-11-2015 16:52:14

Gergi пишет

потому что буква z нигде не присвоена?

может быть, Ваше высочество соизволит сообщить, куда же она должна быть присвоена и что должна делать? потому что продолжая повторять свой вопрос в неизменном виде, Вы очень скоро - получите бан за:

2.22  За многократное умышленное игнорирование правил раздела «Не рекомендуется» даётся замечание или учетная запись может быть заблокирована (на усмотрение администрации форума).

Gergi пишет

var z=prompt("второй ",5); не работает,потому что буква z нигде не присвоена?

Как раз то здесь ты var-ом объявляешь переменную Z и присваиваешь ей значение из промта.
И куда ты дальше хочешь эту Z всунуть, что она должна делать, где использоваться ?

Вот кусок кода,в файле C:\\test3.txt находятся 200 строк,но я хочу регулировать по скольким строкам работать,по всем 200 или по 100 или по 5. Поэтому хочу ещё один prompt прикрутить.



скрытый текст

Выделить код

Код:

var k;
for (k=1;k<=1;k++){
iimPlay("1/1.iim",60);  
 }
var s=prompt("Сколько? ",100);
iimPlayCode('SET !DATASOURCE C:\\test1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}{{!EXTRACT}}')
m=iimGetExtract();
var i,t1=1,t2=1,t3=1;
for(i=0; i<s; t1++,t2++,t3++,i++){    
iimPlayCode('SET !DATASOURCE C:\\test2.txt\nSET !DATASOURCE_LINE '+t1+'\nSET !EXTRACT {{!COL1}}\nURL GOTO={{!EXTRACT}}');
w=iimGetExtract();
if(!w) t1=1;
iimPlayCode('SET !TIMEOUT 10\nSET !DATASOURCE C:\\test3.txt\nSET !DATASOURCE_LINE '+m1+'\nSET !EXTRACT {{!COL1}}\nTAG POS=1 TYPE=* CONTENT={{!EXTRACT}}');

Gergi пишет

хочу регулировать по скольким строкам работать

ну и в чем проблема - сделать по аналогии?

скрытый текст

Выделить код

Код:

var k;
for (k=1;k<=1;k++){
    iimPlay("1/1.iim",60);  
}
var s=prompt("Сколько? ",100);
var z=prompt("второй ",5);

iimPlayCode('SET !DATASOURCE C:\\test1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}{{!EXTRACT}}')
m=iimGetExtract();
var i,t1=1,t2=1,t3=1,m1=1;
for(i=0; i<s; t1++,t2++,t3++,i++){
    iimPlayCode('SET !DATASOURCE C:\\test2.txt\nSET !DATASOURCE_LINE '+t1+'\nSET !EXTRACT {{!COL1}}\nURL GOTO={{!EXTRACT}}');
    w=iimGetExtract();
    if(!w) t1=1;
    for(j=0; j<z; m1++,j++){
        iimPlayCode('SET !TIMEOUT 10\nSET !DATASOURCE C:\\test3.txt\nSET !DATASOURCE_LINE '+m1+'\nSET !EXTRACT {{!COL1}}\nTAG POS=1 TYPE=* CONTENT={{!EXTRACT}}');
    };

};

Я так уже делал,но не то. :sick: Так при одной прокрутки скрипта C:\\test3.txt повторяется много раз,а мне нужно один раз.

Gergi
я ещё раз вам повторяю, выражайтесь яснее, лично мне не понятно, что вы хотите исходя из приведённым примеров и комментариев

в этом файле  C:\\test3.txt 200 строк,я хочу через prompt указать 5 и при одной прокрутке всего кода скрипта обработал первую строчку из файла C:\\test3.txt при втрой прокрутке всего кода скрипта обработал третью строчку из файла C:\\test3.txt и так далее до 5 строчки,потом опять с первой строчки.

Gergi
И зачем тут второй prompt тогда, если все делается в рамках первого цикла?

первый промпт указывает сколько циклов всего скрипта сделать а второй промпт мне нужен для файла  C:\\test3.txt

Как извлечь в файл без кавычек?

скрытый текст
x8mu2oZ.jpg

Мне нужно потом извлечь из файла рандомную строку но из-за кавычек извлекается все.
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=TXT:* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=блабла.TXT
TAB T=1
SET !VAR0 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
SET !DATASOURCE блабла.TXT
TAG POS=1 TYPE=TEXTAREA FORM=NAME:taskreportform ATTR=NAME:ask_reply CONTENT={{!COL1}}

это imacros не все такие умные как вы ваше высочество! иногда трудно написать все по порядку...

Gergi пишет

удалено, излишнее цитирование
Неуже ли кто то понимает о чём речь идёт:D ДААААААААААААААА

InfSub

bop101
При сохранении - сохранять каждую строку отдельно


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

InfSub пишет

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

То что вы написали,я его тоже так писал,оно не работает,я вот эту часть кода переделал в iim и всё работает

скрытый текст

Выделить код

Код:

SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !VAR4 4
SET !VAR3 EVAL("var l={{NSTROKA}};var m={{!VAR4}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\test3.txt
SET !DATASOURCE_LINE {{!VAR3}}
TAG POS=1 TYPE=INPUT {{!COL1}}


Короче надо этот код засунуть в js

29-11-2015 21:08:10
Неужели никто не может понять мои мысли?

Подскажите, как сделать чтоб в скрипте данные брались из двух разных файлов и вставлялись в нужные поля?
Имеем 2 файла с данными: в одном емейлы, в другом ID
Надо так, чтоб в поле почты, вставлялись емейлы, а в поле ID - номера этих ID

скрытый текст

Выделить код

Код:

SET !DATASOURCE pochta.csv
SET !DATASOURCE ID.csv
SET !LOOP 1

EVENTS TYPE=KEYPRESS SELECTOR="#app>DIV>DIV:nth-of-type(2)>FORM>DIV>DIV>INPUT" CHARS="{{!COL1}}"
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:reg ATTR=NAME:login CONTENT="{{!COL1}}"

InfSub
Не получается сохранить отдельно, только целиком. Там область-фрейм

скрытый текст
Dq86maC.jpg

dvitkovs
Сначала возьми строку из первого файла вставь в нужное поле, потом строку из второго файла и тоже вставь в нужное поле.
а то ты в SET !DATASOURCE сразу оба файла указываешь.


bop101
Выведи файл на экран.
Потом .split('\n') посчитай строки и бери нужную уже из массива.

PRESIDENT, благодарю за подсказку! Получилось.

Gergi пишет

Короче надо этот код засунуть в js

а собственные мозги использовать чтобы просто скопировать js строку из eval в файл js - не судьба? обязательно нужно было половине форума мозг выносить?

скрытый текст

Выделить код

Код:

var k;
for (k=1;k<=1;k++){
    iimPlay("1/1.iim",60);  
}
var s=prompt("Сколько? ",100);
var z=prompt("второй ",5);


iimPlayCode('SET !DATASOURCE C:\\test1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}{{!EXTRACT}}')
var m=iimGetExtract();
var i,t1=1,t2=1,t3=1,n;
for(i=0; i<s; t1++,t2++,t3++,i++){
    iimPlayCode('SET !DATASOURCE C:\\test2.txt\nSET !DATASOURCE_LINE '+t1+'\nSET !EXTRACT {{!COL1}}\nURL GOTO={{!EXTRACT}}');
    w=iimGetExtract();
    if(!w) t1=1;
    if(i<z){n=i;}else{n=i-z*(Math.ceil(i/z)-1);};
    iimPlayCode('SET !TIMEOUT 10\nSET !DATASOURCE C:\\test3.txt\nSET !DATASOURCE_LINE '+n+'\nSET !EXTRACT {{!COL1}}\nTAG POS=1 TYPE=* CONTENT={{!EXTRACT}}');
    
    
};


Gergi, это последнее предупреждение, это не проблема в iMacros это чисто Ваше нежелание думать, любые вопросы от Вас где будет проблема в чистом js, уровня 1 класса, из серии как объявить переменную, как сложить, и т.д. - будут считаться флудом, с соответствующими последствиями.. есть проблемы с js - welcome на форумы, посвященные js
см. правила темы iMacros, пункт -1.5

:whiteflag: Здравствуйте!

Написал следующий скрипт:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=1 TYPE=A ATTR=TXT:Прохождение<SP>тестов
CLICK X=820 Y=338
TAG POS=1 TYPE=A ATTR=TXT:Перейти<SP>к<SP>выполнению<SP>теста
TAB T=2
SET !TIMEOUT 1
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 1);")
TAG POS=1 TYPE=SPAN ATTR=ID:selrep1{{!VAR1}}
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 1);")
TAG POS=1 TYPE=SPAN ATTR=ID:selrep2{{!VAR1}}
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 1);")
TAG POS=1 TYPE=SPAN ATTR=ID:selrep3{{!VAR1}}
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 1);")
TAG POS=1 TYPE=SPAN ATTR=ID:selrep4{{!VAR1}}
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 1);")
TAG POS=1 TYPE=SPAN ATTR=ID:selrep5{{!VAR1}}
SET !VAR1 EVAL("Math.floor(Math.random()*3 + 1);")
TAG POS=1 TYPE=SPAN ATTR=ID:selrep6{{!VAR1}}
TAG POS=1 TYPE=SPAN ATTR=TXT:Отправить<SP>отчёт
TAB CLOSEALLOTHERS


Мне необходимо что бы он повторялся много раз.

Но если я нажимаю воспроизвести цикл, то первый раз всё выполняется правильно, но второй и последующие циклы выполняются не верно, циклы идут, но ничего не происходит.

Нажимаю подряд "Воспроизвести", после каждого выполнения макроса, всё работает. Мне необходимо что бы не нажимать на кнопку "Воспроизвести" постоянно, а что бы автоматически выполнялось количество циклов, скажем 1000.

Как мне исправить это? Я думаю что проблема связана с TAB, макрос не может понять на какой вкладке он находится.
Помогите пожалуйста.

Даниил955447112 пишет

Я думаю что проблема связана с TAB, макрос не может понять на какой вкладке он находится.

скрытый текст

Выделить код

Код:

...
TAG POS=1 TYPE=SPAN ATTR=TXT:Отправить<SP>отчёт
TAB T=1
TAB CLOSEALLOTHERS

Добрый вечер знатоки iMacros!

Не могли бы вы ответить на несколько вопросов:
1. Как можно реализовать чтобы клик по координатам Х и У открытой страницы сайта выполнялся через случайный интервал времени, например от 1 до 5 секунд?
2. Существует ли команда, позволяющая менять местами несколько открытых вкладок? Чтобы например TAB T=1 менялась местами с TAB T=2.
3. Существует ли команда, позволяющая закрывать все вкладки справа от текущей?
4. Существует ли команда, позволяющая проверять закрылась ли только что открытая вкладка TAB T=2, и если нет, то закрывать её принудительно и переходить в TAB T=1. Если же вторая закрылась сама , то просто переходить в TAB T=1 ничего больше не закрывая.
5. Как сделать, чтобы часть кода выполнялась допустим 20 раз, после чего макрос переходил к следующей части кода, выполнял её нужное число раз и переходил к началу скрипта? Иными словами как задать число повторов для части строчек кода?

Заранее благодарю за помощь.

Kaschey

скрытый текст

Kaschey пишет

1.

RTFM, поиск, и правила форума

Kaschey пишет

2.

зачем? вам визуализация нужна или автоматизация?

Kaschey пишет

3.

нет (+ см. предудущий ответ)

Kaschey пишет

4.

перейти на TAB T=1 и закрыть все вкладки, кроме текущей:

Выделить код

Код:

TAB T=1
TAB CLOSEALLOTHERS

Kaschey пишет

5.

управляющий js-скрипт


все это неоднократно обсуждалось на форуме (в данной теме) - в поиск (справа вверху страницы), прежде чем последуют еще вопросы из этой же серии

InfSub пишет

зачем? вам визуализация нужна или автоматизация?
перейти на TAB T=1 и закрыть все вкладки, кроме текущей

Нужна автоматизация. На экране открыта не одна, а допустим 5, закрывать их все при помощи CLOSEALLOTHERS не нужно.
Нужно чтобы для каждой из пяти по очереди выполнялась часть кода макроса. В процессе выполнения будут открываться другие вкладки (6,7,8...), на которых скрипт должен производить клик, далее некоторые из которых закрываются сами через 2-3 секунды, другие нужно закрывать принудительно. Хотелось бы чтобы скрипт обрабатывал по очереди 1,2,3,4,5 вкладки, а всё лишнее после каждой из них закрывал, а эти пять не трогал и так по кругу.

Kaschey
закрыть можно - либо текущую

скрытый текст

Выделить код

Код:

TAB CLOSE


либо все, кроме текущей
скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS


30-11-2015 22:52:13

Kaschey пишет

В процессе выполнения будут открываться другие вкладки (6,7,8...)

в чем проблема - выполнить TAB CLOSE после выполнения действий на текущей вкладке?
если вы не знаете закроется вкладка сама или нет - тут только проверять по адресу текущей вкладки (либо по каким-либо иным признакам, например по наличию какого-либо элемента на странице), та это вкладка, которую можно закрыть или та, которую - закрывать нельзя, но реализовать это можно только с помощью условий т.е. вам нужно писать управляющий js-скрипт и в нем организовывать ветвление по условиям

InfSub пишет
Даниил955447112 пишет

Я думаю что проблема связана с TAB, макрос не может понять на какой вкладке он находится.

скрытый текст

Выделить код

Код:

...
TAG POS=1 TYPE=SPAN ATTR=TXT:Отправить<SP>отчёт
TAB T=1
TAB CLOSEALLOTHERS

Увы не работает, до этого я пробовал TAB T=1 в этом месте ставить.

Попробую объяснить более подробно:
Макрос находится на единственной странице, затем он кликает требуемое и открывается вторая вкладка, далее он кликает на странице что требуется, затем ему нужно закрыть 1 из 2-х вкладок, не имеет значения какую. Остаться на одной вкладке и повторить макрос заново.

Было бы всё просто если открывалась вкладка 2 всегда, тогда просто можно было заменить TAB CLOSEALLOTHERS на  TAB T=2 CLOSE и проблем не было бы с выполнением.

Если скрипт запускать просто нажимая "Воспроизвести", то всё работает как надо. Нажал "Воспроизвести" всё сделалось, снова нажал "Воспроизвести" и так далее. Воспроизведение циклов по средством программной кнопки аймакроса происходит следующее: первый цикл выполняется как надо, второй и последующие не выполняются, бежит счётчик выполнения циклов, страница при этом не двигается.

Наверное можно добавить строку в скрипт, которая обнуляла бы все значения макроса и он думал что начинает первый цикл выполнять.

Если убираю TAB T=2, то макрос работает правильно с первой вкладкой, но не выполняет на второй ничего. Если изменить в скрипте TAB CLOSEALLOTHERS на  TAB T=2 CLOSE, закрывается браузер, если не открыта вторая вкладка. :(


01-12-2015 05:40:54

Kaschey пишет

скрытый текст

InfSub пишет

зачем? вам визуализация нужна или автоматизация?
перейти на TAB T=1 и закрыть все вкладки, кроме текущей

Нужна автоматизация. На экране открыта не одна, а допустим 5, закрывать их все при помощи CLOSEALLOTHERS не нужно.
Нужно чтобы для каждой из пяти по очереди выполнялась часть кода макроса. В процессе выполнения будут открываться другие вкладки (6,7,8...), на которых скрипт должен производить клик, далее некоторые из которых закрываются сами через 2-3 секунды, другие нужно закрывать принудительно. Хотелось бы чтобы скрипт обрабатывал по очереди 1,2,3,4,5 вкладки, а всё лишнее после каждой из них закрывал, а эти пять не трогал и так по кругу.

Вот у меня с вами одинаковая ситуация.

Разница только, что мне необходимо что бы одна вкладка оставалась открытой, а не пять, как в вашем случае. А вторая вкладка закрывалась после выполнения сценария аймакросом, если она открыта.

:tongue2: Ура, всё заработало, SET !REPLAYSPEED MEDIUM добавил и всё, скорость была бешеная и сайт не успевал за Аймакросом.
Но появился следующий вопрос, а можно сделать циклы бесконечные? Или больше 99999 не сделать?


Может кому будет полезная информация.
О работе скриптов на разных операционках. Может буду не прав, тогда укажите на ошибки.
Итак, есть два компа, точнее комп и ноут, на компе стоит Винда 8, на ноуте Винда ХР с третьим сервиспаком.
Програмное обеспечение в плане Мозилы и iMacros одинаковое, написал скрипт из которого вызывается
*.iim макросы с кранами и скрипты *.js с кранами, на компе с Виндой 8 все работает нормально,
на ноуте с Виндой ХР, периодически виснет скрипт, причем виснет, либо на вызове нового *.js на первых двух
строчках, вот они
скрытый текст

Выделить код

Код:

SET !TIMEOUT_STEP 0
TAB CLOSEALLOTHERS


либо, но намного реже, один раз всего видел, на временной паузе после окончания исполнения *.iim,
частично решил проблему расстановкой временных пауз между вызовами скриптов, но полностью
не удалось. Проблему на ноуте с Виндой ХР со скриптами удалось решить, только запихав все вызываемые скрипты
в один скрипт, все стало работать без сбоев, но из-за большого объема скрипта стал медленнее работать.
Вот в общем и все, что я хотел сказать.

Даниил955447112, уже не первое замечание про поиск!

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по фразе: "бесконечный цикл"

InfSub Спасибо за помощь и за терпение,всё что было задумано,с вашей помощью всё реализовалось:rock:
Но всё же позвольте задать ещё один,так сказать глупый вопрос.

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!COL1}}'.replace('?ref=browser','photos')")


Как переделать этот параметр в js?

Gergi
я не понимаю, вы ни чему не учитесь что-ли?, на каждой странице обсуждается работа с iimGetExtract()/iimGetLastExtract()... ну что тут сложного???

скрытый текст

Выделить код

Код:

var r=iimGetExtract().replace('?ref=browser','photos')

флуд
А мне не очень понравилось расширение

либо обосновывайте свое мнение, либо перечитайте правила:

Правила форума
2.  Не рекомендуется:
2.16
  Создавать сообщения ради накрутки количества сообщений. Если Вам нечего сказать — лучше ничего не говорить. Не надо писать сообщения только для того, чтобы отметиться. Такие сообщения будут удаляться без предупреждения.

InfSub

Всем привет! когда наводишь мышь на человека в одноклассниках всплывает окно есть ли команда которая открывает это окно?

не указан адрес проблемной страницы

InfSub

InfSub пишет

Даниил955447112, уже не первое замечание про поиск!

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по фразе: "бесконечный цикл"

:( Не нашёл.
Есть про js, а про iim, нет ни слова.

Даниил955447112 пишет

Есть про js, а про iim, нет ни слова.

в iim и нельзя сделать бесконечный цикл, для этого - есть js

Даниил955447112

Сделай управляющий JS с бесконечным циклом и из него уже запускай твой iim-скрипт.

Управляющий JS с бесконечным циклом

Выделить код

Код:

for ( ; ; )
{
iimPlay("my_script.iim")  // <--- запуск твоего iim скрипта
}

Нужна еще одна переменная, как быть?

скрытый текст

Выделить код

Код:

SET !VAR0 EVAL("var randomNumber=Math.floor(Math.random()*4 + 29); randomNumber;")
SET !DATASOURCE {{!VAR0}}.txt
SET !VAR0 NULL
SET !VAR1 ""
SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*1 + 1); randomNumber;")
ADD !VAR1 {{!COL1}}<BR>


SET !VAR0 EVAL("var randomNumber=Math.floor(Math.random()*4 + 37); randomNumber;")
SET !DATASOURCE {{!VAR0}}.txt
SET !VAR0 NULL
SET !VAR9 ""
SET !DATASOURCE_LINE EVAL("var randomNumber=Math.floor(Math.random()*1 + 1); randomNumber;")
ADD !VAR9 {{!COL1}}<BR>

CONTENT={{!VAR1}{{!VAR2}}{{!VAR3}}{{!VAR4}}{{!VAR5}}{{!VAR6}}{{!VAR7}}{{!VAR8}}{{!VAR9}}{{!VAR0}} +1

bop101 пишет

как быть?

Обернуть код в JS и не извращаться с этими iim-ами.

Это же бред полный в iim-ax JS код запускать  smile_90.gif

bop101 пишет

Нужна еще одна переменная, как быть?

скрытый текст

Выделить код

Код:

SET YOUR_VAR_NAME YOUR_VALUE


или - совет выше

Как вытянуть текст между тегами?

скрытый текст

Выделить код

Код:

<span id="http_proxy349602">46.38.51.49:33430</span>


Пробовал вот так
скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("var s=document.getElementsByTagName('span').innerHTML; s")
PROMPT {{!VAR2}}


выдает ошибку : ReferenceError: document is not defined, line 16 (Error code: -1001)

bms.java
Тебе уже пару раз отвечали:
имакрос не работает с обьектом document.


Код примерно так должен выглядеть

TAG POS=1 TYPE=span ATTR=id:http_proxy* EXTRACT=TXT

PRESIDENT пишет

имакрос не работает с обьектом document.

Так я же в js выполнил, а результат уже отправил в макрос. То есть imacros получил лишь результат выполненного js! Или я чего то не догоняю?
Спасибо

Добрый день , а подскажите в ОК добавить фото в группу можно только если оно находится на сервере или можно и с ПК ? Вопрос такой уже был пост 1380. Неделю курю форум пока ни чего не понимаю, только учусь.

не указан адрес проблемной страницы

InfSub

Спасибо, понял, опишу все подробно

bms.java пишет

Так я же в js выполнил

не путайте js на сайте и js в iMacros - совершенно разные области видимости

Влад75
При чём здесь имакрос.
Спрашивай там на сайте техподдержку.
Здесь разбераем вопросы/проблемы со скриптами/макросами.

PRESIDENT
предположу - что речь о невозможности добавить локальный файл через скрипт, отсюда и вопрос

Всем доброго дня. Подскажите пожалуйста
Приходит ответ с rucaptcha OK|457878|haldfyr
Извлекаю haldfyr и задаю переменную !VAR4

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BODY ATTR=TXT:* EXTRACT=TXT
SET !VAR3 {{!EXTRACT}}
SET !VAR4 EVAL("var s=\"{{!EXTRACT}}\"; l=s.lastIndexOf(\"|\");s=s.substr(l+1);")


Как извлечь в переменную  !VAR5 457878
Спасибо

Koks

скрытый текст

Выделить код

Код:

SET !VAR5 EVAL("var s='{{!EXTRACT}}',l=s.indexOf('|')+1;s.substr(l,s.lastIndexOf('|')-l);")

Здравствуйте.
EXTRACT=HTM достает вот такой код:

скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" class="im_editable" tabindex="0" id="im_editable295447416" contenteditable="true"></div>


Мне из него нужно достать 295447416. Я так понимаю, что сделать это можно через регулярку. Но я в ней плохо шарю.
Попытался сделать вот так:
скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:im_editable* EXTRACT=HTM'); r=iimGetExtract();
var url = r.replace(/" contenteditable.*?<\/div>/g, ''); 
var g = url.slice(86, 95);


И вроде все работает, но только с id такой длины, будет короче или длинней и уже не работает код.
Есть в js функция поиска и замены в строке без использования регулярных выражений?
p.s. не по теме ветки, извините.


Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler]

InfSub

Tungen

скрытый текст

Выделить код

Код:

var url = r.match(/im_editable(\d+)/).pop();

Спасибо. понял, описываю все подробно. Есть у меня шт. 30групп в Одноклассниках в которые я даю объявления. Это выглядит так

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Потом нажимаю на добавить фото , загружаю фото
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


и добавляю к нему описание. Я думал все это можно сделать просто с помощью записи imacros, но не смог. Хочу для начала понять как можно в 1 группу загрузить 1 фото и добавить к нему описание... Спасибо.
Я поиском пользовался, пока не понимаю ....

Попробуй в разных форматах команды записать.

PRESIDENT пишет

Попробуй в разных форматах команды записать.

Вот 4 варианта

1.

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
URL GOTO=http://ok.ru/romamashka/album/52877720354910
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Users\vlad\Desktop\Фот29.03.14\S5000342.JPG
TAG POS=1 TYPE=TEXTAREA ATTR=ID:descrInp812856138334 CONTENT=Большой<SP>выбор<SP>развивающих<SP>игр<SP>и<SP>игрушек<SP>для<SP>детей<SP>от<SP>1<SP>до<SP>школьников,<SP>3д<SP>пазлы,<SP>лото,<SP>карточки<SP>Домана,<SP>кубики<SP>Никитиных<SP>и<SP>многое<SP>другое...<SP><BR>Полное<SP>описание<SP>http://roma-mashka.com.ua/<BR>+38<SP>099<SP>406<SP>95<SP>95<BR>+38<SP>063<SP>825<SP>53<SP>45
TAG POS=1 TYPE=UL ATTR=TXT:Добавить<SP>фотоOK.photoUpload.init({testUrl:<SP>'//up.odnok*


настройки:
Add_1.png

2.
скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
URL GOTO=http://ok.ru/romamashka/album/52877720354910
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&ONCHANGE:OK.photoUploadFacade.async.onFileSelect(event<SP>||<SP>arguments[0],<SP>{"createOnAbort":"","uploaderItemId":"uploaderItem","groupId":"52877333364830","albumId":"52877720354910","createAt":"/web-api/photo/upload/group/create?flashId=fileapiful_group_album\u0026groupId=52877333364830\u0026albumId=52877720354910\u0026","attachExif":"1","allocateAt":"/web-api/photo/upload/group/allocate?flashId=fileapiful_group_album\u0026groupId=52877333364830\u0026albumId=52877720354910\u0026type=G\u0026count=","cardBlock":"UploadedGroupPhotoCardBlock","flashId":"fileapiful_group_album","messages":"{\"bigImageError\"<SP>:<SP>\"Изображение<SP>слишком<SP>большое<SP>и\u0026nbsp;не\u0026nbsp;может<SP>быть\u0026nbsp;добавлено.\",\"noServerDataError\"<SP>:<SP>\"Загрузка<SP>фото<SP>недоступна.<SP>Попробуйте<SP>немного<SP>позже.\",\"invalidFormatError\"<SP>:<SP>\"Файл<SP>неверного<SP>типа.\",\"smallImageError\"<SP>:<SP>\"Изображение<SP>слишком<SP>маленькое<SP>и\u0026nbsp;не\u0026nbsp;может<SP>быть\u0026nbsp;добавлено.\",\"otherError\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото\",\"tooManySelected\"<SP>:<SP>\"Выбрано<SP>слишком<SP>много<SP>файлов\",\"createDisabled\"<SP>:<SP>\"Загрузка<SP>фото<SP>недоступна.<SP>Попробуйте<SP>немного<SP>позже.\",\"userBlocked\"<SP>:<SP>\"Вы<SP>пока<SP>не<SP>можете\u0026nbsp;добавлять<SP>фото\",\"limitReached\"<SP>:<SP>\"Активируйтесь,\u0026nbsp;чтобы<SP>добавить<SP>больше<SP>фотографий.\",\"readError\"<SP>:<SP>\"Произошла<SP>ошибка<SP>при<SP>попытке<SP>чтения<SP>файла.\",\"unknownError\"<SP>:<SP>\"Произошла<SP>ошибка<SP>во<SP>время<SP>добавления<SP>фотографии.\",\"serviceError\"<SP>:<SP>\"Фотографии<SP>временно<SP>недоступны.<SP>Пожалуйста,<SP>попробуйте<SP>позднее.\",\"wrongTypeError\"<SP>:<SP>\"Файл<SP>неверного<SP>типа.\",\"uploadError\"<SP>:<SP>\"фото<SP>не<SP>добавлено.\",\"code501\"<SP>:<SP>\"Файл<SP>неверного<SP>типа.\",\"code502\"<SP>:<SP>\"Файл<SP>неверного<SP>типа.\",\"code503\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Файл<SP>поврежден.\",\"code504\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Неподдерживаемый<SP>запрос<SP>к<SP>серверу.\",\"code505\"<SP>:<SP>\"Изображение<SP>слишком<SP>маленькое<SP>и<SP>не<SP>может<SP>быть<SP>добавлено.\",\"code506\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Неизвестная<SP>ошибка<SP>сервера.\",\"code507\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Изображение<SP>слишком<SP>большое.\",\"code508\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Файл<SP>не<SP>содержит<SP>изображение.\",\"code509\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Невозможно<SP>определить<SP>размерность<SP>изображения.\",\"code510\"<SP>:<SP>\"Ошибка<SP>загрузки<SP>фото.<SP>Превышено<SP>время<SP>ожидания<SP>обработки<SP>файла.\",\"onWindowClosingMessage\"<SP>:<SP>\"Воу!<SP>Воу!<SP>Фоточки<SP>еще<SP>не<SP>все<SP>загрузились!\",\"fileUploadAborted\"<SP>:<SP>\"загрузка<SP>прервана\",\"standInQueue\"<SP>:<SP>\"загружается\"}","afterUploadStates":"[\"altGroupEditAlbumPhotos\"]","pageUrl":"/dk?st.cmd=altGroupEditAlbumPhotos\u0026st.groupId=52877333364830\u0026st.albumId=52877720354910","hideTimeout":"60000"});&&TITLE:Добавить<SP>фото&&ACCEPT:image/*&&MULTIPLE:true&&CLASS:html5-upload-link<SP>__before-upload&&NAME:photo CONTENT=C:\Users\vlad\Desktop\Фот29.03.14\S5000337_1.jpg
TAG POS=1 TYPE=TEXTAREA ATTR=ROWS:1&&COLS:16&&NAME:descrInp812856366174&&MAXLENGTH:255&&DATA-PLACEHOLDER:Добавить<SP>описание&&CLASS:itx&&ID:descrInp812856366174 CONTENT=Большой<SP>выбор<SP>развивающих<SP>игр<SP>и<SP>игрушек<SP>для<SP>детей<SP>от<SP>1<SP>до<SP>школьников,<SP>3д<SP>пазлы,<SP>лото,<SP>карточки<SP>Домана,<SP>кубики<SP>Никитиных<SP>и<SP>многое<SP>другое...<SP><BR>Полное<SP>описание<SP>http://roma-mashka.com.ua/<BR>+38<SP>099<SP>406<SP>95<SP>95<BR>+38<SP>063<SP>825<SP>53<SP>45
TAG POS=1 TYPE=UL ATTR=CLASS:photo-sc_grid<SP>__inner-sm
TAG POS=1 TYPE=SPAN ATTR=CLASS:compactProfile_n


настройки:
Add_2.png

3.

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
URL GOTO=http://ok.ru/romamashka/album/52877720354910
EVENT TYPE=CLICK SELECTOR="#photo-sc_grid-6692290612>LI>SPAN>INPUT" BUTTON=0
EVENT TYPE=MOUSEUP POINT="(775,147)"
EVENT TYPE=MOUSEDOWN SELECTOR="#descrInp812856615518" BUTTON=0
EVENT TYPE=MOUSEUP POINT="(341,555)"
EVENTS TYPE=KEYPRESS SELECTOR="#descrInp812856615518" CHARS="vv"
EVENT TYPE=CLICK SELECTOR="#hook_Loader_GroupUploadedPhotosMRBLoader>UL" BUTTON=0
EVENT TYPE=CLICK SELECTOR="#topPanelLeftCorner" BUTTON=0


настройки:
Add_3.png

4.

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
URL GOTO=http://ok.ru/romamashka/album/52877720354910
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(3)>UL>LI>SPAN>INPUT" BUTTON=0
EVENT TYPE=MOUSEUP POINT="(782,162)"
EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>UL>LI:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV>TEXTAREA" BUTTON=0
EVENT TYPE=MOUSEUP POINT="(377,545)"
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>UL>LI:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV>TEXTAREA" CHARS="vv"
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>UL" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(4)>DIV:nth-of-type(3)>DIV>DIV>DIV>A>DIV" BUTTON=0


настройки:
Add_4.png

Ни один не работает

Добрый вечер. Есть основной файл, он запускает iim файлы

скрытый текст

Выделить код

Код:

var myip = iimPlay("FB_REG/my_ip.iim");
alert(myip);


код iim
скрытый текст

Выделить код

Код:

URL GOTO=http://www.seogadget.ru/location
TAG POS=1 TYPE=input ATTR=CLASS:url&&NAME:addr EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}


В iim все выполняется нормально - извлекается то, что нужно. Но вот в js выдает единицу, хотя должен ip адрес.
Единица это булево значение что-ли( true )? Как передать в js извлеченные данные из iim?

bms.java

скрытый текст

Выделить код

Код:

iimPlay("FB_REG/my_ip.iim");
alert(iimGetExtract());

bms.java

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=http://www.seogadget.ru/location\nTAG POS=1 TYPE=input ATTR=CLASS:url&&NAME:addr EXTRACT=TXT');
myip=iimGetExtract();
alert(myip);

Спасибо, не знал про iimGetExtract

Еще вопрос. Вот такой код

скрытый текст

Выделить код

Код:

var proxy = iimGetExtract().split('[VAR2]');
var sravn_proxy = proxy;                                                            
alert(myipiim);
var sravn_proxy=sravn_proxy.substring(0,sravn_proxy.indexOf(':'));
alert(sravn_proxy);


выдает ошибку - TypeError: sravn_proxy.substring is not a function, line 12 (Error code: -991)
В редакторе JS все выполняется, как и положено, в iim тоже все отлично. В чем ошибка?
P.S если делать в iim и предавать в js, то передается не обрезанная строка, а целая.
вот код imm навсякий случай
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=ID:http_proxy3*
WAIT SECONDS=1
TAG POS=1 TYPE=span ATTR=id:http_proxy* EXTRACT=TXT
SET !VAR2 {{!EXTRACT}}
SET !VAR3 EVAL("var s=\"{{!VAR2}}\"; s.substring(0,s.indexOf(':'));")

bms.java пишет

sravn_proxy.substring is not a function

значит, что данные пришли не в том формате, в данном случае - не в виде строки, а в виде объекта, точнее массива, полученного с помощью split()

Привет всем! подскажите пожалуйста с помощью какой команды можно писать людям сообщения в одноклассниках,  'кроме

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#ok-e-m" CHARS=привет


хочу писать  разные сообщения людям из txt файла, помогите очень прошу..

Подскажите пожалуйста по запросу "загрузить картинку" ни чего не нашел, хоть в каком направлении двигаться
понял, что рабочее у меня только

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
SET !ERRORIGNORE YES
URL GOTO=http://ok.ru/romamashka/album/52877720354910


Спасибо

volchsek, Влад75

скрытый текст
Ну значит никто не занимается одноклассниками.
Я так вообще соцсети терпеть не могу.smile_26.gif

PRESIDENT пишет

volchsek, Влад75

скрытый текст
Ну значит никто не занимается одноклассниками.
Я так вообще соцсети терпеть не могу.http://www.web-ip.ru/images/smiles/smile_26.gif

Так вопрос в том как фото загрузить? Какая разница это ОК или ВК.

Влад75
Разница в том, что там используется нестандартный способ загрузки файлов

InfSub пишет

Влад75
Разница в том, что там используется нестандартный способ загрузки файлов

А, так для меня они все нестандартные :D:D. Значит все очень сложно и ни кто не подскажет.... или с моими знаниями это только время тратить?

Влад75 пишет

и ни кто не подскажет..

может - кто-то и подскажет, у меня в данный момент, нет времени искать способы реализации
так что, могу только посоветовать то, что уже когда-то советовал, использовать картинки из интернета

InfSub пишет
Влад75 пишет

и ни кто не подскажет..

может - кто-то и подскажет, у меня в данный момент, нет времени искать способы реализации
так что, могу только посоветовать то, что уже когда-то советовал, использовать картинки из интернета

Намек понял....., пошел читать. спасибо.

Влад75
Вот работающий код на js

скрытый текст

Выделить код

Код:

iimPlayCode ('TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\\images.png\nwait seconds=6');
iimPlayCode ('TAG POS=1 TYPE=* ATTR=CLASS:itx_w Extract=htm');
id = iimGetLastExtract().split('textarea id="')[1].split('" ')[0];
iimPlayCode ('EVENTS TYPE=KEYPRESS SELECTOR="#'+id+'" CHARS="Привет"');
iimPlayCode ('TAB OPEN\nTAB T=2\nTAB CLOSE')


Думаю если попробовать можно такое сделать через eval, но я в нем полный ноль...

Hamzat пишет

Влад75
Вот работающий код на js

скрытый текст

Выделить код

Код:

iimPlayCode ('TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\\images.png\nwait seconds=6');
iimPlayCode ('TAG POS=1 TYPE=* ATTR=CLASS:itx_w Extract=htm');
id = iimGetLastExtract().split('textarea id="')[1].split('" ')[0];
iimPlayCode ('EVENTS TYPE=KEYPRESS SELECTOR="#'+id+'" CHARS="Привет"');
iimPlayCode ('TAB OPEN\nTAB T=2\nTAB CLOSE')


Думаю если попробовать можно такое сделать через eval, но я в нем полный ноль...

Спасибо, буду пробовать, хотя понимаю шансы невелики....:rolleyes:

Мне нужно на странице навести мышку в определенные координаты, что бы вылезло всплывающие окно.
А там в окне кликнуть по ссылке.
Как это сделать?

6anzay пишет

Мне нужно на странице навести мышку в определенные координаты, что бы вылезло всплывающие окно.
А там в окне кликнуть по ссылке.
Как это сделать?

Может хотя бы ссылку на сайт скините?

6anzay пишет

Как это сделать?

Нажми кнопку запись, запиши нужные команды.
И сюда уже с вопросами по коду, что не получается.

ругань
А то хрен поймёшь, что за вопрос

Подскажите. На компьютере при нажатии на iMacros он появляется и отодвигает (уменьшает ширину) вкладки, а на ноутбуке при открытии он закрывает собой часть вкладки. Как это можно исправить?

Доброе время суток!
Вот хочу извлечь а не извлекается, может что посоветуете?

HTML:

скрытый текст

Выделить код

Код:

<tr>
<td class="BodyText"><strong>Apartment Information</strong></td>
 </tr>
<tr>
<td class="BodyText">
Diamond Springs Apt <br>
643 Pearl Place<br>
 Diamond Springs, CA 95619<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</td>
</tr>


*.iim:
скрытый текст

Выделить код

Код:

TAG XPATH="//strong[starts-with(text(),'Apartment')]/following::br[1]/preceding::text()[1]" EXTRACT=TXT


Цель: положить в !EXTRACT строку 'Diamond Springs Apt'

Сообщение об ошибке:

TypeError: element.getBoundingClientRect is not a function, line: 11 (Error code: -1001)

imacros - 8.6.0.1
firefox - 25.0.1, 29.0.1

zaskock

Как то так

Выделить код

Код:

TAG POS=1 TYPE=td  ATTR=class:BodyText extract=txt

Возможно номер позиции будет другой 2...3... и т.д.

подскажите пожалуйста что у меня в коде неправильно

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=P ATTR=CLASS:free_play_element&&ID:free_play_error EXTRACT=TXT
SET htmlcode {{!EXTRACT}}
'PROMPT {{htmlcode}}
SET !EXTRACT NULL
SET feedback EVAL("if (\"{{htmlcode}}\" == \"Incorrect captcha entered\" || \"{{htmlcode}}\" == \"'Request timed out. Please try again.\") {var x = \"OK\";} else {var x = \"reportbad\";} x;")
TAB OPEN
TAB T=2
URL GOTO=http://rucaptcha.com/res.php?key={{!VAR2}}&action={{feedback}}&id={{captcha_id}}


нужно чтобы подавал жалобу при неправильной капчи

Koks

скрытый текст

Выделить код

Код:

... {var x = \"reportbad\";} else {var x = \"OK\";}

Имеется на сайте кнопка Фоллов у этой кнопки класс меняеться. Нужно что бы к этому названию класса в конец добавилось "dimmed" если скрипт его нашел

скрытый текст

Выделить код

Код:

TAG POS='+i+' TYPE=A ATTR=CLASS:"follow-user-link follow"\n'

kani339
smile_145.gif Чево ???
Вопрос не понятен, но может просто звездочка в конце поможет *

...TYPE=A ATTR=CLASS:follow-user-link*follow*

Извлекаю из вконтакте имя и фамилию на странице пользователя из шапки.
Как сделать, чтобы удалялось всё кроме последних двух слов имени и фамилии?
Просто у всех время по разному.

Выделить код

Код:

TAG POS=1 TYPE=H1 ATTR=ID:title EXTRACT=TXT

пример извлечённого текста
Online заходил сегодня в 22:37 Азамат Мусагалиев

Алим

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=H1 ATTR=ID:title EXTRACT=TXT');
 a=iimGetLastExtract().split(/:\d+/).pop();   
 alert(a);

Доброго времени суток, форумчане!
Столкнулся с проблемой, точнее заметил что функция EVENT TYPE=KEYPRESS SELECTOR не срабатывает при свернутом браузере.
Либо начинает повторять вставку текста, либо вообще некорректно добавляет текст, который задан в параметре Chars
Сталкивался кто нибудь с данной проблемой и возможно ли ее решить как-то.
Извините если не по правилам форума оформил)

Здравствуйте, подскажите команду как перейти на требуемую ссылку..

в активной вкладке открыт адрес:

скрытый текст

Выделить код

Код:

http://likesrock.com/view/125163#


начальный код в imacros:
скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
URL GOTO=http://likesrock.com/tasks/ws-sites/


команда
скрытый текст

Выделить код

Код:

URL GOTO=http://likesrock.com/tasks/ws-sites/


не открывает требуемую ссылку, а просто пропускает команду.. почему так? что нужно исправить?

dimond44
Попробуй в другокм формате через TAG POS=... клик записать.


kur-kur

Да всё прекрасно переходит

переходит потому что в вас наверно в адресной строке пусто или какой - то другой домен, а у меня стоит

скрытый текст

Выделить код

Код:

http://likesrock.com/view/125163#


разобрался, при переходе выходит сообщение "действительно хотите покинуть сайт" "остаться на странице" "покинуть сайт".
А как можно дать команду, чтобы нажималось на "покинуть сайт" если вдруг такое сообщение вылезит?

kur-kur пишет

как можно дать команду, чтобы нажималось на "покинуть сайт"

скрытый текст

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=
URL GOTO=...

спасибо, проверю как выскачит

Подскажите почему для прокуртке страницы, не береться значение из переменной. Что не так делаю?

скрытый текст

Выделить код

Код:

var scrollPage = 100;
    iimPlay('CODE:'
        + 'url goto=javascript:window.scrollBy(0,scrollPage)\n'
    );

kani339

скрытый текст

Выделить код

Код:

...'+scrollPage+'...

kani339

скрытый текст

Выделить код

Код:

var scrollPage = 100;
iimPlay('CODE:url goto=javascript:window.scrollBy(0,'+scrollPage +')');

InfSub пишет

kani339

скрытый текст

Выделить код

Код:

...'+scrollPage+'...

Огромное спасибо ;)

оффтопик
Скажите как в Хроме запустить .js файл
iMacros не видит это расширение

Правила форума
2.  Не рекомендуется:
2.21
  Отсылать сообщения, не соответствующие обсуждаемой теме (оффтопик). Сообщения будут удаляться без предупреждения или выделяться в отдельные темы.

InfSub

Ребята, не могу вставить картинку в рассылку. Посмотрите, что не так? Текст идет а картинка не присоединяется.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS=15
URL GOTO=сайт
WAIT SECONDS=5
SET !VAR3 "ссылка на картинку"
SET !VAR4 ""
SET !VAR5 "текст "
TAG POS=4 TYPE=DIV ATTR=TXT:Написать*
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!VAR3}} 
EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!VAR4}}
EVENT TYPE=KEYPRESS SELECTOR="#post_field" KEY=13
WAIT SECONDS= 15
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS="текст " 
WAIT SECONDS= 5
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field CONTENT={{!VAR5}}

Миликсия

Куда это, какой сайт ?

И спряч код в спойлер и оберни тегом code, а то модеру опять лишняя работа.

Вконтакте

Возник вопрос. Можно ли  средствами Imacros вызвать консоль и выполнить в консоли команду?
Чтобы понятней было об чем речь, скрины под спойлером (вызывается правой кнопкой мышки "исследовать элемент") :

скрытый текст
GhpML4h.jpg
z8MtBds.jpg

Ну и традиционно. За подсказку в практическом решении вопроса, закину доллар на пиво :)

Xeedum
а чем вам js не угодил? все или почти все, что выполняется в консоли, можно выполнить и из js-скрипта

Здравствуйте!
Сварганил js-скрипт по сбору сатошей с двух кранов (краны без капчи). Добавил условие, если случится выход из аккаунта, то скрипт снова войдёт и продолжит работу. Повторяется цикл 9999 раз. И работает без передышки (по идее так должно было быть). Там сначала  собираются минутные сатоши, потом 5-ти, потом 10-ти, 30-ти, часовые и трёхчасовые.
Всё бы ничего, да только оперативная память на таком скрипте съедается со страшной силой. Через несколько минут работы, комп практически зависает.
Подскажите, а из-за чего там вся оперативка съедается буквально за несколько  минут?  В чём загвоздка?
Как это исправить? Что в этом js-скрипте переделать надо?


js-скрипт:

скрытый текст

Выделить код

Код:

var url1='http://mega-bonus.org/account/bonuss1'; 
var url2='http://mega-bonus.net/account/bonuss1'; 
var iimPlayCode=iimPlayCode, t0='SET !TIMEOUT_STEP 0\n', t1='SET !TIMEOUT 10\n', t2='SET !TIMEOUT_TAG 20\n', t3='SET !TIMEOUT 3\n', f=0;


for(a=1; a<9999; a++){ // Цикл для перебора аккаунтов


for(i=1; i<=15; i++){
   iimPlayCode(t3+'URL GOTO='+url1); 
      iimPlayCode('WAIT SECONDS=0');
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Имя_Пользователя'); if(f>0) break; else 
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=Логин');
   iimPlayCode('SET !ENCRYPTION NO');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=Пароль');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');}
   
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:dfhdfndfgsgsdwrj');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss2');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjhfgdhjyttyrhg');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss3');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:hmfdfsrebfghs');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss4');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjlgcfgaesdrr');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss5');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kljhjngffscfd');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss6');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:nmfbfdfrsgsfggf');
   
   for(i=1; i<=15; i++){
   iimPlayCode(t3+'URL GOTO='+url2); 
      iimPlayCode('WAIT SECONDS=0');
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Имя_Пользователя'); if(f>0) break; else 
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=Логин');
   iimPlayCode('SET !ENCRYPTION NO');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=Пароль');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');} 
   
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:sfghfjfg57tgfhdd');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss2');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjhfgdhjyttyrhg');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss3');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:hmfdfsrebfghs');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss4');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjlgcfgaesdrr');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss5');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kljhjngffscfd');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss6');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:nmfbfdfrsgsfggf');}

dvitkovs

скрытый текст
После else идут несколько команд:
ввести логин, вести пасс, нажать кнопку, поэтому нужны фугурные скобки.
Иначе else выполнит только первую команду.

f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Имя_Пользователя');
if(f>0) break;
else {
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=Логин');
  iimPlayCode('SET !ENCRYPTION NO');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=Пароль');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');
}


Но это не причина зависания, это мазилка сама тупит.
Поставь адблок и срежь всю ненужную бяку, типа картинок флеша и др.

PRESIDENT пишет

Но это не причина зависания, это мазилка сама тупит.
Поставь адблок и срежь всю ненужную бяку, типа картинок флеша и др.

Ну как же не причина зависания?:)
Если оперативной памяти свободной ввобще не остаётся, то как комп будет работать?
А в диспетчере файлов я наблюдаю как оператисная память тает на глазах при работе данного скрипта. Причём, все картинки и все плагины, а не только ява и флеш, у меня естественно давно отключены.

Тут дело в скрипте. Вот с другими скриптами у меня подобного не происходит. Когда например я запускал аналогичный, но  упрощённый скрипт iim, а повторы задавал указанием циклов в самом макросе, то там всё работало без съедания памяти оперативной. И могло хоть сутки работать. Правда там периодически выбрасывало из аккаунта и надо было вручную входить.
А тут я задал условие, что если выбросит, то скрипт снова войдёт (поэтому и пришлось переделывать с iim на js). Но зато теперь оперативка тает на глазах.
Как это происходит -  не могу понять. Но думаю, это из-за того, что мало опыта у меня в языке программирования ява-скрипт и поэтому скрипт написан малограмотно. Он-то работает как и задумано, но... оперативка исчезает в считаные минуты. Видать тут в самом скрипте что-то не то. Нету очищения или сброса кэша. Как это можно сделать? И вообще, в этом ли дело?  :sick:

скрытый текст

Выделить код

Код:

var url1='http://mega-bonus.org/account/bonuss1'; 
var url2='http://mega-bonus.net/account/bonuss1'; 
var t0='SET !TIMEOUT_STEP 0\n', t1='SET !TIMEOUT 10\n', t2='SET !TIMEOUT_TAG 20\n', t3='SET !TIMEOUT 3\n', f=0;


for(a=1; a<9999; a++){ // Цикл для перебора аккаунтов


for(i=1; i<=15; i++){
   iimPlayCode(t3+'URL GOTO='+url1); 
      iimPlayCode('WAIT SECONDS=0');
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Имя_Пользователя'); if(f>0) break; else 
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=Логин');
   iimPlayCode('SET !ENCRYPTION NO');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=Пароль');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');}
   
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:dfhdfndfgsgsdwrj');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss2');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjhfgdhjyttyrhg');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss3');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:hmfdfsrebfghs');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss4');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjlgcfgaesdrr');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss5');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kljhjngffscfd');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.org/account/bonuss6');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:nmfbfdfrsgsfggf');
   
   for(i=1; i<=15; i++){
   iimPlayCode(t3+'URL GOTO='+url2); 
      iimPlayCode('WAIT SECONDS=0');
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Имя_Пользователя'); if(f>0) break; else 
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=Логин');
   iimPlayCode('SET !ENCRYPTION NO');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=Пароль');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');} 
   
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:sfghfjfg57tgfhdd');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss2');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjhfgdhjyttyrhg');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss3');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:hmfdfsrebfghs');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss4');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kjlgcfgaesdrr');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss5');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:kljhjngffscfd');
   iimPlayCode(t3+'URL GOTO=http://mega-bonus.net/account/bonuss6');
   iimPlayCode(t3+'SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:nmfbfdfrsgsfggf');}

dvitkovs
Исправь сначала что тебе выше написал.smile_15.gif
Убери это

iimPlayCode('WAIT SECONDS=0');

Исправь вот этот бред

iimPlayCode(t3+'SET !TIMEOUT_STEP 0\n...

И вообще зачем ты один скрипт 2 раза повторяешь ???
У тебя отличаются только урлы smile_29.gif

PRESIDENT пишет

И вообще зачем ты один скрипт 2 раза повторяешь ???

потому, что я сразу написал, что в ява-скриптах не очень, поэтому скрипт написан технически малограмотно, потому я тут и обратился за помощью.

PRESIDENT пишет

Исправь вот этот бред

А почему это бред? Я ведь специально так сделал, чтоб странички не грузились по целой минуте. Достаточно и 3 сек, чтоб на страничке появилось нужное содержимое для выполнения следующей команды. Вот и всё.

PRESIDENT пишет

У тебя отличаются только урлы

Ну в принципе да, только урлы. И что? smile_28.gif

Подскажите, что делаю не так, нужно что бы можно было вставить урл в ПРОМТ а затем перейти по данному урлу

скрытый текст

Выделить код

Код:

+ 'PROMPT Please enter URL:' +url+'\n'
+ 'URL GOTO= '+url+'\n'

kani339 пишет

нужно что бы можно было вставить урл в ПРОМТ а затем перейти по данному урлу

скрытый текст

Выделить код

Код:

url=prompt('Please enter URL: ','');
  iimPlayCode('URL GOTO='+url);


dvitkovs

скрытый текст
Исправь все эти строки, и добавь фигурные скобки после else

iimPlayCode(t3+'SET !TIMEOUT_STEP 0\n...

У тебя уже задан таймоут в t3, не нужно его ещё раз задавать.

PRESIDENT сделал всё как ты подсказал. С таймаут t3 там действительно мой косяк, сразу не заметил. Исправил, но на суть проблемы это не повлияло. Фигурные скобки тоже не принесли нужного результата. Как оперативка съедалась так и съедается. За 5 минут фаерфокс больше 1Гига слопал. Я там даже команду CLEAR добавил на всякий случай, чтоб после цикла очищался кэш и куки, но это ничего не дало. Ну что я врать буду, что ли? Вот полюбуйтесь на скриншот, там всё видно.

скрытый текст
25pFo.png

Как видно на скриншоте, нету там ни каких картинок. Я и картинки отключил и плагины все и флеш и всё что можно.

dvitkovs


скрытый текст
Попробуй в конце каждого цикла запускать такой батник

Где pathToFirefox путь к папке с фаерфоксом

Выделить код

Код:

SET pathToFirefox=D:\FAERFOX\
erase /F /Q %pathToFirefox%\Data\profile\*.sqlite
erase /F /Q %pathToFirefox%\Data\profile\*.sqlite-shm
erase /F /Q %pathToFirefox%\Data\profile\*.sqlite-wal
erase /F /Q %pathToFirefox%\Data\profile\sessionstore.js
erase /F /Q /S %pathToFirefox%\Data\profile\cache2
erase /F /Q /S %pathToFirefox%\Data\profile\OfflineCache
erase /F /Q /S %pathToFirefox%\Data\profile\safebrowsig
erase /F /Q /S %pathToFirefox%\Data\profile\startupCache
erase /F /Q /S %pathToFirefox%\Data\profile\thumbnails

А вообще мне кажется твоя мазила гонит.
Скачай потрабельку и поставь адбок, в факе есть ссылки на все версии.

PRESIDENT не знаю я как пркруть данный батник к скрипту.
А дело не в мазилле. Я  ж не только на ней пробую, хотя она и так у меня портабельная. А ещё на ПалМуне пробую тоже портабельном. Поэтому... фик его знает чего так оперативка исчезает...
Наверное надо вернуться на версию iim. Там всё нормально работало. Правда вход в аккаунт надо всегда в ручную делать при выбросе из акка. Или сделать, чтоб постоянно входил в акк при повторе цикла. Правда это лишние секунды затрачиваются, которые и так на вес золлота. Ну да ладно, что ж поделаешь.
Ладно, что нибудь ещё придумаю.
Благодарю за помощь! Всё будет нормально! :)

dvitkovs

скрытый текст
затери в скрипте свои логин/пасс, а то может кому нить захочется деньгу на свои кошельки вывести.:/

Вот оптимизировал чуток скрипт, а то на твоё творение аж смотреть больно:(

Выделить код

Код:

var url=['mega-bonus.org','mega-bonus.net','bitcoin-kran.net']; 
var iimPlayCode=iimPlayCode, t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n', f=0;

var login='твой логин', pass='твой пасс';


 for(j=1; j<=999; j++){
 
 for(a=0; a<3; a++){
   iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS');
   iimPlayCode(t3+'URL GOTO='+url[a]); 
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Вход*аккаунт'); if(f>0){
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT='+login);
   iimPlayCode('TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT='+pass);
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');}
 f=iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Приглашайте*проект!'); if(f>0){
 for(i=1; i<=10; i++){
   iimPlayCode(t3+'URL GOTO='+url[a]+'/account/bonuss'+i);
 f=iimPlayCode(t0+'TAG POS=1 TYPE=B ATTR=TXT:Вы*получали*'); if(f<0){
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:*');
   iimPlayCode(t0+'TAG POS=1 TYPE=B ATTR=TXT:На*бонус*');}}}}
   iimPlayCode('WAIT SECONDS=10');}

И главное поставь адблок.
В мазиле инструменты Дополнения и там в поиске adblock.
Ищи АБП Такая красная фиговина.
там в настройках фильтров отключи все подписки, создай свою группу фильтров и туда добавь эти

Выделить код

Код:

@@http://code.jquery.com/jquery-latest.js
@@http://mega-bonus.*.js
|https://*
|http://*
dvitkovs пишет

как пркруть батник к скрипту

Описано в факе smile_15.gif

PRESIDENT пишет

скрытый текст
затери в скрипте свои логин/пасс, а то может кому нить захочется деньгу на свои кошельки вывести.:/

скрытый текст
Ой, блин... вот я лоханулся...
Благодарю, что заметил и подсказал! 
Щас надо пароль срочно менять, а то может уже кто-то успел скопировать... :P

Благодарю за помощь и за оптимизацию скрипта!
С блокировщиком рекламы и теми фильтрами, что ты указал, скорость стала просто феноменальной, по сравнению с тем что было до этого.
Правда, вместо предложенного adblock'а использую uBlock. Потому что на Пал Муне (пользую портабельку) adblock не фунциклирует, а с uBlock'ом всё просто летает и оперативка вообще не съедается! Ура! :)

Здравствуйте, может кто знает код, который сможет нажать кнопочку "отмена", когда выскакивает вот такое окошко в firefox

скрытый текст
222222.png

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

kur-kur

ONDIALOG POS=1 BUTTON=cancel CONTENT=\nURL GOTO ...

Порекомендуйте, как создать лог-файл из iMacros? Есть желание создавать каждый день текстовый лог-файл, с именем, начинающимся с даты. В него писать текстовую информацию, через разделитель, чтобы затем можно было анализировать результаты в Excel.

leadenbullet
SAVEAS ....
{{!NOW:yyyy-mm-dd}}

leadenbullet пишет

Порекомендуйте, как создать лог-файл из iMacros? Есть желание создавать каждый день текстовый лог-файл, с именем, начинающимся с даты. В него писать текстовую информацию, через разделитель, чтобы затем можно было анализировать результаты в Excel.

В js скрипте я делал так

скрытый текст

Выделить код

Код:

function log (textLog) {
    iimPlayCode ('SET !EXTRACT "[{{!NOW:dd/mm/yyyy|hh:nn:ss}}] '+textLog+'"\nSAVEAS TYPE=EXTRACT FOLDER=С:\\ FILE=log.log');
};

log('Скрипт начал работать');

Здравствуйте братки . Кто поможет есть CSV файл с данными который работает с iMacros
вот сам iMacros который работает отлично прописывает данные с CSV файла

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
SET !EXTRACT NULL
SET !DATASOURCE C:\address\address.csv
set !var1 0
add !var1 {{!loop}}
SET !DATASOURCE_LINE {{!var1}}
PROXY ADDRESS={{!col9}}
SET KEY {{!col1}}
SET DOG {{!col3}}
SET BTC {{!col4}}
SET LTC {{!col5}}
SET LOGIN {{!col6}}
SET PASS {{!col7}}
SET EMAIL {{!col8}}


А теперь вопрос как мне сделать ,прописать тоже самое только в JScript помогите советом пожалуйста



Правила раздела iMacros:
1.1
  Задавать вопросы, ответы на которые есть в «Мини FAQ по iMacros for Firefox» или легко находятся поиском. Сообщение с данным вопросом будет удалено. Тема - перенесена модератором в форум «Архив» без каких-либо объяснений. Перенос вашей темы в данный форум служит признаком того, что вы плохо искали (или не искали вовсе) ответ на свой вопрос.
1.3.2  Размещать код в открытом виде. Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler] или выложите на сайт «Pastebin».

InfSub

gepavlik
В факе есть описание js-функций для работы с iim-кодом.smile_15.gif

Здравствуйте!
Подскажите, как можно скопировать в буфер обмена почтовый ящик одноразовый вот с этого сервиса https://10minutemail.net/
Там есть нажатие на кнопку "скопировать в буфер обмена", но это не подходит, потому что у меня отключен ява-плагин, а без него эта штуковнина не работает.
Как бы скопировать почтовый адрес иначе? Например командой TAG POS=1 TYPE= ??? ATTR=TXT:* EXTRACT=TXT ?
Просто там эта команда исполняется как-то иначе и не получается обычным способом скопировать адрес в буфер обмена. Подскажите, что можно сделать проще всего?

dvitkovs


Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=CLASS:mailtext extract=TXT
PRESIDENT пишет

dvitkovs

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=CLASS:mailtext extract=TXT

Благодарю!

А подскажите ещё как извлечь-сохранить только данный код (что на скриншоте)

скрытый текст
25uES.png

из всего текста, который в письме прислали?
Есть такая команда:
скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\d+/)")


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

dvitkovs
Примерно так

PRESIDENT пишет

dvitkovs
Примерно так

Благодарю!
Вот что получилось:

скрытый текст

Выделить код

Код:

pars_infa = '... Code: 5f536fe841feed207021de93e1c52183If ...';
    metka_1 = pars_infa.indexOf ( 'Code: ' , 0 );
    metka_2 = pars_infa.indexOf ( 'If' , 0 );
    TXT = pars_infa.substr( metka_1 + 32 , metka_2 - ( metka_1 + 32 ) );   EXTRACT=TXT


Только я тут маленько не понял, как преобразовать данный код для скрипта iim? Что тут надо ещё добавить, прибавить? Может SET или ещё что, чтоб работало в iim? smile_28.gif

Я вот тут под спойлером разместил текст, который сохраняется командой

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=P ATTR=TXT:Good<SP>day,Somebody,<SP>probably<SP>you,<SP>signed<SP>up* EXTRACT=TXT


скрытый текст
Good day,

Somebody, probably you, signed up xub38313@iaoss.com at http://www.qoinpro.com/ to receive free digital currency coins every day.

This happened on 2015-12-17 06:32:37 UTC from IP address 178.121.25.254.

If this was you, please verify your email address by clicking on the link below and follow
the instructions on the screen to set a secure password.

https://qoinpro.com/registration/activate

Please enter the following activation Code:

bf8dbe2903065807722653c8b700acf7

If you did not sign-up, please let us know immediately so that we can cancel the registration.

Sincerely,

The QoinPro Team

support@qoinpro.com
http://qoinpro.com


А надо, чтоб только  текст (буквенно-числовой код), обозначенный жирным текстом, извлекался. Можно ли написать команду, только для извлечения и сохранения этого кода (вида bf8dbe2903065807722653c8b700acf7)?
Или надо применять команду типа
скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('тут прописать то что отсеить','и тут тоже')")


и в ней прописать то, что надо отсеивать?

А то я никак не могу разобраться с тем вариантом, предложенным уважаемым Президентом, где надо выставлять метки и  по меткам определять, что конкретно копировать. Может этот метод и лучше, но как его оформить в команду для iim скрипта?

dvitkovs
может вы приведете html-код искомого фрагмента?

InfSub пишет

может вы приведете html-код искомого фрагмента?

скрытый текст

Выделить код

Код:

<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="X-Frame-Options" content="deny">
<title>Почта на 10 минут - 10 Minute Mail</title>
<meta name="keywords" content="Почта на 10 минут: временно, безопасно и бесплатно — борьба со спамом.">
<meta name="description" content="Сервис временной почты для борьбы со спамом. Спам не придет на бесплатный, приватный и 10-минутный почтовый ящик. Мы не запрещаем вам использовать много адресов.">
<meta name="verify-v1" content="eLkNWfxaPjUWixfxsVnojHWZTzzEpjOrwR0VgSd2Vtc=">
<link rel="alternate" media="only screen and (max-device-width: 768px)" href="https://10minutemail.net/m/">
<link rel="alternate" langhref="x-default" href="https://10minutemail.net/readmail.html">
<link rel="alternate" langhref="en" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=en">
<link rel="alternate" langhref="af" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=af">
<link rel="alternate" langhref="ar" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=ar">
<link rel="alternate" langhref="be" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=be">
<link rel="alternate" langhref="bg" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=bg">
<link rel="alternate" langhref="zh" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=zh">
<link rel="alternate" langhref="zh-tw" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=zh-tw">
<link rel="alternate" langhref="zh-cn" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=zh-cn">
<link rel="alternate" langhref="hr" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=hr">
<link rel="alternate" langhref="cs" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=cs">
<link rel="alternate" langhref="da" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=da">
<link rel="alternate" langhref="nl" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=nl">
<link rel="alternate" langhref="fa" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=fa">
<link rel="alternate" langhref="fi" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=fi">
<link rel="alternate" langhref="fr" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=fr">
<link rel="alternate" langhref="de" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=de">
<link rel="alternate" langhref="ka" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=ka">
<link rel="alternate" langhref="el" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=el">
<link rel="alternate" langhref="he" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=he">
<link rel="alternate" langhref="hu" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=hu">
<link rel="alternate" langhref="lt" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=lt">
<link rel="alternate" langhref="it" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=it">
<link rel="alternate" langhref="ja" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=ja">
<link rel="alternate" langhref="ko" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=ko">
<link rel="alternate" langhref="lv" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=lv">
<link rel="alternate" langhref="no" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=no">
<link rel="alternate" langhref="pl" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=pl">
<link rel="alternate" langhref="pt" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=pt">
<link rel="alternate" langhref="pt-br" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=pt-br">
<link rel="alternate" langhref="ro" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=ro">
<link rel="alternate" langhref="ru" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=ru">
<link rel="alternate" langhref="sr" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=sr">
<link rel="alternate" langhref="sk" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=sk">
<link rel="alternate" langhref="sv" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=sv">
<link rel="alternate" langhref="es" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=es">
<link rel="alternate" langhref="th" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=th">
<link rel="alternate" langhref="tr" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=tr">
<link rel="alternate" langhref="uk" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=uk">
<link rel="alternate" langhref="vi" href="https://10minutemail.net/readmail.html?mid=WvnYjclang=vi">
<meta name="og:site_name" content="Почта на 10 минут - 10 Minute Mail"><meta property="og:url" content="https://10minutemail.net/">
<meta property="og:image" content="/cdn/images/Icon-72@2x.png">
<meta property="og:description" content="Сервис временной почты для борьбы со спамом. Спам не придет на бесплатный, приватный и 10-минутный почтовый ящик. Мы не запрещаем вам использовать много адресов.">
<meta property="fb:page_id" content="208786719145657">
<meta property="og:type" content="website">
<link rel="apple-touch-icon" href="/cdn/images/Icon-72@2x.png">
<script src="https://platform.twitter.com/widgets.js" id="twitter-wjs"></script><script src="https://apis.google.com/js/platform.js" async="" type="text/javascript"></script><script src="//www.google-analytics.com/analytics.js" async=""></script><script src="//connect.facebook.net/ru_RU/sdk.js#xfbml=1&amp;version=v2.4&amp;appId=271801862847836" id="facebook-jssdk"></script><script async="" type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>
<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script type="text/javascript" src="/cdn/js/ads.js"></script><style>img[src="https://pledgie.com/campaigns/30498.png"],
img[src="/cdn/images/welcome2.png"],
img[src="/cdn/images/btcqr.png"],
img[src="/cdn/images/twitter.png"],
img[src="/cdn/images/googleplus.png"],
img[src="/cdn/images/facebook.png"],
iframe[src="https://www.gstatic.com/xads/publisher_badge/contributor_badge.html?pub_name=10%20Minute%20Mail&pub_id=pub-4868759087006546&theme=light"]
{display:none !important;}</style>
<link rel="stylesheet" href="/cdn/css/style.css?20151109">
</head>
<body><div id="wrapper">
    <div id="header" class="div-w div-m-0">
        <div id="social_icon">
            <a href="https://www.facebook.com/10minutemail"><img style="display: none ! important;" src="/cdn/images/facebook.png" alt="Facebook"></a>
            <a href="https://plus.google.com/+10MinutemailNet"><img style="display: none ! important;" src="/cdn/images/googleplus.png" alt="Google+"></a>
            <a href="https://twitter.com/10_MinuteMail"><img style="display: none ! important;" src="/cdn/images/twitter.png" alt="Twitter"></a>
        </div>
        <div id="language_new">
            <form id="lang_select_form" name="language" method="get" action="">
                                    <input name="mid" value="WvnYjc" type="hidden">
                                <select id="lang_select" name="lang" size="1">
                    <option value="en">English</option>
                    <option value="af">Afrikaans</option>
                    <option value="ar">العربية</option>
                    <option value="be">беларускі</option>
                    <option value="bg">български език</option>
                    <option value="zh">中文</option>
                    <option value="zh-tw">正體中文(台灣)</option>
                    <option value="zh-cn">简体中文(中国)</option>
                    <option value="hr">Hrvatski</option>
                    <option value="cs">Čeština</option>
                    <option value="da">Dansk</option>
                    <option value="nl">Nederlands</option>
                    <option value="fa">Fârsi</option>
                    <option value="fi">Suomi</option>
                    <option value="fr">Français</option>
                    <option value="de">Deutsch</option>
                    <option value="ka">ქართული</option>
                    <option value="el">Ελληνική γλώσσα</option>
                    <option value="he">עִבְרִית</option>
                    <option value="hu">Magyar</option>
                    <option value="lt">Lietuvių kalba</option>
                    <option value="it">Italiano</option>
                    <option value="ja">日本語</option>
                    <option value="ko">한국어</option>
                    <option value="lv">Latviešu</option>
                    <option value="no">Norsk</option>
                    <option value="pl">Polski</option>
                    <option value="pt">Português(Portugal)</option>
                    <option value="pt-br">Português(Brazil)</option>
                    <option value="ro">Română</option>
                    <option value="ru" selected="selected">Русский язык</option>
                    <option value="sr">српски</option>
                    <option value="sk">Slovenský jazyk</option>
                    <option value="sv">Svenskar</option>
                    <option value="es">Español</option>
                    <option value="th">ไทย</option>
                    <option value="tr">Türkçe</option>
                    <option value="uk">Українська</option>
                    <option value="vi">Tiếng Việt</option>
                </select>
            </form>
        </div>
        <h1><a href="/">Почта на 10 минут</a></h1>
    </div>
    <div id="menu" class="div-w div-m-0">
        <ul>
            <li><a href="about.html">О нас</a></li>
            <li><a href="translate.html" style="color:red;">Перевод</a></li><li>
            </li><li id="li-history"><a href="history.html" style="color:red;">История</a></li><li>
            </li><li><a href="https://10minutemail.uservoice.com/" target="_blank">Обратная связь</a></li>
            <li><a href="https://10minutemail.net/blog/" target="_blank">Блог</a></li>
        </ul>
    </div>


<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<script src="/cdn/js/script.js?20151109"></script>


<div id="content" class="div-w div-m-0">
<script type="text/javascript" src="https://www.googletagservices.com/tag/js/gpt.js"></script>
    
<script>
googletag.cmd.push(function() {
    adsizeSelect();
});
</script>
<div id="leftover" class="leftS">
<script>
    var google_ad_size;
    var google_ad_display="inline-block";
    var google_ad_client = "ca-pub-4868759087006546";
    var google_ad_slot = "8172718172";
    switch(adsize){
        case "S":
            google_ad_display="none";
            google_ad_size = ["0", "0"];
            break;
        case "M":
            google_ad_size = ["120", "600"];
            break;
        case "L":
            google_ad_size = ["160", "600"];
            break;
        case "XL":
            google_ad_size = ["300", "600"];
            break;
        case "XXL":
            google_ad_size = ["300", "600"];
            adsize="XL";
            break;
    }
    $("#leftover").removeClass("leftXXL leftXL leftL leftM leftS").addClass("left"+adsize);
    if (adsize=="XXL"){
        //$("#leftover").css({ top: -180 });
    }else{
        $("#leftover").css({ top: 0 });
    }

if(adsize!="S"){
    document.write (
     '<ins class="adsbygoogle" style="display:'
      + google_ad_display +';width:' 
      + google_ad_size[0] + 'px;height:' 
      + google_ad_size[1] + 'px" data-ad-client="' 
      + google_ad_client + '" data-ad-slot="' 
      + google_ad_slot + '"></ins>'
    );
    (adsbygoogle = window.adsbygoogle || []).push({});
}

</script>
</div>


<div class="div-w div-m-10-auto ads-lh text-c"><style>
.mail-top-b { width: 728px; height: 90px; }
@media(min-width: 1680px) { .mail-top-b { width: 970px; height: 90px; } }
</style>
<script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- 10mail_top_B -->
<ins class="adsbygoogle mail-top-b" style="display:inline-block" data-ad-client="ca-pub-4868759087006546" data-ad-slot="3058918172"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></div>

<div id="left">
    <h2 class="h-line">Добро пожаловать!</h2>
    <p id="duetime">Ваш временный почтовый ящик будет удален через:  <span id="time"></span>  мин.</p>
    <div class="div-m-0 text-c"><input id="fe_text" class="mailtext" value="xtt00601@iaoss.com" type="text"></div><br>
    <div id="d_clip_button"><button id="copy-button" data-clipboard-text="xtt00601@iaoss.com"><i class="fa fa-copy fa-fw m-r-8"></i>Скопировать в буфер обмена</button></div>
    
    <br>

    <div style="text-align:left;margin: 0px 0px 10px 10px;height:22px;">
        <div style="padding: 2px 5px; float:left; width:70px;">
            <a href="https://twitter.com/share" class="twitter-share-button" data-url="https://10minutemail.net/?lang=ru" data-count="none" data-dnt="true">Tweet</a>
        </div>
        <div style="padding: 2px 5px; float:left; width:40px;">
            <div class="g-plusone" data-size="medium" data-annotation="none" data-href="https://10minutemail.net/?lang=ru"></div>
        </div>
        <div style="padding: 2px 5px; float:left;">
            <div class="fb-like" data-href="https://10minutemail.net/?lang=ru" data-layout="button" data-action="like" data-show-faces="true" data-share="true"></div>
        </div>
    </div>

    <ul>
    <li><a href="/">Обновить страницу</a></li>
    <li><a href="more.html">Дайте мне еще 10 минут!</a></li>
    <li><a href="new.html">Получить другой почтовый ящик. (Текущий будет удален)</a></li>
        </ul>
</div>

<script src="/cdn/js/ZeroClipboard.min.js"></script>
<script>
    var today = new Date();
    var tt = 578;
    var time = today.getTime();

$(document).ready(function () {

    showTime();
    
    var client = new ZeroClipboard( $("#copy-button") );
    var permalink = 'eyJob3N0IjoiaWFvc3MuY29tIiwibWFpbCI6Inh0dDAwNjAxQGlhb3NzLmNvbSIsInVybCI6Imh0dHBzOlwvXC8xMG1pbnV0ZW1haWwubmV0XC9wZXJtYWxpbmtcL3h0dDAwNjAxQGlhb3NzLmNvbVwvNE1Zd0xcLzE3bjZuc3pqVkhVZ0F2c01MWXFzU2hcLyIsImtleSI6IktzRE44dVY0REgiLCJ0aW1lIjoxNDUwMzM4ODczfQ==';
    
    if(localStorgeSupportCheck()){
        //support
        var permalink_json = JSON.parse(Base64.decode(permalink));
        var host=permalink_json.host;
        var mail=permalink_json.mail;
        delete permalink_json['host'];
        var ls = [];
        var local = JSON.parse(localStorage.getItem(host));
        if(local !== null){
            ls=local;
        }
        var hit=false;
        for(var key in ls){
            if (ls[key].mail==mail){
                hit=true;
                break;
            }
        }
        if (!hit){
            ls.push(permalink_json);
            localStorage.setItem(host,JSON.stringify(ls));
        }
    }
    
});
    function showTime(){
        var today = new Date();
        var t = tt - Math.floor((today.getTime()-time)/1000) ;
        if(t<=0){
            location.href='error-due.html';
        }else{
            var minute=String(Math.floor(t/60));
            var second=String(t%60);
            if(minute.length==1){
              minute="0"+minute;
            }
            if(second.length==1){
              second="0"+second;
            }
            var str=minute+":"+second;
            document.getElementById('time').innerHTML= str;
            setTimeout("showTime()",1000);
        }
    }
</script>
<div id="right">
  <div id="GoogleADRight"><script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- 10Mail_mail_A_336x280 -->
<ins class="adsbygoogle" style="display:inline-block;width:336px;height:280px" data-ad-client="ca-pub-4868759087006546" data-ad-slot="1617338190"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></div>
</div>    
<div id="noadright" class="none">
  <h3>10 Minute Mail нужна ваша поддержка</h3><br>
  Пожертвуйте нам<br><br>
  <a href="https://pledgie.com/campaigns/30498" target="_blank"><img style="display: none ! important;" alt="Поддержи проект 10 Minute Mail " src="https://pledgie.com/campaigns/30498.png"></a><br><i class="fa fa-cc-paypal fa-2x"></i><br><br>или<br><br>
  <script src="https://www.gstatic.com/xads/publisher_badge/contributor_badge.js" data-width="250" data-height="80" data-theme="light" data-pub-name="10 Minute Mail" data-pub-id="pub-4868759087006546"></script><br><br>или<br><br>
  <img src="/cdn/images/btcqr.png" style="border: 10px solid white; display: none ! important;"><br>
  <i class="fa fa-btc fa-lg"></i> 3Qa1KsiToLNpDi7KZcYPivakFAQobo3qid<br><br>или<br><br><i class="fa fa-language fa-lg"></i> <a href="translate.html">Помочь нам с переводом данного сервиса.</a><br>
  <div id="noadimg"><img style="display: none ! important;" id="dave" class="dave" src="/cdn/images/welcome2.png"></div>
</div>

<script>
$(document).ready(function(){
    if( window.canRunAds === undefined ) {
        //isadb
        $("#right,#leftover").addClass("none");
        $("#noadright").removeClass("none"); 
        setTimeout("showImage()",200);
        ga('send', 'event', 'ad', 'ad-blocked');
    }else{
        ga('send', 'event', 'ad', 'ad-non-blocked');
    }
})
function showImage(){
    $("#dave").removeClass("dave")
    $("#dave").addClass("daveB");
    setTimeout('showImage2()',1000);
}
function showImage2(){
    $("#dave").removeClass("daveB")
    $("#dave").addClass("dave");
    setTimeout("showImage()",1000);
}
</script>

</div>


<div id="readmail" class="div-w div-m-t-20">
  <script>
    $(function() {
        $( "#tabs" ).tabs({
            active:1
        });
    });
</script>
<h2 class="h-line">Прочитать письмо</h2>
<table id="message">
<tbody><tr><td class="title">От кого</td><td>QoinPro&lt;support@qoinpro.com&gt;</td></tr>
<tr><td class="title">Кому</td><td>xtt00601@iaoss.com</td></tr>
<tr><td class="title">Тема</td><td>Thank you for signing up for QoinPro.com, please activate your account</td></tr>
<tr><td class="title">Получено</td><td><span title="2015-12-17 07:54:51">Только что</span></td></tr>
</tbody></table>
<div class="div-w div-m-10-auto ads-lh text-c"><style>
.mail-mail-b { width: 728px; height: 90px; }
@media(min-width: 1680px) { .mail-mail-b { width: 970px; height: 90px; } }
@media(min-width: 1680px) and (min-height: 900px) { .mail-mail-b { width: 970px; height: 250px; } }
</style>
<script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- 10Mail_mail_B -->
<ins class="adsbygoogle mail-mail-b" style="display:inline-block" data-ad-client="ca-pub-4868759087006546" data-ad-slot="8340494975"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></div>
<div id="tabs">
    <ul>
      <li><a href="#tabs-0" style="color:red">Жалоба</a></li>
        <li><a href="#tabs-1">Обычный текст</a></li>        <li><a href="#tabs-2">HTML-версия</a></li>        <li><a href="#tabs-3">HTML в обычный текст</a></li>        <li><a href="#tabs-4">Ссылки</a></li>            </ul>
  <div id="tabs-0">
    <form name="report" method="POST" action="report.html" onsubmit="return FormCheck();">
      <input name="aid" value="2yRdUY" type="hidden"><input name="mid" value="WvnYjc" type="hidden">
      Name:<input id="yourname" name="yourname" type="text">*<br>
      Email:<input name="email" type="text"><br>
      <select id="issue" name="issue">
        <option value="select">Выберите одну опцию.</option>
        <option value="receive">Ощибка в получении почты с данного сайта.</option>
        <option value="read">Ошибка при чтении письма.</option>
        <option value="attachments">Невозможно загрузить дополнительное приложение к письму.</option>
        <option value="links">Ссылки в данном электронном письме имеют ошибки.</option>
        <option value="else">Пожалуйста, опишите проблему.</option>        
      </select><br>
      Ваши комментарии:<textarea style="width: 100%;" name="comments" rows="4"></textarea>
      <input type="submit">
    </form>
<script>
function FormCheck() {
    if(document.getElementById("yourname").value == "") {
        alert("Необходим ввод имени.");
        return false;
    }
    if(document.getElementById("issue").value == "select") {
        alert("Выберите одну опцию.");
        return false;
    }
    return confirm("Вы уверены, что хотите отправить данную форму?");
}
</script>
  </div>   
    <div id="tabs-1">
     <p style="outline: 1px solid blue;">Good day,<br><br>Somebody, probably you, signed up <a href="mailto:xtt00601@iaoss.com">xtt00601@iaoss.com</a> at <a href="http://www.qoinpro.com/">http://www.qoinpro.com/</a> to receive free digital currency coins every day.<br><br>This happened on 2015-12-17 07:54:49 UTC from IP address 164.138.220.49.<br><br>If this was you, please verify your email address by clicking on the link below and follow <br>the instructions on the screen to set a secure password. <br><br><a href="https://qoinpro.com/registration/activate">https://qoinpro.com/registration/activate</a><br><br>Please enter the following activation Code: <br><br>5406524a4d5b997d8727cac23c013949<br><br>If you did not sign-up, please let us know immediately so that we can cancel the registration.<br><br>Sincerely,<br><br>The QoinPro Team<br><br><a href="mailto:support@qoinpro.com">support@qoinpro.com</a><br><a href="http://qoinpro.com">http://qoinpro.com</a></p>
    </div>    <div id="tabs-2">
    <div class="mailinhtml">
     Good day,<br><br>
Somebody, probably you, signed up xtt00601@iaoss.com at http://www.qoinpro.com/ to receive free digital currency coins every day.<br><br>
This happened on 2015-12-17 07:54:49 UTC from IP address 164.138.220.49.<br><br>
If this was you, please verify your email address by clicking on the link below and follow<br>
the instructions on the screen to set a secure password.<br><br>
https://qoinpro.com/registration/activate<br><br>
Please enter the following activation Code:<br><br>
5406524a4d5b997d8727cac23c013949<br><br>
If you did not sign-up, please let us know immediately so that we can cancel the registration.<br><br>
Sincerely,<br><br>
The QoinPro Team<br><br>
support@qoinpro.com<br>
http://qoinpro.com<br>
      </div>
    <script type="text/javascript">
    $(".mailinhtml a").attr('target', '_blank');
    </script>
    </div>    <div id="tabs-3">
    <div class="mailinhtml">
     Good day,<br><br>Somebody, probably you, signed up <a href="mailto:xtt00601@iaoss.com">xtt00601@iaoss.com</a> at <a href="http://www.qoinpro.com/">http://www.qoinpro.com/</a> to receive free digital currency coins every day.<br><br>This happened on 2015-12-17 07:54:49 UTC from IP address 164.138.220.49.<br><br>If this was you, please verify your email address by clicking on the link below and follow<br>the instructions on the screen to set a secure password.<br><br><a href="https://qoinpro.com/registration/activate">https://qoinpro.com/registration/activate</a><br><br>Please enter the following activation Code:<br><br>5406524a4d5b997d8727cac23c013949<br><br>If you did not sign-up, please let us know immediately so that we can cancel the registration.<br><br>Sincerely,<br><br>The QoinPro Team<br><br><a href="mailto:support@qoinpro.com">support@qoinpro.com</a><br><a href="http://qoinpro.com">http://qoinpro.com</a>
     </div>
    <script type="text/javascript">
    $(".mailinhtml a").attr('target', '_blank');
    </script>
    </div>    <div id="tabs-4">
    <ui>
     <li><a href="http://www.qoinpro.com/" target="_blank">http://www.qoinpro.com/</a></li>
     <li><a href="https://qoinpro.com/registration/activate" target="_blank">https://qoinpro.com/registration/activate</a></li>
     <li><a href="http://qoinpro.com" target="_blank">http://qoinpro.com</a></li>
    </ui>
    <script type="text/javascript">
    $(".mailinhtml a").attr('target', '_blank');
    </script>
    </div>    </div>


</div>




<div id="mailbox" class="div-w div-m-0">
<h2 class="h-line">Входящие</h2>
<div id="mailbox-table"><table id="maillist"><tbody><tr><th>От кого</th><th>Тема</th><th>Получено</th></tr><tr onclick="location='readmail.html?mid=welcome'" style="font-weight: bold;"><td>no-reply@10minutemail.net</td><td><a href="readmail.html?mid=welcome">Привет. Добро пожаловать на 10-минутную почту!</a></td><td><span title="2015-12-17 07:54:33 UTC">Только что</span></td></tr><tr onclick="location='readmail.html?mid=WvnYjc'"><td>QoinPro&lt;support@qoinpro.com&gt;</td><td><a href="readmail.html?mid=WvnYjc">Thank you for signing up for QoinPro.com, please activate your account</a></td><td><span title="2015-12-17 07:54:51">Только что</span></td></tr></tbody></table></div>
</div>
<script type="text/javascript">
$(document).ready(function(){
  setInterval("updatemailbox()",20000); 
});
function updatemailbox(){ 
  $.ajax({
    type: "get",
    cache:false,
    url: "mailbox.ajax.php",
    success: function(data){
        $("#mailbox-table").html(data);
        ga('send', 'event', 'ajax', 'mailbox-desktop');
    }
  });
}
</script>


<div id="featured" class="div-w div-m-t-20">
<!-- featured -->
<div>
<div class="layout-featured no1">
<i class="fa fa-trash-o fa-2x fa-fw featured-image"></i>
<h3>Одноразовый </h3>
<p>Все почтовые ящики одноразовые, больше никто не сможет получить доступ к почтовому ящику после удаления.</p>
</div>
<div class="layout-featured">
<i class="fa fa-inbox fa-2x fa-fw featured-image"></i>
<h3>Входящие сообщения</h3>
<p>Мы не предоставляем пользователямпочтовый ящик, почтовый ящик случайно генерируется, использованный ящик не будет использоваться снова. Другие не смогут прочитать твою почту.</p>
</div>
<div class="layout-featured no3">
<i class="fa fa-history fa-2x fa-fw featured-image"></i>
<h3>Увеличивайте время</h3>
<p>Вы можете продлить время использования почтового ящика. Вы можете увеличить до 100 минут.</p>
</div>
</div>
<div>
<div class="layout-featured no1">
<i class="fa fa-undo fa-2x fa-fw featured-image"></i>
<h3>Восстановление</h3>
<p>Вы можете восстановить только что истекший почтовый ящик, прежде чем он будет удален системой.</p>
</div>
<div class="layout-featured" style="position: relative;">
<i class="fa fa-tablet fa-2x fa-fw featured-image"></i>
<h3>Поддержка мобильных устройств</h3>
<p>У нас есть специальный веб-сайт для мобильных устройств, вы можете легко воспользоваться нашими услугами на мобильном устройстве.</p>
</div>
<div class="layout-featured no3">
<i class="fa fa-random fa-2x fa-fw featured-image"></i>
<h3>Домен изменился</h3>
<p>Мы заменяем доменное имя для почты каждые 45 дней, что бы избежать их блокировки на некоторых сайтах.</p>
</div>
<div style="clear:both;"></div>
</div>
</div>
<div class="div-w div-m-5-auto ads-lh text-c"><style>
.mail-mail-b { width: 728px; height: 90px; }
@media(min-width: 1680px) { .mail-mail-b { width: 970px; height: 90px; } }
</style>
<script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- 10Mail_mail_B -->
<ins class="adsbygoogle mail-mail-b" style="display:inline-block" data-ad-client="ca-pub-4868759087006546" data-ad-slot="8340494975"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></div>
<div id="facebook-box" class="div-w div-m-20-auto" style="height: 130px;">

<div style="float: left; width: 50%;"><div style="margin: 0px auto; width: 350px;"><div class="fb-page" data-href="https://www.facebook.com/10minutemail" data-tabs="messages" data-width="350" data-height="130" data-small-header="false" data-adapt-container-width="true" data-hide-cover="false" data-show-facepile="false"></div></div></div>
<div style="float: right; width: 50%;"><div style="margin: 12px auto; width: 320px; height: 106px;"><div id="googleplus_widget"><span><div class="g-page" data-width="320" data-href="//plus.google.com/u/0/100746191716942329593" data-layout="landscape" data-rel="publisher"></div></span></div></div></div>
<style type="text/css"> 
#googleplus_widget span{
    width: 318px;
    height: 104px;
    float: left;
    overflow: hidden;
    background: #fff; 
}
#googleplus_widget span div{
    margin: -1px 0 0 -1px !important;
    position: relative; 
}
</style>
<div class="div-w"></div>
</div>
<div id="support-table" class="div-w div-m-0">
<p>
<a href="https://pledgie.com/campaigns/30498" target="_blank"><img alt="Поддержи проект 10 Minute Mail " src="https://pledgie.com/campaigns/30498.png" style="vertical-align: middle; display: none ! important;"></a> | 
<iframe src="https://www.gstatic.com/xads/publisher_badge/contributor_badge.html?pub_name=10%20Minute%20Mail&amp;pub_id=pub-4868759087006546&amp;theme=light" style="height: 37px; width: 120px; vertical-align: middle; display: none ! important;" frameborder="0"></iframe> |
<i class="fa fa-btc fa-lg"></i> BTC: <span style="width: 140px; margin-left: -35px" class="stretch">3Qa1KsiToLNpDi7KZcYPivakFAQobo3qid</span> | <i class="fa fa-language fa-lg"></i> <a href="translate.html">Помочь нам с переводом данного сервиса.</a> 
</p>
</div>
<div id="lang-table" class="div-w div-m-0">
<p><i class="fa fa-language fa-lg"></i> Choose language:<br>
        <a href="?mid=WvnYjc&amp;lang=en">English</a> |     
        <a href="?mid=WvnYjc&amp;lang=af">Afrikaans</a> |     
        <a href="?mid=WvnYjc&amp;lang=ar">العربية</a> |     
        <a href="?mid=WvnYjc&amp;lang=be">беларускі</a> |     
        <a href="?mid=WvnYjc&amp;lang=bg">български език</a> |     
        <a href="?mid=WvnYjc&amp;lang=zh">中文</a> |     
        <a href="?mid=WvnYjc&amp;lang=zh-tw">正體中文(台灣)</a> |     
        <a href="?mid=WvnYjc&amp;lang=zh-cn">简体中文(中国)</a> |     
        <a href="?mid=WvnYjc&amp;lang=hr">Hrvatski</a> |     
        <a href="?mid=WvnYjc&amp;lang=cs">Čeština</a> |     
        <a href="?mid=WvnYjc&amp;lang=da">Dansk</a> |     
        <a href="?mid=WvnYjc&amp;lang=nl">Nederlands</a> |     
        <a href="?mid=WvnYjc&amp;lang=fa">Fârsi</a> |     
        <a href="?mid=WvnYjc&amp;lang=fi">Suomi</a> |     
        <a href="?mid=WvnYjc&amp;lang=fr">Français</a> |     
        <a href="?mid=WvnYjc&amp;lang=de">Deutsch</a> |     
        <a href="?mid=WvnYjc&amp;lang=ka">ქართული</a> |     
        <a href="?mid=WvnYjc&amp;lang=el">Ελληνική γλώσσα</a> |     
        <a href="?mid=WvnYjc&amp;lang=he">עִבְרִית</a> |     
        <a href="?mid=WvnYjc&amp;lang=hu">Magyar</a> |     
        <a href="?mid=WvnYjc&amp;lang=lt">Lietuvių kalba</a> |     
        <a href="?mid=WvnYjc&amp;lang=it">Italiano</a> |     
        <a href="?mid=WvnYjc&amp;lang=ja">日本語</a> |     
        <a href="?mid=WvnYjc&amp;lang=ko">한국어</a> |     
        <a href="?mid=WvnYjc&amp;lang=lv">Latviešu</a> |     
        <a href="?mid=WvnYjc&amp;lang=no">Norsk</a> |     
        <a href="?mid=WvnYjc&amp;lang=pl">Polski</a> |     
        <a href="?mid=WvnYjc&amp;lang=pt">Português(Portugal)</a> |     
        <a href="?mid=WvnYjc&amp;lang=pt-br">Português(Brazil)</a> |     
        <a href="?mid=WvnYjc&amp;lang=ro">Română</a> |     
        <strong><a href="?mid=WvnYjc&amp;lang=ru" class="lang-selected">Русский язык</a></strong> |     
        <a href="?mid=WvnYjc&amp;lang=sr">српски</a> |     
        <a href="?mid=WvnYjc&amp;lang=sk">Slovenský jazyk</a> |     
        <a href="?mid=WvnYjc&amp;lang=sv">Svenskar</a> |     
        <a href="?mid=WvnYjc&amp;lang=es">Español</a> |     
        <a href="?mid=WvnYjc&amp;lang=th">ไทย</a> |     
        <a href="?mid=WvnYjc&amp;lang=tr">Türkçe</a> |     
        <a href="?mid=WvnYjc&amp;lang=uk">Українська</a> |     
        <a href="?mid=WvnYjc&amp;lang=vi">Tiếng Việt</a>    
</p>
</div>
  <div id="footer" class="div-w div-m-0">
        <p class="copyright">Copyright © 2009-2015 <a href="https://10minutemail.net">10minutemail.net</a> | 
<a href="https://10minutemail.net/">.NET</a> | 
<a href="http://10minutemail.org/">.ORG</a> | 
<a href="https://10minutemail.info/">.INFO</a> | 
<a href="more100.html">Дайте мне еще 100 минут!</a> | <a href="/m/">Mobile</a></p>
    </div>
</div>

<script>
$(document).ready(function () {
    $('#lang_select').bind( "change", function(event, ui) {
        $( "#lang_select_form" ).submit();
    });
    
    if(!localStorgeSupportCheck()){
        $("#li-history").css("display","none");
    }    
});
</script>
<script type="text/javascript" src="https://s7.addthis.com/js/300/addthis_widget.js#pubid=ra-533ad66e6b4d166d"></script>
<script>

  addthis.layers({
    'theme' : 'transparent',
    'share' : {
      'position' : 'right',
      'numPreferredServices' : 6
    },
    'thankyou' : false
  });


var addthis_share={
    url: 'https://10minutemail.net/?lang=ru',
        title: 'Почта на 10 минут - 10 Minute Mail'
    };
window.google_analytics_uacct = "UA-9264359-7";
</script>




<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/ru_RU/sdk.js#xfbml=1&version=v2.4&appId=271801862847836";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>


<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-9264359-7', '10minutemail.net');
  ga('require', 'displayfeatures');
  ga('send', 'pageview');
</script>

<script type="text/javascript">
  window.___gcfg = {
    lang: 'ru'
  };
  (function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/platform.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/datatables/1.10.8/css/jquery.dataTables.min.css">

</body>


Тут внутренний код html

17-12-2015 11:11:34
а вот так выглядит то, что нам надо извлечь из электронного письма: 5406524a4d5b997d8727cac23c013949

17-12-2015 11:18:35

скрытый текст
25x91.png

dvitkovs

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=id:tabs-1 EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/code:(.*?)if/i).pop().trim()")
PROMPT {{!EXTRACT}}

Ребят скрипт не работает на одноклассниках, раньше работал, что поменять?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://odnoklassniki.ru/online
'''''''''''''Здесь меняете возраст людей 18 и 99
'возраст ОТ:
SET !VAR1 18
'возраст ДО:
SET !VAR2 99
'''''''''''''Здесь указываем город в кавычках
SET !VAR6 "Москва"
TAG POS=1 TYPE=SPAN ATTR=ID:onSiteNowCityLink
TAG POS=1 TYPE=SPAN ATTR=ID:onSiteNowCityLink
TAG POS=1 TYPE=input ATTR=ID:field_city CONTENT={{!VAR6}}
'''''установим рандомное время ожидания
SET !VAR3 EVAL("var random=Math.floor(Math.random()*7 + 1); random;")
SET !VAR4 EVAL("var random=Math.floor(Math.random()*8 + 1); random;")
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=*&st.ageFrom=*&st.female=*&st.male=1&cmd=OnSiteNowUsersRB ATTR=ID:field_ageFrom CONTENT=%{{!VAR1}}
TAG POS=1 TYPE=SELECT FORM=ACTION:/dk?st.cmd=userFriendLive&st.ageTo=*&st.ageFrom=*&st.female=*&st.male=1&cmd=OnSiteNowUsersRB ATTR=ID:field_ageTo CONTENT=%{{!VAR2}}
WAIT SECONDS={{!VAR3}}
TAG POS=1 TYPE=DIV ATTR=CLASS:ic_online
WAIT SECONDS={{!VAR4}}
SET !TIMEOUT_STEP 1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(6)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV>DIV>DIV:nth-of-type(4)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>UL>LI:nth-of-type(2)>DIV>SPAN>SPAN>SPAN" BUTTON=0
SET !TIMEOUT_STEP 1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(6)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(6)>DIV>DIV>DIV:nth-of-type(4)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>UL>LI:nth-of-type(2)>DIV>SPAN>SPAN>SPAN" BUTTON=0
WAIT SECONDS=1
BACK

Правила темы iMacros:
1.  Не рекомендуется:

1.3.2  Размещать код в открытом виде. Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler]

InfSub

InfSub пишет

dvitkovs

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=id:tabs-1 EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/code:(.*?)if/i).pop().trim()")
PROMPT {{!EXTRACT}}

Ух ты! Здорово! Получилось!  Благодарю!!! :)
Это что, вы так всё красиво, грамотно и оперативно сделали благодаря тому, что посмотрели html-код, который я привёл?

dvitkovs пишет

тому, что посмотрели html-код, который я привёл?

нет, думал, что искомый фрагмент в отдельном html-теге, оказалось, что это не так

Добрый день.
Необходимо на место (выделенное в коде жирным) подтягивать тег title со страницы заданной в переменную VAR1
Подскажите, пожалуйста, как правильно написать код?

скрытый текст

Выделить код

Код:

URL GOTO=https://www.yandex.ua/
PROMPT "Пожалуйста введите ваш урл:" !VAR1 
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://yandex.ua/search/ ATTR=ID:text CONTENT={{!VAR1}}@<SP>title:“[b]сюда вставить title[/b]”
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://yandex.ua/search/ ATTR=TXT:Найти

удалено, спам

InfSub

СисТема пишет

Аймакрос может все. С помощью джаваскрипта.

А может ли аймакрос (с помощью джаваскрипта) управлять сторонними программами? Например есть программка-чистильщик  CCleaner, может ли аймакрос ей управлять? Например: нажать очистка- анализ- очистка-, или реестр- поиск проблем- исправление? Может аймакрос так? Если да, то что для этого надо? Каким образом аймакрос будет воздействовать на сторонние программы для их управления по заданному условию?

dvitkovs
Тебе реестр надо чистить или просто в браузере кешь/куки ?
Теоретически можно всё и управлять внешней программой.smile_16.gif


удалено, флуд
под запретом, как вы выразились - не js, а глупые вопросы из серии a+b
а объяснять устройство самолёта, тем кто не дорос ещё до велосипеда, простите - глупость, если нет понимания iim-кода, о каком js речь?

InfSub

PRESIDENT пишет

Тебе реестр надо чистить или просто в браузере кешь/куки ?

скрытый текст
Не то, не это. Данную прогу Сиклинер я привел лишь в качестве примера. Но это могла бы быть и другая прога, например: Видео-конвертер какой-нибудь, или Скайп, или эмулятор андроида BlueStaks.
Кстати, как BlueStaks'ом управлять через аймакрос? Что для этого надо? Нужна какая-то программка в качестве посредника, да?
Объясню для чего это надо: Есть такой браузер Пуффин. Он только для андроида. Но можно и на компе его запускать, если установить программу-эмулятор андроида BlueStaks.
А браузер Пуффин нужен потому, что он работает через американские облачные сервера и естественно там ваши айпи адреса, которые определяются, когда вы пользуетесь Пуффином,  меняются каждый раз при перезагрузке Пуффина. Это нужно для определенных целей.
Так вот вопрос: как управлять Пуффином (через BlueStaks) с помощью аймакроса? Что надо для этого?
Или другими словами: как можно присобачить аймакрос к BlueStaks, чтобы он управлял Пуффином? То есть: запустил Пуффина в режиме инкогнито, перешёл по нужной ссылке на нужный сайт, зарегистрировал там аккаунт, потом ещё один и ещё, потом закрыл Пуффина, подождал 3 сек, снова его запустил, айпи адрес при этом у Пуффина поменяется, потом снова заходим по нужной ссылке, регистрируем аккаунты и так далее.
Понимаю, что данная задача в диковинку и ранее тут никогда не рассматривалась. Ну надо ж когда-то начинать.
Есть какие-либо предположения как данный (трудный на первый взгляд) проект реализовать?  :)

dvitkovs

скрытый текст
Ради просто американского айпи такие извращения. smile_29.gif
Чем тебе ТОР или прокси не устраивают.

PRESIDENT пишет

Чем тебе ТОР или прокси не устраивают.

А  как в браузере Тор новую личность менять аймакросом?
Вот на скриншоте показано что нажимать вручную. Но как это можно скриптом или какой командой автоматизировать?

скрытый текст
25AwV.png

TOP по моему меняет ip при открытии сайта в новой вкладке.
а для очистки кеша можно использовать:
CLEAR

TOR
Курите маны по ТОРу, он прекрасно через телнет управляется.
В инеме куча всевозможных скриптов для смены ИПа в ТОРе.

dvitkovs пишет

Но это могла бы быть и другая прога, например: Видео-конвертер какой-нибудь, или Скайп, или эмулятор андроида BlueStaks.

может заставим iMacros - еще кофе варить? давайте, не будем разводить оффтоп! У каждого приложения - свои задачи, вам нужно управлять десктопными приложениями, для этого есть куча программ, iMacros - не в их числе, но ни кто не мешает Вам сделать связку между iMacros и другими приложениями, но не управлять ими, а передавать им данные

InfSub пишет

ни кто не мешает Вам сделать связку между iMacros и другими приложениями, но не управлять ими, а передавать им данные

Понятно. Я об этом и писал, что нужны некие посреднические программки, которые будут связывать аймакрос и десктопные приложения.
Это своего рода как будто ехать в Москву через Камчатку. :D

Как добавить список SOCKS5 прокси в макрос? Подробнее под спойлером:

скрытый текст
Что требуется. Есть макрос:

Выделить код

Код:

CMDLINE !DATASOURCE mailrupass.csv
SET !DATASOURCE_COLUMNS 2
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=http://m.mail.ru/cgi-bin/login?noclear=1&page=folders
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:authform ATTR=NAME:Login CONTENT={{!COL1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:authform ATTR=NAME:Password CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:authform ATTR=*
WAIT SECONDS=1

Нужно добавить отдельным файлом список SOCKS5 прокси через отдельный файл socks5proxy.csv
чтобы при входе на mail.ru менялись SOCKS5 прокси
Обращаю внимание, что нужны именно SOCKS5 прокси
В .js ?


offtop
Закину 1 WMZ  на кошель, за решение вопроса :)

P.S.
Мой дополнительный вопрос:
forum.mozilla-russia.org/viewtopic.php? … 12#p701712
все еще актуален

Xeedum пишет

все еще актуален

Здесь один ответ - изучайте js, т.к. он может взаимодействовать с элементами сайта, что по сути и делает консоль, иначе - ни как
в двух словах процесс взаимодействия - не описать, да и десятка страниц на форуме вряд ли хватит... но в и-нете куча статей на тему js и профильных форумов

20-12-2015 15:28:28

Xeedum пишет

Как добавить список SOCKS5 прокси в макрос?

InfSub пишет

С прокси разобрался. Спасибо за подсказку. Остался вопрос как подключать одновременно 2 .csv :
mailrupass.csv
+
socks5proxy.csv
Одну базу  не предлагать :)
Для socks5proxy.csv можно назначить свой разделитель, так понимаю

Xeedum пишет

Для socks5proxy.csv можно назначить свой разделитель, так понимаю

чем стандартная запятая, используемая по умолчанию, не устраивает?

Xeedum пишет

как подключать одновременно 2 .csv :
mailrupass.csv+socks5proxy.csv

так же, как и 1, подключили, получили данные, подключили следующий взяли данные

InfSub
удалено, избыточное цитирование
В готовых списках прокси обычно разделитель для ip:port двоеточие.

InfSub

Xeedum пишет

В готовых списках прокси обычно разделитель для ip:port двоеточие.

да, я знаю, думал - вы самостоятельно сохраняете эти данные,а не используете готовые

20-12-2015 18:16:09

скрытый текст

Выделить код

Код:

SET !DATASOURCE_DELIMITER :


20-12-2015 18:16:49
!DATASOURCE_DELIMITER

Как выполнить команду iimPlay() на неактивной вкладке (из управляющего Javascript)? Первый ответ, который приходит в голову - что это сделать нельзя. Ведь сначала нужно с помощью команды TAB активировать нужную вкладку и только потом вызывать iimPlay().
Но ведь мы можем запустить iMacros c помощью кнопки "Воспроизвести" и уйти на другие вкладки, при этом скрипт продолжает работать. Значит, iMacros запоминает текущее окно. Может можно это текущее окно как-то установить из управляющего javascript?

Доброго времени, господа!
PRESIDENT

скрытый текст

Выделить код

Код:

var url=['mega-bonus.org','mega-bonus.net','bitcoin-kran.net']; 
var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n', f=0;

var login='твой логин', pass='твой пасс';


 for(j=1; j<=999; j++){
 
 for(a=0; a<3; a++){
   iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS');
   iimPlayCode(t3+'URL GOTO='+url[a]); 
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Вход*аккаунт'); if(f>0){
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT='+login);
   iimPlayCode('TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT='+pass);
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');}
 f=iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Приглашайте*проект!'); if(f>0){
 for(i=1; i<=10; i++){
   iimPlayCode(t3+'URL GOTO='+url[a]+'/account/bonuss'+i);
 f=iimPlayCode(t0+'TAG POS=1 TYPE=B ATTR=TXT:Вы*получали*'); if(f<0){
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:*');
   iimPlayCode(t0+'TAG POS=1 TYPE=B ATTR=TXT:На*бонус*');}}}}
   iimPlayCode('WAIT SECONDS=10');}


Два первых сайта в коде имеют одинаковую фрму входа на главной странице, а третий сайт (бикткоин кран который) в одном шаге к форме регистрации и скрипт его просто пропускает. Пробывал прописать в урлах не просто домен, а сразу страницу с входом типа домен/login  -  скрипт регается всё отлично , но дальше ссылки начинают врать, приставляя вместо домена по ходу этот путь. Может кто силён для такого рода скриптика - что можно приписать?
Спасибо.

yinfo пишет

Но ведь мы можем запустить iMacros c помощью кнопки "Воспроизвести" и уйти на другие вкладки, при этом скрипт продолжает работать. Значит, iMacros запоминает текущее окно.

Нет нельзя, имакрос работает только в текущей вкладке.


reanimat пишет

скрипт его просто пропускает

скрытый текст
....
   iimPlayCode(t3+'URL GOTO='+url[a]); if(a==2)
   iimPlayCode(t3+'TAG POS=1 TYPE=FONT ATTR=TXT:ВХОД*РЕГИСТРАЦИЯ');

f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Вход*аккаунт');
....

reanimat пишет

Доброго времени, господа!

PRESIDENT пишет

скрытый текст

Выделить код

Код:

var url=['mega-bonus.org','mega-bonus.net','bitcoin-kran.net']; 
var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n', f=0;

var login='твой логин', pass='твой пасс';


 for(j=1; j<=999; j++){
 
 for(a=0; a<3; a++){
   iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS');
   iimPlayCode(t3+'URL GOTO='+url[a]); 
 f=iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=TXT:Вход*аккаунт'); if(f>0){
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT='+login);
   iimPlayCode('TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT='+pass);
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');}
 f=iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Приглашайте*проект!'); if(f>0){
 for(i=1; i<=10; i++){
   iimPlayCode(t3+'URL GOTO='+url[a]+'/account/bonuss'+i);
 f=iimPlayCode(t0+'TAG POS=1 TYPE=B ATTR=TXT:Вы*получали*'); if(f<0){
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:*');
   iimPlayCode(t0+'TAG POS=1 TYPE=B ATTR=TXT:На*бонус*');}}}}
   iimPlayCode('WAIT SECONDS=10');}


Два первых сайта в коде имеют одинаковую фрму входа на главной странице, а третий сайт (бикткоин кран который) в одном шаге к форме регистрации и скрипт его просто пропускает. Пробывал прописать в урлах не просто домен, а сразу страницу с входом типа домен/login  -  скрипт регается всё отлично , но дальше ссылки начинают врать, приставляя вместо домена по ходу этот путь. Может кто силён для такого рода скриптика - что можно приписать?
Спасибо.

Там сейчас уже капчу ввели (в двух первых сайтах). Так что... недолго музыка играла :P

dvitkovs пишет

Там сейчас уже капчу ввели (в двух первых сайтах). Так что... недолго музыка играла :P

да капча с утра была на .org а бонус нет ещё работал пока прикручивали видно...

PRESIDENT пишет
yinfo пишет

Но ведь мы можем запустить iMacros c помощью кнопки "Воспроизвести" и уйти на другие вкладки, при этом скрипт продолжает работать. Значит, iMacros запоминает текущее окно.

Нет нельзя, имакрос работает только в текущей вкладке.

Спасибо за внимание к моему вопросу!
Наверное, это как-то можно сделать, обходными путями:

1. изменив код расширения imacros (и лишив себя возможности обновлений);

2. используя управляющие скрипты iMacros для манипуляции вкладками Firefox, а эмуляцию нажатий возложить на какую-то стороннюю библиотеку, например jquery.
То есть от iMacros взять только возможность доступа к коллекции вкладок gBrowser.tabs, а уже страницей манипулировать с помощью jquery.

Но оба этих пути представляются достаточно трудоемкими.

Помогите пожалуйста как извлечь ответ

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
id=iimGetExtract().match(/\d+/); iimDisplay(id);    //    id    капчи
s=
iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');
iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=ID:furmularz ATTR=ID:adcopy_response CONTENT='+s+'');
iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:furmularz ATTR=*');

    f=iimPlay("CODE:SET !TIMEOUT 1 \nTAG POS=1 TYPE=DIV ATTR=CLASS:*alert-danger*");if(f>0){
        iimPlayCode('TAB OPEN\nTAB T=2');
        iimPlayCode('URL GOTO=2captcha.com/res.php?key='+api+'&action=reportbad&id='+id+'');
        iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');
        iimPlay("CODE:WAIT SECONDS=3");}

PRESIDENT пишет

Koks

Это ответ с рукапчи вместе с ИД ?

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split(/|/); 
alert('Первое значение, OK  '+a[0]+'\nВторое значение, ID капчи : '+a[1]+'\nТретее значение, ответ : '+a[2]);

Да вы все правильно поняли ответ вместе с id. Но ваш вариант не совсем корректно работает. Вот что получается:

скрытый текст

Выделить код

Код:

Первое значение, OK : O
Второе значение, ID капчи : K
Третье значение, ответ : |
полное излечение O,K,|,4,5,1,0,0,8,9,0,6,|,f,i,r,s,t, ,w,a,t,e,r


вот как работает а можно покороче все воспроизвести?
скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split(/|/); iimDisplay(a);
//O,K,|,4,5,1,0,0,8,9,0,6,|,f,i,r,s,t, ,w,a,t,e,r
alert('Первое значение, OK : '+a[0]+a[1]+'\nВторое значение, ID капчи : '+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]+a[10]+a[11]+'\nТретье значение, ответ : '+a[13]);


Поторопился в alert показывает правильно но не вставляет

Koks

скрытый текст

a=iimGetLastExtract().split('|');
alert('Первое значение, OK  '+a[0]+'\nВторое значение, ID капчи : '+a[1]+'\nТретее значение, ответ : '+a[2]);

PRESIDENT пишет

Koks

скрытый текст

a=iimGetLastExtract().split('|');
alert('Первое значение, OK  '+a[0]+'\nВторое значение, ID капчи : '+a[1]+'\nТретее значение, ответ : '+a[2]);

Спасибо вам большое за терпение и участие, вариант работает если ответ  приходит без пробелов
Может стоит добавить <SP>. Но я не знаю как это сделать. Я очень плохо разбираюсь.

Koks

скрытый текст
Имакрос не дружит с пробелами, их нужно заменить на <sp>.
используй команду replace (земена)

iimPlayCode('TAG POS=1 ... CONTENT='+a[2].replace(/ /g,"<sp>"));

Или

iimPlayCode('TAG POS=1 ... CONTENT=" '+a[2]+' " ');

Или так

Выделить код

Код:

a=iimGetLastExtract().split('|');
s=a[2].replace(/ /g,"<sp>");
...
iimPlayCode('TAG POS=1 ... CONTENT='+s);

Возник вопрос который пытаюсь решить уже два дня.
Есть сайт (генератор имен)

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


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

SaintPadre

скрытый текст
А зачем тебе в буфер обмена его копировать. Тебе нужно в переменную сохранить

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=class:"out out-pattern" extract=TXT'); names=iimGetExtract();
 alert(names);

Всем привет , давно тут не писал !
Короче вбилась мне в голову назойливая идея "Скрыть информацию о своем разрешении  экрана" - User AGENT меняется , а вот как скрыть разрешение , нигде не увидел.
Увидеть свое разрешение , как пример , можно здесь https://yandex.ru/internet , а вот как прикинуться к примеру под андроид телефон ???
Последнее что нашел, это режим FF "Адаптивный дизайн" (ctrl+shift+m) - отлично справляется с скрытием разрешения!
Теперь интересует как его запускать автоматически при первом запуске FF или же через средства FF - Может кто что видел ?
------
Палево компа выполняет javascript - его отключать не вариант, а вот подправлять средствами imacros  как раз вариант -- но думаю это для imacros будет сложно, по этому ищу решение описсаное выше.

kolshix
Узнать разрешение можно как то так.

Выделить код

Код:

alert(window.screen.availWidth+' x '+window.screen.availHeight);

Как скрыть/подменить, сейчас нужно в абоут конфиге глянуть.:)

kolshix пишет

Последнее что нашел, это режим FF "Адаптивный дизайн" (ctrl+shift+m) - отлично справляется с скрытием разрешения!

Так ты меняешь размеры окна браузера, но не разрешение экрана:)

Может кому сгодится
Сейчас рылся в теме настроек абоут конфиг
нашёл несколько интересных настроек.
Кстати всем советую заглянуть в темку.

config.trim_on_minimize (Логическое, создаётся) - Отвечает за местонахождении памяти во время сворачивания браузера. Значения:
   TRUE при сворачивании браузера все его данные будут переноситься из ОЗУ (оперативная память) в виртуальную память (расположена на жёстком диске). Это позволит высвободить оперативную память (что при прожорливости лиса весьма полезно), но уменьшит скорость разворачивания браузера.
   FALSE - Память не выгружается, но и работает быстрее (только при сворачивании-разворачивании, а не вообще)

dom.disable_beforeunload (Логическое, с Firefox 29) - Позволяет отключить сообщение «Эта страница просит вас подтвердить, что вы хотите уйти — при этом введённые вами данные могут не сохраниться», которое возникает на некоторых сайтах при попытке закрытия вкладки\окна браузера. Значения:
   TRUE - Выключить такие сообщения
   FALSE - Отображать их

dom.enable_performance (Логическое) - отвечает за передачу информации серверу о времени начала и конца загрузки страницы. Анализ этих данных может позволить определить факт наличия прокси. Значения:
   TRUE - Передавать эти данные
   FALSE - Не передавать их. Положительно скажется на приватности, но часть сайтов может отказаться работать.

Не подскажете, как сделать перебор участников с однотипным действием из всплывающего меню, если код кнопки одинаков у каждого?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS={{!LOOP}} TYPE=IMG ATTR=SRC:http://umd* EXTRACT=HREF
[b]TAG POS=4 TYPE=A ATTR=HREF:javascript:;&&CLASS:gwt-shortcutMenu-iconlink-item[/b]


Это инвайтер в ОК.

PRESIDENT пишет

kolshix

Так ты меняешь размеры окна браузера, но не разрешение экрана:)

вот смотри

скрытый текст
hxow6wo1li8j.jpg
49s82te244mo.jpg
ddx9o2om51vq.jpg

Мне и не нужно менять разрешение экрана, мне нужно сделать подмену результатов которые получит сайт  --- Как видно на скринах , сайт не понимает что я сижу с одного и того же браузера, с одним и тем же разрешением экрана, но FF отправляет (подменяет)  другие данные...
При Адаптивном режиме установлено 768x1024 сайт видит 1152х1536 - хоть и сайт немного ошибся , но мне это и нужно , цифры можно в about:config подкрутить , гланое чтоб imacros умел открыть режим адаптивный дизайн с подкрученными данными

kolshix пишет

цифры можно в about:config подкрутить

Подскажите как это сделать и может ли сам iMacros это сделать функцией?

ottec

Выделить код

Код:

window.resizeTo(500, 500);

PRESIDENT
Большое спасибо.

Подскажите, пожалуйста, как всё же правильнее оборачивать iim в js?
Нашёл два способа:
1. Оборачиваем все строки в iimPlayCode('.....');

2. var macros;
macros =  "CODE:";
macros +=  "...." + "\n";
iimPlay(macros)

Как по мне первый способ удобнее и работает шустрее, так как исполнение идёт на лету. Но зато не получается считывать данные из файла .csv
Вот пример, при втором способе всё хорошо, при первом, пишет в поле ввода данных _undefined_

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\address\\address.csv');
iimPlayCode('SET EMAIL {{!col1}}');
............................
iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{EMAIL}}');


Вот что я не правильно делаю? Не хочет не в какую находить данные:usch:
Хотелось бы использовать 1 способ

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\address\\address.csv\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{!col1}}');

PRESIDENT пишет

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\address\\address.csv\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{!col1}}');

Спасибо. Заработало.
Админы сделайте кнопку спасибо за пост. Меньше флудить будем

Подскажите пожалуйста, как можно закрыть окно при выборе картинки с компьютера данной командой

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:/p-submit-ad.html ATTR=* CONTENT=D:\images\download.jpg


Выбрав картинку из папки окно не закрываеться, пробовал делать записm в experimental event mode нажимая эскейп все равно ничего не помогло..

kani339
По идее это окно вообще не должно вылазить.
Покажи пару строк кода до этого.

Заполнение формы из .csv файла. В форме есть вопрос Date Of Birth, который состоит из 3-х выпадающих списков: Day, Month, Year. Как реализовать, если в .csv файле эти данные записаны в одной ячейке в виде 15/08/1985 ?

slovak
Замени слеш на запятую, что бы было так

15, 08, 1985

Или используй DELIMITER

и в скрипте соответственно в нужные места подставляй {{!col1}} {{!col2}} и {{!col3}}, это и будут твои значения из файла
в {{!col1}} будет 15
в {{!col2}} будет 08
в {{!col3}} будет 1985

Как посчитать число файлов и получить имя последнего файла в каталоге ? smile_19.gif

PRESIDENT
удалено
У меня дата рождения стоит в .csv файле в одной ячейке. Конечно, если раскинуть на 3 ячейки, то работает. А вот как с одной ячейки вставить - это проблема.


InfSub

PRESIDENT пишет

kani339
По идее это окно вообще не должно вылазить.
Покажи пару строк кода до этого.

Вот весь код

скрытый текст

Выделить код

Код:

URL GOTO=https://www.kijiji.ca/p-post-ad.html?categoryId=168
TAG POS=1 TYPE=BUTTON FORM=ACTION:/p-submit-ad.html ATTR=TXT:Select<SP>Images
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:/p-submit-ad.html ATTR=* CONTENT=D:\images\download.jpg
WAIT SECONDS=1

PRESIDENT пишет

Замени слеш на запятую, что бы было так

EVAL- никто не отменял

PRESIDENT пишет

По идее это окно вообще не должно вылазить.

сайты, типа ok.ru используют flash-загрузчик, на них и возникает подобная трабла, там нужно использовать прямое обращение к обработчику формы, чтобы отправить файл (это один из вариантов, и работает он не везде)

Есть файл .txt с 1000000 e-mail адресов. Можно ли с помощь imacros копировать из файла по 1000 e-mail адресов?

удалено, правила 2.6

InfSub

Moder пишет

EVAL- никто не отменял

Извращенец.:(

slovak
Переделывай код в JS и там split('/')

31-12-2015 01:23:38
InfSub

Подскажи это

PRESIDENT пишет

Переделывай код в JS и там split('/')

скрытый текст
ну да, по вашему - лучше переписать весь код, что совершенно ни на что не повлияет, с учетом знаний, спросившего, чем добавить 1-3 строки кода в уже имеющийся...
да еще и "сломать голову" куда и как вставить этот сплит...
я не спорю, что js - нужен, и во многом оптимален, но не нужно же "стрелять из пушки по воробьям"

slovak
скрытый текст

Выделить код

Код:

SET !EXTRACT 31/12/2015
SET DATE EVAL("'{{!EXTRACT}}'.match(/\d+/)")
SET MNTH EVAL("'{{!EXTRACT}}'.match(/\d+/g).splice(1,1)")
SET YEAR EVAL("'{{!EXTRACT}}'.match(/\d{4}/)")
PROMPT {{DATE}}-{{MNTH}}-{{YEAR}}


PRESIDENT пишет

Как посчитать число файлов и получить имя последнего файла в каталоге ?

скрытый текст
а, собственно, чуть подробнее можно? iMacros - не имеет прямого доступа к файловой системе, считать список файлов можно разве что - сторонними средствами, например через cmd.
Ну и вычислить последний файл, соответственно, с помощью сортировки, например. Вопрос в том, что считать последним.. последний по дате, последний по алфавиту, последний по типу данных....


and2517 пишет

Можно ли с помощь imacros копировать из файла по 1000

скопировать куда?

InfSub пишет

скрытый текст

Выделить код

Код:

SET !EXTRACT 31/12/2015
SET DATE EVAL("'{{!EXTRACT}}'.match(/\d+/)")
SET MNTH EVAL("'{{!EXTRACT}}'.match(/\d+/g).splice(1,1)")
SET YEAR EVAL("'{{!EXTRACT}}'.match(/\d{4}/)")
PROMPT {{DATE}}-{{MNTH}}-{{YEAR}}

И куда это вставлять? В какой участок скрипта?

У меня сейчас сделано вот так:

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
SET !DATASOURCE C:\Users\Administrator\Desktop\test.csv
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO=about:newtab
URL GOTO=http://bookmakers.co.uk/free-bets/
TAG POS=3 TYPE=A ATTR=TXT:Claim<SP>Free<SP>Bet
TAB T=2
TAG POS=1 TYPE=P ATTR=TXT:up<SP>to<SP>£50<SP>free<SP>bet
TAB T=3
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:firstName CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:lastName CONTENT={{!COL2}}
TAG POS=1 TYPE=SELECT FORM=ID:registrationForm ATTR=ID:birthDay CONTENT=$*{{!COL3}}*
TAG POS=1 TYPE=SELECT FORM=ID:registrationForm ATTR=ID:birthMonth CONTENT=$*{{!COL4}}*
TAG POS=1 TYPE=SELECT FORM=ID:registrationForm ATTR=ID:birthYear CONTENT=$*{{!COL5}}*
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:email CONTENT={{!COL14}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:phone CONTENT={{!COL13}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:postCode CONTENT={{!COL12}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:house CONTENT={{!COL6}}
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ID:registrationForm ATTR=ID:promotionalNotificationPhone CONTENT=NO
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ID:registrationForm ATTR=ID:promotionalNotificationSms CONTENT=NO
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:userName CONTENT={{!COL16}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:registrationForm ATTR=ID:userPassword CONTENT={{!COL17}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:registrationForm ATTR=ID:passwordVerify CONTENT={{!COL17}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:registrationForm ATTR=ID:verificationAnswer CONTENT={{!COL18}}
TAG POS=1 TYPE=SELECT FORM=ID:registrationForm ATTR=ID:depositLimit CONTENT=%9223372036854775807
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ID:registrationForm ATTR=ID:termsAndConditions CONTENT=YES
TAG POS=1 TYPE=BUTTON FORM=ID:registrationForm ATTR=TXT:Create<SP>Account


Это я передалал после того, как разбил одну ячейку с датой в виде 24/09/1994, которая у меня была в столбце 3, на три ячейки:

Столбец 3: 24
Столбец 4: September
Столбец 5: 1994

Правила форума iMacros
1.  Не рекомендуется:
1.3.2
  Размещать код в открытом виде. Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - &#91;spoiler]&#91;code]ваш код&#91;/code]&#91;/spoiler]

InfSub

удалено
копировать к CONTENT

InfSub

Подскажите как перекинуть инфу из JS в Буфер обмена

так не работает:

скрытый текст

Выделить код

Код:

var buffer = 'http://imagetwist.com/j9qo
                   http://imagetwist.com/6etjl
                   http://imagetwist.com/ssz7i
                   http://imagetwist.com/21ft'  // после каждой ссылки выставлен \n - информация понятное дела состоит из сложения и в одну строку - так написал для наглядности

iimPlayCode("SET !CLIPBORD"+buffer) // ошибка из-за того что imacros не понимает переносов команды на другую строку


'кому интересно назначение'
Есть свой сайт, на него закачиваю изображения , потом нужно эти же изображения  закачать на хостинг изображений, а скорость отдачи у меня 10-60 килобайт в секунду+обрывы // чтоб 2 раза не отправлять и не ждать , запускаю imacros - тот парсит ссылки и отправляет их на хост ..  Самое обидное , что уже 5 гигабайта отправил (т.е. выходит 10 гиг -очень много времени убил )

C наступившим всех !!!
83ab5b3fc1fdba53deccdfe00c846c0f_114.jpg

kolshix

Может массивом передать

Выделить код

Код:

var buffer =["ссылка-1",
  "ссылка-2",
  "ссылка-3",
  "ссылка-4"] 
alert(buffer);


and2517

Взять первые 5 емейлов из списка

Выделить код

Код:

iimPlayCode('URL GOTO=file:///C:\\rega.txt');
   iimPlayCode('TAG POS=1 TYPE=* ATTR=* EXTRACT=TXT');
   email=iimGetLastExtract().split('\n', 5)
   alert(email);

Всех с новым годом!!!

PRESIDENT пишет

Может массивом передать

Выделить код

Код:

var buffer =["ссылка-1",
  "ссылка-2",
  "ссылка-3",
  "ссылка-4"] 
alert(buffer)

такое на пройдет , на хостинге куда вставляются ссылки - каждая новая ссылка с новой строки, даже проверял на всякий пожарный  через кавычки и разделительные знаки , не сработало,
я просто встречал упоминания про передачу напрямую из JS в буфер думал может кто-то тоже встречал.

kolshix
Тебе именно в буфер обмена нужно сохранить ?

скрытый текст

Выделить код

Код:

var buffer="ссылка-1\nссылка-2\nссылка-3\nссылка-4" 
 const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
 clipboardHelper.copyString(buffer);
 alert('Попробуй вставить куда нибудь текст из буфера обмена, нажми Ctrl+V\nДолжно получится что то типа этого\n'+buffer);


slovak
Тебе дали скрипт разделяющий твои значения из одной ячейки,
если в таком виде 31/12/2015 <--- это то что хранилось в {{!COL3}}
Если ты разделил на разные ячейки, то этот скрипт уже не нужен.

Всех с праздниками.
Подскажите, пожалуйста,  как сделать чтобы скрипт js работал только в определенное время, допустим от 00 минут до 30 каждого часа, а остальное время был в ожидании?

ottec

скрытый текст

Выделить код

Код:

var d=new Date();
if(d.getMinutes()<=30){
    alert('Play Code'); // ваш код, который будет выполняться с 0 по 30 минуты
};

ottec

скрытый текст

Выделить код

Код:

var d=new Date();
 z=d.getMinutes();
 if(z>30)iimPlayCode('WAIT SECONDS='+(61-Number(z))*60);
 else{
 /***...
 Тут твой скрипт
 ...***/
 }


Упс модер уже ответил.:)

InfSub, PRESIDENT большое спасибо за ответы.

Помогите свежим взглядом найти где допущена ошибка в цикле,
цикл должен выполняться в зависимости от того сколько элементов с классом post_title
срипт все выполняет правильно но когда больше нету данного элемента скрипт не выходит из цикла
Вот сам скрипт

скрытый текст

Выделить код

Код:

var str = window.document.getElementsByClassName("post_title").length;
var elements = window.document.querySelectorAll('input[name].post_title');

for(var i = 1; i <= str; i++ ) {
Array.prototype.forEach.call(elements, function (el) {
    var match = el.name.match(/\[(\d+)\]/),
        numb= match !== null ? match[1] : null;
            iimPlay("CODE:"
            + 'SET !DATASOURCE keywords.txt\n'
            + 'TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:select_all CONTENT=YES\n'
        + 'TAG POS='+i+' TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][post_title] CONTENT={{!COL1}}\n'
        + 'TAG POS='+i+' TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][filename] CONTENT={{!COL1}}\n'
        + 'TAG POS='+i+' TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][title] CONTENT={{!COL1}}\n'
    );
    });
    
};
alert("Done");

kani339
на первый взгляд, i=0 а не 1
i<str а не i<=str
и соответственно, POS='+(i+1)+'...

InfSub пишет

kani339
на первый взгляд, i=0 а не 1
i<str а не i<=str
и соответственно, POS='+(i+1)+'...

По прежнему из цикла не выходит..
Скрипт почему-то воспроизводится четыри раза хотя должен два

kani339
проверь что в str попадает

скрытый текст

Выделить код

Код:

var str = window.document.getElementsByClassName("post_title").length;
var elements = window.document.querySelectorAll('input[name].post_title');

alert(str);

for(var ...

Подскажите что это за ошибка, впервые с ней сталкиваюсь

TypeError: can't access dead object, line 13 (Error code: -991)

Ошибка возникает со строчки

Array.prototype

Вот код скрипта

скрытый текст

Выделить код

Код:

var elements = window.document.querySelectorAll('input[name].post_title');
var data = 'SET !DATASOURCE keywords.txt'
var totalPlay = 10;

for(i = 1; i < totalPlay; i++ ) {
iimPlay('CODE:'
    + data + '\n'
    + 'URL GOTO=http://backgroundwallpapers.org/wp-admin/admin.php?page=image-grab\n'
    + 'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://backgroundwallpapers.org/wp-admin/admin.php?page=image-grab ATTR=NAME:q CONTENT={{!COL1}}\n'
    + 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://backgroundwallpapers.org/wp-admin/admin.php?page=image-grab ATTR=NAME:submit\n'
    + 'WAIT SECONDS=10\n'
);
Array.prototype.forEach.call(elements, function (el) {
    var match = el.name.match(/\[(\d+)\]/),
        numb= match !== null ? match[1] : null;
            iimPlay('CODE:'
            +  data + '\n'
        + 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][post_title] CONTENT={{!COL1}}\n'
        + 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][filename] CONTENT={{!COL1}}\n'
        + 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][title] CONTENT={{!COL1}}\n'    
    );
    });
    
iimPlay('CODE:'
     + 'SET !REPLAYSPEED MEDIUM'
     + 'SET !TIMEOUT_STEP 25\n'
     + 'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=class:"button button-primary"\n'
     + 'WAIT SECONDS=10\n' 
);
}//end of loop

Вообще то имакрос не работает с объектами.

PRESIDENT пишет

Вообще то имакрос не работает с объектами.

Уже решил данную проблему все заработало

Подскажите как сделать чтоб макрос вставлял в поиск ключевое слово из файла keywords а потом из файла suffix в этот же инпут
Вот срипт

скрытый текст

Выделить код

Код:

SET !DATASOURCE keywords.txt
SET !DATASOURCE suffix.txt
SET !VAR1 {{!COL1}}
URL GOTO=http://google.com
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT={{!COL1}}

удалено
PRESIDENT
Можете привести пример не получается(

Подскажите как сделать чтобы выбирало рандомную дату или первую со списка.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SELECT FORM=NAME:aspnetForm ATTR=ID:ctl00_cp_cbDzien CONTENT=ALL


(выбирает последнюю  дату)

скрытый текст

Выделить код

Код:

<select name="ctl00$cp$cbDzien" id="ctl00_cp_cbDzien" onChange="cbDzienGodzina_onChange(this);" style="width:200px;">
                                    <option value="-1"></option>
                                    <option value="2013-07-16">2013-07-16</option>
                                    <option value="2013-07-18">2013-07-18</option>
                                    <option value="2013-07-22">2013-07-22</option>
                                    <option value="2013-07-23">2013-07-23</option>
                                    <option value="2013-07-25">2013-07-25</option>
                                    <option value="2013-07-29">2013-07-29</option>
                                    <option value="2013-07-30">2013-07-30</option>
                                    <option value="2013-08-01">2013-08-01</option>
                                    <option value="2013-08-05">2013-08-05</option>
                                    <option value="2013-08-06">2013-08-06</option>
                                    <option value="2013-08-08">2013-08-08</option>
                                    <option value="2013-08-12">2013-08-12</option>
                                    <option value="2013-08-13">2013-08-13</option>
                                    <option value="2013-08-19">2013-08-19</option>
                                    <option value="2013-08-20">2013-08-20</option>
                                    <option value="2013-08-22">2013-08-22</option>
                                    <option value="2013-08-26">2013-08-26</option>
                                    <option value="2013-08-27">2013-08-27</option>
                                    <option value="2013-08-29">2013-08-29</option>

                                </select>

kani339

скрытый текст

Выделить код

Код:

SET !DATASOURCE keywords.txt
SET !VAR1 {{!COL1}}
SET !DATASOURCE suffix.txt
SET !VAR2 {{!COL1}}
SET !TEXT {{!VAR1}}{{!VAR2}} '<--- Тут я не уверен, с iim-ами не работаю, но как то так
URL GOTO=http://google.com
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT={{!TEXT}}


macrosi
Какой сайт .

PRESIDENT пишет

удалено
macrosi
Какой сайт .

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


:)


InfSub

удалено
PRESIDENT
Срасибо большое!

macrosi

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=SELECT FORM=NAME:aspnetForm ATTR=ID:ctl00_cp_cbDzien extract=htm');
     a=iimGetExtract().match(/value\=\"(.*?)\>/g); 
     b=a[a.length-1].replace(/value\=\"/,'').replace(/\"\>/,'');
     alert(b):
iimPlayCode('TAG POS=1 TYPE=SELECT FORM=NAME:aspnetForm ATTR=ID:ctl00_cp_cbDzien CONTENT=%'+b);

Приветствую всех:rock:
У меня экстрактится вот такое слово f_0_7"type="text  Подскажите пожалуйста как  удалить эту часть "type="text

Вот кусок кода

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=ID:u* ATTR=ID:u* Extract=htm')
    id_chars=iimGetLastExtract().split('id="')[1].split('">')[0]
    alert(id_chars)

Gergi

скрытый текст

Выделить код

Код:

id=id_chars.replace(/\"type\=\"text/,'');
alert(id);

Вот что выдаёт 

f_0_7"type="text

А надо чтобы так выдавал

f_0_7

Подскажите как сделать что бы когда макрос воспроизводиться каждый 7 раз делать перенос строки в csv файле.
У меня макрос сохраняет 6 строк в одну строку  а следующие 6 строк должны уже идти с новой строки, как правильно это реализрвать?

скрытый текст

Выделить код

Код:

var id = window.document.getElementsByClassName('divtd textcenter vam').length;
var M = "";
for (var i = 1; i <= id; i++)
    
        M += 'TAG POS='+i+' TYPE=DIV ATTR=CLASS:"divtd textcenter vam" EXTRACT=TXT\n';
    M += 'SET !EXTRACT EVAL("\'{{!EXTRACT}}\'.replace(/\\\\n/g, \'\');")\n'; 
    M += 'SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv\n';
    iimPlayCode(M);

PRESIDENT пишет

Ты код то пробовал вообще.

Пробовал? Не то слово,уже мозг кипит от пробования.

kani339

скрытый текст

Выделить код

Код:

var id = window.document.getElementsByClassName('divtd textcenter vam').length;
var M = "", a=1, b='\\n';
for (var i = 1; i <= id; i++){
    
    M += 'TAG POS='+i+' TYPE=DIV ATTR=CLASS:"divtd textcenter vam" EXTRACT=TXT\n';
    M += 'SET !EXTRACT EVAL("\'{{!EXTRACT}}\'.replace(/\\\\n/g, \'\');")\n'; 
    M += 'SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv';
    iimPlayCode(M); 
    a++;
    if(a>5){ a=0;
    iimPlayCode('SET !EXTRACT '+b+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv');
    }}


Gergi
Покажи код что получилось.

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=ID:u* ATTR=ID:u* Extract=htm')
    id_chars=iimGetLastExtract().split('id="')[1].split('">')[0]
    id=id_chars.replace(/\"type\=\"text/,'');
    alert(id);

Вот что выдаёт  f_0_7"type="text
А надо чтобы так выдавал f_0_7

Gergi пишет

Вот что выдаёт  f_0_7"type="text

скрытый текст
Да не может быть ... ты чето путаешь, :(
ты точно в алерт id засунул,  а не  id_chars


Кстати там двойные кавычки или по две одинарные

PRESIDENT пишет

скрытый текст

Выделить код

Код:

id=id_chars.replace(/\"type\=\"text/,'');

а зачем экранировать знак = ?

Gergi

скрытый текст

Выделить код

Код:

id_chars=id_chars.match(/^[\w_]+/)

InfSub пишет

Gergi

скрытый текст

Выделить код

Код:

id_chars=id_chars.match(/^[\w_]+/)

О вот это другое дело,всё пошло отлично. Спасибо!:rock:

PRESIDENT пишет

kani339

скрытый текст

Выделить код

Код:

var id = window.document.getElementsByClassName('divtd textcenter vam').length;
var M = "", a=0, b='\\n';
for (var i = 1; i <= id; i++){
    
    M += 'TAG POS='+i+' TYPE=DIV ATTR=CLASS:"divtd textcenter vam" EXTRACT=TXT\n';
    M += 'SET !EXTRACT EVAL("\'{{!EXTRACT}}\'.replace(/\\\\n/g, \'\');")\n'; 
    M += 'SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv';
    iimPlayCode(M); 
    a++;
    if(a>6){ a=0;
    iimPlayCode('SET !EXTRACT '+b+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=file.csv');
    }}


удалено, правило 2.9

Не совсем то что нужно, при каждой 6 итерации в цсв файле нужно делать перенос строки

InfSub

Подскажите почему цикл где используется переменная  "j" работает через раз и эта переменная постоянно равна одному, то есть скрипт первый раз игнорирует элемент на страницы и на чинает со второго потом игнорирует элемент три и начинает с четвертого. Пытаюсь добиться того что бы для файла "suffix" бралась новая строка из файла.
Можете меня поправить что делаю не так?


скрытый текст

Выделить код

Код:

var keywords = 'SET !DATASOURCE keywords.txt', suffix = 'SET !DATASOURCE suffix.txt', totalPlay = 10;

for(i = 1; i < totalPlay; i++ ) {
//iimPlayCode('SET !REPLAYSPEED FAST\n'+keywords+'\nSET !VAR1 {{!COL1}}\nURL GOTO=http://backgroundwallpapers.org/wp-admin/admin.php?page=image-grab\nTAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://backgroundwallpapers.org/wp-admin/admin.php?page=image-grab ATTR=NAME:q CONTENT={{!VAR1}}\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://backgroundwallpapers.org/wp-admin/admin.php?page=image-grab ATTR=NAME:submit\nWAIT SECONDS=5\n');

var elements = window.document.querySelectorAll('input[name].post_title');
Array.prototype.forEach.call(elements, function (el) {
    var match = el.name.match(/\[(\d+)\]/),
        numb= match !== null ? match[1] : null;
         for(var j = 1; j <= numb; j++) {
            iimPlay('CODE:'
                + 'SET !REPLAYSPEED FAST\n'
                + keywords + '\n'
                + 'SET !VAR1 {{!COL1}}\n'
               + suffix + '\n'
               + 'SET !VAR2 {{!COL'+j+'}}\n'
            + 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][post_title] CONTENT={{!VAR1}}<SP>{{!VAR2}}\n'
            + 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][filename] CONTENT={{!VAR1}}<SP>{{!VAR2}}\n'
            + 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:data['+numb+'][title] CONTENT={{!VAR1}}<SP>{{!VAR2}}\n'    
    );
    }
    });
}//end of loop

PRESIDENT пишет

Значит каждый второй элемент на сайте имеет другие теги, что то в нём изменено.

без данного цикла все работет как надо, может тогда можно другим способом, увеличить значения для !VAR2

PRESIDENT пишет

Да с циклом всё верно.
Можешь алертом контролировать значение переменной

J


скрытый текст

for(j = 1; j <= numb; j++) {
alert(j);
...

да уже пробывал переменная постоянно равна 1

Значит выше значение numb равно единице.
и цикл будет от единицы до numb т.е. до единицы.

скрытый текст

Выделить код

Код:

numb= match !== null ? match[1] : null;
alert(numb);

какой смысл гадать о значении j не просматривая значениние numb?

PRESIDENT пишет

Значит выше значение numb равно единице.
и цикл будет от единицы до numb т.е. до единицы.

скрытый текст

Выделить код

Код:

numb= match !== null ? match[1] : null;
alert(numb);

Да действительно поправил но теперь выдает данную ошибку

RuntimeError: Column number 2 greater than total number of columns 1, line 5 (Error code: -953)

Добавил

скрытый текст

Выделить код

Код:

var str = window.document.getElementsByClassName("post_title").length;
где str=5;

for(var j = 1; j <= str; j++)


Ошибка указывает на то что у меня в файле одна строка, хотя в реальности 5 строчек с текстом...

Ребята подскажите, пожалуйста, как справляетесь с данной задачей.
Есть управляющий js скрипт, который поочерёдно запускает нужные скрипты .js и .iim
Хочу, чтобы запустил первый скрипт. после второй и т.д. и для каждого выставить цикл со своим таймером.
К примеру, первый будет запускаться каждые 900 секунд, второй каждые 1800 сек ...
Находил на форуме, что функцией setInterval справляются, но у меня Imacros постоянно выдаёт setInterval is not defined

wanksta пишет

Ребята подскажите, пожалуйста, как справляетесь с данной задачей.
Есть управляющий js скрипт, который поочерёдно запускает нужные скрипты .js и .iim

Слушай, я не заморачивался особо, из управляющего скрипта вызвал .js или .iim он отработал,
вызвал следующий, и так далее, просто у меня их штук 50-60 вызывается, время исполнения каждого примерно 40-60 сек,
ну и ставь например кран раздает раз в 10 мин. т.е. 600 сек, поставил первый раз  .js или .iim потом через 10-15 других кранов ставлю снова этот кран и так далее,
пока не наберешь примерно 600 сек времени работы кранов.
Я их по группам формирую, первый раз помучился, поставил подряд 10 кранов 10-минутных, потом поставил 15-ти минутные, потом еще,
пока не наберешь примерно 600 сек времени работы кранов. потом снова 10 минутные,
они уже прописаны в скрипте управляющем, скопировал вставил, ну и так далее.
Наверное не очень эстетично, но просто и работает.

wanksta пишет

Находил на форуме, что функцией setInterval справляются

функция не работает в iMacros, и обсуждалась, как-раз, возможность ее запуска (так что не вводите людей в заблуждение)

используйте функции сортировки + таймер (wait seconds)

wanksta

скрытый текст
Запусти первый скрипт 2 раза с интервалом 900 секунд,
потом второй скрипт и всё заново

for(u=0; u<99; u++){
   запускаем скрипт

1


   ждём 900 сек
   запускаем скрипт

1


   ждёт 900 сек
   запускаем скрипт

2


   тут уже пауза не нужна
}

InfSub

функция не работает в iMacros

Почему не работает? Все работает без проблем...

скрытый текст

Выделить код

Код:

function test () {
    alert('Hello!')
}

window.setInterval(test, 5000)

Здравствуйте! Пишу ява-скрипт для авторегистрации на одном сайте. Регистрация разрешена только для трех акков с одного IP. Потом, при ответе с сайта фразы  "maximum limit ip", скрипт меняет IP и регистрация идёт дальше.
Вопрос в том, как сделать чтоб из  списка почты в файле POST.CSV, при смене IP, последний емейл, при вводе которого сайт выдал сообщение о превышении количества регистраций, снова участвовал бы в  цикле? А то получается так: три акка зарегистрировалось, а при регистрации четвертого выдало сообщение о превышении лимита по IP, после этого скрипт обновил IP и пошел регистрировать акки дальше, но уже с пятого емейла по списку, а четвёртый пропустил, поскольку четвёртый уже как бы участвовал в цикле.
А как сделать так, чтоб и четвёртый емейл тоже использовался? Чтоб  скрипт к нему возвращался и повторно, именно с червертого емейла, а не с пятого, продолжал регистрацию, на обновленном IP-адресе? Ведь это ж на четвёртом емейле сайт выдал сообщение о превышении регистрации по IP-адресу.
Вот как выглядит код который берёт емейлы из файла POST.csv

скрытый текст

Выделить код

Код:

iimPlay('CODE:SET !DATASOURCE POST.csv\nSET !DATASOURCE_LINE '+a+'\nSET !EXTRACT {{!COL1}}'); if(iimGetExtract()=='');
iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:email CONTENT='+iimGetExtract());

dvitkovs

скрытый текст
Там когда у тебя скрипт меняет айпи, когда находит надпись maximum limit ip,
добавь команду уменьшить счётчик на единицу.

if(находит надпись maximum limit ip){
тут команда смены айпи

a--;


}

Hamzat
через window - не пробовал, да и ваш пример - дает бесконечный цикл с alert'ами..

PRESIDENT пишет

dvitkovs

скрытый текст
Там когда у тебя скрипт меняет айпи, когда находит надпись maximum limit ip,
добавь команду уменьшить счётчик на единицу.

if(находит надпись maximum limit ip){
тут команда смены айпи

a--;


}

Благодарю! Это как раз то, что надо. :)

InfSub пишет

Hamzat
через window - не пробовал, да и ваш пример - дает бесконечный цикл с alert'ами..

Так и должен быть бесконечный цикл...А вообще для этого лучше использовать рекурсивный setTimeout по мне более гибок и удобнее для задачи цикла...

Народ, подскажите или ткните пальцем, где можно почитать про програмное смену IP и чистку кэша, для динамического айпи.
Если есть готовый пример кода, ткните где можно почитать и посмотреть.
Спасибо

Egorushka1974
В факе есть видео колшика, там подробно что к чему.

Люди, не кидайтесь помидорами и яйцами... что-то не нашел ответа на свой вопрос. Возможна ли одновременная работа двух js-скриптов в разных окнах?
У меня почему то первый скрипт встает после того, как второй отработает 1 цикл. Оба скрипта имеют бесконечные циклы for(;;), может быть проблема в этом?

Gazmus
Да, при использовании разных профилей FF или при использовании портативных версий FF (в настройках должно быть указано использование портативного профиля)

FirefoxPortable.ini

Выделить код

Код:

[FirefoxPortable]
FirefoxDirectory=App\firefox
ProfileDirectory=Data\profile
SettingsDirectory=Data\settings
PluginsDirectory=Data\plugins
FirefoxExecutable=firefox.exe
AdditionalParameters=
LocalHomepage=
DisableSplashScreen=false
AllowMultipleInstances=true
DisableIntelligentStart=false
SkipCompregFix=false
RunLocally=false


вызов настроек профилей у установленной версии FF

Выделить код

Код:

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -P -no-remote

InfSub пишет

Gazmus
Да, при использовании разных профилей FF или при использовании портативных версий FF (в настройках должно быть указано использование портативного профиля)

Спасибо большое.

InfSub пишет

вызов настроек профилей у установленной версии FF

Выделить код

Код:

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -P -no-remote

При запуске в окошко подтягивается инфа из

скрытый текст

Выделить код

Код:

c:\Users\User\AppData\Roaming\Mozilla\Firefox\profiles.ini


Где можно изменить адрес
скрытый текст

Выделить код

Код:

c:\Users\User\AppData\Roaming\Mozilla\Firefox\profiles.ini


на свой?

Подскажите пожалуйста. Можно ли как то настроить imacros для одноклассников, чтобы он наводил на фото людей в списке (люди сейчас на сайте), далее всплывало окно, а затем нажимал нужный мне раздел (пригласить в группу, сделать подарок и т.д). Чтобы исключить переход на страницу человека.

spy686 пишет

Где можно изменить адрес

скрытый текст

Выделить код

Код:

c:\Users\User\AppData\Roaming\Mozilla\Firefox\profiles.ini


на свой?

используйте портативную версию мозиллы, файл FirefoxPortable.ini - будет/должен лежать в корневой папке FirefoxPortable

Подскажите как правильно сделать проверку если на странице есть текст который содержиться в переменной "prime", то воспроизводить макрос если нету продолжить цикл


скрытый текст

Выделить код

Код:

for(var i = 2; i < 5; i++) {
    iimPlayCode('nSET !DATASOURCE file.csv\nSET !DATASOURCE_LINE '+i+'\nURL GOTO=http://amazon.co.uk.\nTAG POS=1 TYPE=INPUT:TEXT FORM=NAME:site-search ATTR=ID:"twotabsearchtextbox" CONTENT={{!COL1}}\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:site-search ATTR=CLASS:nav-input\n' );
        
        if(prime === true) {
            var prime = window.document.getElementsByClassName('a-icon a-icon-prime a-icon-small s-align-text-bottom')[0].textContent;
            iimPlayCode('TAG POS=1 TYPE=H2 ATTR=CLASS:"a-size-medium a-color-null s-inline s-access-title a-text-normal"\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=Amazon-extract.csv\nTAG POS=1 TYPE=SPAN ATTR=CLASS:"a-color-price" EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=Amazon-extract.csv');
        } continue;

    }

Sega00 пишет

Подскажите пожалуйста. Можно ли как то настроить imacros для одноклассников, чтобы он наводил на фото людей в списке (люди сейчас на сайте), далее всплывало окно, а затем нажимал нужный мне раздел (пригласить в группу, сделать подарок и т.д). Чтобы исключить переход на страницу человека.

Если сайт Одноклассники не даёт возможности сделать это руками - то iMacrosom это вряд ли можно сделать.

kani339 пишет

если на странице есть текст то ...

Посмотри тут

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

скрытый текст

Выделить код

Код:

var m,y;
for(m=1;m<250;m++){
for(y=1;y<=20;y++){ 
iimPlayCode('SET !DATASOURCE C:\\Test.txt\nSET !DATASOURCE_LINE '+y+'\nSET !EXTRACT {{!COL1}}'); 
x=iimGetExtract();
iimPlayCode('EVENTS TYPE=KEYPRESS SELECTOR="#'+id_chars+'" CHARS="'+x+'"')
 }
iimPlayCode('URL GOTO=') 
}


Можно вместо 20 поставить 100 и всё пойдёт,но мне надо что бы там 20 стояло

Gergi
вам уже раз 20 отвечали на аналогичные вопросы, в чем сложность скопировать код и поправить под ваши требования?

Я сегодня целый день маялся и ничего не получилось

Gergi
я не в курсе, чем вы целый день маялись, если не смогли добавить 1 переменную в цикл и проверку значения переменной меньшую или равную 20 со сбросом значения при превышении данного значения

InfSub пишет

Gergi
я не в курсе, чем вы целый день маялись, если не смогли добавить 1 переменную в цикл и проверку значения переменной меньшую или равную 20 со сбросом значения при превышении данного значения

Так а я разве не так сделал?

Gergi
в вашем коде 250 раз выполняется цикл, в котором 20 раз перебираются строки из файла
во первых, где 100, о которых вы говорите, во вторых, если вы ставите переменную, принимающую значение до 20, как она может принимать значение 100, может выперечитаете еще раз мой пост и вдумаетесь в его смысл?

Подскажите пожалуйста как сделать EXTRACT=TXT из переменной.
Вот из данной переменной нужно извлечь текст

скрытый текст

Выделить код

Код:

var str = window.document.getElementsByClassName('value')[11].innerHTML;

kani339
Посмотри что тут
alert (str);

PRESIDENT пишет

kani339
Посмотри что тут
alert (str);

как раз то что мне нужно, как теперь это в csv файл сохранить через EXTRACT=TXT

kani339

Выделить код

Код:

TAG POS=12 TYPE=* ATTR=CLASS:value EXTRACT=txt

удалено, избыточное цитирование
Hamzat
Спасибо большое, забыл что можно POS использовать

Всем привет. Помогите пожалуйста с кодом, поле для ввода адреса

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:IyOxWNEIbBxYDEazyOM4pb3S4 CONTENT=123456


значение AttrName и POS изменяются постоянно.Как это все реализовать в js?

InfSub пишет

используйте портативную версию мозиллы, файл FirefoxPortable.ini - будет/должен лежать в корневой папке FirefoxPortable

profiles.ini это файл с инфой:

скрытый текст

Выделить код

Код:

[General]
StartWithLastProfile=1

[Profile0]
Name=01.Ana.org
IsRelative=0
Path=Z:\Mozilla\Firefox\Profiles\01.Ana.org


в которой описаны пути к профилям.

В FirefoxPortable.ini содержится другая информация.

поместил в  FirefoxPortable.ini:

скрытый текст

Выделить код

Код:

[General]
StartWithLastProfile=1

[Profile0]
Name=01.Ana.org
IsRelative=0
Path=Z:\Mozilla\Firefox\Profiles\01.Ana.org


все равно запускается с формой выбора пользователя из файла:
скрытый текст

Выделить код

Код:

c:\Users\User\AppData\Roaming\Mozilla\Firefox\profiles.ini


адрес ярлыка через который запускаю:
скрытый текст

Выделить код

Код:

D:\Notebook\Mozilla\Firefox\FirefoxPortable\App\Firefox\firefox.exe -no-remote -p

Ronar_13 пишет

значение AttrName и POS изменяются постоянно.Как это все реализовать в js?

Посмотри здесь  :)

PRESIDENT пишет

Посмотри здесь  :)

Я этот раздел читал, и не раз... * и изменение POS1 на POS2 помогают временно. Не могу понять как через js найти эту форму и вставить туда текст)

Ronar_13 пишет

как через js найти эту форму и вставить туда текст)

скрытый текст

Выделить код

Код:

if(iimPlayCode('TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:*')>0)
   iimPlayCode('TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT=bitcoin_koshel');
else
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:* CONTENT=bitcoin_koshel');

Подскажите как правильно убрать перенос строки в цсв файле

скрытый текст

Выделить код

Код:

var extract = 'SET !EXTRACT EVAL("\'{{!EXTRACT}}\'.replace(/\\\\s\/g, \'\')")';

kani339 пишет

скрытый текст

Выделить код

Код:

var extract = 'SET !EXTRACT EVAL("\'{{!EXTRACT}}\'.replace(/\\\\s\/g, \'\')")';

Что это за бред ???  smile_29.gif
EVAL используется для запуска JS кода в iim-ах.
А ты уже в *.js пишешь.
Имакрос каждую новую запись будет делать с новой строки.
Что бы записать несколько значений в одну ячейку или строку, нужно сначала все значения собрать в одно, потом это одно и сохранять в файл.

скрытый текст

Выделить код

Код:

var a1='text 1 ';
var a2='text 2 ';
var a3='text 3 ';
txt=a1+a2+a3;

И теперь это txt и сохраняй в файл

PRESIDENT
ХУХ:D Большое спасибо!

spy686 пишет

profiles.ini это файл с инфой:
в которой описаны пути к профилям.
В FirefoxPortable.ini содержится другая информация.
поместил в  FirefoxPortable.ini:

а разве я где-то писал, что такое возможно? я дал пример файла FirefoxPortable.ini пути в нем, поддерживаются - только относительные, для этого и служит программа FirefoxPortable.exe, которая передает полный пусть в Firefox.exe

Народ помогите, чет найти и понять не могу, как сделать чтоб текст сохранялся не с каждой новой строки, а в колонки?

К примеру чтоб в csv файле было сохранено в виде:
текс1,текст2
Чтоб не было так:
текст1
текст2

Что тут для этого надо добавить?

скрытый текст

Выделить код

Код:

TAG POS=3 TYPE=I ATTR=* EXTRACT=TXT
SET !VAR1 {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=test.csv
SET !EXTRACT NULL
TAG POS=1 TYPE=SPAN ATTR=CLASS:ajax-data<SP>data-pending EXTRACT=TXT
SET !VAR2 {{!EXTRACT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=test.csv
SET !EXTRACT NULL

Protey сколько раз уже обсуждалось...
оставь один saveas в конце, остальные удали и set !extract null тоже удали

InfSub пишет

Protey сколько раз уже обсуждалось...оставь один saveas в конце, остальные удали и set !extract null тоже удали

понял, спасибо)
Просто делал запрос через site:forum.mozilla-russia...., не нашел для себя ответа, вот и решил написать вопрос)

поиск по теме справа вверху страницы

InfSub пишет
spy686 пишет

profiles.ini это файл с инфой:
в которой описаны пути к профилям.
В FirefoxPortable.ini содержится другая информация.
поместил в  FirefoxPortable.ini:

а разве я где-то писал, что такое возможно? я дал пример файла FirefoxPortable.ini пути в нем, поддерживаются - только относительные, для этого и служит программа FirefoxPortable.exe, которая передает полный пусть в Firefox.exe

так каким образом в FirefoxPortable настроить относительный путь к profiles.ini в котором содержаться пути к профилям?

spy686 пишет

так каким образом в FirefoxPortable настроить относительный путь к profiles.ini в котором содержаться пути к профилям?

https://forum.mozilla-russia.org/viewto … 28#p678828
https://forum.mozilla-russia.org/viewtopic.php?id=52358
https://forum.mozilla-russia.org/viewtopic.php?id=24441

Protey пишет

как сделать чтоб текст сохранялся не с каждой новой строки, а в колонки?

Смотри пару постов выше твоего, на этой же странице обсуждалось.

InfSub пишет

Protey сколько раз уже обсуждалось...
оставь один saveas в конце, остальные удали и set !extract null тоже удали

А как сделать, чтоб не весь экстракт сохранялся, а только последние 3?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Уважаемый* EXTRACT=TXT
TAG POS=1 TYPE=DIV ATTR=TXT:*SMS EXTRACT=TXT
TAG POS=2 TYPE=DIV ATTR=TXT:*SMS EXTRACT=TXT
TAG POS=3 TYPE=DIV ATTR=TXT:*SMS EXTRACT=TXT


А то толучается, что сохраняется даже то, что не надо. Можно ли как-то добавить к команде EXTRACT какую-либо метку или номер, чтоб сохранялись только со словом SMS?

dvitkovs

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Уважаемый* EXTRACT=TXT
SET !EXTRACT NULL
TAG POS=1 TYPE=DIV ATTR=TXT:*SMS EXTRACT=TXT
TAG POS=2 TYPE=DIV ATTR=TXT:*SMS EXTRACT=TXT
TAG POS=3 TYPE=DIV ATTR=TXT:*SMS EXTRACT=TXT

Подкажите как реализовать нажатия клавиши Enter, пробывал записывать через  Experimental Event,
но так и ничегог не получилось, пытался так же вручную писать

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#lst-ib" KEY=13

kani339 пишет

Подкажите как реализовать нажатия клавиши Enter, пробывал записывать через  Experimental Event,

приведенный вариант и есть нажатие на клавишу ENTER только не EVENTS a EVENT
selector же - id элемента в котором нажимаете ENTER

Подскажите как написать простой цикл смены IP-адреса на ява-скрипте? Вот если на iim, то все работает, а на ява-скрипте делаю, и что-то не получается.
Вот как выглядит на иим:

скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS
CLEAR
SET !ERRORIGNORE YES
SET !DATASOURCE proxy.csv
SET !LOOP 1
PROXY ADDRESS={{!COL1}}
URL GOTO=http://ip-ru.com/
WAIT SECONDS=3


там я в установках макроса задаю цикл повторений сколько надо (99999) и он повторяет данный скрипт и каждый раз IP-адрес меняется.

А вот на ява-скрипте:

скрытый текст

Выделить код

Код:

var url='http://ip-ru.com/'; 
var t0='SET !TIMEOUT_STEP 0\n', t1='SET !TIMEOUT 10\n', t2='SET !TIMEOUT_TAG 20\n', t3='SET !TIMEOUT 60\n', f=0;


for(a=1; a<99999; a++){

   iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS');
   iimPlayCode('SET !DATASOURCE proxy.csv\nSET !LOOP 1\nPROXY ADDRESS={{!COL1}}');
   iimPlayCode(t3+'URL GOTO='+url); 
   iimPlayCode('WAIT SECONDS=3');
      }


тут вообще IP-адрес не меняется.
Что не так?

dvitkovs
RTFM !LOOP + поиск по форуму

InfSub пишет

Я уже третью неделю ищу по форуму как на js переписать простой код смены айпи-адресов, которые берутся из файла и зациклить это.
Вот простейший код на iim, который работает на ура:

скрытый текст

Выделить код

Код:

SET !DATASOURCE proxy.csv
PROXY ADDRESS={{!COL1}}
URL GOTO=http://ip-ru.com/
WAIT SECONDS=2


Разве трудно этот код обернуть в js? Нет, казалось бы тут тоже всё просто. Что я и сделал:
скрытый текст

Выделить код

Код:

for(a=1; a<99999; a++){
   iimPlay('CODE:SET !DATASOURCE proxy.csv');
   iimPlay('CODE:PROXY ADDRESS={{!COL1}}');
   iimPlay('CODE:URL GOTO=http://ip-ru.com/'); 
   iimPlay('CODE:WAIT SECONDS=2');
                                       }


Цикл в js работает, а прокси нет. Не подставляются прокси-адреса и не меняются.
Так а в чем разница? Почему на iim работeт скрипт и прокси меняет, а на js, тот же самый код, но в обёртке js - нет?
Я за 3 недели поиска так и не нашел ответа, потому и задал вопрос тут, на этом форуме. А меня снова на поиск отправили по двум ссылкам, но там тоже ответа не видать.

dvitkovs
уберите !LOOP из скрипта и объедините все внутри одного iimPlayCode() и будет вам счастье
Ваш вопрос неоднократно обсуждался и по поводу него даже есть видео в FAQ которое за 3 недели можно было и посмотреть
PROXY ADDRESS - меняется только в текущем скрипте, по его завершении ip возвращается к стандартному значению
каждый вызов iimPlayCode() - идентичен отдельному iim-скрипту, в результате вы поменяв прокси завершили скрипт, после чего пробуете проверить ip но он уже равен первоначальному

22-01-2016 22:16:46

dvitkovs пишет

Разве трудно этот код обернуть в js?

судя по вашему коду:

скрытый текст

Выделить код

Код:

iimPlay('CODE:SET !DATASOURCE proxy.csv');
iimPlay('CODE:PROXY ADDRESS={{!COL1}}');


трудно, так как вы, видимо, не понимаете, что делаете и просто слизали пример с соседней темы
в результате данного кода будет ошибка:

TypeError: this.dataSource[(line - 1)] is undefined, line 1 (Error code: -1001)

причины ее аналогичны описанным выше

22-01-2016 22:21:39
на тему !LOOP - читаем

InfSub

Благодарю за поддержку! Получилось только такого виду скриптик сварганить:

скрытый текст

Выделить код

Код:

for(a=1; a<99999; a++){
   iimPlay('CODE:SET !DATASOURCE proxy.csv\nSET !DATASOURCE_LINE '+a+'\nPROXY ADDRESS={{!COL1}}\nURL GOTO=http://ip-ru.com/\nWAIT SECONDS=2');

                                       }


Самое интересное, что без вот этого

'+a+'

никакого перебора проксей происходить не может. А с  '+a+' работает. :)
Но самое главное - это ж надо было всё в одну строчку записать, а я  этого сразу не знал. Казалось бы всё так просто, когда знаешь как надо.

dvitkovs пишет

никакого перебора проксей происходить не может. А с  '+a+' работает.

Вам по этому и дали ссылки на тему !LOOP

Доброго времени суток, уважаемые коллеги
Прошу помочь со следующей задачей:
необходимо извлечь из списка друзей вконтакте имена и фамилии из блока кода:

code

Выделить код

Код:

<div class="user_block user_block_first clear_fix" id="user_block11111">
...
    <div class="friends_field"><a exuser="true" href="/11111"><b>Имя Фамилия</b>
</a>


Данные которые находятся в TYPE=B ATTR=? - Имя Фамилия
Пробовал оператором
EVENT:

Выделить код

Код:

EVENT TYPE=MOUSEMOVE SELECTOR="#user_block*>DIV:nth-of-type(2)>DIV>A>B"


Всегда результат "" или "#EANF#"
Единственное решение которым удалось извлечь интересующую инфрмацию было:
скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:friends_field EXTRACT=TXT


Но если в блоке пользователя есть другая информация помимо имени и фамилии то функция извлекает ее.

подскажите пожалуйста, imacros выдает одну и туже капчу, в чем может быть проблемма

скрытый текст

Выделить код

Код:

SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
FILTER TYPE=IMAGES STATUS=OFF
SET API ************
WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=vk.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:/captcha.php?* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO=http://imacros2.rucaptcha.com/new/
TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key&&SIZE:64 CONTENT={{API}}
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file&&NAME:file&&SIZE:20 CONTENT=C:\CAPCH\vk.jpg
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=TYPE:submit&&VALUE:recognize
WAIT SECONDS=2
TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
WAIT SECONDS=3
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=2


spoiler

InfSub

volchsek
Вставь в самое начало скрипта:

скрытый текст

Выделить код

Код:

FILEDELETE NAME=C:\CAPCH\vk.jpg

что то не то ERROR_IMAGE_TYPE_NOT_SUPPORTED

volchsek пишет

что то не то ERROR_IMAGE_TYPE_NOT_SUPPORTED

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

volchsek
У тебя неправильно идет копирование капчи, *.jpg формат плохо любят на Рукапче, попробуй вот так:

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=твое имя файла.png WAIT=YES
TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


Так точно работает, и удаляй капчу после того как макрос ее отработал, в конце макроса поставь такое
скрытый текст

Выделить код

Код:

FILEDELETE NAME=C:\CAPCH\твое имя файла.png
WAIT SECONDS=1

Ребят,

Давным давно кто-то уже задавал этот вопрос, но ответа я так найти и не смог.

Вопрос:

Какую команду использовать в imacros, при которой он бы проверял наличие определенного текста на странице, если все есть, совершал свои действия и т.д., а если нужного текста нет, нажимал на определенную кнопку с текстом?

gizbeta
Пол форума забита ответами на этот вопрос, а вы не смогли найти?
Использование js-скрипта для ветвления условий, примеров, как уже сказал - пол форума

InfSub пишет

gizbetaПол форума забита ответами на этот вопрос, а вы не смогли найти?Использование js-скрипта для ветвления условий, примеров, как уже сказал - пол форума

Может "криво" вопрос в поиске задаю...попробую еще разок

gizbeta
https://forum.mozilla-russia.org/search … words=else

25-01-2016 18:01:26
https://forum.mozilla-russia.org/search … words=eanf

Благодарю. Штудирую

Как установить скорость воспроизведения .Js скрипте
Чтобы в управляющем она была средняя, а в исполняющих высокая ?
SET !REPLAYSPEED FAST/MEDIUM/SLOW не подходит

ребят  такой трабл решил сделать управляюший файл но он чёт не запускаеться  что не  так?

скрытый текст

Выделить код

Код:

cd "C:\Program Files\Mozilla Firefox"
start firefox imacros://run/?m=gpyppisladkaya.iim


скрытый текст
N6_WZR-KKPo.jpg

гуглить  пыталься  не  помогает(

Подскажите как правильно сделать проверку если сущетсвует код на странице то выполнять определенное дейтсвие.
Вот пример
Если есть код на странице из переменной group то выполняыть какое-либо действие

скрытый текст

Выделить код

Код:

var group = 'TAG POS=1 TYPE=TEXTAREA ATTR=ID:"post_field"';

if(group == 1) {
        iimPlayCode('SET !REPLAYSPEED FAST\nADD !EXTRACT {{!URLCURRENT}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=url.txt ')
    } else {
        iimPlayCode('URL GOTO=javascript:window.content.history.back()');
    }

sashab пишет

решил сделать управляюший файл

Ты бат файл управляющий сделал или пытался этот код в *.JS скрипт засунуть ?


kani339 пишет

если сущетсвует код на странице

скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field')>0){
...
Тут код который должен выполниться
...
}

bat

sashab
В ошибке у тебя написано: gpyppisladkaya.iim не найден, может скрипт у тебя в другом каталоге лежит не в макросах.

Всем привет,подскажите пожалуйста,код для кнопки отправки текста в группах,в  одноклассниках,а то постоянно разный код,вот например такой

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#gpf_5836794159\\.submit" BUTTON=0

не работает код,кнопка не нажимается

27-01-2016 16:07:57
Я сделал,теперь такой вопрос,нужен код скрипта,что-бы из файла брался текст по очереди,и из другова файла ссылки по очереди

Помогите пожалуйста разобраться с переменными

скрытый текст

Выделить код

Код:

Общий цикл скрипта 1000 раз
var i,t1=1,t2=1,t3=1;
for(i=0; i<1000; t1++,t2++,t3++,i++){    
for (k=1;k<=3;k++){
iimPlayCode('SET !DATASOURCE C:\\Test1.txt\nSET !DATASOURCE_LINE '+t1+'');  // в этом файле 100 строк
iimPlayCode('SET !DATASOURCE C:\\Test2.txt\nSET !DATASOURCE_LINE '+k+'');   //  в этом файле 3 строки

Gergi

Выделить код

Код:

var k=1;
for(i=1; i<=100; i++){    
if(k>3)k=1;
iimPlayCode('SET !DATASOURCE C:\\Test1.txt\nSET !DATASOURCE_LINE '+i+' ... ');  // в этом файле 100 строк
iimPlayCode('SET !DATASOURCE C:\\Test2.txt\nSET !DATASOURCE_LINE '+k+'... ');   //  в этом файле 3 строки 
k++;}

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

sashab пишет

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

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT ATTR=ID:"photos_upload_input" CONTENT=C:\image.png


так например

У меня вопрос к знатокам:
на сайте есть поле для ввода
так выглядит его код

скрытый текст

Выделить код

Код:

<div  id="screen" class="well" contenteditable="true" spellcheck="false" style="outline:none;">
контент введенный в это поле
</div>


Поле нужно для того чтобы вставлять туда скриншот из буфера обмена. Как это сделать с помощью imacros?

удалено, правила - пункт 2.3, оформите сообщение грамотно, без авторской речи и самобичевания

InfSub

trolb
для работы с буфером обмена, есть переменная !CLIPBOARD
поможет ли, она вставить изображение из буфера обмена... не знаю

trolb пишет

Поле нужно для того чтобы вставлять туда скриншот из буфера обмена. Как это сделать с помощью imacros?

Загрузи фото на фотохостинг, чтоб ссылка была с окончанием *.jpg или *.png..., смотря какое расширение у твоего фото, и запиши макрос чтоб он выдергивал оттуда эту ссылку в экстракт, я думаю получиться.

Protey пишет
trolb пишет

Поле нужно для того чтобы вставлять туда скриншот из буфера обмена. Как это сделать с помощью imacros?

Загрузи фото на фотохостинг, чтоб ссылка была с окончанием *.jpg или *.png..., смотря какое расширение у твоего фото, и запиши макрос чтоб он выдергивал оттуда эту ссылку в экстракт, я думаю получиться.

Спасибо, щас попробую.

Protey пишет
trolb пишет

Поле нужно для того чтобы вставлять туда скриншот из буфера обмена. Как это сделать с помощью imacros?

Загрузи фото на фотохостинг, чтоб ссылка была с окончанием *.jpg или *.png..., смотря какое расширение у твоего фото, и запиши макрос чтоб он выдергивал оттуда эту ссылку в экстракт, я думаю получиться.

не получилось у меня таким образом загрузить, может я что то не так сделал конечно.  кому интересна данная проблема вот сайт

скрытый текст

Выделить код

Код:

https://profittask.com/online


, быстрая регистрация, далее раздел: "исполнителю", "через сайт"

trolb пишет

не получилось у меня таким образом загрузить

увы, тогда ни чем не могу помочь, особенно в такой ситуации

Protey пишет
trolb пишет

не получилось у меня таким образом загрузить

увы, тогда ни чем не могу помочь, особенно в такой ситуации

Извиняюсь за не содержательный ответ.
Воспользовался вашим методом только через js.
я совсем не разбираюсь в html и только сейчас выяснил что то самое "поле для ввода" это contenteditable - песочница, а так как imacros похоже не умеет вставлять код html у меня и не получилось это через него сделать, но через js все работает (с помощью свойства .innerHTML) .  В любом случае спасибо за помощь.

но конечно это какая то дичь через фотохостинг прогонять:) надеюсь найду какой нибудь способ по проще

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
FILTER TYPE=IMAGES STATUS=OFF
SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE   C:\56.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>новые<SP>фотографии
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file1 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\1.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file2 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\2.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file3 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\3.gif
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=*
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=TXT:Загрузить<SP>фотографии
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>новые<SP>фотографии
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file1 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\4.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file2 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\5.gif
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=*
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=TXT:Загрузить<SP>фотографии


макрос  должен проходить определённое количесво альбомов  из  текстовика и  заливать там  по 5 фото но грузиться  почему то  только в  1 группу как  исравить?

sashab
изменить адрес группы, например

Есть один сайт, в нем есть 5000 однотипных страниц, но с разными данными, как импортировать все данные с этого сайта в один txt файл, помогите, не могу решить уже второй месяц, отвечу на любой вопрос, который поможет в создании скрипта

AzimusPrime пишет

однотипных страниц,

В смысле урл-ы ?

PRESIDENT пишет
AzimusPrime пишет

однотипных страниц,

В смысле урл-ы ?

У меня есть одна космическая игра, ну то есть не у меня, а та в которую я рублюсь и координаты других игроков и их планет разброссаны по всей "Вселенной" которая состоит из 5 тысяч страниц и что бы найти координаты своего врага мне в ручную приходится пролистать 5000 страниц, но что если я смог бы сохранять каждую страницу в txt файл? по мне это либо не возможно либо не слишком просто. мне (Задача скрипта листать и сохранять ники и номера солнечных систем в один txt документ, что бы в конце концов я мог просто ввести ник игрока и найти его координаты в текстовике, который выдал бы макрос

29-01-2016 21:45:00
Даже не знаю как быть

Ну и в чём проблема ? smile_28.gif

PRESIDENT пишет

Ну и в чём проблема ? smile_28.gif

Как это организовать? я не умею
Сделал вот так

скрытый текст

Выделить код

Код:

VERSION  BUILD=7500718 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
TAB T=1
URL GOTO=https://hideme.ru/proxy-list/
TAG POS=2 TYPE=TABLE ATTR=TXT:* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}}.csv
'WAIT SECONDS=3
SAVEAS TYPE=TXT FOLDER="D:\ImacrosforAZ" FILE="product_desc.txt"


Мало того что создает отступы, так еще и переписывает ранее извлеченные файлы

29-01-2016 22:58:39
И мне нужно что бы это все писалось в одном документе, то есть дополнялось..
И без этих грязных отступов

29-01-2016 23:05:54
Забыл уточнить, для примера я взял один из дружеских сайтов

AzimusPrime

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=hideme.ru/proxy-list');
  
for(p=2; p<=65; p++){
  iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS='+p+' TYPE=TD ATTR=TXT:*.*.*.* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=proxy.txt');}

PRESIDENT пишет

AzimusPrime

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=hideme.ru/proxy-list');
  
for(p=2; p<=65; p++){
  iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS='+p+' TYPE=TD ATTR=TXT:*.*.*.* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=proxy.txt');}

Не воспроизводит код

29-01-2016 23:28:19
Ув. PRESIDENT Будьте так любезны, подскажите пожалуйста, как правильно применять код?

29-01-2016 23:44:21

PRESIDENT пишет

AzimusPrime

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=hideme.ru/proxy-list');
  
for(p=2; p<=65; p++){
  iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS='+p+' TYPE=TD ATTR=TXT:*.*.*.* EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=D:\\ FILE=proxy.txt');}

Ув. PRESIDENT Будьте так любезны, подскажите пожалуйста, как правильно применять код?

29-01-2016 23:45:30
Ну вот, проблемма осталась не решенной

AzimusPrime пишет

Не воспроизводит код

Надеюсь ты код в *.js запускал, а не в *.iim

PRESIDENT пишет
AzimusPrime пишет

Не воспроизводит код

Надеюсь ты код в *.js запускал, а не в *.iim

Ух ты, ответил, я не знаю как JS файл запускать, я в этом новичек..

PRESIDENT
Запустил, работает)Только вот, слишком быстро))

30-01-2016 00:24:11
PRESIDENT
Вы есть в, ВК?

А без JS никак? просто хотел обычным языком Imacros сделать скриптик

AzimusPrime
зачем? js и так использует imm-код, но при этом делает то, что вы не сможете реализовать на чистом имакросе

30-01-2016 11:54:18

AzimusPrime пишет

Только вот, слишком быстро))

и что в этом плохого? вам нужно просканировать все 500 страниц, скрипт это сделает за 15 минут, далее изучайте результаты в тхт-файле или вы хотите, чтобы он пару часов данные собирал?

Доброго времени суток, господа!!! Давненько я здесь не был, ну вот решил спросить, пока по иннету ищу. Имеется txt файл с прокси такого вида: 122.193.14.104:80 тоесть адрес:порт, нужно чтоб Js извлекал построчно прокси (реализацию знаю) и мозила выходил в иннет через этот прокси (а вот это подскажите, кто знает. Пожалуйста.) Заранее благодарен!!!

stars1981
В факе есть видео от колшика там подробно всё разложено.

PRESIDENT пишет

stars1981
В факе есть видео от колшика там подробно всё разложено.

Ок!!! Благодарю!!! Ща гляну...:)

Подскажите кусок кода у кого может есть: ткнуть в группе фейсбука в "write something..." (или в "write post" ) и написать текст, любой, хоть "111". Стандартными методами не могу выловить поле ввода, пол дня ковырял, интернет перерыл как только смог :(

Подскажите пожалуйста как посчитать строки в TXT файле?
Сделал так но не считает

скрытый текст

Выделить код

Код:

var x;
for (x=1;x<=999;x++){  
iimPlayCode('SET !DATASOURCE C:\\Test.txt\nSET !DATASOURCE_LINE '+x+'\nSET !EXTRACT {{!COL1}}');
s=iimGetLastExtract().split('\n').length; 
alert(s)

Gergi
поиск

31-01-2016 16:48:59

agrx пишет

Стандартными методами не могу выловить поле ввода

так попробуйте - нестандартные, event, например

ребят   такой  трабл   при записи  макроса ответ на  непрочитаное сообшение   на  мыле  не  записует вводящийся текст) тоесть  строчки соответсвующей  вводу  текста  просто  нет

Gergi пишет

как посчитать строки в TXT файле?

так

Выделить код

Код:

iimPlayCode('URL GOTO=file:///C:\\Test.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); 
s=iimGetLastExtract().split('\n').length; 
alert(s);

Подскажите пожалуйста. Как сделать, чтобы скрипт удалял первую строку в txt файле.
1 "Ссылка 1" - удаляет
2 "Ссылка 2" - перемещается на первое место
и т.д
Подобный вопрос был уже. Но я полного ответа не нашел.

Sega00
удалить файл, создать, записав в него данные без первой строки

InfSub пишет

записав в него данные без первой строки

Код можно, пожалуйста!!!

stars1981
вам не знакомы команды имакроса FILEDELETE и SAVEAS?

InfSub пишет

stars1981вам не знакомы команды имакроса FILEDELETE и SAVEAS?

Как удалить я знаю, а вот как скопировать ВСЕ СТРОКИ БЕЗ n СТРОКИ из файла txt, так сразу затрудняюсь ответить...

01-02-2016 11:36:03
И ещё вопрос, из-за которого собственно я и зашёл сюда!!! Возможно ли определить в js что открылась страница: "Время ожидания соединения истекло", если да, то как?

stars1981
поиск

01-02-2016 11:38:13

stars1981 пишет

И ещё вопрос, из-за которого собственно я и зашёл сюда!!! Возможно ли определить в js что открылась страница: "Время ожидания соединения истекло", если да, то как?

не совсем понял суть вопроса, если страница открывается больше стандартных 60 сек, просто увеличьте значение SET !TIMEOUT_PAGE с 60 до 120, к примеру

InfSub пишет

не совсем понял суть вопроса, если страница открывается больше стандартных 60 сек, просто увеличьте значение SET !TIMEOUT_PAGE с 60 до 120, к примеру

C данного Proxy сайт вообще не загружается и поэтому вылазит "Время ожидания соединения истекло". Определить эту страничку можно, или для каждого сайта нужно что-то искать(нашел, значит загрузился, не нашел, значит следующий)

stars1981
функция iimGetLastError() вам в помощь

InfSub пишет

stars1981функция iimGetLastError() вам в помощь

Благодарю, ща гляну. А как насчёт скопировать ВСЕ СТРОКИ БЕЗ n СТРОКИ из файла txt?

stars1981
вы через строку ответы читаете? или слово поиск - у вас на физическом уровне не воспринимается?
в приведенной мной ссылке, есть ответ, как скопировать все, думаю не составит проблемы удалить самую первую строчку при этом

InfSub пишет

думаю не составит проблемы удалить самую первую строчку при этом

Вот какраз не могу сообразить, как удалить строчку n(не обязательно первую) при сохранении скопированного в файл.

stars1981
преобразовать полученные данные в массив по знаку переноса строки функцией split(), удалить значение с 0 индексом

InfSub пишет

stars1981функция iimGetLastError() вам в помощь

По моему эта функция одно и тоже что и iimGetLastExtract() == '#EANF#'...
или я ошибаюсь? Ведь всё равно нужно что-то приходится  искать на странице?

InfSub пишет

преобразовать полученные данные в массив по знаку переноса строки функцией split(), удалить значение с 0 индексом

А пример кода можно? Не могу найдти, а читать башка уже пухнет(третьи сутки рыщу в сети, вот ресурс не плохой нашол: https://learn.javascript.ru/array-methods)
Имеется прокси.txt, построчно записаны прокси, берём прокси1 вставляем в настройки браузера, пытаемся перейдти на сайт, получается, выполняем действие на сайте.... берём прокси5, пытаемся перейдти на сайт, не получается(вылазит "Время ожидания соединения истекло" ) ,ТЕПЕРЬ НУЖНО КОПИРОВАТЬ СОДЕРЖИМОЕ прокси.txt И УДАЛИТЬ СТРОКУ 5, удаляем прокси.txt, вставляем скопированное в прокси.txt.
Код  к тексту большими буквами напишите пожалуйста кто знает!!!! Заранее благодарен.

stars1981
Тебе наоборот нужно искать надпись на сайте, если сайт нормально загрузился.
Бывают какие нить левыe китайские, тайваньские и т.д. прокси, сайт вроде открывается но вся инфа кракозябликами или ероглифами и ничего спарсить нельзя. Такие прокси тоже в топку.

Глянь как у меня когда то было.

PRESIDENT
Да я так и сделал, просто сайт не один..., думал код поменьше сделать...., ну раз по другому никак, то пускай остаётся как есть.
А по поводу "копировать содержимое прокси.txt и удалить строку n" подскажешь?

stars1981 пишет

"копировать содержимое прокси.txt

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=file:///C:\\прокси.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); 
all_proxy=iimGetLastExtract().replace(/\"/g,"");
alert(all_proxy);


stars1981 пишет

удалить строку n

neu_ip  это проксь который нужно удалить.

скрытый текст

Выделить код

Код:

all_proxy=all_proxy.replace(neu_ip+"\n","");

На старнице постоянно меняеться имя фрейма, как это можно обойти

скрытый текст

Выделить код

Код:

FRAME NAME="d79laopfceyz"
TAG POS=2 TYPE=DIV ATTR=CLASS:kg-mg-Zb-Hh

PRESIDENT пишет

neu_ip  это проксь который нужно удалить.

Благодарю, будем внедрять.

PRESIDENT пишет

скрытый текст

Не выходит, копирует без кавычек и соответственно вставляет кавычка в начале первой и в конце последней строки.
а вот с удалением разобрался, всё норм, благодарю.

stars1981 пишет

Не выходит, копирует без кавычек

Попробуй так.
У меня то имакрос сохраняет без кавычек.

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=file:///C:\\прокси.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); 
all_proxy=iimGetLastExtract();
all_proxy=all_proxy.replace('"'+neu_ip+'"\n',"");

PRESIDENT пишет

Попробуй так.
У меня то имакрос сохраняет без кавычек.

С удалением я разобрался, удаляю любые вариации... Мне бы сохранить как надо, каждую строку в "", а не так:

скрытый текст
"1строка
2строка
3строка
...........
..........."
или так:
"""1строка""
""2строка""
""3строка""
""...........""
""..........."""

Не могу сообразить, мозг кипит....

нужна помощь , работаю на сайте

скрытый текст
http://imagetwist.com/
там на главной странице есть "загрузка ссылки"
когда ссылки загружены получается такой формат

Выделить код

Код:

<a href="http://imagetwist.com/*.jpg.html" target="_blank"><img src="http://img155.imagetwist.com/th/*jpg" border="0"></a><br>

<a href="http://imagetwist.com/3*.jpg.html" target="_blank"><img src="http://img155.imagetwist.com/th/*.jpg" border="0"></a><br>

<br> я меняю на | , чтоб потом через сплит подправить split('|'); потом работаю с массивом , потом в конце объедению элементы join('');, но после '</a>' остаются красные строки
пробовал replace(/\n+$/m, ''); и .trim(); не помогает , подскажите кто что сможет

аналогичная ситуация с другим сайтом - только что-то типо красной строки

Выделить код

Код:

<a href="http://ima____________________________________________.jpg.html" target="_blank"><img class="border-image" src="http://img156.imagetwist.___________n3.jpg" border="0"></a>
<a href="http://imag_________________________________________jpg.html" target="_blank"><img class="border-image" src="http://img156.imatwi_________________kdh5.jpg" border="0"></a>


походу решил
"#удаление красной строки #удаление новой строки #удаление переноса"
Массово по всей переменной

Выделить код

Код:

.replace(/[\x0A\x0D]/g,'')

Первое попавшееся совпадение

Выделить код

Код:

.replace(/[\x0A\x0D]/,'')

kpx6tdfcyfg4.jpg


Если Вы откроете любой документ RFC , описывающий тот или иной протокол интернет, то не увидите там ни одного \n . Увидите сплошные а CRLF pair.
Как Вы думаете, что это?

Формально:
CR - (carriage return) возврат каретки - управляющий символ, перемещающий курсор в начало текущей строки. ascii код = 0x0D = 13 = ord("\r");
LF - (line feed) перевод строки - управляющий символ, перемещающий курсор на одну строку вниз. ascii код = 0x0A = 10 = ord("\n");

PRESIDENT пишет

У меня то имакрос сохраняет без кавычек.

АААААА, так и не победил эти кавычки!Пойдём другим путём.
А как сделать чтоб  имакрос сохранял и считывал без кавычек?
Или можно имеющийся файл txt переименовать при помощи имакрос, если да, то как?

stars1981
а что replace уже отменили?

скрытый текст

Выделить код

Код:

alert('""sdsd"ds""""SDs"'.replace(/"/g,''))

stars1981 пишет

можно имеющийся файл txt переименовать

средствами iMacros - нет (FAQ в помощь о том как можно)

stars1981 пишет

А как сделать чтоб  имакрос сохранял и считывал без кавычек?

то - доработка плагина собственными руками

02-02-2016 15:22:26

kolshix пишет

походу решил

почитайте, что такое \s

InfSub пишет

а что replace уже отменили?

Не канает replace, сохраняет то всё равно в кавычках, причём все строки, а в процесе работы скрипта нужно извлекать построчно да ещё и ip до знака ":" port после знака ":" ...
По поводу переименования ща гляну. Благодарю!!!

stars1981 пишет

а в процесе работы скрипта нужно извлекать построчно

я вам уже писал как сделать построчно, с помощью split() , сохранять, естественно, нужно каждую строку отдельно, при сохранении целиком у вас всегда сохранятся все данные внутри кавычек

02-02-2016 15:45:16

stars1981 пишет

да ещё и ip до знака ":" port после знака ":" ...

в 3 раз: split(':')

02-02-2016 15:53:48

stars1981 пишет

а в процесе работы скрипта нужно извлекать построчно

удалив строку из файла вы, в итоге, пропустите 1 строку, при следующем прочтении файла внутри цикла (если, конечно вы не считываете все адреса за 1 раз), в итоге вам еще и костыль придется придумывать, чтобы при удалении адреса брать повторно строку с номером n вместо n+1

InfSub пишет

удалив строку из файла вы, в итоге, пропустите 1 строку, при следующем прочтении файла внутри цикла (если, конечно вы не считываете все адреса за 1 раз), в итоге вам еще и костыль придется придумывать, чтобы при удалении адреса брать повторно строку с номером n вместо n+1

это и это

InfSub пишет

да ещё и ip до знака ":" port после знака ":" ...

решено
а вот как сохранить всё как было, после удаления строки, не могу победить. Примерчик можно?

02-02-2016 16:17:16
и пожалуйста ткните носом где про переименовать в FAQ если не сложно.

stars1981 пишет

и пожалуйста ткните носом где про переименовать в FAQ если не сложно.

работа с внешними программами, в факе как минимум 2 подобных решения, на примере работы с cmd

stars1981 пишет

а вот как сохранить всё как было, после удаления строки, не могу победить. Примерчик можно?

скрытый текст

Выделить код

Код:

var a='1строка\n2строка\n3строка\n...........\n...........\n10строка\n'.split('\n');
var l=a.length;
while(l--){
    iimPlayCode('SET !EXTRACT '+a[l]+'\nSAVEAS TYPE=EXTRACT FOLDER={{!FOLDER_DATASOURCE}} FILE=proxy.txt');
};

InfSub пишет

а вот как сохранить всё как было, после удаления строки, не могу победить. Примерчик можно?
скрытый текст

Спасибо огромное получилось, но вот пустую строку последнюю тож копирует и получается при каждом сохрснении прибавляется с верху сторока с "", как это обоидти?

stars1981
удалить пробелы в начале и конце строки javascript

Мы это сделали!!! Благодарю всех кто помог.

скрытый текст

Выделить код

Код:

function UdalitProxy(){
iimPlayCode('URL GOTO=file:///'+papka+'Proxy.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
z = iimGetLastExtract().replace('"'+ip+':'+port+'"'+'\n','');
z = z.replace(/\s\s*$/, '');
fayl = 'Proxy.txt';
Udalit();
var a=z.split('\n');
var l=a.length;
while(l--){
iimPlayCode('SET !EXTRACT '+a[l]+'\nSAVEAS TYPE=EXTRACT FOLDER='+papka+' FILE=Proxy.txt');
}
}

stars1981 пишет

скрытый текст

Выделить код

Код:

z = z.replace(/\s\s*$/, '');

откуда этот бред?!... если уж используете рег. выражения - то используйте верно
выражение /\s\s*$/ идентично /\s+$/ и удалит вообще все пробелы и переносы строк в тексте в конце файла
а для обрезки пробельных хвостов есть функция trim()

02-02-2016 19:13:29
и что такое (строка 6):

stars1981 пишет

Udalit();

?

InfSub пишет

и что такое (строка 6):

Я тока учусь кодить ..... Udalit(); это вызов функции, мой код смогу понять только я :).....Главное что б работал.....

stars1981 пишет

Udalit(); это вызов функции

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

Всем привет. Помогите исправить скрипт, делаю скрип для пересохранения фото и описание товара в ВК для наложения водяных знаков. С первым это разобрался а вот со вторым проблема, как вычислить количество фото в комментариях, ну и сам скрипт исправить не хватает мозгов...   Описание написал в коде.
ссылка на пробную страницу вк в первом спойлере

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

var а = 5;            // циклы скрипта
var б = 5;            // Кол-во проверок фото в комментария
var n = "\n";

for (var z=1;z<=а;z++) {    // 1.Цикл всего скрипта, тут все нормально
for (i=1;i<=1;i++){   // 2.Сохранение основного фото и описание
            k = "CODE:SET !EXTRACT_TEST_POPUP NO"+n;
            k += "SET !ERRORIGNORE YES"+n;
            k += "TAG POS=1 TYPE=DIV ATTR=ID:pv_desc EXTRACT=TXT"+n;
            k += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=Описание.txt"+n;
            k += "ONDOWNLOAD FOLDER=* FILE="+z+".0<SP>основное<SP>фото.jpg WAIT=YES"+n;
            k += "TAG POS=1 TYPE=A ATTR=ID:pv_open_original CONTENT=EVENT:SAVETARGETAS"+n;
            retcode = iimPlay(k);
            iimDisplay("Сохранение основного фото "+z+" и описания к ниму").
            }
for (m=1;m<=б;m++){  // 3.Поиск участка в комментария, по другому не мог придумать )  Если находит то должно перейти на 4 функцию, а если нет то на 6-ю функцию
            p = iimPlayCode("SET !TIMEOUT_STEP 1 \n SEARCH SOURCE=TXT:\"class=\"page_post_thumb_sized_photo\"\"")
        iimDisplay("Поиск дополнительного фото "+m+"")

if (p>0){   // 4.Вызов фото из комментария если выполнило то должно перейти на функцию 5, а если нет то на 6-ю функцию
            t = "CODE:SET !EXTRACT_TEST_POPUP NO"+n;
            t += "SET !ERRORIGNORE YES"+n;
            // t += "TAG POS="+m+" TYPE=IMG ATTR=HEIGHT:98&&WIDTH:147&&CLASS:page_post_thumb_sized_photo&&SRC:https://pp.vk.me/*"+n;
            t += "TAG POS="+m+" TYPE=A ATTR=onclick:return<SP>showPhoto*&&class:page_post_thumb_wrap<SP><SP>page_post_thumb_last_column<SP>page_post_thumb_last_row<SP>fl_l"+n;
            // t += "TAG POS="+m+" TYPE=A ATTR=onclick:return<SP>showPhoto*"+n;
            retcode = iimPlay(t);
        iimDisplay("Сохранение дополнительного фото "+m+"")
if (p>0) {     g = "CODE:WAIT SECONDS=1"+n; // 5.Сохранение доп фото. Без выполнение условия 4 не должно запускаться.
            g += "ONDOWNLOAD FOLDER=* FILE="+z+"."+m+"<SP>дополнительное<SP>фото.jpg  WAIT=YES"+n;
            g += "TAG POS=1 TYPE=A ATTR=ID:pv_open_original CONTENT=EVENT:SAVETARGETAS"+n;
            g += "TAG POS=1 TYPE=A ATTR=TXT:Закрыть"+n; 
            g += "WAIT SECONDS=1"+n;
            retcode = iimPlay(g);    
        }
}
}
if (m<0){    s = iimPlayCode("EVENT TYPE=CLICK SELECTOR=\"#pv_photo\" BUTTON=0") // 6.После сохранение всех фото клик на центр
         }
        iimDisplay(z);    
        iimSet("z", z);
}

во-первых: правила форума iMacros, пункт 1.4


во-вторых:

AfeK пишет

iimPlay

AfeK пишет

iimPlayCode

зачем в коде обе функции? либо используйте первую, либо вторую...

AfeK пишет

var б

что за привычка использовать русские именах переменных...

AfeK пишет

for (i=1;i<=1;i++){

зачем это недоразумение в коде? какова его роль? выполнить один раз код, который и без него выполнится 1 раз?

AfeK пишет

SET !EXTRACT_TEST_POPUP NO

сколько раз говорить, не нужна эта опция в js, у вас и так, не будет тестовых сообщений

AfeK пишет

iimSet("z", z);

и где это у вас используется?

удалено, флуд, для этого есть ЛС

InfSub


InfSub ответы

InfSub пишет

во-первых: правила форума iMacros, пункт 1.4

Извиняюсь, закинул что бы было видно всю картинку моего ужаса )


InfSub пишет

во-вторых:

AfeK пишет

iimPlay

AfeK пишет

iimPlayCode

зачем в коде обе функции? либо используйте первую, либо вторую...

Ну оно работает все, особо над этим не зациклился

InfSub пишет
AfeK пишет

var б

что за привычка использовать русские именах переменных...

Принял во внимание )

InfSub пишет
AfeK пишет

for (i=1;i<=1;i++)

зачем это недоразумение в коде? какова его роль? выполнить один раз код, который и без него выполнится 1 раз?

Взял с другого кода, то есть эту часть можно убрать ) спасибо )

InfSub пишет
AfeK пишет

SET !EXTRACT_TEST_POPUP NO

сколько раз говорить, не нужна эта опция в js, у вас и так, не будет тестовых сообщений

Да глупо, не спорю ) вытягивал все из макроса) не подумал )

InfSub пишет
AfeK пишет

iimSet("z", z);

и где это у вас используется?

Ну я так понимаю оно создает переменную z ну и потом она используется вначале скрипта. То есть она ненужна ?


InfSub, подскажите как будет правильно.
1)

Выделить код

Код:

for (m=1;m<=b;m++)

выполняется "b" раз, а как сделать так что бы он сам определял сколько нужно ему раз, ну или прекращался?

2) Подскажи как привязаться к динамичному коду? три варианта есть, но у всех фото разные миниатюры, "HEIGHT:98/WIDTH:147 " поэтому привязка к размерам не катит, а если нету привязки то оно хаотично начинает вызывать ссылки на фото из комментариев. К чему можно привязаться ?) Может была у тебя подобная ситуация

ссылка на вк
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст

Выделить код

Код:

if (m>0){ 
            t = "CODE:SET !ERRORIGNORE YES"+n;
            // t += "TAG POS="+m+" TYPE=IMG ATTR=HEIGHT:98&&WIDTH:147&&CLASS:page_post_thumb_sized_photo&&SRC:https://pp.vk.me/*"+n;
            t += "TAG POS="+m+" TYPE=A ATTR=onclick:return<SP>showPhoto*&&class:page_post_thumb_wrap<SP><SP>page_post_thumb_last_column<SP>page_post_thumb_last_row<SP>fl_l"+n;
            // t += "TAG POS="+m+" TYPE=A ATTR=onclick:return<SP>showPhoto*"+n;
            retcode = iimPlay(t);

весь кусок кода

Выделить код

Код:

for (m=1;m<=b;m++){  // 3.Поиск участка в комментария, по другому не мог придумать )  Если находит то должно перейти на 4 функцию, а если нет то на 6-ю функцию
            p = "CODE:SET !TIMEOUT_STEP 0.1"+n; 
            p += "SEARCH SOURCE=TXT:\"class=\"page_post_thumb_sized_photo\"\""+n;
            retcode = iimPlay(p);
        iimDisplay("Поиск дополнительного фото "+m+"")
        if (m>0){   // 4.Вызов фото из комментария если выполнило то должно перейти на функцию 5, а если нет то на 6-ю функцию
            t = "CODE:SET !ERRORIGNORE YES"+n;
            // t += "TAG POS="+m+" TYPE=IMG ATTR=HEIGHT:98&&WIDTH:147&&CLASS:page_post_thumb_sized_photo&&SRC:https://pp.vk.me/*"+n;
            t += "TAG POS="+m+" TYPE=A ATTR=onclick:return<SP>showPhoto*&&class:page_post_thumb_wrap<SP><SP>page_post_thumb_last_column<SP>page_post_thumb_last_row<SP>fl_l"+n;
            // t += "TAG POS="+m+" TYPE=A ATTR=onclick:return<SP>showPhoto*"+n;
            retcode = iimPlay(t);
        iimDisplay("Сохранение дополнительного фото "+m+"")
        if (m>0) {     g = "CODE:WAIT SECONDS=1"+n; // 5.Сохранение доп фото. Без выполнение условия 4 не должно запускаться.
            g += "ONDOWNLOAD FOLDER=* FILE="+z+"."+m+"<SP>дополнительное<SP>фото.jpg  WAIT=YES"+n;
            g += "TAG POS=1 TYPE=A ATTR=ID:pv_open_original CONTENT=EVENT:SAVETARGETAS"+n;
            g += "TAG POS=1 TYPE=A ATTR=TXT:Закрыть"+n; 
            g += "WAIT SECONDS=1"+n;
            retcode = iimPlay(g);    
}}}


AfeK пишет

Ну я так понимаю оно создает переменную z ну и потом она используется вначале скрипта. То есть она ненужна ?

переменная z у вас задается в for (var z=1;z<=а;z++){} и далее увеличивается на 1 при каждом цикле за счет z++
функция iimSet() задает значение iMacros-переменных внутри iim-кода:

скрытый текст

Выделить код

Код:

iimSet('EXAMPLE','Example value');
iimPlayCode('PROMPT {{EXAMPLE}}');


у вас же, уже изначально в код вставлена js переменная:
скрытый текст

"ONDOWNLOAD FOLDER=* FILE="+z+".0<SP>основное<SP>фото.jpg WAIT=YES"+n;

03-02-2016 16:36:13

AfeK пишет

Подскажи как привязаться к динамичному коду?

спарсить весь кусок кода и вытащить из него нужные элементы, либо найти идентификатор в коде, который будет идентичен у всех изображений, например class и перебрать все изображения с таким классом

AfeK пишет

а если нету привязки то оно хаотично начинает вызывать ссылки на фото из комментариев

не хаотично, просто в вк, часть кода дублируется и в итоге, вместо 10 картинок, находит 20, повторяя каждую 2 раза
если партить код, дубликаты можно удалить

03-02-2016 16:39:02

AfeK пишет

выполняется "b" раз, а как сделать так что бы он сам определял сколько нужно ему раз, ну или прекращался?

исходя из выше написанного, после очистки кода, после парсинга и удаления дубликатов - получите количество картинок в комментах равное количеству циклов

удалено, флуд, читаем правила форума iMacros, конкретно пункты 1.2.х

InfSub

Здравствуйте подскажите пожалуйста
Запускаю основной скрипт в управляющем
После отработки основного скрипта будет ли управляющий знать номер фрейма?

скрытый текст

Выделить код

Код:

var res;
var max = 3;
var cointoast = 1;

if (cointoast == 1){               
    iimPlayCode("URL GOTO=imacros://run/?m=180_min/cointoast.js");
    for(j=0; j<=max; j++){
        iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=DIV ATTR=CLASS:*rc-anchor-checkbox-holder EXTRACT=HTM');
        if(iimGetExtract().indexOf('checked="true')<0){
        iimPlayCode("URL GOTO=imacros://run/?m=180_min/cointoast.js");}
    else{
    iimPlay("Code:WAIT SECONDS=5\nONDIALOG POS=1 BUTTON=OK CONTENT=\nTAB CLOSEALLOTHERS");} break;}}


Если нет то как его передать?

Koks пишет

будет ли управляющий знать номер фрейма

нет

03-02-2016 16:52:48

Koks пишет

Если нет то как его передать?

любым доступным способом, например, через сохранение номера в файл

Я несколько раз показывал, как запустить один JS из другого с передачей всех данныx.

InfSub пишет

после очистки кода, после парсинга и удаления дубликатов - получите количество картинок в комментах равное количеству циклов

Это то что мне надо ) только как через что это осуществить ?
через макрос или через скрипт, или то и другое ?
Если не сложно ткните в пример:)

AfeK пишет

Это то что мне надо ) только как через что это осуществить ?
через макрос или через скрипт, или то и другое ?

получить данные через iMacros, а парсить уже JS'ом
примеров, на форуме, наверное нет, а за пару минут, я вам его точно не набросаю, надо сидеть и разбирать код vk, что парсить и каким образом

InfSub пишет

получить данные через iMacros, а парсить уже JS'ом
примеров, на форуме, наверное нет, а за пару минут, я вам его точно не набросаю, надо сидеть и разбирать код vk, что парсить и каким образом

Понял, спасибо) буду дальше ковыряться )
Думал тут легко будет но вижу что надо изучать дальше JS)

Доброго времени суток!!! Я снова с вопросом....(пока ищу в сети, задам здесь)... Имеется функция замены настроек ip и порта:

скрытый текст

Выделить код

Код:

function ProxyEnuble() {iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=2");
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setBoolPref("network.proxy.share_proxy_settings", false);
prefs.setCharPref("network.proxy.http", ip);
prefs.setIntPref("network.proxy.http_port", port);
prefs.setCharPref("network.proxy.ssl", ip);
prefs.setIntPref("network.proxy.ssl_port", port);
prefs.setCharPref("network.proxy.ftp",ip);
prefs.setIntPref("network.proxy.ftp_port",port);
prefs.setCharPref("network.proxy.socks", ip);
prefs.setIntPref("network.proxy.socks_port", port);
prefs.setIntPref("network.proxy.socks_version", socksver);
}


Вопрос: что нужно добавить в код что бы менялся усер агент браузера (в about:config)?
Заранее благодарю.

user_agent

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces; 
 var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
 var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);

   str.data='Opera/9.80(WindowsNT6.0;U;en)Presto/2.2.15Version/10.10';
   prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);

   iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS\nSET !TIMEOUT 30\nURL GOTO=2ip.ru\nTAG POS=3 TYPE=DIV ATTR=TXT:IP*Данные*');

реализовал

скрытый текст

Выделить код

Код:

prefs.setCharPref('general.useragent.override',useragent);


в конце функции добавил.

PRESIDENT пишет

Я несколько раз показывал, как запустить один JS из другого с передачей всех данныx.

Дайте ссылочку пожалуйста

PRESIDENT пишет

str.data='Opera/9.80(WindowsNT6.0;U;en)Presto/2.2.15Version/10.10';

А можно вопрос?
Как и по каким правилах формируется эта строка, или есть готовые
формы юзер агентов? Вот руки дошли до этого дела.

Egorushka1974 пишет

или есть готовые

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Может кто сталкивался ???

скрытый текст
Ситуация такова , есть рабочий код, и палмун и фаерфокс его воспринимают

Выделить код

Код:

var buffer=b
const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(buffer);

есть 2 файла СТАРЫЙ и НОВЫЙ
код сначала работал в палмун - потом скрипт переехал в лису - возникла необходимость запустить в палмун и тут

TypeError: redeclaration of const clipboardHelper, line: 195 (Error code: 991)

.........................................
есть СТАРЫЙ фал с этим кодом в палмун и он работает на ура - новый не хочит , я взял скопировал в виндовс СТАРЫЙ файл и туда вставил новый код (получилось старый файл с новым кодом) и снова ошибка

TypeError: redeclaration of const clipboardHelper, line: 195 (Error code: 991)

.........................................
я взял из полученного кода перенес

Выделить код

Код:

var buffer=b
const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(buffer);

в начало документа и скрипт заработал ... потом перенес тот же код в нужное рабочее место и скрипт опять заработал и уже без ошибки .....

TypeError: redeclaration of const clipboardHelper, line: 195 (Error code: 991)


Кто с подобным сталкивался???
--------------------------
как всегда ответ , моя невнимательность , хотя в лисе работает дублирование код , в палмун нужно удалять повтор
скрытый текст

Выделить код

Код:

var buffer=b
const clipboardHelper=Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
clipboardHelper.copyString(buffer);
Выделить код

Код:

var buffer_buffer=b
clipboardHelper.copyString(buffer_buffer);

InfSub пишет
Татьянa пишет

как можно убрать эту приставу "OK|"

например, так:
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('OK|','')")

Подскажите, как этот код будет выглядеть на js-языке (как перевести его в js форму)?

dvitkovs
все что внутри EVAL() и есть js

скрытый текст

Выделить код

Код:

var result = iimGetLastExtract().replace('OK|','')

dvitkovs

Шутишь что ли :(

Выделить код

Код:

var a='ненужная хрень';
var b=a.replace(/не/,'').replace(/хрень/,'штучка');
    alert('Была '+a+'\nСтала '+b);

InfSub
PRESIDENT
Благодарю! :)
Удалось реализовать вот так:

скрытый текст

Выделить код

Код:

iimPlay('CODE:SET !EXTRACT NULL\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');  a=iimGetLastExtract().replace('OK|','');
   iimPlay('CODE:TAB T=1\nEVENTS TYPE=KEYPRESS SELECTOR="#capchaSymbols" CHARS='+a);

помогите как можно брать из документа строку по порядку и вставлять потом ??  :)

саша королюк пишет

как можно брать из документа строку по порядку и вставлять потом ??

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE URL.txt               //к примеру в этом файле(документе) у тебя адреса сайтов, каждый адрес с новой строки, код по умолчанию ищет этот файл в папке Datasources
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}             //в этот код {{!COL1}} вставляется 1 строка, в нашем случае адреса сайтов

Если в файле, к примеру, 10 строк с адресами сайтов, значит надо поставить цикл на 10, таким образом макрос пройдет/загрузит поочередно 10 сайтов

Protey пишет

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !DATASOURCE_COLUMNS 1
SET !LOOP 1

Зачем эти переменные здесь?

есть  макрос  который постит  фотки  по  альбомам  вк  проблема в  том  что  он  постит  ток  в  первую группу

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
FILTER TYPE=IMAGES STATUS=OFF
SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE   C:\56.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>новые<SP>фотографии
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file1 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\1.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file2 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\2.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file3 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\3.gif
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=*
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=TXT:Загрузить<SP>фотографии
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>новые<SP>фотографии
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file1 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\4.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file2 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\5.gif
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=*
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=TXT:Загрузить<SP>фотографии

InfSub пишет

Зачем эти переменные здесь?

на всякий случай)

Вопрос такой: как развернуть XPATH для {{!LOOP}} ?
Пример строки:

скрытый текст

Выделить код

Код:

TAG XPATH="/html/body/div[5]/div[1]/div[4]/div[1]/div[2]/div[2]/div[13]/div[3]/h3/a"


цикл нужно сделать для куска div[13], но как я понял {{!LOOP}} вместо 13 не прокатит? Как правильно сделать?

agrx
выражайтесь конкретнее, что значит:

agrx пишет

развернуть XPATH для {{!LOOP}}

и

agrx пишет

цикл нужно сделать для куска div[13]

?

07-02-2016 06:17:50

Protey пишет

на всякий случай)

давайте теперь в каждый скрипт, кучу мусора запихивать, а вдруг когда-нибудь пригодится и придется лишнюю строчку текста написать
хотя, с учетом значения данных команд, в данном контексте, они никогда не пригодятся, зато добавят еще парочку мифов, о необходимости - совершенно лишних команд
SET !ERRORIGNORE YES - еще можно придумать причину ее присутствия в скрипте, вдруг, попадется пустая строка... хотя наличие данной команды, скорее собьет новичка с толку, в случае ошибок, и не даст увидеть сообщение, по каким причинам спотыкается iMacros в середине скрипта
SET !EXTRACT_TEST_POPUP NO - совершенна бесполезна в цикле, а вопрос стоял именно о цикле перебора строк в файле
SET !DATASOURCE_COLUMNS 1 - а чем собственно, вы руководствовались, ограничивая данные одним столбцом? данный параметр рекомендуется использовать только в хроме, т.к. он не умеет автоматически определять их количество
SET !LOOP 1 -читаем FAQ и официальную WiKi, !LOOP всегда равен 1 в первом цикле, если не указано обратного и приравнивание его к единице, аналогично тому, что подойти к Вам и сказать:

"Protey, а ты знаешь, что ты Protey?"

07-02-2016 06:21:57
sashab

sashab пишет

SET !ERRORCONTINUE YES

что это?

Спасибо, разобрался, решил частично проблему через другой элемент вот так:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/favorites/add/*&&CLASS:favorites* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER="c:\" FILE=1.csv
'PROMPT {{!EXTRACT}}


Однако появилась другая проблема: как в этом коде прописать выполнение до окончания строчек с таким атрибутом? На одной странице 50 позиций, но не всегда, может быть меньше, и тогда забивает в документ #EANF#.

Как сказать скрипту:
1. выполняться 50 раз
2. если элемент не найден, то остановить выполнение.

Пытался искать в гугле, но именно такой конструкции повторения (нужное количество или до стопа) не нашел.

Наваял нечто такое, но что-то не работает:

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/favorites/add/*&&CLASS:favorites* EXTRACT=HREF
SET !VAR1 EVAL("var s=\"{{!EXTRACT}}\"; if(s = \"#EANF#\"){break;} else continue;")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SAVEAS TYPE=EXTRACT FOLDER="c:\" FILE=1.csv


переписал код на вот такой, но условие не срабатывает на остановку:
скрытый текст

Выделить код

Код:

for (var i = 1;; i++) {
   var PARS
   PARS = "CODE:";
   PARS += "TAG POS="+i+" TYPE=A ATTR=HREF:/favorites/add/*&&CLASS:favorites* EXTRACT=HREF" + "\n";
   PARS += "SAVEAS TYPE=EXTRACT FOLDER=\"c:\" FILE=1.csv" + "\n";
   var EXT= iimGetLastExtract();
      if (EXT == "#EANF#")
      {break;}
      else {iimPlay(PARS);}
}


погуглил, недопонял, как в случае #EANF# действовать?

agrx пишет

Как сказать скрипту:
1. выполняться 50 раз
2. если элемент не найден, то остановить выполнение.

скрытый текст

Выделить код

Код:

for(i=1; i<51; i++){
   iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/favorites/add/*&&CLASS:favorites* EXTRACT=HREF');
   var a=iimGetLastExtract();
   if(a=='#EANF#' || a=='') break;
   iimPlayCode('SET !EXTRACT '+a+'\nSAVEAS TYPE=EXTRACT FOLDER=c:\\ FILE=1.csv');}

Подскажите как определить имя фрейма на странице если оно постоянно меняеться вот пример

скрытый текст

Выделить код

Код:

FRAME NAME="d79laopfceyz"
TAG POS=1TYPE=DIV ATTR=CLASS:kg-mg-Zb-Hh

kani339

скрытый текст
FRAME NAME=*

InfSub пишет

kani339

скрытый текст
FRAME NAME=*

Таким образом не работает уже пробывал

PRESIDENT пишет

скрытый текст

Выделить код

Код:

for(i=1; i<51; i++){
   iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/favorites/add/*&&CLASS:favorites* EXTRACT=HREF');
   var a=iimGetLastExtract();
   if(a=='#EANF#' || a=='') break;
   iimPlayCode('SET !EXTRACT '+a+'\nSAVEAS TYPE=EXTRACT FOLDER=c:\\ FILE=1.csv');}

спасибо, помогло:o

как правильно написать условие: если не находит атрибут, то остановить.

скрытый текст

Выделить код

Код:

function list()
{
    iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Следующая<SP>страница*');
    f=iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Следующая<SP>страница*'); 
    if(f<0) break;
}

agrx
уберите первую строку с iimPlayCode

InfSub пишет

agrx
уберите первую строку с iimPlayCode

то есть вот так?

скрытый текст

Выделить код

Код:

function list()
{
    f=iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Следующая<SP>страница*'); 
    if(f<0) break;
}


всё равно не работает

agrx пишет

всё равно не работает

а чего, собственно, вы пытаетесь добиться этой функцией? и что, соответственно, не работает?

InfSub пишет
agrx пишет

всё равно не работает

а чего, собственно, вы пытаетесь добиться этой функцией? и что, соответственно, не работает?

перелистывание страницы на следующую. одноразовое перелистывание работает, но нужно в итоге примерно так:

скрытый текст

Выделить код

Код:

function parser()
{
//тут абсолютно рабочий код и претензий к нему у меня нет
}
function list()
{
    f=iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Следующая<SP>страница*'); //перелистывание страницы, сама по себе функция тоже работает
}

for(;;)
{
    parser(); //после того, как отработает функция, вызов list(), далее повтор parser()
    list(); //если list() не нашел такую ссылку с текстом "Следующая<SP>страница*", то break
}

agrx пишет

если не нашел ссылку с текстом "Следующая<SP>страница*", то break

скрытый текст

Выделить код

Код:

for(;;){
    parser(); 
 if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=A ATTR=TXT:Следующая*страница*')<0) break;
}

function parser(){
//тут абсолютно рабочий код и претензий к нему у меня нет
}

PRESIDENT пишет
agrx пишет

если не нашел ссылку с текстом "Следующая<SP>страница*", то break

скрытый текст

Выделить код

Код:

for(;;){
    parser(); 
 if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=A ATTR=TXT:Следующая*страница*')<0) break;
}

function parser(){
//тут абсолютно рабочий код и претензий к нему у меня нет
}

Спасибо! Готовый код для парсинга ссылок объявлений авито:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

function parser()
{
    for(i=1;; i++)
    {
    iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/favorites/add/*&&CLASS:favorites* EXTRACT=HREF');
    var a=iimGetLastExtract();
    if(a=='#EANF#' || a=='') break;
    iimPlayCode('SET !EXTRACT '+a+'\nSAVEAS TYPE=EXTRACT FOLDER=c:\\ FILE=1.csv');
    }
}

for(;;){
    parser(); 
 if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=A ATTR=TXT:Следующая*страница*')<0) break;
}

Здравствуйте! Есть скрипт регистрации аккаунтов. Там ограничение по ай-пи. Поэтому скрипт работает через прокси и берёт их их файла по списку.
Подскажите как подправить скрипт, чтоб он после  фразы You*maximum* менял прокси по порядку из списка один раз и потом опять регистрировал акки, до следующего появления фразы You*maximum*. Потом опять менял бы прокси на следующее из списка и дальше продолжал регистрировать акки. А то получается, что когда находит нужную фразу, то начинает менять прокси бесконечно (пока все по списку не переберет).

скрытый текст

Выделить код

Код:

var url='http://www.*'; 
var t0='SET !TIMEOUT_STEP 0\n', t1='SET !TIMEOUT 1\n', t2='SET !TIMEOUT_TAG 20\n', t3='SET !TIMEOUT 60\n', f=0;


for(a=1; a<9999; a++){ 

   iimPlay('CODE:CLEAR\nTAB CLOSEALLOTHERS');
   iimPlay('CODE:URL GOTO='+url); 
   iimPlayCode('SET !DATASOURCE POST.csv\nSET !DATASOURCE_LINE '+a+'\nSET !EXTRACT {{!COL1}}'); if(iimGetExtract()=='');
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:email CONTENT='+iimGetExtract());
   var i=9,w='hwadusxcouydekefavbat',r='',m=w.length;
while(i--){r+=w.charAt(Math.floor(Math.random()*(m)));};
   iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:firstName CONTENT='+r);
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:IMAGE FORM=NAME:NoFormName ATTR=SRC:*');

 f=iimPlayCode(t1+'TAG POS=1 TYPE=LI ATTR=TXT:You*maximum*'); if(f>0){ a--; for(i=1; ; i++){
iimPlayCode("SET !DATASOURCE proxy.csv \n SET !DATASOURCE_LINE "+i+" \n SET !EXTRACT {{!COL1}}")  
full_address=iimGetLastExtract();
var iphttp=  full_address.replace(/:(.*)/,"");
var portall= full_address.replace(/(.*):/,"");
iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1")
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setBoolPref("network.proxy.share_proxy_settings", true);
prefs.setBoolPref("network.proxy.share_proxy_settings", false);
prefs.setCharPref("network.proxy.http", iphttp);
prefs.setIntPref("network.proxy.http_port", portall);}}}


Пробовал команду break использовать, но тогда список файла proxy.csv сбрасывается и скрипт всегда берёт первую проксю из списка.


не сокращаем встроенные в js и в функционал плагина - функции, при постинге на форуме
отредактировано

dvitkovs
ну так уберите цикл for(i=1; ; i++){ из кода, при нахождении You*maximum*
объявите номер строки (i=1) в начале скрипта, дав ей уникальное имя, которое больше ни где не используется в скрипте, в отличии от i
и увеличивайте значение данной переменной, при срабатывании условия if(f>0)

09-02-2016 19:13:18

offtop
и научитесь, писать код так, чтобы в нем можно было разобраться, открыв спойлер, а не форматируя его у себя на компе под стандарты
например, так:
скрытый текст

Выделить код

Код:

var url='http://www.*',
    ProxyNum = 1,
    a, i, m, r, w, 
    t0='SET !TIMEOUT_STEP 0\n',
    t1='SET !TIMEOUT 1\n', 
    t2='SET !TIMEOUT_TAG 20\n', 
    t3='SET !TIMEOUT 60\n', f=0, 
    iphttp, portall, prefs, full_address;


for(a=1; a<9999; a++){

    iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS');
    iimPlayCode('URL GOTO='+url); 
    iimPlayCode('SET !DATASOURCE POST.csv\nSET !DATASOURCE_LINE '+a+'\nSET !EXTRACT {{!COL1}}'); 
    if(iimGetExtract()==''){
        iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:email CONTENT='+iimGetExtract());
    };

    i=9;w='hwadusxcouydekefavbat';r='';m=w.length;
    while(i--){r+=w.charAt(Math.floor(Math.random()*(m)));};

    iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:firstName CONTENT='+r);
    iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:IMAGE FORM=NAME:NoFormName ATTR=SRC:*');

    f=iimPlayCode(t1+'TAG POS=1 TYPE=LI ATTR=TXT:You*maximum*'); 
    if(f>0){
        a--; 

        iimPlayCode("SET !DATASOURCE proxy.csv \n SET !DATASOURCE_LINE "+(ProxyNum++)+" \n SET !EXTRACT {{!COL1}}")  
        full_address=iimGetLastExtract();
        iphttp = full_address.replace(/:(.*)/,"");
        portall = full_address.replace(/(.*):/,"");
        iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1")
        prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
        prefs.setIntPref("network.proxy.type", 1);
        prefs.setBoolPref("network.proxy.share_proxy_settings", true);
        prefs.setBoolPref("network.proxy.share_proxy_settings", false);
        prefs.setCharPref("network.proxy.http", iphttp);
        prefs.setIntPref("network.proxy.http_port", portall);
    };
};


Добрый день, мужики помогите разобраться - я нуб, есть макрос  с циклом {{!LOOP}}, который берет строки по порядку из файла, запустил макрос напрямую -  все работает - подставляет через {{!COL1}} и первую строку и вторую и третию, но если его запускать через управляющий скрипт - то цикл {{!LOOP}} не работает, каждый раз "проход-цикла" макроса через  {{!COL1}} подставляется только первая строка,т.е.  управляющий скрипт после прохождения макроса отлавливает капчу переключаясь на другой макрос антигейта а потом разгадав возвращается к первому макросу с {{!COL1}}, но в этот раз подставляется опять первая строка а не вторая...если я правильно понимаю в скрипт нужно что-то добавить

скрытый текст

Выделить код

Код:

for (var z=1;z<=б;z++)
{

for (i=1;i<=1;i++){
iimSet("а",а);
iimPlay("script/macros.iim",60);
}

for (s=1;s<=г;s++){
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
if (i>0){
iimSet("t",в);
iimSet("w",key);
iimPlay("script/antigate.iim",60);
}
}

if (i<0){
iimPlay("script/macros.iim",60);
}

а++

iimDisplay(z);    
iimSet("z", z);
}


или может макрос не должен останавливаться чтобы {{!LOOP}} "не прекращался" - значит его нужно запускать не через скрипт ? значит распознавание капчи нужно прикручивать в тело макроса а не в тело скрипта ?

код публикуется в тегах code внутри spoiler'a

InfSub

gunisario
FAQ, для кого написан? поиск, по видимому, тоже не для Вас, даже последних пару сообщений, Вам видимо очень напряжно было почитать??...

09-02-2016 19:30:39
RTFM: iimSet()

спасибо что ткнули носом :), искал весь день - оказывается надо было вечера подождать :rolleyes:

InfSub Благодарю! :)

InfSub

eine Frage
А зачем вы все всегда на абоут конфиг переходите ? smile_177.gif
iimPlay("CODE:URL GOTO=about:config ...

PRESIDENT пишет

eine Frage
А зачем вы все всегда на абоут конфиг переходите ?
iimPlay("CODE:URL GOTO=about:config ...

скрытый текст
А что, оно и без перехода по этому абоуту нужные изменения сделает?
Просто я данный кусок кода скопировал из примера kolshix'а, где он на видео рассказывает как менять прокси через абоут конфиг.
Там говорится, скрипт сделан максимально большим - для наглядности.
Ну а если эта строка (абоут:конфиг) не нужна и скрипт сам всё сделает, не переходя по ней, то удалю её.
Благодарю за подсказку.;)

PRESIDENT пишет

А зачем вы все всегда на абоут конфиг переходите ?

а кто сказал, что я перехожу? это не мой код, я только показал, как грамотно его форматировать

PRESIDENT

Флуд, но по теме
речь не о том, а о элементарных выравниваниях и использовании var везде, где придется (в т.ч. внутри циклов), вместо объявления всех var'ов в шапке
З.Ы. удалю ток, про встроенные функции, ибо уже обсуждалось, на форуме, их не сокращаем, я устал уже править наборы из iP, iimPlay и iimPlayCode в одном скрипте, потому, что кто-то бездумно копирует, даже не удосужившись вдуматься в код и сокращения и в результате приходит с этой кашей на форум

09-02-2016 22:52:10

Флуд, но по теме, продолжение...

PRESIDENT пишет

Так же что бы в каждой строке не писать

как ты сам сказал, у каждого своя манера написания, я например, не использую для каждой строки iimPlayCode, хотя, естественно, использую переменные, которые ты называешь сокращениями (но не для имен уже имеющихся функций)...

Мне часто пишут, что зависает макрос при его работе. Например после 4 цикла.
Хотя компьютер у них мощный. С чем это может быть связано?

С местом, где он зависает.
В самом коде макроса.
В самом компьютере.

4-го варианта я здесь не вижу.

Алим пишет

С местом, где он зависает.

и

Алим пишет

В самом коде макроса

в большинстве случаев, все же первое (т.е. корректность написания кода)

Подскажите, кто знает... макрос:

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !TIMEOUT 1
FRAME F=20
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT   'Извлекаем значение id slog
SET !CLIPBOARD {{!EXTRACT}} 'Копируем в буфер обмена
WAIT SECONDS=1
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*


Конструкция работает.. но только в iim ...Как это будет выглядеть в JS..?? Просто не силён...

Romstar08
В теме про капчи в первом посте есть готовый код для солвемедии.

Romstar08 пишет

Подскажите, кто знает... макрос:

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !TIMEOUT 1
FRAME F=20
TAG POS=1 TYPE=SPAN ATTR=ID:slog EXTRACT=TXT   'Извлекаем значение id slog
SET !CLIPBOARD {{!EXTRACT}} 'Копируем в буфер обмена
WAIT SECONDS=1
FRAME F=0
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*


Конструкция работает.. но только в iim ...Как это будет выглядеть в JS..?? Просто не силён...

смотри видео там описано как запустить файл  клац
там есть еще видео как запустить команды

Здравствуйте!!!

  Иногда iMacros продолжает выполнение скрипта до того, как сайт был полностью загружен. Я "накопал" следующее. Всего этого можно было избежать, добавив команду WAIT SECONDS=#DOWNLOADCOMPLETE# перед командой TAG. Но, оказывается, что данная команда работала в "imacros" до седьмой версии. Что нужно прописывать сегодня?

Спасибо.

Объясните в чем разница?
Переменную из этого кода вставляет в поиск

скрытый текст

Выделить код

Код:

function test() {
iimPlay("CODE:" 
+ "SET !EXTRACT_TEST_POPUP NO" + "\n"
+ "SET !ERRORIGNORE YES" + "\n"
+ "SET !TIMEOUT 120" + "\n"
+ "FILTER TYPE=IMAGES STATUS=OFF" + "\n"
+ "TAB CLOSEALLOTHERS" + "\n"
+ "SET !VAR1 "+text+"" + "\n"
+ "URL GOTO=https://www.google.com.ua/" + "\n"
+ "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT={{!VAR1}}" + "\n"
+ "PAUSE");
}


А из этого нет
скрытый текст

Выделить код

Код:

function test() {
  iimPlayCode('SET !EXTRACT_TEST_POPUP NO');
  iimPlayCode('SET !ERRORIGNORE YES');
  iimPlayCode('SET !TIMEOUT 120');
  iimPlayCode('FILTER TYPE=IMAGES STATUS=OFF');
  iimPlayCode('TAB CLOSEALLOTHERS');
  iimPlayCode('SET !VAR1 '+text+'');
  iimPlayCode('URL GOTO=https://www.google.com.ua/');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT={{!VAR1}}');
  iimPlayCode('PAUSE');
}

stivenson пишет

команда работала в "imacros" до седьмой версии

Как раз то наоборот, команды работает только в новых версиях.
Поставь лучше сет таймоут

Выделить код

Код:

iimPlayCode('SET !TIMEOUT 120\nURL GOTO=...

ShkiL424

скрытый текст
...
  iimPlayCode('SET !EXTRACT_TEST_POPUP NO');
  iimPlayCode('SET !ERRORIGNORE YES');

...
  iimPlayCode('SET !VAR1 '+text+''); 
  iimPlayCode('URL GOTO=google.com');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:f ATTR=NAME:q CONTENT="'+

text

+'"');

Аналогичный вопрос
Этот работает

скрытый текст

Выделить код

Код:

function search() {
iimPlay("CODE:"
    + "SET !EXTRACT NULL" + "\n"
    + "SET !DATASOURCE "+textsearch+"" + "\n"
    + "SET !DATASOURCE_LINE "+nomerLOOP+"" + "\n"
    + "SET !DATASOURCE_COLUMNS 1" + "\n"
    + "ADD !EXTRACT {{!COL1}}");
    text=iimGetLastExtract();
  }


этот нет
скрытый текст

Выделить код

Код:

function search() {
iimPlayCode('SET !EXTRACT NULL');
iimPlayCode('SET !DATASOURCE "'+textsearch+'"');
iimPlayCode('SET !DATASOURCE_LINE "'+nomerLOOP+'"');
iimPlayCode('SET !DATASOURCE_COLUMNS 1');
iimPlayCode('ADD !EXTRACT {{!COL1}}');
text=iimGetLastExtract();
}


Может есть ресурсы где можно почитать более подробно

скрытый текст
Нужно все команды в одну строку писать.
А то ты в первой команде указываешь файл откуда брать, вторая команда номер строки из какой брать, третья команда, какой раздел брать.
Но это всё раздельные команды их нужно в одну собрать.

iimPlayCode('SET !DATASOURCE_COLUMNS 1');
iimPlayCode('SET !DATASOURCE "'+textsearch+'"\nSET !DATASOURCE_LINE '+nomerLOOP+'\nADD !EXTRACT {{!COL1}}');
text=iimGetLastExtract();

Спасибо PRESIDENT! Буду изучать дальше.

Здравствуйте! Скажите как сделать (прописать) рандомную задержку (паузу) в JS..??

Romstar08

скрытый текст

Выделить код

Код:

weit(Math.random()*20);


        /***-= Ожидание =-***/
 function weit(s){iimPlayCode('WAIT SECONDS='+s);}

вопрос такой: как поместить в цикл код, чтобы он перебирал строчки из файла до упора (1 столбец, код в таком виде работает и через луп тоже, но не всегда имеется возможность сверять количество для loop):

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !DATASOURCE c:\1.csv
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}}
TAB OPEN
TAB T=2
URL GOTO={{!COL1}}
EVENT TYPE=CLICK SELECTOR="#i_contact>DIV:nth-of-type(4)>DIV>SPAN:nth-of-type(2)>SPAN" BUTTON=0
WAIT SECONDS=0.5
EVENT TYPE=CLICK SELECTOR="#write-message" BUTTON=0
WAIT SECONDS=0.5
EVENTS TYPE=KEYPRESS SELECTOR="#write-message" CHARS="текст для отправки"
WAIT SECONDS=0.5
EVENT TYPE=CLICK SELECTOR="#extra_container>DIV>FORM>DIV>DIV:nth-of-type(4)>DIV>BUTTON" BUTTON=0
ONDIALOG POS=1 BUTTON=OK CONTENT=
WAIT SECONDS=0.5
TAB CLOSE


логика примерно такая: если в файле кончились строки, то конец цикла

agrx пишет

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES

уберите эту команду и скрипт остановится в конце файла
либо в поиск, здесь, на форуме, куча примеров, как сделать это на js

InfSub пишет

уберите эту команду и скрипт остановится в конце файла
либо в поиск, здесь, на форуме, куча примеров, как сделать это на js

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#write-message" BUTTON=0


этого элемента во всех ссылках может не оказаться, а мне нужно, чтобы команды выполнялись в любом случае

agrx
так включите игнор ошибок непосредственно перед кодом, который может вызвать ошибки, и выключите после (последнее, впрочем, в вашем примере - не обязательно)

Всем доброе утро!!!

  Помогите пожалуйста решить следующую задачу. Вкратце, всё выглядит так. Имеется главная страница (назовём её так), на ней есть вот такой тэг:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Просмотреть<SP>сайт<SP>№1


Макрос находит этот код, открывает сайт в новой вкладке и через пять секунд закрывает её, возвращаясь таким образом на главную страницу. Затем, обновляет её - всё, просмотр засчитан! И так происходит всё циклично, пока не закончатся сайты для просмотра. Если сайты закончились, то тэг на странице пропадает, а вместо него появляется вот такой:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=ID:sec5

В "HTML" он же, выглядит так:
<span id="sec5">Ссылок больше нет, зайдите позже</span>


Мне нужно, чтобы макрос, контролировал всю ситуацию, используя, либо первый, либо второй тэг, на его присутствие или отсутствие. И если, страниц для просмотра больше нет, то он (макрос) уходил бы в режим ожидания, в виде подключения обычного .iim-файла. Фу..., вроде всё.

Заранее спасибо!

stivenson пишет

Мне нужно

так воспользуйтесь поиском, половина этой ветви форума в аналогичных примерах, из серии if(){...}else{...}

PRESIDENT пишет

Romstar08

скрытый текст

Выделить код

Код:

weit(Math.random()*20);


        /***-= Ожидание =-***/
 function weit(s){iimPlayCode('WAIT SECONDS='+s);}

...Так не пашет ...ReferenceError: weit is not defined, line: 3 (Error code: 991)

Romstar08

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по слову: "рандом"

Romstar08 пишет

...Так не пашет ...ReferenceError: weit is not defined, line: 3 (Error code: 991)

wAit буквой промазал товарищ президент

agrx
weit - это немецкий и совершенно не важно, как вы назовете функцию, хоть smoking_func, прежде чем отвечать, проверили бы для начала, что код рабочий

12-02-2016 13:16:25
Romstar08
вроде подсказки, раз уж вы пользоваться поиском не умеете и читать что вам ответил PRESIDENT, тоже не хотите, в его ответе, строка с function ... не для красоты нарисована

запихал код в цикл, работает, но цикл зависит от условия "a<10", а хотелось бы, чтобы срабатывало условие "если строка пустая, то break", видимо я что-то недоделал :( подскажите пожалуйста

скрытый текст

Выделить код

Код:

for (a=1;a<10;a++){
var n;
n = "\n";
var macro;
macro = "CODE:";
macro += "CMDLINE !DATASOURCE c:\\1.csv" + n;
macro += "SET !DATASOURCE_LINE " + a + n;
macro += "ADD !EXTRACT {{!COL1}}" + n;
iimPlay(macro)
var zapros = iimGetLastExtract()
if(zapros!=null){
macro += "WAIT SECONDS=1" + n;
macro += "TAB OPEN" + n;
macro += "WAIT SECONDS=1" + n;
macro += "TAB T=2" + n;
macro += "WAIT SECONDS=1" + n;
macro += "URL GOTO={{!COL1}}" + n;
macro += "WAIT SECONDS=1" + n;
macro += "TAG POS=2 TYPE=SPAN ATTR=TXT:Написать<SP>сообщение" + n;
macro += "WAIT SECONDS=1" + n;
macro += "TAG POS=1 TYPE=TEXTAREA FORM=NAME:NoFormName ATTR=ID:write-message CONTENT=прикольный<SP>кошак" + n;
macro += "WAIT SECONDS=1" + n;
macro += "ONDIALOG POS=1 BUTTON=OK CONTENT=" + n;
macro += "WAIT SECONDS=1" + n;
macro += "TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Отправить" + n;
macro += "WAIT SECONDS=1" + n;
macro += "TAB CLOSE" + n;
iimPlay(macro)
}
else {
iimDisplay('Cтрока пуста, писец, приплыли!') 
break
}
}

ребят помогите сделать макрос который должен заливать в фотоальбомы групп 5  фото  (фотостатус)сохранил ссылки на все альбомы но заливает ток в  первый  кароч вот макрос) что я  делаю не  так поясните плз)

скрытый текст

Выделить код

Код:

VERSION BUILD=8940826 RECORDER=FX
TAB T=1
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
FILTER TYPE=IMAGES STATUS=OFF
SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE   C:\56.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>новые<SP>фотографии
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file1 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\1.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file2 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\2.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file3 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\3.gif
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=*
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=TXT:Загрузить<SP>фотографии
TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>новые<SP>фотографии
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file1 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\4.gif
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=NAME:file2 CONTENT=C:\Users\izi\Desktop\ff\Private\G\фотостатус<SP><SP>сладкая<SP>леди\5.gif
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=*
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://pu.vk.com/c627718/upload.php?act=album_photo&aid=27343936&gid=3086857&_fwadd=-3086857_27343936&fwurl=photos.php%3Fact%3Ddone_upload&mid=346503077&server=627718&_origin=https%3A%2F%2Fm.vk.com&_sig=7970441a5f81a2e3205045f63c5e7707 ATTR=TXT:Загрузить<SP>фотографии

Здравствуйте! Подскажите, сохранять текст из таких окон, как например на скриншоте?

картинка
Screenshot-541.1455288463.png

То есть, когда текст не фиксированный, а удаляется. Ну например, когда поля какие-то заполняешь, то там текст примерно такой же, или когда сообщения на форумах пишешь, то тоже самое. Как это сохранять можно в файл?

ещё вопросец  возник  если  кто сталкывалься  подскажите ))на майле хочу  сделать что-то вроде  автоответчика ) поле ввода когда отвечаешь на сообщения не  пишеться макросом вобще

dvitkovs
Команда для ввода в такое поле выглядит примерно так
TAG POS=1 TYPE=TEXTAREA FORM=ID:post ATTR=NAME:req_message CONTENT=TEST
CONTENT= как раз и означает что нужно ввести контент, инфу, текст.
Так просто убери этот CONTENT и поставь EXTRACT=TXT


sashab
Попробуй записать в других форматах. Во вкладке Record options поиграйся с режимом клика


agrx
Я из германии, в немецком ЕИ читается как АИ, поэтому вЕИт читается как вАИт.
Обзови функцию как хочешь это не важно.


Romstar08
Нижняя функция тоже нужна.

скрытый текст

Выделить код

Код:

weit(5); будет ждать только 5 сек
 weit(Math.random()*20); будет ждать рандомно от 0 до 20 сек


И эту функцию поставь в самом низу скрипта
        /***-= Ожидание =-***/
 function weit(s){iimPlayCode('WAIT SECONDS='+s);}

Всем привет!

   Кто-нибудь знает, как можно автоматически запустить макрос, чтобы браузер при этом, открылся в свёрнутом состоянии. Здесь главный акцент не на автозапуск, как это делается я знаю, а на его свёрнутость. Что именно надо дописать в основную команду автозапуска? Нужны варианты, как для Windows, так и для Linux.

Спасибо!

Добрый день.

Помогите, пожалуйста, в составлении такого макроса.

скрытый текст

Выделить код

Код:

Запросить у пользователя, сколько раз повторить цикл, записать значение в переменную.
Цикл от 1 до значения, указанного пользователем. 
ONDOWNLOAD FOLDER=* FILE=+_{{!NOW:yyyymmdd_hhnnss в имени файла указать значение переменной}} WAIT=YES
TAG POS=2 TYPE=A ATTR=TXT:Скачать
TAG POS=1 TYPE=SPAN ATTR=TITLE:&&CLASS:next<SP>pager-icon<SP>fs-civ-circle-chevron-right<SP>enabled&&DATA-ORIGINAL-TITLE:Вперед&&TXT:


Буду благодарна за помощь.

Добрый вечер. Подскажите пожалуйста новичку. Столкнулся с такой проблемой.
Есть файл csv c данными в формате :
"user1","login1"
"user2","login2"
...
Есть скрипт :

скрытый текст

Выделить код

Код:

VERSION BUILD=8601111 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !TIMEOUT_STEP 0
SET !TIMEOUT_PAGE 120
SET !DATASOURCE C:\FirefoxPort\Data\profile\iMacros\Macros\info.csv
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
WAIT SECONDS=2
URL GOTO=https://site.ru/
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:pass CONTENT={{!COL2}}
WAIT SECONDS=2


Если запускаю этот скрипт, все работает, данные из csv вносятся. Но мне необходимо поместить все это в js, получилось примерно так:

скрытый текст

Выделить код

Код:

var macro;
macro="CODE:";
macro+="VERSION BUILD=8601111 RECORDER=FX" +"\n";
macro+="SET !EXTRACT_TEST_POPUP NO" +"\n";
macro+="SET !ERRORIGNORE YES" +"\n";
macro+="SET !ERRORCONTINUE YES" +"\n";
macro+="SET !TIMEOUT_STEP 0" +"\n";
macro+="SET !TIMEOUT_PAGE 120" +"\n";
macro+="SET !DATASOURCE C:\FirefoxPort\Data\profile\iMacros\Macros\info.csv" +"\n";
macro+="SET !LOOP 1"+"\n";
macro+="SET !DATASOURCE_LINE {{!LOOP}}" +"\n";
macro+="WAIT SECONDS=2" +"\n";
macro+="URL GOTO=https://site.ru" +"\n";
macro+="WAIT SECONDS=2" +"\n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{!COL1}}" +"\n";
macro+="WAIT SECONDS=2" +"\n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:pass CONTENT={{!COL2}}" +"\n";
macro+="WAIT SECONDS=2" +"\n";
iimPlay(macro);


Запускаю, скрипт работает, ошибок не выдает, но вносит пустые значения в поля. Я еще новичек в этом и делал по примерам других скриптов и wiki. Если кто увидит ошибку, помогите, всю голову сломал. Я думаю что что-то с синтаксисом не так, а что понять не могу.

Почитав форумы javascript пришел к такому варианту:

скрытый текст

Выделить код

Код:

var macro;
macro="CODE:";
macro+="VERSION BUILD=8601111 RECORDER=FX"+"\n";
macro+="SET !EXTRACT_TEST_POPUP NO" +"\n";
macro+="SET !ERRORIGNORE YES" +"\n";
macro+="SET !ERRORCONTINUE YES" +"\n";
macro+="SET !TIMEOUT_STEP 0" +"\n";
macro+="SET !TIMEOUT_PAGE 120" +"\n";
macro+="SET !DATASOURCE C:\info.csv" +"\n";
macro+="SET !DATASOURCE_COLUMNS 2" +"\n";
macro += "SET !DATASOURCE_LINE {{CSV}}" + "\n";
macro+="WAIT SECONDS=2"+"\n";
macro+="URL GOTO=https://site.ru"+"\n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{!COL1}}"+"\n";
macro+="TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:pass CONTENT={{!COL2}}"+"\n";
macro+="WAIT SECONDS=5"+"\n";


for(i = 1; i < 10; i++){
iimSet("CSV", i);
iimPlay(macro);
}


Ошибок нет, циклы идут, а данные не появились(((

Правила форума iMacros, 1.3.2

InfSub

Елена 17

скрытый текст

Выделить код

Код:

b=prompt('Введите количество повторов','99');
 for(a=1; a<=b; a++){    
   iimPlayCode('ONDOWNLOAD FOLDER=* FILE=имя_файла'+a+' WAIT=YES\nTAG POS=2 TYPE=A ATTR=TXT:Скачать');
   iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TITLE:&&CLASS:next*enabled&&DATA-ORIGINAL-TITLE:Вперед&&TXT:');
   iimPlayCode('WAIT SECONDS=5');}


bigmacros

скрытый текст

Выделить код

Код:

for(i=1; i<10; i++){
  iimPlayCode('SET !DATASOURCE C:\\info.csv\nSET !DATASOURCE_LINE '+i+'\nSET !EXTRACT {{!COL1}}'); name=iimGetLastExtract();
  iimPlayCode('SET !DATASOURCE C:\\info.csv\nSET !DATASOURCE_LINE '+i+'\nSET !EXTRACT {{!COL2}}'); pass=iimGetLastExtract();
  iimPlayCode('WAIT SECONDS=1');
  iimPlayCode('SET !TIMEOUT 120\nURL GOTO=site.ru');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT='+name);
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:pass CONTENT='+pass);
  iimPlayCode('WAIT SECONDS=5');}

PRESIDENT, большое Вам спасибо!

Вы не представляете, как меня выручили!

PRESIDENT, все заработало. Огромная благодарность вам за помощь!

Добрый день! Помогите разобраться в чем дело.... Пишу скрипт на imacros(+javascript), он должен вставлять текст в поле для ввода. Но он почему-то вставляет один и тотже текст несколько раз подряд, а только затем отправляет сообщение! Подскажите в чем может быть дело? Код скрипта ниже:

скрытый текст

Выделить код

Код:

var s_n = "\n";
var postMacros;
var postMacrosRun;
postMacros = "CODE:SET !ERRORIGNORE YES"+s_n;
postMacros += "CMDLINE !DATASOURCE fr.txt"+s_n;
postMacros += "SET !LOOP "+i+s_n;
postMacros += "ADD !EXTRACT {{!COL1}}"+s_n;
postMacros += "URL GOTO={{!COL1}}"+s_n;
postMacros += "SET !EXTRACT NULL"+s_n;
postMacros += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение"+s_n;
postMacros += "CMDLINE !DATASOURCE text.txt"+s_n;
postMacros += "SET !DATASOURCE_LINE 1"+s_n;
postMacros += "EVENTS TYPE=KEYPRESS SELECTOR=\"#mail_box_editable\" CHARS={{!COL1}}"+s_n;
postMacros += "TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send"+s_n;
postMacrosRun = iimPlay(postMacros);

Vadim_g

Выделить код

Код:

iimPlayCode('SET !DATASOURCE fr.txt\nSET !EXTRACT {{!COL1}}\nURL GOTO={{!COL1}}');
iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить*сообщение');
iimPlayCode('CMDLINE !DATASOURCE text.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}\nEVENTS TYPE=KEYPRESS SELECTOR=#mail_box_editable CHARS="{{!COL1}}"');
iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send');

PRESIDENT
Спасибо за ответ!!!
Исправил код, убрал цикл. Не помогло. Все равно сообщение дублируется в поле для ввода несколько раз.

скрытый текст

Выделить код

Код:

postMacros = "CODE:SET !ERRORIGNORE YES"+s_n;
postMacros += "CMDLINE !DATASOURCE fri.txt"+s_n;
postMacros += "ADD !EXTRACT {{!COL1}}"+s_n;
postMacros += "URL GOTO={{!COL1}}"+s_n;
postMacros += "TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение"+s_n;
postMacros += "CMDLINE !DATASOURCE text.txt"+s_n;
postMacros += "SET !DATASOURCE_LINE 1"+s_n;
postMacros += "EVENTS TYPE=KEYPRESS SELECTOR=\"#mail_box_editable\" CHARS={{!COL1}}"+s_n;
postMacros += "TAG POS=1 TYPE=BUTTON ATTR=ID:mail_box_send"+s_n;
postMacrosRun = iimPlay(postMacros);

Vadim_g
Какой сайт, надеюсь не vk.
Попробуй в другом формате команду ввода записать, EVENT часто глючит.

PRESIDENT пишет

Попробуй в другом формате команду ввода записать, EVENT часто глючит.

А как можно иначе записать команду EVENT? Просто есть сайты, которые обычными способами не поддаются. Например на почту рамблер без EVENT не зайти. Не вводится логин и пароль туда, иначе как только через EVENT.
Но может есть другие способы  или методы это обойти? А то из-за этого EVENT приходится более поздние версии мозиллы использовать (вместо 3.6 у которой imacros не поддерживает EVENT)

dvitkovs пишет

может есть другие способы

Вариант 1, обычный

Выделить код

Код:

message='Тут какой нить текст';
  iimPlayCode('TAG POS=1 TYPE=TEXTAREA FORM=ID:post ATTR=NAME:req_message CONTENT="'+message+'"');


Вариант 2, глючный

Выделить код

Код:

message='Тут какой нить текст';
  iimPlayCode('EVENT TYPE=KEYPRESS SELECTOR="#post>DIV>FIELDSET>DIV>LABEL>TEXTAREA" CHAR="'+message+'"');


Вариант 3, правильный

Выделить код

Код:

message='Тут какой нить текст';
  var b="javascript:document.getElementsByTagName('textarea')[0].innerHTML='"+message+"';void 0;"
  iimPlayCode('URL GOTO='+b.replace(/ /g,'<SP>'));

PRESIDENT
Благодарю! :)

День добрый, подскажите, как решить задачу:

скрытый текст
Есть плагин ZenMate для firefox, нужно, что бы iMacros переходил по адресу resource://firefox-at-zenmate-dot-com/zenmate/data/page.html#login вводил там имя пользователя, пароль и нажимал кнопку "Log In". Пробовал сделать это через запись в iMacros'е, однако кроме открытия страницы, ничего не записывает, ни ввод данных, ни подтверждение

kopbetby
Попробуй как нить так

Выделить код

Код:

URL GOTO=http://логин:пароль@resource://firefox-at-zenmate-dot-com/zenmate/data/page.html#login

Подскажите как сделать пропуск функции если на сайте высвечивается определённый текст. Если текста нет то функция выполняется. По форуму искал пробывал сделать по аналогии но не как не получается.

скрытый текст

Выделить код

Код:

var numer = 100;
var LOOP = 1;

for (;LOOP<numer;LOOP++){
fauset();
}

function func1(){
  iimPlayCode('TAB CLOSEALLOTHERS');
  iimPlayCode('TAB T=1 \n URL GOTO=http://site1.ru');
  iimPlayCode('TAG POS=1 TYPE=P ATTR=CLASS:alert*');//Если находит эту строку то останавливает и переходит к следующей
  Captcha();
  iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');
  iimPlayCode('TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*');
}

function func2(){
  iimPlayCode('TAB CLOSEALLOTHERS');
  iimPlayCode('TAB T=1 \n URL GOTO=http://site2.ru');
  iimPlayCode('TAG POS=1 TYPE=P ATTR=CLASS:alert*');//Если такой строки нет код продолжает выполнятся
  Captcha();
  iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');
  iimPlayCode('TAG POS=2 TYPE=INPUT:SUBMIT ATTR=*');
}

stivenson пишет

Кто-нибудь знает, как можно автоматически запустить макрос, чтобы браузер при этом, открылся в свёрнутом состоянии.

вот какае-то статья есть через батник, но я не селен, может кто-то разберется и подскажет статья -- запускать свернутый батник можно через 2-й батник " star / min тут команда " -- а как браузер свернуть самому интересно

kolshix пишет

а как браузер свернуть самому интересно

гугл и поиск по форуму - ни кто не отменял, через стандартные средства cmd - лису, вы не свернете ни в таскбар, ни тем более в трей, т.к. firefox.exe не имеет параметра /min или /minimized

свернуть в трей, предположительно, можно с помощью этой тулзы:
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


свернуть в таскбар, через cmd, можно с помощью программы nircmd


16-02-2016 00:08:07
ShkiL424
а какой смысл в вашем коде? вы бы, для начала, погуглили, для чего вообще используются функции или хотя бы - как...

К тому же, половина форума забита примерами, из серии, как создать условие из серии: "если (условие) то {действие} иначе {действие}"

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по слову: "else"

kolshix, stivenson

InfSub пишет

предположительно, можно с помощью этой тулзы

скрытый текст
Переходите на старую добрую 3.6 :)
Extension Information
*Firefox 3.0 to 3.7a1 pre

PRESIDENT пишет

kopbetby
Попробуй как нить так...

К сожалению, не проходит такой вариант. Похоже был прав InfSub, что не получится управлять iMacros'ом, через web-интерфейс, другим приложением...
Ладно будем искать другую возможность. Спасибо вам.

kopbetby

Всё  прекрасно вводится и нажимается

Выделить код

Код:

iimPlayCode('URL GOTO=resource://firefox-at-zenmate-dot-com/zenmate/data/page.html#login');
iimPlayCode('TAG POS=1 TYPE=input ATTR=placeholder:Email CONTENT=my_login');
iimPlayCode('TAG POS=1 TYPE=input ATTR=placeholder:password CONTENT=my_pass');
iimPlayCode('TAG POS=1 TYPE=span ATTR=class:"text text--main"&&TXT:*Log*In*');

Доброго времени суток!!! Столкнулся с проблемкой, пишу макросы в лисе и js.... Нужен iim т.к хром не читает js. Вот код js:

скрытый текст

Выделить код

Код:

function a(){
iimPlayCode('SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n FRAME F='+f+'\n TAG POS=1 TYPE=IMG ATTR=WIDTH:100%&&HEIGHT:100%&&SRC://w1150.am15.net/img/ie_img_fix.gif EXTRACT=TXT');
}
iimPlayCode('SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n TAG POS=1 TYPE=IMG ATTR=WIDTH:100%&&HEIGHT:100%&&SRC://w1150.am15.net/img/ie_img_fix.gif EXTRACT=TXT');//проверяем без фрейма.
//Если без фрейма не находим, ищем фрейм с наличием элемента.
if(iimGetLastExtract() == '#EANF#'){
for(f = 0;f <= 6 && iimGetLastExtract() == '#EANF#';f++){
a();
}
alert(f);
}


Нужно тоже самое, но в iim. И как это всё зациклить до бесконечности(в iim)? Помогите пожалуйста. Заранее благодарен.

16-02-2016 10:18:19
я понимаю, что через EVAL, но как? Пробую всяко, ошибки выдаёт.

stars1981
внутри EVAL() команды имакроса - работать не будут
EVAL() используется, только для вычисления значения переменной, выполнить какие-либо действия имакросом, изнутри EVAL()  - нельзя

16-02-2016 11:24:02

PRESIDENT пишет

Всё  прекрасно вводится и нажимается

зависит от плагина

оффтоп
я, к примеру, сталкивался с веб-плагином для ip-камер, с которым iMacros упорно не хотел работать, просто не воспринимал код страницы ни в режиме записи, ни в режиме запуска

InfSub пишет

внутри EVAL() команды имакроса - работать не будут
EVAL() используется, только для вычисления значения переменной, выполнить какие-либо действия имакросом, изнутри EVAL()  - нельзя

ясно!!! а как тогда мой код в iim исполнить?

stars1981 пишет

а как

в хроме - ни как

Ребят подскажите пожалуйста есть ли функция в аймакросе для скроллинга вниз по странице на определенное расстояние?

Victor56

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=javascript:window.scrollBy(0,500)');

PRESIDENT
Пасибо ппц как выручили))) отткуда инфу вы берете?

Я сделал управляющий скрипт но проблема в том что сайты запускаются не по очереди. Подскажите как исправить

скрытый текст

Выделить код

Код:

for ( ; ; ){
iimPlayCode("URL GOTO=imacros://run/?m=mysites/1_site.js");
iimPlayCode("URL GOTO=imacros://run/?m=mysites/2_site.js");
iimPlayCode("URL GOTO=imacros://run/?m=mysites/3_site.js");
iimPlayCode("URL GOTO=imacros://run/?m=mysites/4_site.js");
iimPlayCode("URL GOTO=imacros://run/?m=mysites/5_site.js");
iimPlayCode("URL GOTO=imacros://run/?m=mysites/6_site.js");
}

ShkiL424
В конце первого скрипта ставишь команду запуска второго скрипта.
В конце второго запуск третьего.
в конце третьего ...
...
В конце последнего скрипта делаешь запуск первого.

раньше все работало теперь не могу понять почему загружает одну и ту же капчу

скрытый текст

Выделить код

Код:

SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=CLASS:box_title
SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES

WAIT SECONDS=5
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=vk.jpg WAIT=YES
TAG POS=1 TYPE=IMG ATTR=SRC:/captcha.php?* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T
WAIT SECONDS=2

Удали капчу из папки C:\CAPCH\, запусти скрипт и посмотри новая туда загружается.

Ребята привет всем, столкнулся с такой проблемой, короче есть код

скрытый текст

Выделить код

Код:

<meta http-equiv="refresh" content="0; url=http://example.com/" />


При сохранение iMacros-ом код сохраняется так
скрытый текст

Выделить код

Код:

"<meta http-equiv=""refresh"" content=""0; url=http://example.com/"" />"


т.е с экранированием двойных кавычек, что приводит к не работе данного кода. Как можно это исправить?

InfSub пишет

свернуть в таскбар, через cmd, можно с помощью программы nircmd

minimized - обидно в палмуне не катит - короче всетаки решился на свой страх и риск тестонуть --

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

- там в архиве выбираем nircmd.exe и скидываем в system32
потом качаем winexp тут в конце страницы
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

- и с помощью приблуды определяем класс проги, чтоб забить команду в .bat

скрытый текст
lyb67mo37bil.png

------
ну и вот собственно строка в батнике

Выделить код

Код:

"nircmd.exe" win min class "MozillaWindowClass"

и еще , чтоб не задалбывал назойлевый логотип при запуске портативной версии палмун , нужно в файле Palemoon-Portable.ini (файл лежит сразу с файлом запуска браузера) изменить параметр true на false в строке ShowSplash=, чтоб получилось "ShowSplash=false"

Ребята всем привет))) Есть код для автоматической отправки сообщения, но текст в поле ввода он почему то не вставляет в чем может быть причина?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить<SP>сообщение
SET !COL1 EVAL("привет")
TAG POS=1 TYPE=DIV ATTR=ID:mail_box_editable CONTENT={{!COL1}}

Привет, а ты проинспектируй это поле расширением ваербег или запиши макрос как ты заполняешь это поле и в редактировании проверь со своим вопросом. У меня тоже не вставлялось TAG POS оказался не =1, а =2   ...

gunisario пишет

ты проинспектируй это поле расширением ваербег

Клик правой кнопкой мишки на свободном месте, и там Исследовать элемент.

PRESIDENT
По моей проблеме подскажи что нибудь ))

Hamzat
У меня переделанный имакрос, сохраняет без кавычек.
Попробуй может при сохранении замени двойные кавычки на одинарные.

PRESIDENT пишет

Hamzat
У меня переделанный имакрос, сохраняет без кавычек.
Попробуй может при сохранении замени двойные кавычки на одинарные.

Да в принципе помогло, спасибо тебе.

Всем привет, подкажите

скрытый текст

Выделить код

Код:

for (i=1;i<=100;i++){
iimSet("loop",i);
iimPlay("script/macros.iim",60);
}

for (s=1;s<=г;s++){
i= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=TXT:Введите<SP>код<SP>с<SP>картинки")
if (i>0){
iimSet("t",в);
iimSet("w",key);
iimPlay("script/antigate.iim",60);
}


нужно чтобы брались строки из файла по очереди и при появлении капчи ее разгадывало.
если i<=100 то строки берутся по очереди, но капчу не видит т.к. стоит условие - скрипту выполниться надо 100 раз, а потом смотреть на капчу
если i<=1 то строка берется каждый раз только первая, капча естественно определаяется и разгадывется
подскажите как брать строки по очереди и при появлении капчи сразу ее разгадывать

gunisario
в данной теме не единожды обсуждалась работа с капчами, в итоге перекочевав в отдельную ветвь
примеров, как работать с капчей - десятки...
по коду:
что за привычка - использовать русские буквы в именах переменных??
что такое, переменная "г", где это есть в описании или коде?

gunisario пишет

стоит условие - скрипту выполниться надо 100 раз, а потом смотреть на капчу

в вопросе - заложен ответ, вы вынесли капчу из цикла, естественно, она будет проверяться в конце, внесите код в цикл, куда уж элементарней то?

Всем привет !
Нашел на форуме команды для смены прокси

скрытый текст

Выделить код

Код:

iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1")
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setBoolPref("network.proxy.share_proxy_settings", true);
prefs.setIntPref("network.proxy.http_port",port);
prefs.setCharPref("network.proxy.http",proxy[t]);


Но проблема оказалась в том , что в настройках и в абоут:конфиг все эти данные прокси меняются , но при переходе на сайты для проверки айпи адреса , показывает прежний айпи . Также ,если вручную зайти в настройки и нажать кнопку "ОК" , только тогда уже  айпи меняется при обновлении страницы сайта  .
Есть ли решение, чтобы не заходить в настройки и не  нажимать кнопку "ОК" каждый раз ? .

ErrorignoreYes

Всё прекрасно работает.

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 
  prf.setIntPref("network.proxy.type", 1);
  prf.setCharPref("network.proxy.http",'107.151.152.210');
  prf.setIntPref("network.proxy.http_port",'80');
 
iimPlayCode('URL GOTO=pr-cy.ru/browser-details\nTAG POS=1 TYPE=DIV ATTR=CLASS:panel<SP>panel-default');

PRESIDENT

Все же не работает.

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 
  prf.setIntPref("network.proxy.type", 1);
  prf.setCharPref("network.proxy.http",'107.151.152.210');
  prf.setIntPref("network.proxy.http_port",'80');
 
iimPlayCode('URL GOTO=pr-cy.ru/browser-details\nTAG POS=1 TYPE=DIV ATTR=CLASS:panel<SP>panel-default');
Да , тут показывает измененное айпи 


А вот тут показывает прежнее
iimPlayCode('wait seconds=3\nurl goto=whoer.net')
iimPlayCode('wait seconds=3\nurl goto=2ip.ru\npause')

Здравствуйте!
Я сделал скрипт решения капчи с помощью RuCaptcha, но часто приходят не правильно решённая капча и хочу в ответ на такие капчи отправлять, что капча решена не верно.
Но не нашел как узнать ID капчи что бы вставит в "action=reportbad&id=CAPCHA_ID". Может у кого что нибудь есть? Помогите пожалуйста...

Vladimir271

скрытый текст
Нужно поставить галочку получить ID капчи


8e1307d16af9.jpg

И ответ от рукапчи будет в таком формате
ОК|12345|текст

12345 - это и будет ID капчи

Всем привет:rock:
Подскажите пожалуйста как сделать подмену трёх слов?

скрытый текст

Выделить код

Код:

var r=iimGetExtract().replace('обсуждение','photos')


Этим куском кода делаю одну подмену,а надобно три.

Gergi

скрытый текст

Выделить код

Код:

var r=iimGetExtract().replace(/обсуждение/g,'photos');

или

Выделить код

Код:

var r=iimGetExtract().replace('обсуждение','photos').replace('обсуждение','photos').replace('обсуждение','photos');

Народ, подскажите! Есть файл. Надо в нём посчитать количество строк. Можно ли это реализовать через Imacros?

dazvidi

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по фразе: "посчитать количество строк" или "goto=file"

Здравствуйте, помогите пожалуйста не могу реализовать код,  (соц. сеть одноклассники)
заходит в мои друзья (все) и ходит по людям но проблема в том что он ( бывает) заходит к одному и тому же человеку по 2,3 раза(скорее всего это происходит из за того что список сам по себе меняется, в зависимости от входа человека  по времени)
а нужно что бы заходил к одному человеку один раз
Заранее благодарю!!!

[

InfSub пишет

поиск по фразе: "посчитать количество строк" или "goto=file"

Благодарю, поискал и нашёл, но:
при проигрывании этой строки:

скрытый текст

Выделить код

Код:

iimPlayCode('URL [h]GOTO=file[/h]:///c:\\out\\out.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');


выдаёт ошибку:

wrong format of URL command, line 1 (Error code: -910)

как решить эту проблему

dazvidi

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=file:///C:\\out\\out.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
txt=iimGetExtract().split('\n');  
alert('В файле out.txt '+(txt.length-1)+' строк');

dazvidi пишет

как решить эту проблему

нажать на "перейти к сообщению" слева от текста и прочитать его полностью, в нормальном виде, а не бездумно выдирать из поиска, даже не задумываясь о наличии BB-кода в строке

InfSub пишет

нажать на "перейти к сообщению" слева от текста и прочитать его полностью, в нормальном виде, а не бездумно выдирать из поиска, даже не задумываясь о наличии BB-кода в строке

Век живи век учись. Следующий раз буду знать.

22-02-2016 17:13:17
Перекопал весь поиск но таки не нашёл решения.

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT_TAG 1
SET !TIMEOUT_STEP 1
SET !TIMEOUT_PAGE 60
' SET !REPLAYSPEED FAST
'URL GOTO=https://twitter.com/

 SET !ERRORIGNORE YES


    SET !DATASOURCE_DELIMITER "    "
SET !DATASOURCE twitter.csv
SET !DATASOURCE_COLUMNS 1

SET !LOOP 1

SET !DATASOURCE_LINE {{!LOOP}}

WAIT SECONDS=2


EVENT TYPE=CLICK SELECTOR="#global-new-tweet-button" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" KEYS="[8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8]"
EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS="{{!COL1}}"
EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS=" https://s-media-cache-ak0.pinimg.com/736x/e9/d3/44/e9d344104d13c0394b4d9ed0efdc67e8.jpg"
'EVENT TYPE=CLICK SELECTOR="#global-tweet-dialog-dialog>DIV:nth-of-type(2)>DIV:nth-of-type(4)>FORM>DIV:nth-of-type(2)>DIV:nth-of-type(2)>BUTTON" BUTTON=0


Данный макрос вставляет текст из файла и ссылку на картинку. Можно ли сделать чтобы вместо ссылки вставлялась картинка?

dazvidi пишет

Можно ли

https://forum.mozilla-russia.org/search … ords=inner

Ничего на нашёл, или не понял как это можно прикрутить.

Ребят есть пример части кода у кого нить? Суть в следующем есть программка на аймакросе которая ставит лайки определенным пользователям в ВК,
проблема в том что где-то на 50 лайке вылетает капча, программа продолжает работать дальше и игнорирует капчу, ставя уже бесполезный лайк,
так как ВК его отменяет и опять предлагает ввести капчу. Нужен пример кода для распознования формы с капчей, если такая форма выскочила то программа останавливается и все. Заранее спасибо.

dazvidi пишет

не понял как это можно прикрутить.

1. гугл по основам js и html
2. (если первый вариант не под силу) ваш скрипт, приведенный выше, вполне способен убрать ссылку, в нем уже есть - кривое, но вполне рабочее решение, научитесь понимать ваш код, прокомментируйте (опишите) каждое действие (каждую строку кода) и вы увидите, что решение перед вами


Victor56
а что, поиск это только для избранных?

Приветствую!
Версия imacros 8601111, firefox - 29.0.1, 25.0.1 - оба Portable
Не работают команды закрытия окна браузера iimClose и iimExit.

При запуске из *.js ошибка такая:

скрытый текст
[Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]"  nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.openNode :: line 192"  data: no], line: 188 (Error code: 991)

При запуске из *.iim:
скрытый текст
SyntaxError: can not parse macro line: iimClose() (Error code: -910)

Кто-нибудь сталкивался? Что можете посоветовать?

zaskock пишет

не работают команды закрытия окна браузера

может вы для начала переведете нормально функционал данных команд, а так же, посмотрите на их совместимость?

zaskock пишет

При запуске из *.iim:

и не будете запихивать js-код в iim-код...

и для разнообразия воспользуетесь поиском по iim-командам CLOSE и CLOSEALLOTHERS ?

удалено, избыточное цитирование

InfSub пишет

Victor56
а что, поиск это только для избранных?

Ищу уже 4 день, кроме как того что все задают один и тот же вопрос ответа я так и не нашел.. Подскажите хотя бы намек, в какую сторону копать через Eval или другими путями..

InfSub

InfSub пишет

для разнообразия воспользуетесь поиском по iim-командам CLOSE и CLOSEALLOTHERS ?

Спасибо, всех благ!

Victor56 пишет

Ищу уже 4 день

поискать по слову captcha по данной ветви форума, это так сложно?
eval - тут точно не поможет, реализация только на js на элементарном уровне - проверить есть ли капча, если есть - выполнить код для разгадывания, если нет - идти дальше

Дорогой InfSub, походу я капец как туплю :blush: Перевставлял все что можно.  Если есть пример кода хотябы самого поиска(условия) капчи на js буду признателен, дальше я сам уже как нибудь разберусь что делать. Спасибо еще раз InfSub

добрый вечер, помогите прописать команду как писать людям  сообщения  вк (один раз одному человеку)
что бы imacros анализировал

InfSub
Я так и не понял принцип действия .innerHTML
Если можно напишите этот код: как загнать картинку в форму.

axe пишет

iMacros может выполнять javascript-файлы, которые вызывают выполнение *.iim.

и что с того, какая связь этой фразы с последующим вопросом? или 2.16?

axe пишет

Может ли такой javascript посчитать количество открытых табов?

нет

25-02-2016 10:56:57
Victor56
как выловить капчу на vk  - находится за пару минут поиском по фразе "captcha vk", результат и еще вариант на js

Помогите, завис комп на цикле

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=STRONG ATTR=*


Можно ли как-то продолжить цикл с того момента, где остановился?
Как задать, чтоб цикл начинался не с 1?

Или без вариантов - заново запускать с начала?
Явой не владею, темный лес.

myscience пишет

Явой не владею, темный лес.

скрытый текст
в *.iim

TAG POS=1 TYPE=STRONG ATTR=*

в *.JS

iimPlayCode('TAG POS=1 TYPE=STRONG ATTR=*');

for(a=1; a<=9; a++){ //<--- Задаем цикл (число повторов) от 1 до 9
Тут кусок кода который должен повторится 9 раз
...
}

и теперь тебе с каждым новым проходом нужно менять значение
TAG POS=1  POS=2  POS=3 ...  POS=9
значит подставь туда значение цикла a
for(

a

=1;

a

<=9;

a

++){
iimPlayCode('TAG POS=' +

a

+ ' TYPE=STRONG ATTR=*');
...
}

Если тебе нужно не с единицы начинать то так и укажи это в цикле
for(a=20; a<=99; a++){

Ребята, выручайте. Я сам ничего не понимаю в JS. Весь интернет перерыл, 2 дня потратил, но ничего толком не нашел...

Есть такой скрипт:

скрытый текст

Выделить код

Код:

for (i=1;1<2;i++){ \\это как-бы для бесконечности циклов.
var macro;
macro = "CODE:";
macro += "TAG POS=101 TYPE=SPAN ATTR=CLASS:msg_text EXTRACT=TXT" + "\n"; \\первым делом мы заходим в новое сообщение и извлекаем из него текст.
macro += "ADD !EXTRACT {{!COL1}}" + "\n"; \\вставляем текст в переменную
iimPlay(macro)
var test = iimGetLastExtract(1) \\создаем переменную "test" с нашим текстом уже в самом JS для проверки на условие!!!

if(test!==WIN){
iimPlay("start.lim") \\А вот тут мы как бы должны проверить, если в нашем тексте есть слово "WIN" - мы запускаем макрос... Но к сожалению...
}
}


Как я понял - ничего у меня не получится, так как в тексте переменной есть не только слово "WIN", но и другие слова, которые меняются постоянно... Да и кажется IF вообще не предназначен для слов. лишь для цифр... Или нет??

Обрисую ситуацию: Есть чат, в который каждые несколько секунд система бросает сообщения разного рода и смысла, но иногда выбрасывает сообщение с подобным текстом "WIN809kf89i", Именно эти сообщения мне и нужны, но все эти цифры после слова "WIN" -  постоянно разные, а мне текст именно этих сообщений нужно отправить на почту и продолжить просмотр чата, игнорируя все остальные сообщения другого характера...

А вторая проблема в том что он не зациклен :(
Я хотел чтоб если в тексте нет нужного слова - чтоб он повторял всё с начала, опять открывал последнее сообщение, проверял опять текст, а он обиделся, говорит мол: "не соблюдено твое условие в тексте, так что всё, хорош работать, хеппи энд одним словом"

Я уже потерял всякую надежду...
Буду рад если кто-то поможет. Заранее спасибо.

Всем добрый день:rock:
Подскажите пожалуйста как сделать паузу после 10 циклов?
Вот пример кода.
Общий цикл 1000 надо после каждых 10 циклов делал паузу на пол часа.

скрытый текст

Выделить код

Код:

var s=prompt("Общий цикл ",1000);
var i,t1=1,t2=1,t3=1;
for(i=0; i<s; t1++,t2++,t3++,i++){    
sek = Math.floor(Math.random() * 5);
iimPlayCode('....');
w=iimGetExtract();
if(!w) t1=1;
iimPlayCode('....'); 
z=iimGetExtract();
if(!z) t2=1;
iimPlayCode('....'); 
f=iimGetExtract();
if(!f) t3=1;
iimPlayCode('....'); 
};

Teks
if(test.indexOf('WIN')>0){  //<--- Если в переменной test есть WIN
...


Gergi

скрытый текст
var a=0;
for( ... ){   //<--- твой цикл
a++;
if(a>9){
пауза на полчаса
a=0;
}

...
}

PRESIDENT
Но я так понимаю что он после 9 вернётся и начнёт всё заново,а мне надо что бы он продолжил

26-02-2016 11:11:32
Попробую по другому объяснить.
Имеется TXT файл,в нём 1000 строк,надобно что бы скрипт прошёл все 1000 строк,но после каждой 10й строки делал паузу.

Gergi пишет

Но я так понимаю что он после 9 вернётся и начнёт всё заново

С какого перепугу он будет всё заново начинать.
Там специально новая переменная

a

введена, она отношения к твоему общему циклу не имеет.

PRESIDENT пишет

Teks
if(test.indexOf('WIN')>0){  //<--- Если в переменной test есть WIN
...

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


В чем может быть проблема?

Teks пишет

Не работает

скрытый текст
Эта строка определяет  наличие WIN в переменной test

Выделить код

Код:

test='123WIN456';
if(test.indexOf('WIN')>0)
alert('есть WIN');
else
alert('нет WIN');


Gergi

тебе нужно что бы через каждые 10 раз включалась пауза на пол чана

PRESIDENT. Спасибо,у меня всё реализовалось.

PRESIDENT пишет
Teks пишет

Не работает

скрытый текст
Эта строка определяет  наличие WIN в переменной test

Выделить код

Код:

test='123WIN456';
if(test.indexOf('WIN')>0)
alert('есть WIN');
else
alert('нет WIN');

Блин, каким-же бараном я себя сейчас чувствую :(

В Вашем случае условие работает (так как мы внесли в переменную "test" значение "WIN" вручную)
Значит у меня не извлекается текст в переменную автоматом и переменная "test" видимо пустая...
Что-же блин не так?? Ну ведь Вроде всё правильно... Почему??!! (((((

Ещё раз:

скрытый текст

Выделить код

Код:

for (i=1;1<2;i++){
var macro;
macro = "CODE:";
macro += "TAG POS=101 TYPE=SPAN ATTR=CLASS:msg_text EXTRACT=TXT" + "\n";
macro += "ADD !EXTRACT {{!COL1}}" + "\n";
iimPlay(macro)
var test = iimGetLastExtract(1)

if(test.indexOf('WIN')>0)
iimPlay("start.lim");
else
alert('нет WIN');
}


Значит проблема в 7 строке???
Или может в 5 строке нужно экспортировать текст в переменную {{VAR1}} а не в {{!COL1}}?? Или нет разницы???
А может в 5 строке лучше вообще использовать SET !VAR1 {{!EXTRACT}} вместо ADD?? Но в таком случае, я читал что iimGetLastExtract(1) работает только с ADD...

Какой-же я баран, столько перечитал и всё-равно ничего не понимаю... Старею видимо...

Teks
позиция 101 это правильно ?

скрытый текст

Выделить код

Код:

for (i=1;1<2;i++){
iimPlayCode('TAG POS=101 TYPE=SPAN ATTR=CLASS:msg_text EXTRACT=TXT');test = iimGetLastExtract();
if(test.indexOf('WIN')>0){
alert('WIN найден');
Тут дальнейшие действия

}
}

PRESIDENT
Ух ты) Уважаемый человек, огромнейшее тебе спасибо! )) Теперь Всё работает.

попробуй ещё так

скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=SPAN ATTR=CLASS:msg_text&&TXT:*WIN*')>0){
   iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=CLASS:msg_text&&TXT:*WIN* EXTRACT=TXT');test = iimGetLastExtract();
     ...
    Тут дальнейшие действия
     ...
}

Спасибо большое InfSub за ссылки, все оказалось не так сложно как я думал.:D:D:D Теперь просто вопрос, возможно ли запустить imacros в вк сразу на несколько аккаунтах. Как делал я: скачал дополнение к Фаерфоксу - мультифокс авторизировался под разными аккаунтами. Запуская imacros  сразу на двух аккаунтах, один перестает работать и зависает второй работает. Кто нибудь с подобным сталкивался?

Сделай несколько разных профилей или просто скачай портабельную мазилку.
сделай несколько копий с неё и запусти эти разные копии и в каждой стартани свой имакрос.

Блин такие детские вопросы.:(

PRESIDENT, все равно тоже самое происходит работают некоторое время (оба макроса), один из них останавливается который был запущен первым. После того как нажимаешь стоп у второго, первый снова продолжает работать.

..
С портабельное аналогичное, с ней копии кстати вообще нельзя запускать сразу ругается

PRESIDENT пишет

Сделай несколько разных профилей :(

Ты разные профиля создал ???
Или один и тот же , просто новые окна открываешь.
у разных профилей будут уже свои имакросы, со своими разными папками для скриптов. И в каждом новом профиле ты получается запускаешь, свой имакрос, со своим скриптом, они не должны пересекаться.
А у тебя сейчас два имакроса используют один и тот же скрипт.

Это первое, что я пробывал поменять.. Два аймакроса два разных профиля(так как две разных копии) два разных скрипта. Они работают, но как только на одном срабатывает следующий цикл другой останавливается(

Ты напутал с профилями.:(
Сделай проще, скачай портабельную мазилку, тут в факе есть ссылки на любые версии. Установи туда имакрос и скопируй туда скрипт. Потом закрой эту мазилку (обязательно) и тупо скопируй целиком её папку. И всё можешь запускать уже оригинал и копию.
Только смотри в настрийках имакроса во вкладке патчь, проследи что бы пути к файлам были у каждого свои.
Поставь галочку Store data in profile folder

PRESIDENT, спасибо за советы я обязательно попробую:blush:

Кстати посмотри сейчас у тебя там в разных профилях точно разные пути к папкам с макросами прописаны.
В имакросе кнопка Опции, вкладка Патч. А то может ты думаешь что запускаешь разные скрипты, а на самом деле один и тот же.:)

Устал биться, ну не прописаны стили у нужных мне элементов на

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

странице. Гуру, прошу приведите кусок кода, чтобы с указанной страницы взять название (в тегах h1 которое), телефон, директора и записать в текстовый файл в строку через разделитель (точку с запятой) на диске. Или это непосильно imacros ?

PRESIDENT Может и мне поможешь а то не могу понять что InfSub мне пытался сказать. Надо чтобы вместо ссылки картинку вставляло:

скрытый текст

Выделить код

Код:

VERSION BUILD=8810214 RECORDER=FX
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT_TAG 1
SET !TIMEOUT_STEP 1
SET !TIMEOUT_PAGE 60
' SET !REPLAYSPEED FAST
'URL GOTO=https://twitter.com/
' Инклюдим базу
 SET !ERRORIGNORE YES

' Разделитель
    SET !DATASOURCE_DELIMITER "    "
SET !DATASOURCE twitter.csv
SET !DATASOURCE_COLUMNS 1

SET !LOOP 1
'Увеличения счетчика строк спомощью цикла LOOP'
SET !DATASOURCE_LINE {{!LOOP}}
TAB OPEN
TAB T=2
URL GOTO=https://s-media-cache-ak0.pinimg.com/736x/e9/d3/44/e9d344104d13c0394b4d9ed0efdc67e8.jpg
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=SRC:*e9d344104d13c0394b4d9ed0efdc67e8* EXTRACT=HREF  
SET !VAR1 {{!EXTRACT}} 
TAB CLOSE
TAB T=1

WAIT SECONDS=2


EVENT TYPE=CLICK SELECTOR="#global-new-tweet-button" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" KEYS="[8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8]"
EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS="{{!COL1}}"
'EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS=" https://s-media-cache-ak0.pinimg.com/736x/e9/d3/44/e9d344104d13c0394b4d9ed0efdc67e8.jpg"

TAG POS=1 TYPE=INPUT ATTR=ID:"tweet-box-global" CONTENT={{!CLIPBOARD}}
'EVENT TYPE=CLICK SELECTOR="#global-tweet-dialog-dialog>DIV:nth-of-type(2)>DIV:nth-of-type(4)>FORM>DIV:nth-of-type(2)>DIV:nth-of-type(2)>BUTTON" BUTTON=0

Вовик

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=H1 ATTR=TXT:* extract=txt');    nazvanie=iimGetLastExtract();
iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:Телефон* extract=txt'); tel=iimGetLastExtract();
dat=nazvanie+';'+tel;
iimPlayCode('SET !EXTRACT "'+dat+'"\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt");


dazvidi

скрытый текст
twitter
К сожалению не смогу помочь.
Меня нет в соцсетях.

PRESIDENT пишет

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=H1 ATTR=TXT:* extract=txt');    nazvanie=iimGetLastExtract();
iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:Телефон* extract=txt'); tel=iimGetLastExtract();
dat=nazvanie+';'+tel;
iimPlayCode('SET !EXTRACT "'+dat+'"\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt");

Спасибо! Но попробовал, выдает в строках такие ошибки

скрытый текст

Выделить код

Код:

can not parse macro line: iimPlayCode('TAG POS=1 TYPE=DIV ATTR=TXT:Телефон* extract=txt'); tel=iimGetLastExtract(); (Error code: -910)

Имеются два TXT файла, 1test и 2test не знаю как сделать проверку содержимого двух файлов.
Например скрипт берёт первую строку из 1test в ней написано слово Привет! И потом ищет слово Привет! в 2test

Можно ли выполнить условие в URL GOTO=.... ? и будет ли оно работать..

Выделить код

Код:

URL GOTO=javascript: код ... код

Как правильно записать этот кусок кода ?

Выделить код

Код:

CAPTCHA = iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:CAPTCHA"); if (CAPTCHA > 0) {  errtext = iimPlay("CODE:PAUSE");}

Просмотрел форум но не нашел как при отправке  POST из ответа ruCapcha ОK| ID номер|капча в скрипте выдернут отдельно ID номер и капчу и присвоить им разные переменные?
Нашел только var capth = str.replace('OK|','');, но тут если приходит только ID.
Возможно использовать? То как им присвоить разные переменные:

скрытый текст

Выделить код

Код:

var s=\"{{!EXTRACT}}\"; l=s.lastIndexOf(\"|\");s=s.substr(l+1);
var s='{{!EXTRACT}}',l=s.indexOf('|')+1;s.substr(l,s.lastIndexOf('|')-l);

Gergi

скрытый текст
search или indexOf


Vladimir271

скрытый текст

Выделить код

Код:

var capth ='ОK|ID номер|капча';
s=capth .split('|');  
alert('Первое значение : '+s[0]+'\nВторое значение : '+s[1]+'\nТретье значение  : '+s[2]);


AfeK пишет

будет ли оно работать..
URL GOTO=javascript:

Да будет:)

AfeK пишет

Как правильно

Да вроде правильно.:)

PRESIDENT. А не секрет,куда это вставить search или indexOf? Я до сих пор крутил мутил но что то ничего получилось.

PRESIDENT пишет

Да будет
Да вроде правильно.

скрытый текст

Выделить код

Код:

URL GOTO=javascript:CAPTCHA=iimPlayCode(/"SET<SP>!TIMEOUT<SP>60<BR>TAG<SP>POS=1<SP>TYPE=DIV<SP>ATTR=CLASS:CAPTCHA/");if(CAPTCHA>0){errtext=iimPlay(/"CODE:PAUSE/");}


чет не работает :blush:

AfeK
чистый js а не тот огород из переменных и функций имакроса, который вы туда впихнули

PRESIDENT Еще раз огромное спасибо, спасла портабельная версия, единственное прежде чем запустить сразу две копии пришлось "взломать" поменять в настройках FirefoxPortable.ini false на true
И все заработало!)) Теперь последний вопросик, кто нибудь знает как много можно запустить аккаунтов в вк на одном ip, прежде чем заблочит вконтакте и вообще возможно ли такое?

PRESIDENT пишет

Ты напутал с профилями.:( Store data in profile folder

AfeK пишет

скрытый текст

Выделить код

Код:

URL GOTO=javascript:CAPTCHA=iimPlayCode(/"SET<SP>!TIMEOUT<SP>60<BR>TAG<SP>POS=1<SP>TYPE=DIV<SP>ATTR=CLASS:CAPTCHA/");if(CAPTCHA>0){errtext=iimPlay(/"CODE:PAUSE/");}

smile_24.gif  Это что за ... ты тут нагородил.
Этот код должен прекрасно работать,

Выделить код

Код:

CAPTCHA = iimPlay("CODE:SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:CAPTCHA");
if (CAPTCHA > 0) {  errtext = iimPlay("CODE:PAUSE");}

что за хрень ты ещё впереди прилепил.


Victor56
Так каждый профиль запусти на разном айпи (прокси ВПН ТОР).


Gergi
indexOf , search

У меня есть 2 файла в одном 1000 Proxy во втором 100 биткоин кошельков. Скрипт по очереди берет proxy и кошельки. Например если 5 proxy не сработает то скрипт пропускает и 5 биткоин кошелек. Как сделать чтобы биткоин кошельки не пропускались и после того как скрипт переберет все 100 кошельков он начинал опять с первого.?

Очередной вопрос, сам не догоняю ( каким кодом например с

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

страницы выдернуть фио ректора? Заранее спасибо!

InfSub пишет

AfeK чистый js а не тот огород из переменных и функций имакроса, который вы туда впихнули

Я понимаю что туда чистый код надо, но не хватает знаний, помоги пожалуйста :blush:

PRESIDENT пишет

Это что за ... ты тут нагородил.Этот код должен прекрасно работать

Да он работает, но мне надо что бы такое условие выполнялось в макросе через "URL GOTO=". Не поможешь? :rolleyes:

AfeK
создайте управляющий js-скрипт и не выносите себе и другим мозг, в попытках создать велосипед, который все равно не поедет
не будет у вас в iim-скрипте - работать выбор действия в зависимости от наличия/отсутствия капчи - многократно проверено и продумано до вас

Всем привет! Прошу помощи в разборе ошибок imacros.
Для наглядности сократил свой скрипт до одной строки:

скрытый текст

Выделить код

Код:

iimPlay('CODE:FRAME F=28\nTAG POS=1 TYPE=A ATTR=ID:b');


Эта команда делает клик (tweet) по элементу. Клик срабатывает, но imacros НЕ останавливается, от делает таймаут и выдаёт ошибку 1450:

RuntimeError: unhandled alert dialog detected. Dialog message: "Please actually share your tweet! Thanks and enjoy the 10% bonus attack!", line 2 (Error code: -1450)

Собственно вопрос: зачем imacros производит дополнительные манипуляции и как это пресечь?
Буду признателен за помощь.

vitoff пишет

зачем imacros производит дополнительные манипуляции

iMacros - не производит ни каких манипуляций, кроме как записанных вами, перевести ошибку не пробовали? Рекомендую, очень помогает при решении элементарных проблем, на подобии этой!

vitoff пишет

Dialog message

страница выдала запрос, на который и ругается iMacros, т.к. вы, при выполнении кода, пытаетесь уйти со страницы или произвести иные действия, вызывающие это всплывающее предупреждение:

vitoff пишет

"Please actually share your tweet! Thanks and enjoy the 10% bonus attack!"

RTFM по ONDIALOG и поиск по данной ветви форума по этой же команде

InfSub пишет

перевести ошибку не пробовали?

Я понимаю содержимое ошибки.

InfSub пишет

страница выдала запрос, на который и ругается iMacros

Мне не совсем понятно почему он реагирует ещё на какой-то запрос страницы, если единственной задачей был клик, с которой он уже справился?

InfSub пишет

RTFM по ONDIALOG и поиск по данной ветви форума по этой же команде

Потому и зарегистрировался, что не нашёл ответа в ветке, а с англодокументацией, боюсь, у меня возникнут проблемы.
InfSub, спасибо за отклик, но проблема ещё актуальна.

Если углубиться в её суть, то речь идёт о нескольких шагах:
1. Клик (tweet)
2. Закрыть алерт (ОК)
3. Закрыть вторую вкладку
Об ошибке первого шага я уже рассказал, если выполнить все три, то ошибка возникает на последнем этапе - 802:

скрытый текст

Page loading timeout, URL: http://www.robotcoingame.com/, line 1 (Error code: 802)

Кстати, адрес, о котором идёт речь.


!TIMEOUT_STEP 0 не помогает
Наверное, лучше код всей части приложу:
скрытый текст

Выделить код

Код:

for(var i=10; i<=90; i++){
    iimPlay('CODE:SET !TIMEOUT_STEP 0\nSET !EXTRACT NULL\nFRAME F='+i+'\nTAG POS=1 TYPE=TITLE ATTR=TXT:Tweet<SP>Button EXTRACT=TXT\n');
    if(iimGetExtract() == 'Tweet Button'){
        iimPlay(WAIT SECONDS=2);
        iimPlay('CODE:FRAME F='+i+'\nTAG POS=1 TYPE=SPAN ATTR=ID:l\n');
        iimPlay(WAIT SECONDS=2);
        iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\n');
        iimPlay(WAIT SECONDS=2);
        iimPlay('CODE:TAB T=2\n');
        iimPlay(WAIT SECONDS=2);
        iimPlay('CODE:TAB CLOSE\n');
        break;        
    }
}

vitoff пишет

Мне не совсем понятно почему он реагирует ещё на какой-то запрос страницы, если единственной задачей был клик, с которой он уже справился?

потому что при выполненном вами действии - сайт требует подтверждения, более подробно, почему именно так реализована реакция на алерты в имакросе, можете задать вопрос разработчикам на офф. форуме или просто примите к сведению

vitoff пишет

!TIMEOUT_STEP 0 не помогает

а какое отношение, эта команда, имеет к заданному вами вопросу?

vitoff пишет
InfSub пишет

RTFM по ONDIALOG и поиск по данной ветви форума по этой же команде

Потому и зарегистрировался, что не нашёл ответа в ветке, а с англодокументацией, боюсь, у меня возникнут проблемы.
InfSub, спасибо за отклик, но проблема ещё актуальна.

может быть, вы, все же прочтете офф. вики и посмотрите пример, приведенный там же? Для того, например, чтобы понимать где и каким образом должна располагаться данная команда (ONDIALOG)?

vitoff

скрытый текст

vitoff пишет

iimPlay(WAIT SECONDS=2);

В этих командах ошибка
iimPlay(

'CODE:

WAIT SECONDS=2

'

);

И твоя проблема решается так
iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nFRAME F='+i+'\nTAG POS=1 TYPE=SPAN ATTR=ID:l');

InfSub пишет
vitoff пишет

!TIMEOUT_STEP 0 не помогает

а какое отношение, эта команда, имеет к заданному вами вопросу?

Просто на последнем этапе, несмотря на то, что вторая вкладка закрыта (выполнен шаг 3), идёт таймаут (по умолчанию 60сек.), а мне нужно, что бы скрипт продолжил выполнение (в примере только часть скрипта).

InfSub пишет

может быть, вы, все же прочтете офф. вики и посмотрите пример, приведенный там же? Для того, например, чтобы понимать где и каким образом должна располагаться данная команда (ONDIALOG)?

Попробую разобраться, спасибо.

скрытый текст

PRESIDENT пишет
vitoff пишет

iimPlay(WAIT SECONDS=2);

В этих командах ошибка
iimPlay(

'CODE:

WAIT SECONDS=2

'

);


Прошу прощения, просто для форума я немного изменил команды, дабы не вводить в заблуждение посетителей. На самом деле там такие строки iimPlay(pauseShort); и сама пауза вынесена в переменную.
скрытый текст

PRESIDENT пишет

И твоя проблема решается так
iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nFRAME F='+i+'\nTAG POS=1 TYPE=SPAN ATTR=ID:l');


Но вы поменяли местами клик по элементу (Tweet) и клик по алерту (ОК) и это не работает.

Тем не менее кое как я заставил скрипт работать - просто убрал паузы между шагами. Работает каряво, но работает. В процессе видно как imacros пропускает какие-то ошибки. Просто я пока не понимаю, почему они возникают.

vitoff пишет

Но вы поменяли местами клик по элементу (Tweet) и клик по алерту (ОК) и это не работает.

если бы вы посмотрели пример, увидели бы, что только так - оно и работает, если не работает у вас - ищите ошибку

InfSub пишет
vitoff пишет

Но вы поменяли местами клик по элементу (Tweet) и клик по алерту (ОК) и это не работает.

если бы вы посмотрели пример, увидели бы, что только так - оно и работает, если не работает у вас - ищите ошибку

Действительно работает, но только как самостоятельная команда. А мне ещё нужно вторую вкладку закрыть. Если добавляю

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAB T=2\nTAB CLOSE\n');


, то перед этой командой снова возникает таймаут в 60 секунд.

vitoff

скрытый текст

Выделить код

Код:

iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nFRAME F='+i+'\nTAG POS=1 TYPE=SPAN ATTR=ID:l');
...
iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAB CLOSE');

PRESIDENT пишет

vitoff

скрытый текст

Выделить код

Код:

iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nFRAME F='+i+'\nTAG POS=1 TYPE=SPAN ATTR=ID:l');
...
iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAB CLOSE');

Не хочет этот код закрывать вторую вкладку. Пожалуй стоит объяснить механику действий, она там странная.

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

С твитом дела обстоят иначе. Здесь почему-то не нужно подтверждать публикацию на стене, то есть сам клик уже присылает ответ серверу, что публикация размещена. Получается следующая картина - после клика, открывается вторая вкладка, где нужно подтвердить размещение на стене, но поскольку уже пришёл положительный ответ сервера, то пользователь задерживается на второй вкладке всего на долю секунды и его тут же перебрасывает обратно на первую вкладку (исходный сайт), где уже висит алерт ОК. В конечном итоге у нас открыто две вкладки и мы находимся на первой, где висит алерт.

Ваш код, PRESIDENT, выполняет клик, далее всё равно запускается таймаут 60сек, после которого закрывается текущая (первая) вкладка. В итоге открытой остаётся вторая вкладка - страница подтверждения публикации в твитере. В общем не то, но всё равно спасибо, я понимаю в каком направлении мыслить.

vitoff
читаем фак по имакросу на форуме, там есть описание, как имакрос работает с вкладками, в том числе из js

vitoff пишет

после которого закрывается текущая (первая) вкладка. В итоге открытой остаётся вторая вкладка - страница подтверждения публикации в твитере. В общем не то

скрытый текст
А ну тогда тебе наоборот нужно закрыть все вкладки, кроме текущей.

Выделить код

Код:

iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAB CLOSEALLOTHERS');

Доброго времени суток!Помогите пожалуйста новичку в начинаниях.Как данную команду iim заставить работать в js:?

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var x=\"{{!EXTRACT}}\"; x=x.replace(/\\D/g,\"\");")

borisenko1

js

Выделить код

Код:

var x=iimGetExtract().replace(/\D/g,'');

Извиняюсь,но я неправильно написал код,вернее не весь.Вот это нужно перевести в js.Заранее благодарен!

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
SET !VAR1 EVAL("var x=\"{{!EXTRACT}}\"; x=x.replace(/\\D/g,\"\");")
URL GOTO=http://antigate.com/res.php?action=get&id={{!VAR1}}

borisenko1

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'); var x=iimGetExtract().replace(/\D/g,'');
iimPlayCode('URL GOTO=antigate.com/res.php?action=get&id='+x);

Доброго времени суток!!! И снова я к вам с проблемой:

скрытый текст
Как в js, после загрузки http://videochart.net/video/6j397.39222 … 914f03e092 страницы воспроизвести видео?

Заранее благодарен.

удалено, правила, п. 2.6

InfSub

Вовик

js

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=TD ATTR=TXT:*Ректор* EXTRACT=TXT');
var r=iimGetLastExtract().match(/ректор:(?:[\s][а-я]+){2,3}/i).pop().split(': ').pop();
alert(r);

PRESIDENT пишет
vitoff пишет

после которого закрывается текущая (первая) вкладка. В итоге открытой остаётся вторая вкладка - страница подтверждения публикации в твитере. В общем не то

скрытый текст
А ну тогда тебе наоборот нужно закрыть все вкладки, кроме текущей.

Выделить код

Код:

iimPlay('CODE:ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAB CLOSEALLOTHERS');

Предложенный вами код работает так же, как и мой - через раз. Первый раз всё проходит нормально, а второй раз, после клика, запускается таймаут 60 сек и вкладка закрывается после него.
Код ошибки между шагами - 802. Возможно, эта ошибка возникает из-за того, что imacros не успевает загрузить страницу, которая открывается во второй вкладке, так как его тут же перебрасывает на первую. Я не знаю, есть ли такие команды, которые заставят/запретят imacros ждать окончания загрузки страницы, может они помогут?

vitoff пишет

есть ли такие команды, которые заставят/запретят imacros ждать окончания загрузки страницы, может они помогут?

SET !TIMEOUT_PAGE x - время ожидания загрузки страницы (знач по умолчанию 60)
SET !TIMEOUT_STEP x - время ожидания загрузки элемента на странице (знач по умолчанию 10)
SET !ERRORIGNORE YES - игнор ошибок (например, игнорирование ошибки о том что страница не загрузилась, при использовании timeout)

InfSub пишет

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


Подскажите пожалуйста как сделать проверку условий в переменной K надо что бы не переходил дальше по коду пока не найдёт истину.
Если я делаю так k<=99 то работает но тогда гоняет общий цикл скрипта 99 раз,а общий цикл должен быть один раз.

Подскажите пожалуйста,как в js добавить в EXTRACT URL страницы?В iim работает стабильно,а вот в js не хочет.Пробую так:

скрытый текст

Выделить код

Код:

iimPlayCode('ADD !EXTRACT {{!URLCURRENT}}');

Gergi пишет

Подскажите пожалуйста как сделать проверку условий в переменной 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

stars1981 пишет

Доброго времени суток!!! И снова я к вам с проблемой:скрытый текстКак в js, после загрузки http://videochart.net/video/6j397.39222 … 914f03e092 страницы воспроизвести видео?Заранее благодарен.

Возможно такое? Если да, то как?

Gergi

скрытый текст
for(k=1;k<=99;k++){
if(ищет истину ) break; //<---если истина то выход из цикла

}
...


borisenko1 пишет

а вот в js не хочет

скрытый текст
всё прекрасно работает

Выделить код

Код:

iimPlayCode('SET !EXTRACTADD {{!URLCURRENT}}');
url=iimGetLastExtract();
alert(url);

запуск скрипта на 3.6
Приветствую!  Искал я, как запустить ява-скрипт (или просто iim) в браузере  версии 3.6 портабельной, через планировщик задач.
Вот если указую в настройках браузера запуск с домашней страницы и страницу указую примерно такого вида imacros://run/?m=#Current.iim, то в браузерах полее поздних, версий 25 и выше всё срабатывает как только запускается браузер. А вот в браузерах версий 3.6 никакого запуска скрипта не происходит.

Хотя, если я этот же адрес imacros://run/?m=#Current.iim вставляю в адресную строку и перехожу по нему, то скрипт начинает запускаться и работать (на мозиле 3.6).
Подскажите  как запускать скрипты в браузерах версий 3.6 при запуске самого браузера, то есть через планировщик задач?
Просто мне надо , чтоб в определенное время запускался браузер и в нём сразу же запускался скипт.
А то получается, что на более поздних версиях браузера так работает запуск скрипта, а на 3.6 нет. Чебез батник пробовал, тоже не запускается скрипт. Что ещё можно сделать? Как запускать скрипт в нужное время вместе с браузером (портабле) 3.6?

dvitkovs

скрытый текст

Выделить код

Код:

http://fmacros.ru/launcher.html?m=твой скрипт.js

Запуск из батника

Выделить код

Код:

@echo off                  
 start "СТАРТ МАЗИЛКИ" "D:\Firefox-1.exe" http://fmacros.ru/launcher.html?m=скрипт.js

PRESIDENT пишет

dvitkovs

скрытый текст

Выделить код

Код:

http://fmacros.ru/launcher.html?m=твой скрипт.js

Запуск из батника

Выделить код

Код:

@echo off                  
 start "СТАРТ МАЗИЛКИ" "D:\Firefox-1.exe" http://fmacros.ru/launcher.html?m=скрипт.js

Благодарю! Так всё работает как надо. :)

InfSub пишет
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}}
следующая команда...


Это работает, но рандом здесь не получается. Проблема в том, что при обновлении страницы, запускается TIMEOUT_PAGE, а он прерывает работу WAIT SECONDS и, по истечении таймаута, выполняется следующая команда. Таким образом, следующая команда всегда выполняется ровно через 10сек после обновления страницы.

На решение этой проблемы, напрашиваются два варианта:
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
При чём тут это время загрузки страницы TIMEOUT_PAGE, если тебе просто рандомная пауза нужна.smile_15.gif
И пиши уже на JS, хватит этого извращения на iim

s=Math.floor(Math.random()*100);
iimPlayCode('WAIT SECONDS='+s);

PRESIDENT пишет

И пиши уже на 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';


Просто для форума привёл в более наглядный вид.

PRESIDENT пишет

При чём тут это время загрузки страницы TIMEOUT_PAGE

Если убрать TIMEOUT_PAGE, то при обновлении страницы он всё равно будет инициирован со значением по умолчанию (60сек), в результате чего, рандомная пауза будет проигнорирована и следующая команда начнёт выполнение не через 10 сек (как у меня), а через 60, что ещё хуже.

Объясню подробнее. На сайте (биткоин кран), после получения бонуса, идёт отсчёт 300сек, после чего страница автоматически обновляется и можно получить следующий бонус. И, как не крути, во время обновления страницы стартует TIMEOUT_PAGE - либо который задаю я, либо который по умолчанию. Несмотря на то, что я задаю в скрипте паузу, скажем в 500сек, после выполнения TIMEOUT_PAGE, команда WAIT SECONDS перестаёт выполнятся и из моих 500сек отсчитываются только 300...

vitoff
Ещё раз, для особо одаренных.
При чём TIMEOUT_PAGE к паузе.  smile_29.gif
Я тебе дал готовый код, что ты ещё выдумываешь.  smile_15.gif

И ты сам проанализируй свой код, что за бредятина.
EVAL используется для запуска JS кода в iim
Ты уже в JS-е на кой эти извращения с эвалом.

PRESIDENT пишет

При чём TIMEOUT_PAGE к паузе.

При том, что он прерывает паузу.

PRESIDENT пишет

Я тебе дал готовый код, что ты ещё выдумываешь.

И где там диапозон от 310 до 320сек?

PRESIDENT пишет

EVAL используется для запуска JS кода в iim

Так организован мой скрипт и это не преступление. Я предпочитаю макросы хранить в отдельных переменных и в технической части работать исключительно с переменными. Так проще разобраться в скрипте и адаптировать него для других нужд.
Отвечая на бредятину, если рандомное число будет генерироваться вне цикла (который работает только с переменными), это число сгенерируется только один раз и не будет переопределяться в дальнейшем, следовательно генерировать его нужно в самом макросе...

скрытый текст

Выделить код

Код:

s=Math.floor(Math.random()*100);
while(true){
   iimPlayCode('WAIT SECONDS='+s);
}


Что попадёт в s при втором проходе. Дошло?

Как в imacros извлечь ВСЕ ссылки со страницы, если у них одинаковое начало? При этом неизвестно, сколько их.
Или можно ли в imacros вызвать link gopher?

04-03-2016 01:45:15
Как запустить цикл, чтоб выполнялся до тех пор, пока находит нужный тег?

vitoff пишет

И где там диапозон от 310 до 320сек?

скрытый текст
Ну так сделай, код тебе для примера дан был.
От 310 до 320 всего 10 разница, так и делай рандом на 10 плюс твои 310 сек.

Выделить код

Код:

s=(Math.random()*10)+310; //<---Рандом до 10 + 310
iimPlayCode('WAIT SECONDS='+s);

vitoff пишет

Что попадёт в s при втором проходе

скрытый текст

Выделить код

Код:

s=Math.floor(Math.random()*100);
while(true){
   iimPlayCode('WAIT SECONDS='+s);
}

На кой здесь вайл ????

Сделай эту паузу вообще одной строкой, я на несколько разнёс для наглядности, что такое рандом и что такое пауза.

скрытый текст

Выделить код

Код:

iimPlayCode('WAIT SECONDS='+(Math.random()*10)+310);


04-03-2016 02:06:55
myscience
скрытый текст
А тебе как раз вайл нужен

Выделить код

Код:

while(есть нужный тег){
  тут исполняемый код
}

Подскажите пожалуйста,что конкретно означает данный код?

скрытый текст

Выделить код

Код:

for(i=0; i<999; i++){
//Скрипт//
 }

borisenko1

скрытый текст
Это цикл
Повторить //Скрипт// 999 раз, от 0 до 999

vitoff пишет

Что попадёт в s при втором проходе.

поместив генерацию рандомного числа в цикл, вы так ж получите каждый раз рандомное число, без eval()

PRESIDENT пишет

А тебе как раз вайл нужен

Можно на примере? Есть страница с повторяющейся группой элементов. Через 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


Как получить тот же результат, но через while (до тех пор, пока на странице находит ссылку в виде TYPE=A ATTR=CLASS:"OBJECT-LINK FPM"){
  выполнить все действия выше
}
Это все в iim? Если нет, но укажите, как связать его с js. Сложно с синтаксисом.

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

К сожалению, поиск мне совершенно не помог разобраться.:(  Будьте добры, объясните, куда это вставить. Или же если это совсем долго, дайте ссылку на конкретную инструкцию.

unknown command: VAR, line 6 (Error code: -910)

Спасибо за понимание. Все мы когда-то только начинали.

UPD: Вставил все в js, но почему-то сначала переходит по ссылке, а надо ее только извлечь а не идти. Что-то нужно прописать в начале?

myscience пишет

куда это вставить

в файл js

myscience пишет

unknown command: VAR

уберите перенос строки, у вас значение переменной m должно быть записано в 1 строку

04-03-2016 11:08:06
если это только часть скрипта, приведите весь код, как я понимаю, вы пытаетесь совместить iim и js

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

myscience пишет

UPD: Вставил все в js, но почему-то сначала переходит по ссылке, а надо ее только извлечь а не идти. Что-то нужно прописать в начале?

отвечайте в новом посте, а не редактитуйте старый, если вам уже ответили

скрытый текст

Выделить код

Код:

for(i=1;iimPlayCode('TAG POS='+i+' TYPE=A ATTR=CLASS:"OBJECT-LINK FPM" EXTRACT=HREF'),iimGetLastExtract()!='#EANF#';i++){

04-03-2016 11:49:23
overta777
например, поиграться с настройками режимов записи (Record options)

PRESIDENT пишет

borisenko1

скрытый текст
Это цикл
Повторить //Скрипт// 999 раз, от 0 до 999

Спасибо Вам большое,постоянно выручаете)

InfSub пишет
vitoff пишет

Что попадёт в s при втором проходе.

поместив генерацию рандомного числа в цикл, вы так ж получите каждый раз рандомное число, без eval()

Это мне известно. Просто не хочу макросы лепить в цикл, а рандомное число - это часть макроса. С паузой я разберусь, спасибо за варианты. Это сейчас не главная часть самолёта.

Проблема же была и остаётся в другом - прерывание паузы после перезагрузки страницы. Допустим у меня есть код:

Выделить код

Код:

iimPlayCode('WAIT SECONDS=500');
iimPlayCode('сейчас здесь такое произойдёт');

А страница обновляется через 300 сек, таким образом, вторая команда начнёт выполнение не через 500 сек, а раньше. Насколько раньше это произойдёт, зависит от TIMEOUT_PAGE (по умолчанию 300 + 60).

iimPlayCode('WAIT SECONDS=500');
iimPlayCode('WAIT SECONDS=360');
iimPlayCode('сейчас здесь такое произойдёт');

InfSub пишет

если это только часть скрипта, приведите весь код, как я понимаю, вы пытаетесь совместить iim и js

Да, мне нужно в макросе задать урл, извлечь заголовок страницы, а затем извлечь еще некоторые данные, которые по структуре своей повторяются, грубо говоря, как в строки в таблице. Для каждого OBJECT-LINK FPM есть набор ниже извлекаемых данных. Для этого я успешно применял LOOP, и все было понятно, но мне нужно автоматизировать еще дальше. А с js не работал и понятную инструкцию с примерами не смог найти.
Мне нужно в первую очередь задать цикл иначе, потому как я не знаю, сколько необходимых элементов содержится на странице. Нужно, чтобы цикл шел до тех пор, пока на странице уже не находится очередной OBJECT-LINK FPM. А конечная цель - прописать в одном макросе десяток страниц с идентичной их обработкой и выводом экстракта в один файл.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Но у меня с jshttps://forum.mozilla-russia.org/viewto … 22#p709222 не получилось выполнить извлечение даже оставаясь на одной странице. Js почему-то после запуска вместо того, чтобы извлекать HREF, перешел по ней, не пойму почему.

Выделить код

Код:

SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://www.1
SET !EXTRACT_TEST_POPUP NO

Извлечь урл и заголовок

SET !VAR1 {{!EXTRACT}}
ADD !EXTRACT {{!URLCURRENT}}
TAG POS=1 TYPE=H1 ATTR=TXT:* extract=txt
TAG POS=1 TYPE=DIV ATTR=class:path-panel* extract=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv

затем с этой страницы никуда не переходя извлечь

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

После этого перейти на другую страницу и извлечь аналогично все с нее
URL GOTO=http://www.2

повторяем SET !VAR1 {{!EXTRACT}}
ADD !EXTRACT {{!URLCURRENT}}
TAG POS=1 TYPE=H1 ATTR=TXT:* extract=txt
TAG POS=1 TYPE=DIV ATTR=class:path-panel* extract=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv

 и извлекаем
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

затем URL GOTO=http://www.3 и т.д.

myscience
А для чего LOOP в твоём  скрипте, ведь тебе всегда нужно данные из POS=1 извлекать.

04-03-2016 17:28:02
vitoff
Сделай проверку на какую нить надпись, там таймер например или слово/фраза.
Например через каждые 10 сек проверяй наличие/отсутствие таймера или надписи капча или ещё чего нить, к чему привязаться можно.

PRESIDENT пишет

А для чего LOOP в твоём  скрипте, ведь тебе всегда нужно данные из POS=1 извлекать.

Нет, элементов "OBJECT-LINK FPM" на странице около сотни. И для каждого есть соответствующие данные. поэтому LOOP упоминается несколько раз.

Остался один вопрос, как в одном макросе несколько раз запустить нужный js. Проверил на одной странице - работает.
Нужно посетить страницу, извлечь ее заголовок и урл. (это понятно). затем выполнить js. Посетить следующую и т.д.
Как вызвать js я нашел,  НО макрос после его выполнения вылетает и на следующую страницу уже не переходит.
Помогите прописать выполнение JS'a, НО НЕ ВСЕГО МАКРОСА до тех пор, пока на странице удается найти OBJECT-LINK FPM
Прошу прощения, что задачу пришлось немного переформулировать из-за моей недостаточной компетентности.
Вот код, который осталось чуть-чуть допилить

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://www.1
SET !EXTRACT_TEST_POPUP NO

Извлечь урл и заголовок

Выделить код

Код:

SET !VAR1 {{!EXTRACT}}
ADD !EXTRACT {{!URLCURRENT}}
TAG POS=1 TYPE=H1 ATTR=TXT:* extract=txt
TAG POS=1 TYPE=DIV ATTR=class:path-panel* extract=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv

затем с этой страницы никуда не переходя извлечь js'ом
URL GOTO=imacros://run/?m=1.js

Выделить код

Код:

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" EXTRACT=HREF'),iimGetLastExtract()!='#EANF#';i++){
    iimSet('MYVAR',i);
    iimPlayCode(m);
};

После этого перейти на другую страницу и извлечь аналогично все с нее
URL GOTO=http://www.2

снова

Выделить код

Код:

SET !VAR1 {{!EXTRACT}}
ADD !EXTRACT {{!URLCURRENT}}
TAG POS=1 TYPE=H1 ATTR=TXT:* extract=txt
TAG POS=1 TYPE=DIV ATTR=class:path-panel* extract=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv

и снова извлекаем затем с этой страницы никуда не переходя js'ом
URL GOTO=imacros://run/?m=1.js

Выделить код

Код:

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" EXTRACT=HREF'),iimGetLastExtract()!='#EANF#';i++){
    iimSet('MYVAR',i);
    iimPlayCode(m);
};

затем URL GOTO=http://www.3 и т.д.

Всем привет:rock: Подскажите пожалуйста как побороть данную проблему

скрытый текст

Выделить код

Код:

var x;
for (x=1;x<=p;x++){  
iimPlay('........');
s=iimGetLastExtract().split('\n').length;
var a=0;
var i,t1=1,t2=1,t3=1;
for(i=0; i<s; t1++,i++){      
if(t2>w)t2=1;
if(t3>f)t3=1;
iimPlayCode('.....')
if(!r) t1=1;
iimPlayCode('.....');
if(e>0){
for(t=1;t<=99;t++){    
iimPlayCode('.....');
if(y<0){
iimPlayCode('.....');
if(f<0){
}
f=iimPlayCode('......');
if(f>0){
for(u=1;u<=99;u++){
iimPlayCode('......');
if((v!=='Готово1')) break;
}
for(o=1;o<=99;o++){
iimPlayCode('.......');
l=iimGetExtract();
if((l!=='Готово2')) break;
}
iimPlayCode('....');
}
for(g=1;g<=99;g++){
iimPlayCode('...');
if((h!=='Готово3')) break;
}
iimPlayCode('....');
}
t3++,t2++;}
a++;
if(a>2){
iimPlayCode('....');
a=0;
    }
   }
  }
 }


После прокрутки одно цикла,меня возвращает в переменную t а надо что бы возвращало в переменную i

Всем привет!
Подскажите как сделать чтобы js при нахождении значения <div id="lists175333140" class="lists clear_fix"></div> выполнял задачу
а при <div id="lists331731298" class="lists clear_fix"><span class="group1 fl_l" onmousedown="Friends.toList(1);">Предложение</span></div> проходил дальше.
Эти действия нужно выполнять вконтакте.
Заранее спасибо!!!

Всем привет, на ok.ru если вставлять сообщение из буфера сохраняется его оригинальный стиль (цвет, шрифт и т.п), при работе iMacros  с буфером это стиль не сохраняется, можно как то обойти это?

Artvirus

скрытый текст

if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=span ATTR=class="group1 fl_l"')<0){
...
Выполнить задачy
...
} else {
Тут то что ты имеешь ввиду под "проходил дальше"
}

Здравствуйте! Подскажите, как грамотно записать код, чтоб в файл сохранялось только почта, а лишнее удалялось

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*@gmail.com EXTRACT=TXT'); iimGetLastExtract().replace('PostAsare Hasert','');
   iimPlay('CODE:SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');}


Просто когда у меня сохраняется в текстовый документ почта, то она имеет такой вид
скрытый текст
"PostAsare Hasertuwuv46eko@gmail.com"
"PostAsare Haserthwsua3b6d@gmail.com"
"PostAsare Hasertfode7aa1y5@gmail.com"

Там надо убрать это: PostAsare Hasert

dvitkovs пишет

Там надо убрать это: PostAsare Hasert

А нельзя потом просто заменить ненужный текст на пустое поле в текстовом редакторе?

myscience пишет

А нельзя потом просто заменить ненужный текст на пустое поле в текстовом редакторе?

Пожалуй ты прав. Так и поступлю. Благодарю за подсказку!  :)

А подскажите как сделать, чтоб сохраняась почта независимо от того, какие слова или символы стоят впереди, перед почтой?
То есть, в документ сохраняется текст типа "PostAsare Hasertuwuv46eko@gmail.com", а нам надо, что сохранялись тлько 9 символов перед @gmail.com и @gmail.com тоже. То есть чтоб почта имела вид: uwuv46eko@gmail.com, независимо от того, что там ещё написано впереди.

Можно еще в эксель вставить, данные-текст по столбцам-фиксированной ширины-мышкой указать, где бить на столбцы. Для одинаково устроенных строк должно сработать.

myscience
та хватит уже экселей. Мне надо именно через команду iimGetLastExtract().replace('PostAsare Hasert',''); Или подобную.
потому что при работе  imacros- яваскрипта данная почта берётся из одного места на одном сайте, потом копируется и тут же вставляется в другом месте в нужное поле на другом сайте.

dvitkovs пишет

myscience
та хватит уже экселей. Мне надо именно через команду iimGetLastExtract().replace('PostAsare Hasert',''); Или подобную.
потому что при работе  imacros- яваскрипта данная почта берётся из одного места на одном сайте, потом копируется и тут же вставляется в другом месте в нужное поле на другом сайте.

iimGetLastExtract().split('PostAsare Hasert')[1]

Hamzat
благодарю!
а как дальше?
что тут подправить, чтоб ещё и в файл txt сохранялось? Или ничего не надо, оно и так будет сохраняться как надо?

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*@gmail.com EXTRACT=TXT'); iimGetLastExtract().split('PostAsare Hasert')[1]','');
   iimPlay('CODE:SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');

dvitkovs
Что ты там в конце ещё прилепил ?
Вот это зачем,
iimGetLastExtract().split('PostAsare Hasert')[1]

','');

тебе дали команду её и используй.

PRESIDENT пишет

dvitkovs
Что ты там в конце ещё прилепил ?
Вот это зачем,
iimGetLastExtract().split('PostAsare Hasert')[1]

','');

тебе дали команду её и используй.

ну с этой командой как бы понятно. Она будет удалять только фразу PostAsare Hasert
Но прикол в том, что там не всегда именно эта фраза бывает.  Там почти всегда разные могут быть. Поэтому я тут и интересовался: как бы сделать так, чтоб только 9 знаков перед собакой (@) сохранялись, а прочее удалялось бы? Потому что у меня почта из 9 символов. То есть примерно вот такого вида: wefditkgt@gmail.com
Все что за 9 символов перед @ - надо чтоб удалялось, не зависимо от того, что там. А там может быть не только  PostAsare Hasert, а и другие слова.
Ну если это довольно проблематично реализовать, то не утруждайтесь. Я буду пробовать и другие варианты. Может придумаю обходной путь какой-нибудь.

dvitkovs

скрытый текст

Выделить код

Код:

txt="PostAsare Hasert_my_email@gmail.com"
a=txt.split('@')[0];
alert(a.substring(a.length-9)+'@gmail.com'); 

txt="Какая то хрень впереди но нам пофиг на неё_my_email@gmail.com"
a=txt.split('@')[0];
alert(a.substring(a.length-9)+'@gmail.com');

PRESIDENT
Благодарю! :)

Подскажите пожалуйста, как правильно запустить имакрос файл из js файла? который подключен в Html файл..

Подскажите, пожалуйста, как iMacros заставить дописывать данные в новую строку существующего csv файла, а не переписывать файл по новой?
Вот мне нужно каждый день, допустим, запускать макрос и брать определённые данные с сайта, которые потом записывать в новую строку.

nikki67 пишет

дописывать данные в новую строку существующего файла

Так он и так только дописывает, имакрос не может стирать данные из файла, только удалять.

nikki67
если в вашем скрипте (скорее всего в самом начале), присутствует команда:

скрытый текст

Выделить код

Код:

FILEDELETE NAME=file_name

или

Выделить код

Код:

FILEDELETE NAME=c:\output\mydata.csv


файл - будет удаляться, если нет, только дописываться
каждая команда SAVEAS .... дописывает текст в новую строку

10-03-2016 16:37:35

kani339 пишет

как правильно запустить имакрос файл из js файла? который подключен в Html файл..

Если не ошибаюсь, iMacros в Web'e работает только в полной (платной) версии iMacros Browser, котороая не поддерживает js, но работает с др. языками программирования, например, с тем же, php

dvitkovs пишет

буду пробовать и другие варианты. Может придумаю обходной путь какой-нибудь.

Нашёл другой вариант. И теперь почта сохраняется как надо, но без того что за собакой @, то есть вот так: "wer345t54"
Это не проблема, если к этому приписывать @gmail.com. Подскажите как в этом коде

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');


записать код, чтоб это значение @gmail.com всегда добавлялось к почте и получалось целиком, то есть вот так: wer345t54@gmail.com

dvitkovs

iim
9-значный емейл, без всяких извращений, предложенных выше

Выделить код

Код:

SET !EXTRACT EVAL("\'{{!EXTRACT}}\'.match(/\\w{9}@.*/)")

в вашем случае

Выделить код

Код:

iimPlay('CODE:CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*@gmail.com EXTRACT=TXT\nSET !EXTRACT EVAL("\'{{!EXTRACT}}\'.match(/\\w{9}@.*/)")\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');


js

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*@gmail.com EXTRACT=TXT');
var r=iimGetLastExtract().match(/\w{9}@.*/);
iimPlay('CODE:SET !EXTRACT '+r+'\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');


10-03-2016 17:31:37
если же просто нужно добавить @gmail.com, то:
iim (исправлена опечатка)

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT
SET !EXTRACT {{!EXTRACT}}@gmail.com
SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv

InfSub
Благодарю! Мне надо именно просто добавить @gmail.com в js
получилось вот как:

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSET {{!EXTRACT}} {{!EXTRACT}}@gmail.com\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');

Добрый день, подскажите пожалуйста, на сайте

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


все поля - заполняются программой imacros, кроме поля текст объявления.  как можно написать код что бы это поле тоже заполнялось?

rom-shironosov

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#div_textadv>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV" CHARS="string 1 - any text\nstring 2"

InfSub пишет

если же просто нужно добавить @gmail.com, то:

iim

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT
SET {{!EXTRACT}} {{!EXTRACT}}@gmail.com
SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv


А подскжите как это будет не в iim, а в js?  а то получается, что не работает то, как я это сам написал,
не подставляется и не сохраняется там @gmail.com
скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSET {{!EXTRACT}} {{!EXTRACT}}@gmail.com\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=POST.csv');

dvitkovs пишет

не сохраняется

... FOLDER=

C:\\

...

PRESIDENT пишет
dvitkovs пишет

не сохраняется

... FOLDER=

C:\\

...

всё равно не сохраняется и не подставляется @gmail.com хоть с одним обратным слешем, хоть с двумя.
Сохраняется только то, что до собаки @, то есть имя почты: ertwret45tr
а эта часть -  @gmail.com, как не подставлялась,  так и не сохраняется и не приписывается. И почта так и не имеет полного вида, типа ertwret45tr@gmail.com
а выглядит в текстовом документе, куда сохраняется вот так: ertwret45tr

А чем тебя этот код не устроил

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS=1 TYPE=DIV ATTR=TXT:*@gmail.com EXTRACT=TXT');
var r=iimGetLastExtract().match(/\w{9}@.*/);
iimPlay('CODE:SET !EXTRACT '+r+'\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');


или тот что я тебе на предыдущей странице давал.:|


И не лепи все команды в одну строку !!!
Дас ист ни есть гуд.

PRESIDENT пишет

А чем тебя этот код не устроил

я ж написал, что пошёл маленько другим путём. Теперь не надо делать так, чтоб сохранялись только 9 символов от собаки. Теперь название сохраняется (имя почты) как положено. Но только надо к нему присовокуплять домен почты, то есть это: @gmail.com
Вот и всего делов-то. Только как это реализовать? Модератор вылажил мне код, но он в iim, а мне надо было в js.
Я попробовал сам переписать этот iim в js но только ничего не вышло, как не присовокуплялся домен почты gmail.com так почемуто и не присовокупляется. А само имя почты сохраняется в файл как надо.

dvitkovs пишет

Модератор вылажил мне код, но он в iim, а мне надо было в js.

в js вы перевели верно, в самом коде, у меня - опечатка
должно быть:

скрытый текст

Выделить код

Код:

SET !EXTRACT {{!EXTRACT}}@gmail.com

Подскажите как ситуацию решить... Иногда случается так, что в выдаче вообще нет цифр (а нужны только они, как ясно из кода) и тогда скрипт останавливается с ошибкой:

TypeError: txt.match(...) is null, line 75 (Error code: -991)

75 строка - это последняя в коде тут.
Как лучше этот момент обыграть?

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=span ATTR=class:capted extract=txt'); 
txt=iimGetExtract();
txt=txt.match(/\d+/g).join();

luckyone

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=span ATTR=class:capted extract=txt'); 
txt=iimGetExtract().match(/\d+/g);
if(txt!=null){
    txt=txt.join();
}

InfSub
Так работает дас ист гут.
Благодарю! :)

Подскажите почему макрос не переключается между табами тот код который указан в цикле?

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=http://www.twitter.com\nTAG POS=1 TYPE=SPAN ATTR=CLASS:"button-big-flat-green"\nTAB OPEN\nTAB T=2\nURL GOTO=https://www.youtube.com/channel/UCd9auDxSkcyR12AtgLFcEWA/videos');

for(var i = 1; i <= 5; i++) {
    iimPlayCode('TAG POS='+i+' TYPE=SPAN ATTR=CLASS:"yt-thumb-default"\nWAIT SECONDS=15\nSET !VAR1 {{!URLCURRENT}}\nTAB T=1\nSET !VAR2 "<BR>"\nEVENTS TYPE=KEYPRESS SELECTOR="#rwait>CENTER>SPAN>FORM>TEXTAREA" CHARS={{!VAR1}}{{!VAR2}}\nTAB T=2\n');
}

А подскажите как записывать (соединять) два условия в одно. Имеем такого вида два условия:

скрытый текст

Выделить код

Код:

f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:member*'); if(f>0){
   iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:create EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=file.txt');}
 f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Неверные<SP>символы'); if(f>0){continue;}


надо записать так, чтоб эти условия не по очереди исполнялись, а как бы одновременно. То есть, если любое из этих условий имеет место быть (а одно из них обязательно имеется), то не ждём выполнения второго условия, а выполняем команду continue.

dvitkovs

скрытый текст
if(условие 1 && условие 2) <--- условие 1 и условие 2
if(условие 1 || условие 2) <--- условие 1 или условие 2

Всем привет, можно ли в мой макрос добавить команду, которая будет копировать текст из буфера обмена?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV:nth-of-type(4)>DIV" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>TEXTAREA" BUTTON=0
[КОМАНДА, КОТОРАЯ КОПИРУЕТ ТЕКСТ ИЗ БУФЕРА ОБМЕНА]
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV" BUTTON=0
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>IMG" BUTTON=0

PRESIDENT, благодарю!

kolbasa559 пишет

можно ли в мой макрос добавить команду, которая будет копировать текст из буфера обмена

скрытый текст

Выделить код

Код:

SET YOU_VAR {{!CLIPBOARD}}


{{!CLIPBOARD}}, Буфер обмена

Есть скрипт с зацикливанием.
Подскажите, как переписать данные команды так: если появляется надпись Пользователь<SP>зарегистрирован, то сохраняем нужное слово в текстовый файл и начинаем новый цикл,
а если появляется  надпись: Неверные<SP>символы, то сразу начинаем новый цикл.

скрытый текст

Выделить код

Код:

for(q=1; q<=99999; q++){ //тут исполняемый скрипт... 

//...тут появляется одно из двух условий: либо надпись "Неверные<SP>символы", либо надпись "Пользователь<SP>зарегистрирован"

 f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Пользователь<SP>зарегистрирован'); if(f>0){
   iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');}
 f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Неверные<SP>символы'); if(f>0){continue;}}

Подскажите по какой причине макрос может не запускаеться, никаких ошибок не выдает, просто не воспроизвоидться


скрытый текст

Выделить код

Код:

var domains = window.document.querySelectorAll('.img_ad');

for(var i = 0; i < domains.length; i++) {
 alert(domains[i].getAttribute('src'));
}

Как в iim сделать разные рандомные задержки в 1 цикле из 1 переменной?
Чтобы в 1 цикле в каждом {{!VAR0}} были разные задержки?

скрытый текст

Выделить код

Код:

SET !VAR0 EVAL("var min=4,max=7;Math.floor(Math.random()*(max-min+1))+min;")
WAIT SECONDS={{!VAR0}}
WAIT SECONDS={{!VAR0}}
WAIT SECONDS={{!VAR0}}


И как сделать, чтобы можно было указать не так min=4,max=7, а вот так set секунды 4-7
и чтобы это срабатывало в макросе при рандоме?

dvitkovs
а разве ваш код - делает не это же?


kani339
domains.length равен 0

15-03-2016 00:46:23
Алим

«Правильно заданный вопрос – половина ответа» (с)

Алим пишет

Чтобы в 1 цикле в каждом {{!VAR0}} были разные задержки?

скрытый текст

Выделить код

Код:

SET !VAR0 EVAL("var min=4,max=7;Math.floor(Math.random()*(max-min+1))+min;")
WAIT SECONDS={{!VAR0}}
SET !VAR0 EVAL("var min=4,max=7;Math.floor(Math.random()*(max-min+1))+min;")
WAIT SECONDS={{!VAR0}}

Алим пишет

а вот так

может еще и кофе в постель? ... функцию split() и подобные - ни кто не отменял

InfSub пишет

а разве ваш код - делает не это же?

Это же, но... там надо его переделать так, чтоб он, при исполнении только одного условия, сразу же начинал бы цикл по новой (или с сохранением нужного элемента(слова) в файл, не дожидаясь исполнения другого условия.
А так получается, что он сперва выполнит одно условие, потом ищет другое условие. А на это тратится время. Да и не надо так, чтоб он выполнял по очереди оба условия. А он именно так и работает.
Поэтому я хочу его переделать, чтоб он выполнял толлько одно из двух условий, какое выпадет первым. И если выпадет по условию, что  "пользователь зарегистрирован", то сохраняем элемент (нужное слово) в файл и начинаем цикл по новой, дальше. А если выпадет условие, что "неверные символы", то сразуже начинаем цикл по новой и ничего в файл не сохраняем.

dvitkovs
ну так добавьте q=0; в:

скрытый текст

Выделить код

Код:

f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Пользователь<SP>зарегистрирован');
if(f>0){
    q=0;
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');
}


значение q изменится на 0, а по условию цикла, увеличится на 1 по откончании очередного прохода, в результате получите q==1

InfSub
Спасибо за ответ. Но похоже я сам неправильно задал вопрос, наверно зря я написал про буфер обмена, мне показалось, что это так называется, скорее всего спутал. Мне нужно сделать так, чтобы вставлялся мой текст, который я заранее скопирую, либо в команде будет сразу этот текст... Можно ли сделать так?

InfSub пишет

dvitkovs
ну так добавьте q=0; в:

скрытый текст

Выделить код

Код:

f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Пользователь<SP>зарегистрирован');
if(f>0){
    q=0;
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');
}


значение q изменится на 0, а по условию цикла, увеличится на 1 по откончании очередного прохода, в результате получите q==1

Так-то оно вроде хорошо, но это только для одного условия годится, а как быть со вторым?
Как быть, если при регистрации почты, первым появится фраза не "пользователь зарегистрирован", а "неверные символы"?
Получается - все равно одно условие будет впустую отрабатываться. То есть скрипт будет искать фразу "пользователь зарегистрирован", которой нет.
А нам же надо, чтоб скрипт одновременно искал только одну из двух фраз: либо "пользователь зарегистрирован", либо "неверные символы". Для етого надо записать примерно так, как подсказывал ПРЕЗИДЕНТ, то есть два условия через знак две вертикальные черты (||):

PRESIDENT пишет

if(условие 1 || условие 2) <--- условие 1 или условие 2

Но тогда наверное не всё так просто как кажется, тогда наверное надо вводить переменные? Например: var1="пользователь зарегистрирован", var2="неверные символы".
И в случае срабатывания условия var2 - делаем новый цикл, а в случае срабатывания условия var1 - сохраняем нужное слово (название почты) и только после этого делаем новый цикл.
Наверное как-то так надо делать? Да?

dvitkovs пишет

А нам же надо, чтоб скрипт одновременно искал только одну из двух фраз

одновременно 2 действия выполнятся не будут, только последовательно, даже в варианте с ИЛИ (||) - действия выполняются последовательно, сначало то что слева, потом, то что справа

15-03-2016 12:53:03

JavaScript: Короткий цикл вычислений

JavaScript вычисляет несколько ИЛИ слева направо. При этом, чтобы экономить ресурсы, используется так называемый «короткий цикл вычисления».

Допустим, вычисляются несколько ИЛИ подряд: a || b || c || .... Если первый аргумент – true, то результат заведомо будет true (хотя бы одно из значений – true), и остальные значения игнорируются.


15-03-2016 12:58:26
dvitkovs
если при отсутствии "пользователь зарегистрирован" всегда присутствует "неверные символы" - то можно использовать else{действие} вместо проверки второго условия, если же нет и возможны другие варианты (например, отсутствие обеих строк), подразумевающие иное (третье) действие, то else if(условие){действие}
это избавит от проверки второго условия, при срабатывании первого

А как сделать, чтобы переменная изменялась в соответствии со счетчиком? Я вот вообще ноль. Помогите, пожалуйста. :(

скрытый текст

Выделить код

Код:

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

nikki67

скрытый текст

Выделить код

Код:

SET !VAR2 EVAL("['логин1','логин2','ещё какой-то логин'][{{!LOOP}}-1];")
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:login-form ATTR=ID:_username CONTENT={{!VAR2}}

Господа , реально ли сохранять , и затем перебрасывать куки ? Допустим авторизовался на сайте  , задал куки , сохранил . Затем удалил куки , и снова  воспроизвел их (оказался авторизован на сайте) . Возможно ли хранить(в переменных, в текстовом файле) множество кук для одного сайта с разными логинами и  воспроизводить нужные  ?? Нашел информацию из джаваскрипта , но как именно перебрасывать куки (с готовой авторизацией) не разобрался .

ErrorignoreYes
а зачем придумывать велосипед, в чем проблема авторизоваться на сайте средствами iMacros - 3-4 строки кода...?

InfSub пишет

ErrorignoreYes
а зачем придумывать велосипед, в чем проблема авторизоваться на сайте средствами iMacros - 3-4 строки кода...?

Специфика сайта , при большом количестве постоянных авторизаций , айпи адрес(а)  попадает в блек лист .

ErrorignoreYes

лирика
сомневаюсь, что именно ip-адрес попадает в блэклист, сейчас на одном ip может сидеть по несколько сотен, а то и тысяч пользователей
скорее всего, за основу к блокировке берутся несколько параметров, как то:
user-agent, ip, разрешение экрана, постоянная (идентифицирующая) кука (не путать с куками авторизации)
все вместе дает - в результате возможность, вычленить из сотен посетителей - уникального пользователя

З.Ы. у меня, на ваш вопрос - ответа, к сожалению нет, столь глубоко с куками не работал

Ребята подскажите у кого есть готовый код вставки текста комментария в группу вк, мой не работает:

скрытый текст

Выделить код

Код:

EVENTS POS=1 TYPE=KEYPRESS SELECTOR="#reply_field-66569034_105" CHARS="привет"  - так работает
EVENTS POS=1 TYPE=KEYPRESS SELECTOR="#reply_field-*" CHARS="привет" -  так уже не работает, находить объект он находит (т.е. не пишит Element waiting), но текст не вставляет((


В чем может быть ошибка, мб у кого то есть пример?:blush: спасибо

InfSub пишет

dvitkovs
ну так добавьте q=0; в:

скрытый текст

Выделить код

Код:

f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Пользователь<SP>зарегистрирован');
if(f>0){
    q=0;
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');
}


значение q изменится на 0, а по условию цикла, увеличится на 1 по откончании очередного прохода, в результате получите q==1

А вот и нет. Не получается так.
Хоть добавляй q=0;, хоть не добавляй - оно как работало, так и работает. То есть сначала одно условие отрабатывается, потом другое. По очереди.

Хотя казалось бы: должно быть так, если есть фраза "Пользователь<SP>зарегистрирован", то всё, возвращаемся на новый цикл, второе условие выполнять не надо.
Поэтому тут надо как-то по другому записать.

Не напомните как сохранить текст в двух ячейках?
Есть допустим две переменные 

скрытый текст

Выделить код

Код:

var test = "text1"
var test_1 = "text2"


Нужно сохранить в таком формате "text1","text2" чтоб работать в excel.

Hamzat пишет

Нужно сохранить в таком формате "text1","text2" чтоб работать в excel.

то есть вот так, что ли?

скрытый текст
Screenshot-587.1458292454.png

Hamzat
поиск на форуме для чего? по saveas  есть все варианты использования

скрытый текст

Выделить код

Код:

iimSet('My_Var',test+'[EXTRACT]'+test_1);
iimPlayCode('SET !EXTRACT {{MY_VAR}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=your_file.csv');

Пытаюсь обновить фрейм

скрытый текст

Выделить код

Код:

FRAME NAME="iframeBrowser"
REFRESH


а мне выдаёт такую ошибку

скрытый текст
NS_BINDING_ABORTED: Component returned failure code: 0x804b0002 (NS_BINDING_ABORTED) [nsIWebNavigation.reload], line 6 (Error code: -1001)

как это исправить?

Доброго всем времени суток!
Такой вопрос.  Месяц назад уважаемый President написал вот такой код:

скрытый текст

Выделить код

Код:

b=prompt('Введите количество повторов','99');
 for(a=1; a<=b; a++){    
   iimPlayCode('ONDOWNLOAD FOLDER=* FILE=имя_файла'+a+' WAIT=YES\nTAG POS=2 TYPE=A ATTR=TXT:Скачать');
   iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TITLE:&&CLASS:next*enabled&&DATA-ORIGINAL-TITLE:Вперед&&TXT:');
   iimPlayCode('WAIT SECONDS=5');}


В связке Mozilla-Firefox 27.0.1 + iMacros 8.8.7.1-signed  все отлично летает.
А вот в связке TOR 5.5.3 (based on Mozilla Firefox 38.7.0) + iMacros 8.9.6 происходит следующее:
1. Путь FOLDER= не запоминается. Используется путь, указанный в настройках Тор`а.
2. FILE= тоже не запоминается. Вместо этого сохраняются файлы с оригинальными именами с сайта.
3. После выполнения 3-й строки скрипт уходит в тяжелые раздумья секунд на 20.

Что это может быть? Вроде движок у браузеров один и тот же.  И замедления в выполнении не связаны с тор-сетью и проксями. Вручную выполнение этих же действий скрипта происходит раз в 5 быстрее. ОС Win XP SP1.

Atakana
Пропиши в FOLDER= нужный путь.
Для теста попробуй так

скрытый текст
iimPlayCode('ONDOWNLOAD FOLDER=

C:\\

FILE=test WAIT=YES\nTAG POS=2 TYPE=A ATTR=TXT:Скачать');

PRESIDENT пишет

Для теста попробуй так

Поробовал. Не помогает. И главное ж файл идет с именем а ля 3QS7-L9XM-VFQB.jpg. А очень хочется сквозную нумерацию.  Такое чувство, что загрузчик ТОРа перехватывает или игнорирует и путь и имя файла....

InfSub пишет

dvitkovs
ну так добавьте q=0; в:

скрытый текст

Выделить код

Код:

f=iimPlay('CODE:TAG POS=2 TYPE=DIV ATTR=TXT:Пользователь<SP>зарегистрирован');
if(f>0){
    q=0;
    iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');
}


значение q изменится на 0, а по условию цикла, увеличится на 1 по откончании очередного прохода, в результате получите q==1

А как быть, если оно так не работает? Сделал так, как вы мне подсказали, но ничего не изменилось. То есть скрипт не начинает цикл заново после фразы "Пользователь<SP>зарегистрирован", а продолжает ещё искать фразу "неверные символы". В чём загвоздка?

dvitkovs пишет

Сделал так, как вы мне подсказали

и где у вас if()...else ...?
тут же, писал уже, как сделать

Сегодня поставил TOR 5.5.4. И все заработало как часы. Такое чувство, что разработчики читают этот форум. Спасибо PRESIDENT, что откликнулись!

InfSub пишет
dvitkovs пишет

Сделал так, как вы мне подсказали

и где у вас if()...else ...?
тут же, писал уже, как сделать

Та не. Вы малёха не поняли. Не стал я усложнять и применять знак ||  (или). Этого не надо.
Достаточно просто начинать новый цикл, как только будет найдена фраза "пользователь зарегистрирован". Всё. Больше ничего не требуется.
Вы мне написали ещё в более раннам посте, что надо добавить q=0; https://forum.mozilla-russia.org/viewto … 55#p710255
Там  даже указали в коде как это сделать, и где прописать q=0;

скрытый текст
Screenshot-588.1458379691.png

Ну так я и добавил. Но что-то оно как не начинало новый цикл, так и не начинает, а гонит дальше исполнение скрипта. В чём загвоздка? Зделал же всё, как вы написали.

dvitkovs
может быть - вы все же прочтете то, о чем я говорю???
При чем тут или, дочитайте до конца этот пост и не делайте из мухи слона, вы неделю бьетесь над элементарной проблемой

19-03-2016 16:46:47

dvitkovs пишет

q=0

q=0 - только сбрасывает счетчик, но не начинает новый цикл, у вас же была указана ранее команда continue; так и верните ее в действие при срабатывание условия в if

19-03-2016 16:49:01

скрытый текст

Выделить код

Код:

for(q=1; q<=99999; q++){
    if(iimPlayCode('TAG POS=2 TYPE=DIV ATTR=TXT:Пользователь<SP>зарегистрирован')>0){
        q=0;
        iimPlay('CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:createEmail EXTRACT=TXT\nSAVEAS TYPE=EXTRACT FOLDER=C:\\ FILE=POST.csv');
        continue;
    };
};

InfSub пишет

q=0 - только сбрасывает счетчик, но не начинает новый цикл, у вас же была указана ранее команда continue; так и верните ее в действие при срабатывание условия в if

Благодарю! Разобрался. Получилось. :)

Помогите пожалуйста.
Как взять URL капчи и присвоить в переменную?

Vladimir271
может быть, вам нужно сохранить капчу, а не взять ее URL т.к. последнее, обычно, бесполезно?

получить URL картинки

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:*forum_logo.png EXTRACT=HREF

Vladimir271 пишет

присвоить в переменную?

в какую переменную? в iim или в js?

iim

Выделить код

Код:

SET MYVAR {{!EXTRACT}}


js

Выделить код

Код:

var r=iimGetLastExtract();

удалено, правила форума, п. 2.1, 2.8

InfSub

Спасибо за ответ, но это я умею делать. Мне нужно это взять:

скрытый текст
x1CXCZcKn0E.jpg

Правила форума iMacros
1.  Не рекомендуется:
1.2
  Задавать вопрос без указания:
1.2.4  Адреса сайта и страницы, на которой возникла проблема.

для размещения скринов, есть фотохостинги, использование которых - предпочтительней кривой ссылки на vk
ссылка исправлена

InfSub

InfSub пишет

я умею делать

тогда в чем вопрос?
ответ на то, что изображено в скрине, есть в моем сообщении

Vladimir271
Даже если ты УРЛ капчи скопируешь, ты второй раз картинку по нему уже не загрузишь.
Ты наверное хочешь на онлайн сервис OCR сразу адрес капчи вставлять не сохраняя на комп. Это не прокатит.

Нет я хочу сохранять в базу вместе с ответом, и все таки URL возможно скопировать скриптом? Почему не получиться отправить на распознание, там ведь же капча закодирована в base64?

Уважаемые знатоки подскажите please! Реально ли запускать через bat  копии браузера. У всех копий рабочая папка одна ("C:\Program Files\Mozilla Firefox"):rolleyes:

dim222
да, указав нужный пофиль при запуске (как параметр командной строки)
ищите, тут где-то уже обсуждался запуск FF с определенным профилем, гугл, так же в помощь

InfSub
Подскажите пожалуйста: копии браузера открываю с помощью bat

скрытый текст

Выделить код

Код:

start "" "C:\Program Files\Mozilla Firefox\firefox.exe" -no-remote -profile "F:\Profiles\prof1" "imacros://run/?m=script.js"


Закрываю с помощью "TAB CLOSE"
скрытый текст

Выделить код

Код:

//Проверяем правильность ввода капчи
if(iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=ID:BodyPlaceholder_FailureMessage')>0){
         iimPlayCode('TAB OPEN\nTAB T=2');
         iimPlayCode(t3+'URL GOTO=rucaptcha.com/res.php?key='+key+'&action=reportbad&id='+s[1]+'');
         iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');}
  iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');}


Все работает,но когда от сервиса нет ответа браузер не закрываеться. Подскажите,как это исправить.

dim222
зачем дублировать

скрытый текст

Выделить код

Код:

iimPlayCode('WAIT SECONDS=1\nTAB CLOSE')


оставь только последнюю и добавь в нее
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES


вот так:
скрытый текст

Выделить код

Код:

iimPlayCode('SET !ERRORIGNORE YES\WAIT SECONDS=1\nTAB CLOSE')


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

InfSub
Огромное спасибо!!!:) А как же не дублировать (1-закрывает вкладку от сервиса,ну а 2- сам браузер).

Эта строчка печатает текст полностью, а не вставляет его в текстовое окно. Как сделать так, чтобы этот текст просто вставлялся, а не печатался целиком? Это занимает очень много времени.

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(6)>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>TEXTAREA" CHARS="МОЙ ТЕКСТ"

kolbasa559
Запись - Record options - Select the best record mode automatically - OK
Далее - записать заново

Как проще всего прописать нажатие ссылок "закладка" столько раз, сколько они встречаются на странице? Извлекать ничего не нужно. Просто при нажатии на эту ссулку страница добавляется в закладки, но никуда не переходит.
Нужно просто кликнуть на n идентичных ссылок, только n неизвестно заранее, LOOP видимо не прокатит

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:закладка
TAG POS=2 TYPE=A ATTR=TXT:закладка


А потом гото на другую страницу и снова так же покликать.

Правила форума iMacros
1. Не рекомендуется:
1.2
  Задавать вопрос без указания:
  1.2.4  Адреса сайта и страницы, на которой возникла проблема.

InfSub

myscience
!LOOP - прокатит, но с одной страницей, т.е. на каждой - придется запускать заново
либо, использовать js, проверяя на наличие следующей ссылки в каждом цикле, если нет - переходить на следующую страницу

что-то типа:

Выделить код

Код:

for(var i=1;;i++){
    if(iimPlayCode('TAG POS=i TYPE=A ATTR=TXT:закладка')==1){
        iimPlayCode('TAG POS=i TYPE=A ATTR=TXT:закладка');
    }else{
        i=0;
        iimPlayCode('URL GOTO=/*адрес следующей страницы*/');
    };
};

Спасибо большое!. Можно лишь попросить уточнить, как если страницы не две, а напр. четыре? Как это зацикливается? Много скобок, не пойму куда писать гото=страница3 .

myscience пишет

не пойму куда писать гото=страница3 .

если есть что-то типа кнопки "следующая" - лучше использовать ее вместо

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=/*адрес следующей страницы*/');


т.е. как-то так:

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:Следующая');


если нет, но адреса страниц - имеют последовательную номерацию, например:

http://site/page.php?n=1 ... 2 ... 3

то можно просто увеличивать номер страницы:

например, как-то так:

Выделить код

Код:

iimPlayCode('URL GOTO=http://site/page.php?n='+(j++));


не забыв, в условии цикла, добавить j=1
скрытый текст

Выделить код

Код:

for(var i=1,j=1;;i++){

К сожалению ничего нет. только гото=стр3, покликать, гото=стр4.
Ручками скопирую и повписываю урлы. Только объясните, как это сделать.

Или это нельзя все в один js запихнуть?

24-03-2016 15:45:46
Даже в том варианте, что Вы в первый раз привели, кликает только первый раз, а потом бесконечно пытается извлечь. Приходится закрывать браузер.
Помогите, пожалуйста.

InfSub, будьте добры, проверьте код https://forum.mozilla-russia.org/viewto … 29#p711129
Другим путем у меня получилось, но тут же точно не получится зациклить его на несколько страниц?

скрытый текст

Выделить код

Код:

var i,m='TAG POS={{MYVAR}} TYPE=A ATTR=TXT:закладка';
for(i=1;iimPlayCode('TAG POS='+i+' TYPE=A ATTR=TXT:В<SP>закладка EXTRACT=TXT'),iimGetLastExtract()!='#EANF#';i++){
    iimSet('MYVAR',i);
    iimPlayCode(m);
};

myscience
по поводу - EANF - ошибся - там должно быть ==1, а не !='#EANF#' (исправил в своем коде выше)
ваш код в принципе верен, но зачем вы все запихнули в for - принцип же был показан, используйте if
и зачем тут iimSet ? у вас переменная i уже содержит номер нужной позиции

24-03-2016 17:20:37

myscience пишет

К сожалению ничего нет. только гото=стр3, покликать, гото=стр4.

так в чем проблема, объяснил же, задайте переменную j равной номеру первой страницы (если первая имеет номер 3, значит задайте j=3) и используйте...

скрытый текст

Выделить код

Код:

for(var i=1,j=1;;i++){
    if(iimPlayCode('TAG POS=i TYPE=A ATTR=TXT:закладка')==1){
        iimPlayCode('TAG POS=i TYPE=A ATTR=TXT:закладка');
    }else{
        i=0;
        iimPlayCode('URL GOTO=стр'+(j++));
    };
};


24-03-2016 17:23:48
обновлено, extract - там в принципе тоже не нужен

Мой код - не мой код, пробовал совершенной другой подправить, от безисходности. JS для меня темный лес. (((

А там, где исправили, и без экстракта, - у меня все равно какой-то косяк. Не кликает на ссылку "закладка", а потом бесконечно обновляет стр2.

24-03-2016 17:39:33

InfSub пишет

myscience пишет:

    К сожалению ничего нет. только гото=стр3, покликать, гото=стр4.

так в чем проблема, объяснил же, задайте переменную j равной номеру первой страницы (если первая имеет номер 3, значит задайте j=3) и используйте...

Я имел ввиду, что в урлах нет счетчика и просил расширить Ваш пример для 3-4 разных ссылок, поскольку мне сложно понять цикл

Как в js прописать обход по списку ссылкок из txt файла? В файле один столбец с n строк.

myscience
аналогично обходу ссылок на странице, о которых вы спрашивали ранее, по окончании списка (файла) - будет ошибка, о том что файл закончился
поставьте условием цикла проверку этого условия, т.е. что iimPlayCode - не вернул ошибку и равен 1

Доброго времени суток, подскажите пожалуйста, как мне прописать цикл в imacros, надо чтобы этот код повторялся, но менялось значение POS=1, POS=2... Или допустим нажму на Воспр(цикл) 10 раз и при каждом выполнении меняется значение POS, или как-то можно через скрипт реализовать?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:обновить<SP>срок<SP>он-лайн<SP>»


25-03-2016 17:33:21
Или например чтобы не писать громадный код с ссылками на разные сайты и выполнение одних и тех же действий, присвоить переменной значение http, и на каждом цикле менять его на другое+если нужно использовать разный текст для ввода использовать текстовой документ и менять строки, которые нужно вписать, но как менять значение переменной на каждом цикле никак не пойму...:(

Sergey_yu

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=A ATTR=TXT:обновить<SP>срок<SP>он-лайн<SP>»


25-03-2016 19:19:58

Sergey_yu пишет

как менять значение переменной на каждом цикле никак не пойму..

- брать из файла, так же как и текст
- использовать массив

Здравствуйте! Подскажите, как макросом сохранять текст в ексель-таблицу, чтоб он сохранялся в строчки 1,2,3 потом 4,5,6, потом 7,8,9 и так далее?
То есть сначала идёт вводный текст в первом столбце, потом во втором столбце идут текстовые файлы, которые надо сохранять в строчках по нумерации.
То есть вот такого вида чтоб было:

скрытый текст
Screenshot-593-1.1458929500.png

А то оно всё в одну строчку сохраняет, вот как:
скрытый текст
Screenshot-594.1458929589.png

dvitkovs
каждая команда SAVEAS сохраняет текст в одну строку, соответственно - два вызова команды - сохранят - две строки текста, три - три...

скрытый текст

Выделить код

Код:

SET !EXTRACT "Вводный текст_A"[EXTRACT]"Tекст№1"[EXTRACT]"Tекст№2"[EXTRACT]"Tекст№3"
SAVEAS TYPE=EXTRACT....
SET !EXTRACT ""[EXTRACT]"Tекст№1"[EXTRACT]"Tекст№2"[EXTRACT]"Tекст№3"
SAVEAS TYPE=EXTRACT....
SET !EXTRACT ""[EXTRACT]"Tекст№1"[EXTRACT]"Tекст№2"[EXTRACT]"Tекст№3"
SAVEAS TYPE=EXTRACT....
SET !EXTRACT "Вводный текст_B"[EXTRACT]"Tекст№1"[EXTRACT]"Tекст№2"[EXTRACT]"Tекст№3"
SAVEAS TYPE=EXTRACT....
'...и так далее

InfSub, благодарю!

подскажите возможно ли с помощью данной програмки выполнить такое действие:
на сайте есть картинки, мне нужно их название вписать в форму ( что то типа ввода капчи) и после этого нажать на ентер

Здравствуйте.
Подскажите, каким образом настроить команду для вставки в форму из текстового файла, в случае, если значения атрибута постоянно изменяются.
Я настроил команду, на одном сайте эта команда работает..
На другом сайте , - нет , т.к. атрибуты  при каждом заходе изменяются,вместо username- набор букв/цифр :(

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
SET !DATASOURCE username.txt
SET !DATASOURCE_LINE {{!LOOP}}
SET !DATASOURCE_COLUMNS 100
SET !LOOP 1
TAB T=1
URL GOTO=http://site.com
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:username CONTENT={{!COL1}}
WAIT SECONDS=5
CLEAR



TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:1ga2AQjNgSoKsIfyV01fVMoFyjVZQG21Qk5 CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:XsrcGlMr80HV4MRfdoKBVhKrNVR7b7hh CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:82QezieYd4cdsROflJc42PWLdO3B CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:bXO7ncfKJyXlr18JvX1MHz6ZbW CONTENT=

LiGuB, Mirex

правила форума iMacros прочтите (конкретно - пункт 1.2.4) и задайте вопрос - так, чтобы на можно можно было ответить, а не заниматься "гаданием на кофейной гуще", экстрасенсов и гадалок - тут нет

26-03-2016 13:51:51
Mirex
RTFM: FAQ по iMacros, раздел: Модификаторы, команда: SET !ERRORCONTINUE YES

сайт локальный, потому и не выложил ссылку, в коде на сайте  идет вот

скрытый текст

Выделить код

Код:

<div id="cimg1">
<img width="35" height="55" src="images/capchs/5.png">
</div>
<div id="cimg2">
<img width="35" height="55" src="images/capchs/d.png">
</div>


так вот мне нужно что бы было взято имя пнг с этих 2х дивов , то есть "5" и "d"(скопировано в буфер и вставлено в другом месте

и вставлено в это поле   как "5d"

скрытый текст

Выделить код

Код:

<div align="center">
    <input type="text" name="capcha" value="" style="width:200px;height:30px;font-size:15px;">
   </div>


такое возможно?

LiGuB

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=IMG ATTR=SRC:*capchs*.png EXTRACT=HREF
TAG POS=2 TYPE=IMG ATTR=SRC:*capchs*.png EXTRACT=HREF

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/(\w+)\.png/g).join('').replace(/\.png/g,'')")

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:capcha CONTENT={{!EXTRACT}}

InfSub
Большое спасибо, разобрался

26-03-2016 20:55:01
Здравствуйте, научился импортировать/экспортировать текст с фаила, но столкнулся с проблемой, фаил переносится в текстовой документ с ненужными переменными, а нужен только текст, вот код:

скрытый текст

Выделить код

Код:

VERSION BUILD=8961227 RECORDER=FX
SET !ERRORIGNORE YES
'Сайт с IP:
URL GOTO=http://spys.ru/proxys/RU/
WAIT SECONDS=#DOWNLOADCOMPLETE#
TAG POS=1 TYPE=FONT ATTR=CLASS:spy14 EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=IP.txt


Мне нужно сохранить выбранный ip в текст, но он сохраняет следующее:
скрытый текст

Выделить код

Код:

"91.191.233.182document.write(""<font class=spy2>:<\/font>""+(Five2ThreeEight^ThreeThreeOne)+(Seven2EightFive^OneTwoTwo)+(Five2ThreeEight^ThreeThreeOne)+(Seven2EightFive^OneTwoTwo)):8080"


Как выбросить лишнее? И возможно ли, чтобы при новом сохранении, старая запись в блокноте стиралась?

Скрипт парсит урл странички с ВК.

скрытый текст

Выделить код

Код:

SET !EXTRACTADD {{!URLCURRENT}}

SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.csv


В итоге получаются данные вида
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Мне нужны только цифры 30881402 , т.е. ID группы.

Строка

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/5D=\\d+/)")


помогает на намного, получаю в итоге "5D=30881402", что тоже не совсем красиво... Можно избавиться и через автозамену, но хочу понять, что я делаю не так... Знаю, тут уже было несколько примеров, пробовал - не помогло.

udalov

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/5D=(\\d+)/).pop()")

InfSub,

Windows_7_HB_x64
Firefox v.44.0.1 Portable
iMacros v.8.9.6

SET !ERRORCONTINUE YES  убрал..

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

При очередном входе на сайт атрибут меняется... 

запись .iim:

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:[b]eN55l0qztILr7thpAARODN2VWAFbtXX9w[/b] CONTENT=мой<SP>address
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:[b]teCR8cR8VbIW6LRPdYtW3g90ERtY0N2[/b] CONTENT=мой<SP>address

и т.д.

Какая в этом случае нужна команда для  прописывания адресов из списка  (txt, csv) в  форму  Your address: ?

Доброго времени суток, извините меня за кучу вопросов, просто уже весь интернет обшарил в поисках ответов, все четно... Возможно чтобы макрос искал ссылку и если ее не находит, то пропускает некоторые следующие действия? И вообще возможно такое написать в фаиле iim, а не js?

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\Users\sergey.savchenko\Documents\iMacros\CAPTCH FILE=captcha.jpg
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/imacros.html


Если он не находит http://vk.com/captcha.php?sid=*, то не переходит на сайт http://antigate.com/imacros.html, возможно такое?

Mirex пишет

При очередном входе на сайт атрибут меняется...

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=INPUT:TEXT ATTR=CLASS:form-control CONTENT=адрес


Sergey_yu пишет

Если он не находит http://vk.com/captcha.php?sid=*, то не переходит на сайт http://antigate.com/imacros.html, возможно такое?

возможно - только в js

Sergey_yu пишет

нужно сохранить выбранный ip в текст

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
'Сайт с IP:
URL GOTO=http://spys.ru/proxys/RU/
TAG POS=1 TYPE=FONT ATTR=CLASS:spy14 EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/([0-9]{1,3}[\\.]){3}[0-9]{1,3}/g)")
SAVEAS TYPE=EXTRACT FOLDER=* FILE=IP.txt

Sergey_yu пишет

возможно ли, чтобы при новом сохранении, старая запись в блокноте стиралась?

удалить файл, после чего сохранить данные:

скрытый текст

Выделить код

Код:

FILEDELETE NAME=file_name
SAVEAS ....

Здравствуйте!Подскажите,возможно с помощью imacros,без обращения к онлайн декодерам кодировать jpg и mp3 файлы в base64?

InfSub , спасибо.

borisenko1 пишет

кодировать файлы в base64?

скрытый текст
Можно php-шкой

Выделить код

Код:

string base64_encode ( string $data )

Кодирует data алгоритмом base64.

PRESIDENT
Скажите,а можно реализовать кодирование в base64 по ссылке на mp3 фаил:

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

InfSub
удалено, избыточное цитирование
правила, пункт 2.9

А если скажем прописать, что если макрос нашел ссылку, то !Extract присваивается какое нибудь значение и соответственно он больше нуля, не знаю как это будет на макросе, ну на подобии:

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\Users\sergey.savchenko\Documents\iMacros\CAPTCH FILE=captcha.jpg
TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT EXTRACT=TXT
SET Site EVAL("var s=\"{{!EXTRACT}}\"; if(s>0) {s=http://antigate.com/imacros.html;} else {s=0;} s;")
WAIT SECONDS=1
TAB OPEN
TAB T=2
URL GOTO={{Site}}


Только вот так нельзя прописать EXTRACT=TXT:
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT EXTRACT=TXT


код прячется в спойлер

Можно это как-то обойти? или прописать иначе? Очень бы не хотелось его в js переводить, заранее спасибо за ответ

InfSub

Sergey_yu пишет

то !Extract присваивается какое нибудь значение и соответственно он больше нуля

если extract - пуст, т.е. извлечь данные не удалось, он равен #EANF#, а не 0 (кроме ситуаций, когда включен игнор ошибок, тогда - он пуст)

Подскажите, как прописать, чтобы при редактировании текстового поля макрос автоматически вписывал точку после последней цифры (или перед вторым пробелом)

ГОСТ 10392-89 Насосы вихревые
ГОСТ 10392-89. Насосы вихревые

myscience

скрытый текст

Выделить код

Код:

SET !EXTRACT "ГОСТ 10392-89 Насосы вихревые"
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/^(\\S+\\s\\S+)(.*)$/g,'$1.$2')")
TAG POS= .......... CONTENT={{!EXTRACT}}

InfSub пишет

если extract - пуст, т.е. извлечь данные не удалось, он равен #EANF#, а не 0 (кроме ситуаций, когда включен игнор ошибок, тогда - он пуст)

Хорошо, так значит такое возможно? Если да, как мне правильно вставить в код !Extract

Sergey_yu пишет

значит такое возможно?

я не сказал, что это возможно или нет, я указал на ошибку, т.е. extract - ни когда не вернет 0, если значение не найдено
хотите усложнить себе жизнь - экспериментируйте, теоретически - это возможно, практически - я не вижу ни одной причины, заниматься подобным бредом и тратить на это время, во всяком случае - у меня нет желания строить логическую цепочку действий, результат которой, приведет к неразгадыванию капчи, если ее нет и разгадыванию, если есть - на "чистом" iMacros'e

InfSub пишет

приведет к неразгадыванию капчи, если ее нет и разгадыванию, если есть - на "чистом" iMacros'e

Понял, спасибо большое, просто переписывал макрос в js, но скрипт игнорирует некоторые команды, например эту:

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\Users\sergey.savchenko\Documents\iMacros\CAPTCH FILE=captcha.jpg


Он просто перескакивает ее и сохраняет совершенно в другом месте, и придется весь код перевести в скрипт) значит буду переводить, еще раз спасибо

InfSub пишет

myscience

скрытый текст

Выделить код

Код:

SET !EXTRACT "ГОСТ 10392-89 Насосы вихревые"
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/^(\\S+\\s\\S+)(.*)$/g,'$1.$2')")
TAG POS= .......... CONTENT={{!EXTRACT}}

Спасибо, отличная работа!

Sergey_yu пишет

но скрипт игнорирует некоторые команды, например эту:

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\Users\sergey.savchenko\Documents\iMacros\CAPTCH FILE=captcha.jpg

Данная команда работает в js как и все команды которые доступны для iMacros for firefox, может вы просто забыли про экранирование?

скрытый текст

Выделить код

Код:

iimPlayCode('ONDOWNLOAD FOLDER=C:\\Users\\sergey.savchenko\\Documents\\iMacros\\CAPTCH FILE=captcha.jpg')

Sergey_yu
Запиши в одну строку, куда сохранять и что сохранять и всё будет работать.:)
И как тебе выше написали не забывай о двойных слешах.

скрытый текст

Выделить код

Код:

iimPlayCode('ONDOWNLOAD FOLDER=C:\\путь\\ FILE=captcha.jpg WAIT=YES\nTAG POS=... CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');

Здравствуйте!Подскажите,есть в iim команда для паузы скрипта по заданному точному  времени,к примеру в 10:00 делаем паузу,а в 10:35 воспроизводим дальше с места на котором остановились?

borisenko1
вайт секондс 35 минут (только в секундах)

Дело в том что там на прямую зависит от получения ответа от рукапчи,то есть я же не могу предугадать сколько точно займет времени распознавание,прогрузки страницы и т.д..Поэтому временная задержка не подойдет.Нужно именно пауза в точное время,но судя по всему это не возможно как я понял...

borisenko1
почитайте форум, посмотрите пример, выложенный, на самой же рукапче, там все - давно, решено за вас, с помощью ожидания загрузки страницы, равного, если не ошибаюсь, 2 минутам

Не получается прицепить разрыв строки /n между двумя экстрактами. Не смог найти.
Исравьте синтаксис, пожалуйста

скрытый текст

Выделить код

Код:

macro += "ADD !EXTRACT "/\n"" + "\n";

myscience пишет

/\n

:sick:
разрыв строки

\n

31-03-2016 14:21:47
и что значит - "разрыв строки между двумя экстрактами"?
этот код:

скрытый текст

Выделить код

Код:

macro += "ADD !EXTRACT "\\n"


только поместит в "соседний столбец" знак переноса строки

Мне нужно кучу строк из файла вставить в одно поле на сайте, но не потерять при этом разрывы строк (заменяет разрывы на [EXTRACT])
Пробую так, т.к. ничего лучше не нашел

скрытый текст

Выделить код

Код:

macro = "CODE:";
    macro += "SET !DATASOURCE zapros.csv" + "\n"; 
    macro += "SET !DATASOURCE_LINE "+u+ "\n"; 
    macro += "ADD !EXTRACT {{!COL1}}" + "\n";
    macro += "ADD !EXTRACT "\\n"" + "\n";
    u++
    macro += "SET !DATASOURCE_LINE "+u+ "\n"; 
    macro += "ADD !EXTRACT {{!COL1}}" + "\n";


Но все равно ошибка

myscience пишет

заменяет разрывы на [EXTRACT]

имакрос - не заменяет разрывы строк на [EXTRACT]

myscience пишет

Мне нужно кучу строк из файла вставить в одно поле на сайте, но не потерять при этом разрывы строк

приведите пример

myscience

код обновлен

Выделить код

Код:

for(var u=1,str='';u<=1500;u++){
    iimPlayCode('SET !DATASOURCE zapros.csv' + '\n' + 'SET !DATASOURCE_LINE '+u+ '\n' + 'SET !EXTRACT {{!COL1}}' + '\n');
    str+=iimGetLastExtract()+'\\n';
    if(!(u%500)){
        iimPlayCode('TAG POS= .......... CONTENT="'+str+'"');
        str='';
    };
};

Почему вылезает выгрузка файла?
На других сайтах не вылезает, только в ВК.
правила, пункт 2.4
отредактировано

InfSub

скрытый текст
a680167ced7646daa64a1ac6aaddc245.jpeg

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Выберите<SP>файл
TAG POS=2 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Houm\2500.jpg

bop101
потому что, там - таким образом, сделана форма загрузки фото

bop101 пишет

Почему вылезает выгрузка файла?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Выберите<SP>файл << это команда не нужна
TAG POS=2 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\Houm\2500.jpg

Здравствуйте. Перепробовал несколько вариантов сохранения сбора данных с Яндекс-Интернетомерта

ссылка
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


, ни один не работает. Должно сохранять IP, юзер-агент и регион.

Мой вариант кода

скрытый текст

Выделить код

Код:

VERSION BUILD=8300326 RECORDER=FX
TAB T=1
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO

TAG POS=1 TYPE=H4 ATTR=TXT:IPv4-адрес EXTRACT=TXT
TAG POS=1 TYPE=H4 ATTR=TXT:Браузер EXTRACT=TXT
TAG POS=1 TYPE=H4 ATTR=TXT:Регион EXTRACT=TXT

SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.csv


Перепробовал разные значения TAG POS=, TYPE= и  ATTR, проверял их FireBug'ом... Не смог :-(

udalov пишет

Перепробовал разные значения TAG POS=, TYPE= и  ATTR

да ну?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=CLASS:*type_ipv4 EXTRACT=TXT
TAG POS=1 TYPE=SPAN ATTR=CLASS:*type_browser EXTRACT=TXT
TAG POS=1 TYPE=SPAN ATTR=CLASS:*type_pinpoint-region EXTRACT=TXT

01-04-2016 16:52:12

udalov пишет

Должно сохранять IP, юзер-агент и регион.

и кстати, где вы там нашли - user-agent?
версия браузера и UA - разные вещи

InfSub пишет

Спасибо, то, что надо! Да, там версия браузера, ошибся слегка.

Но мне на будущее: как найден в этом случае значение TYPE=SPAN ?  Значение для ATTR=CLASS:*type_ipv4  показывает FireBug'ом, я пробовал. А вот TYPE=SPAN  не смог найти...

большая картинка-скрин FireBug
cBFJ03DOSxg.jpg

udalov
Mozilla -> ПКМ -> Исследовать элемент

01-04-2016 19:20:44

InfSub пишет

большая картинка-скрин FireBug

на скрине LI, а в нем - DIV:

код для DIV

Выделить код

Код:

'IP'
TAG POS=1 TYPE=DIV ATTR=CLASS:"client__desc" EXTRACT=TXT
'Браузер'
TAG POS=3 TYPE=DIV ATTR=CLASS:"client__desc" EXTRACT=TXT


а SPAN - ниже, в разделе "техническая информация"

опять же, можно и через LI:

скрытый текст

Выделить код

Код:

'Браузер'
TAG POS=1 TYPE=LI ATTR=CLASS:"*type_browser" EXTRACT=TXT


только ответ будет вида:

Браузер

Firefox 45.0 (Gecko 45.0)

Спасибо, что помогаете. Еще короткий вопрос, опять-таки  найти не смог
Нужно перебрать i столбцов  в csv. Как в этом случае пишется правильно  {{!COLi}}   ?

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE 1.csv' + '\n' + 'SET !DATASOURCE_LINE 1' + '\n' + 'ADD !EXTRACT {{!COLi}}' + '\n');
... CONTENT={{!COLi}}

myscience
Читаем FAQ: COLn


myscience пишет

Нужно перебрать i столбцов  в csv. Как в этом случае пишется правильно  {{!COLi}}

скрытый текст

..CONTENT={{!COL1}}
..CONTENT={{!COL2}}
...
..CONTENT={{!COL

n

}}

где n - номер столбца

myscience пишет

опять-таки  найти не смог

скрытый текст
что именно вы не смогли найти? как вставить js переменную в текст???
а какую роль тогда, в вашем коде, выполняют кавычки и знак сложения (конкатенации)???
'text

'+i+'

text'


например тут:
... 1.csv

' + '

\n

' + '

SET ...

myscience пишет

ADD !EXTRACT {{!COL

i

}}

правила конкатенации в строк в js - прочтите

myscience пишет

ADD

!EXTRACT {{!COLi}}

зачем тут ADD? вы уже присвоили значение !EXTRACT, чтобы добавлять новое?
код, выполненный в функции iimPlayCode() - является отдельным скриптом и не содержит переменных и значений, полученных из предыдущих вызовов этой функции

пример

Выделить код

Код:

var i, user_data=[];
for(i=1;i<=10;i++){
    iimPlayCode('SET !DATASOURCE 1.csv' + '\n' + 'SET !DATASOURCE_LINE 1' + '\n' + 'SET !EXTRACT {{!COL'+i+'}}' + '\n');
    user_data.push(iimGetExtract());
};
alert(user_data.join('\n'))


Спасибо за подсказку с текстом, именно это мне было нужно:

скрытый текст

Выделить код

Код:

{{!COL'+i+'}}

удалено, некропостинг

InfSub

Здравствуйте, глупый вопрос, но не нашел на него ответа, как передать переменную из одного js в другой, в макрос передаю так

скрытый текст

Выделить код

Код:

iimSet("i",i)


а что писать перед запуском скрипта:
скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=imacros:\\run\\?m=ArendaPiter\\uanpiter\\piterfoto.js")


код размещается в тегах code под спойлером

InfSub

Не могу заставить нормально несколько профилей firefox через bat-файл. Запускается менеджер профилей firefox. Подскажите как прописывать?
Хочу сделать так что бы из батника запускался нужный макрос сразу в нескольких профилях фаерфокс. Думал сделать уже через домашнюю страницу, которая открывалась бы при старте, но не могу

скрытый текст

Выделить код

Код:

cd "C:\Program Files\Mozilla Firefox"
start firefox imacros://run/?m=2.iim


Добавляю:

скрытый текст

Выделить код

Код:

cd "C:\Program Files\Mozilla Firefox" -p "Firefox" -no-remote
start firefox imacros://run/?m=2.iim


Но все равно запускается менеджер профилей

Immix
Тут глянь

Sergey_yu пишет

как передать переменную из одного js в другой

https://forum.mozilla-russia.org/viewto … 05#p686305

PRESIDENT пишет

Тут глянь

Спасибо, я уже разобрался.

Как убрать дополнение рефералки с одного сайта

скрытый текст

Выделить код

Код:

ssilki=Array("bitcoinaliens.com/faucet","siizo.com","dailydoge.org","top-bit.com/faucet","btcfixer.com","clovebitco.in"..............); kk=0;
while (kk<ssilki.length){url=ssilki[kk];
iimPlayCode('TAB CLOSEALLOTHERS\nURL GOTO='+url+''+refk+'\nWAIT SECONDS=#DOWNLOADCOMPLETE#');


Спасибо

Правила форума iMacros
Не рекомендуется:
1.6
  Изменять имена JS и iMacros функций, без изменения функционала данных функций.

InfSub

del

PRESIDENT
Не со всех а с одного выборочно
:/

Ну проверяй урл на нужный сайт

скрытый текст

Выделить код

Код:

while (kk<ssilki.length){url=ssilki[kk];
if(url=='нужный сайт')
iimPlayCode('TAB CLOSEALLOTHERS\nURL GOTO='+url);
else
iimPlayCode('TAB CLOSEALLOTHERS\nURL GOTO='+url+refk);

PRESIDENT
Спасибо работает, как добавить второй сайт?
попробовал не работает

скрытый текст

Выделить код

Код:

if(url=='bitcoinaliens.com/faucet/','freedoge.co.in/?op=home')
if(url=='bitcoinaliens.com/faucet/,freedoge.co.in/?op=home')
iimPlayCode(t9+'TAB CLOSEALLOTHERS\nURL GOTO='+url);
else
iimPlayCode(t9+'TAB CLOSEALLOTHERS\nURL GOTO='+url+refk);

Zaplatkin пишет

как

Вот так

PRESIDENT
зачем проверять каждый раз? не проще ли задать 2 массива, один с рефералками, второй - без
по первому проходимся, добавляя рефералки, потом прибавляем к нему второй массив
все, готовый массив с нужными ссылками, без лишних проверок в каждом цикле

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

Так тоже не работает

скрытый текст

Выделить код

Код:

if(url=='bitcoinaliens.com/faucet/'&&'dailydoge.org'&&'freedoge.co.in/?op=home'&&'freebitco.in/?op=home')
if(url=='bitcoinaliens.com/faucet/'||'dailydoge.org'||'freedoge.co.in/?op=home'||'freebitco.in/?op=home')
iimPlayCode(t9+'TAB CLOSEALLOTHERS\nURL GOTO='+url);
else
iimPlayCode(t9+'TAB CLOSEALLOTHERS\nURL GOTO='+url+refk);


только первый сайт идет без рефералки а остальные все с рефералками

Zaplatkin
у вас, равенство проверяется, только в первом выражении, в остальных выражениях - идет проверка на непустое значение

InfSub
Спасибо за верное направление
Вот так все работает

скрытый текст

Выделить код

Код:

if(url=='bitcoinaliens.com/faucet/'||url=='dailydoge.org'||url=='freedoge.co.in/?op=home'||url=='freebitco.in/?op=home')
iimPlayCode(t9+'TAB CLOSEALLOTHERS\nURL GOTO='+url);
else
iimPlayCode(t9+'TAB CLOSEALLOTHERS\nURL GOTO='+url+refk);

InfSub

offtop
По началу вопрос то был как сделать исключение для одного сайта, эт потом другие нарисовались.
Ну и для себя мы сделаем по уму.:)
В этой теме мы даём подсказки, в данном случае, что бы человек понял работу логических операторов.

Здравствуйте, помогите пожалуйста разобраться, почему-то при завершении цикла, скрипт возвращается не к началу, к функции for а к if

скрытый текст

Выделить код

Код:

var i;
for(i=1;i<=50;i++)
{

//-----------------------------------------------------первая часть--------------------
   var knopka,a;
   iimSet("i",i);
   iimPlay("CODE:"
   + "SET !ERRORIGNORE YES" + "\n"
   + "SET !DATASOURCE_DELIMITER ;" + "\n"
   + "SET !REPLAYSPEED MEDIUM" + "\n"
   + "SET !DATASOURCE C:\\Users\\sergey.savchenko\\Documents\\iMacros\\Datasources\\gruppivkspb.csv" + "\n"
   + "SET !DATASOURCE_LINE {{i}}" + "\n"
   + "URL GOTO={{!COL1}}" + "\n"
   + "SET !EXTRACT NULL" + "\n"
   + "TAG POS=1 TYPE=BUTTON ATTR=ID:send_post EXTRACT=TXT" + "\n"
   + "SET KNOPKA {{!EXTRACT}}" + "\n"
   + "ADD !EXTRACT {{KNOPKA}}" + "\n");
   knopka = iimGetLastExtract();
//если присутствует нужная кнопка, то выкладываем объявление
//------------------------------вторая часть-----------------------------------------
   if(knopka!='#EANF#'){
   iimPlay("CODE:"
   + "SET !ERRORIGNORE YES" + "\n"
   + "SET !DATASOURCE_DELIMITER ;" + "\n"
   + "SET !REPLAYSPEED MEDIUM" + "\n"
   + "SET !EXTRACT NULL" + "\n"
   + "SET NUMBERTELEFON 4" + "\n"
   + "SET !DATASOURCE C:\\Users\\sergey.savchenko\\Documents\\iMacros\\Datasources\\reklama\\Utki.csv" + "\n"
   + "SET VK EVAL(\"var s='{{!URLCURRENT}}'; s=s.replace('vk.','m.vk.'); s;\")" + "\n"
   + "WAIT SECONDS=1" + "\n"
   + "URL GOTO={{VK}}" + "\n"
   + "SET !DATASOURCE_LINE 1" + "\n"
   + "SET KOMNAT {{!COL3}}" + "\n"
   + "TAG POS=1 TYPE=TEXTAREA FORM=ACTION:/wall-* ATTR=NAME:message CONTENT=" + "\n"
   + "SET FOTO EVAL(\"var min = 1; var max = 140; var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; randomNumber;\")" + "\n"
   + "ADD !EXTRACT {{FOTO}}" + "\n"
   + "WAIT SECONDS=1" + "\n");
   a = iimGetLastExtract();
//Выкладка фото:
//---------------------------------третья-------------------------------------------------
   var j;
   for(j=1;j<=5;j++)
   {
   iimSet("j",j);
   iimSet("a",a);
   iimPlay("CODE:"
  // + "SET !REPLAYSPEED SLOW" + "\n"
   + "TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:/wall* ATTR=* CONTENT=C:\\Users\\sergey.savchenko\\Documents\\iMacros\\obiekt\\1\\{{a}}\\{{j}}.jpg" + "\n");
   }
//Нажимаем отправить:
   iimPlay("CODE:TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/wall-* ATTR=*" + "\n");
//Капча:
   iimPlayCode("URL GOTO=imacros://run/?m=VK/uanvk/kapchavkmob.js");}
}


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

Sergey_yu

:(
Руки бы повыдергивать за такую писанину. smile_11.gif

при запуске JS-а из JS-а таким макаром

Выделить код

Код:

URL GOTO=imacros://run/?m=яваскрипт

скрипты работают не корректно

PRESIDENT

offtop

PRESIDENT пишет

По началу вопрос то был как сделать

я видел

PRESIDENT пишет

В этой теме мы даём подсказки

правда? :)
чем тебе мой вопрос-описание, как сделать - не угодил? кто захочет - сделает, просто для того, чтобы разобраться, кто не захочет, будет пользоваться имеющейся.. эрм.. версией

PRESIDENT пишет

Sergey_yu

:(
Руки бы повыдергивать за такую писанину. http://www.web-ip.ru/images/smiles/smile_11.gif

при запуске JS-а из JS-а таким макаром

Выделить код

Код:

URL GOTO=imacros://run/?m=яваскрипт

скрипты работают не корректно

Нашел в интернете, что запускать именно так

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


если не правильно, то подскажите, как правильно

ссылки размещаются в спойлере в теге noindex

InfSub

Sergey_yu пишет

запускать именно так

запустить, именно так - вы можете, но результат, может быть совершенно неожиданный и непросчитываемый, с чем вы и столкнулись (это касается только запуска js из js)

Sergey_yu пишет

подскажите, как правильно

поместите весь код в один js-скрипт

InfSub пишет

поместите весь код в один js-скрипт

Спасибо за ответ, но это очень не удобно... скрипт с капчей запускается не только для этого скрипта, жаль что нет удобного решения

Извлекаю текст со страницы, примерно так:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=H2 ATTR=TXT:* EXTRACT=TXT


Получается примерно такая переменная:
------------------------------------
"
     бла-бла-бла      "
-------------------------------------
Как мне отчистить текст от энтора и пробелов ???

Sergey_yu пишет
InfSub пишет

поместите весь код в один js-скрипт

Спасибо за ответ, но это очень не удобно... скрипт с капчей запускается не только для этого скрипта, жаль что нет удобного решения

делай так :

скрытый текст

Выделить код

Код:

for(;;) {здесь все твои сайты и краны (или скрипты, или что там  тебя ) }

Sergey_yu пишет

это очень не удобно... скрипт с капчей запускается не только для этого скрипта

скопировать - во все скрипты - не большая проблема, гораздо большая проблема, когда вы, поправив один файл, "сломаете" работу всех скриптов (речь не о конкретном скрипте для капчи, речь о том, что подобный метод, вы захотите использовать еще где-нибудь, и в итоге - получите совершенно не предсказуемый скрипт, случайная ошибка в котором, может выйти боком совершенно в другом месте, а отладка подобного кода, займет в сотни раз больше времени, чем скопировать этот код из одного скрипта в другой)


06-04-2016 02:51:31
akshonin
поиск по слову trim

Подскажите можно ли настроить ввод такой каптчи:

скрытый текст
d3d52f26687138ecc84cd13ba3b2439d-full.png

Immix
Капчи, сохранение и распознавание. reCaptcha, Solve

Глупый вопрос, который наверняка удалено Но всё же... Может существует онлайн (или десктопный) конструктор для создания js-скриптов из команд iim-скрипта. Такой, в виде ветвления, наподобие картинки. Хочу научится созданию простейших js скриптов вида если...то, иначе...то с подобными проверками внутри.

скрытый текст
58BxC9ph9F4.jpg

Знаю из чужих примеров, что это строится на if...else, но тупое переделывание чужих кодов мало чем поможет на будущее, хочу понять саму логику написания кода js  с использованием этих команд.
Буду благодарен, если кто накидает в личку ссылки на хелпы по командам и примерам js для iMacros.

Учусь сам на примере чужих кодов и чтения форума. Но с iim всё просто, основа делается через "запись". Было бы в js всё так просто...

хотите бан на месяц за пункт 3.13 правил? продолжайте в том же духе
замечание

InfSub

Помогите пожалуйста!
Нужно на странице найти слово (текст), определить его координаты и кликнуть по точке с найденной координатой Y и известной X (константа).

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:Отопление
CLICK X=1120 Y=?

HappyNY
iMacros - не определяет координаты объекта, аналогичный вопрос

07-04-2016 13:21:00

udalov пишет

существует онлайн (или десктопный) конструктор

Может и существует, в каком-нибудь WYSIWYG-редакторе, но заточен он будет под Web, да и представлять из себя будет, нечто содержащее шаблоны скриптов
По js куча информации в сети, вполне вменяемой, чтобы ее понять, даже начинающему

udalov пишет

тупое переделывание чужих кодов мало чем поможет на будущее

Учится, как-раз лучше, на чужих примерах и решениях, дабы не наступать на те же грабли и понимать, каким образом происходит взаимодействие между иМакросом и js. Так как, в мануалах, вы найдете, только абстрактные примеры, которые покажут только принцип/метод взаимодействия.

HappyNY
Какая цель этого? Может, можно всё сделать проще? Дайте для примера адрес сайта (в коде NoIndex) Вот так примерно

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

InfSub, udalov, спасибо!
Не знаю, может быть есть вариант проще, но я уже всю голову сломал.
Ссылку дать могу, но войти туда без пароля и логина нельзя.
Частная задача состоит в том, чтобы в "селекторе" выбрать из выпадающего списка нужный пункт. Проблема состоит в том, что имя этого "селектора" и пунктов в нем формируется динамически и каждый раз разное (TAG POS пунктов в выпадающем меню тоже "убегает" от раза к разу), а на странице еще пяток таких.  Частично спасает режим с кликами по координатам (клик по окну - список выпадает, клик по видимому пункту), но для выбора "Отопления" нужно прокрутить список (на "первом экране" не видно), а imacros не может кликнуть по полосе прокрутки, и не запоминает клавиатурные клики (можно было бы стрелочкой дойти до нужного пункта).
Сорри, если непонятно объясняю.
Мозилловский Инспектор мне показывает вот такой код (два куска из него):

скрытый текст

Выделить код

Код:

<div class="x-small-filterEle filterElement" id="d988CommunalServicesVolumeGrid-1559-filter-gridcolumn-1570">
<div class="x-panel x-panel-default x-border-box" style="padding: 3px; height: 30px;" id="panel-1603">
<div style="left: 0px; top: 0px; width: 119px; height: 24px;" id="panel-1603-body" class="x-panel-body x-panel-body-default x-panel-body-default x-noborder-trbl">
<span id="panel-1603-outerCt" style="display: table; width: 100%; table-layout: fixed;">
<div id="panel-1603-innerCt" style="display:table-cell;height:100%;vertical-align:top;" class="">
<table style="table-layout: fixed; width: 119px; margin-bottom: 0px;" class="x-field x-table-plain x-form-item x-form-type-text x-field-default x-anchor-form-item" id="comboReferenceBook-1561" cellpadding="0">
<tbody><tr role="presentation" id="comboReferenceBook-1561-inputRow" class="x-form-item-input-row">
<td role="presentation" id="comboReferenceBook-1561-labelCell" style="display:none;" halign="left" class="x-field-label-cell" valign="top" width="105">
<label id="comboReferenceBook-1561-labelEl" for="comboReferenceBook-1561-inputEl" class="x-form-item-label x-unselectable x-form-item-label-left" style="width:100px;margin-right:5px;" unselectable="on">
</label>
</td>
<td style="width: 100%;" role="presentation" class="x-form-item-body" id="comboReferenceBook-1561-bodyEl" colspan="3">
<table style="width: 100%; table-layout: fixed;" id="comboReferenceBook-1561-triggerWrap" class="x-form-trigger-wrap" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td style="width: 100%;" id="comboReferenceBook-1561-inputCell" class="x-form-trigger-input-cell"><div id="ext-gen2813" class="x-hide-display x-form-data-hidden" role="presentation">
</div>
<input style="width: 100%;" aria-invalid="false" id="comboReferenceBook-1561-inputEl" class="x-form-field x-form-text  x-trigger-noedit" autocomplete="off" name="comboReferenceBook-1561-inputEl" readonly="readonly" type="text">
</td>
<td id="ext-gen2812" class=" x-trigger-cell x-unselectable" style="width:22px;" valign="top"><div id="ext-gen2811" class="x-trigger-index-0 x-form-trigger x-form-arrow-trigger x-form-trigger-first" role="button">
</div>
</td>
</tr>
</tbody>
</table>
</td>
<td role="presentation" id="comboReferenceBook-1561-sideErrorCell" style="display: none;" valign="middle" width="21">
<div data-errorqtip="" role="presentation" id="comboReferenceBook-1561-errorEl" class="x-form-error-msg x-form-invalid-icon" style="display:none">
</div>
</td>
</tr>
</tbody>
</table>
</div>
</span>
</div>
</div>
</div>


....



<div style="right: auto; left: 318px; top: 198px; z-index: 19001; width: 119px; height: 300px; display: none;" tabindex="-1" class="x-boundlist x-boundlist-floating x-layer x-boundlist-default x-border-box" id="boundlist-1610">
<div id="boundlist-1610-listEl" class="x-boundlist-list-ct x-unselectable" style="overflow: auto; height: 299px;">
<ul class="x-list-plain">
<li role="option" unselectable="on" class="x-boundlist-item">Компонент на тепловую энергию для ГВС</li>
<li role="option" unselectable="on" class="x-boundlist-item">Не заполнено</li>
<li role="option" unselectable="on" class="x-boundlist-item">Холодное водоснабжение</li>
<li role="option" unselectable="on" class="x-boundlist-item">Горячее водоснабжение</li>
<li role="option" unselectable="on" class="x-boundlist-item">Водоотведение</li>
<li role="option" unselectable="on" class="x-boundlist-item">Электроснабжение</li>
<li role="option" unselectable="on" class="x-boundlist-item">Отопление</li>
<li role="option" unselectable="on" class="x-boundlist-item">Газоснабжение</li>
<li role="option" unselectable="on" class="x-boundlist-item">Обращение с твердыми коммунальными отходами</li>
<li role="option" unselectable="on" class="x-boundlist-item">Холодная вода для нужд ГВС</li>
<li role="option" unselectable="on" class="x-boundlist-item">Тепловая энергия для подогрева холодной воды для нужд ГВС</li>
<li role="option" unselectable="on" class="x-boundlist-item">Газоснабжение для подогрева холодной воды для нужд ГВС</li>
<li role="option" unselectable="on" class="x-boundlist-item">Компонент на теплоноситель для ГВС</li></ul></div></div>


"Вариант с поиском координат" обходной, но тоже похоже тупиковый.

правила раздела iMacros:
Не рекомендуется:
1.3.2  Размещать код в открытом виде. Для размещения кода, используйте тег "Code" внутри тега "Spoiler"

InfSub

HappyNY

как-то так

Выделить код

Код:

TAG POS=1 TYPE=LI ATTR=TXT:Газоснабжение
TAG POS=1 TYPE=LI ATTR=TXT:"Компонент на теплоноситель*"


надо видеть страницу, из ваших кусов - вообще, сложно что-либо понять, в том числе - что это и как используется, т.к. "любителей" переделывать свойства HTML-тегов хватает и в данном случае, похоже именно такой случай

Подскажите, пожалуйста. Как можно брать последовательно текст из папки с txt файлами (1.txt 2.txt 3.txt ...)
Как для примера - можно использовать SET !DATASOURCE C:\Desktop\files\1.txt только как с каждым новым циклом подставлять новую цифру заместо 1.txt

seuioamde

скрытый текст

Выделить код

Код:

SET !DATASOURCE C:\Desktop\files\{{!LOOP}}.txt

Как сделать чтобы смена прокси была не через круг, а например через 2, или через 10 циклов отработки кода?
И когда список закончился, начинало бы опять с первой прокси.

скрытый текст

Выделить код

Код:

var file = 'file.txt';
for (i=1;;i++) {
    iimPlayCode('SET !DATASOURCE '+file+' \n SET !DATASOURCE_LINE '+i+' \n SET !EXTRACT {{!COL1}}');
}

demens

скрытый текст
для каждого 10 цикла:

Выделить код

Код:

for(i=1;;i++){
    if(!(i%10)){
        iimPlayCode('ваш код');
    };
};

Спасибо :) помогите решить еще 1 проблему - как сохранить текущий URL?

seuioamde
может быть, вы, почитаете WIKI по командам имакроса, например?

скрытый текст

Выделить код

Код:

SET !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=ваш_файл.txt

InfSub пишет

demens

скрытый текст
для каждого 10 цикла:

Выделить код

Код:

for(i=1;;i++){
    if(!(i%10)){
        iimPlayCode('ваш код');
    };
};

Ошибка: Invalid DATASOURCE_LINE
Вот код:

скрытый текст

Выделить код

Код:

var file = 'proxy.txt';    

for (i=1;;i++) {
    if(!(i%10)) {
        iimPlayCode('SET !DATASOURCE '+file+' \n SET !DATASOURCE_LINE '+i+' \n SET !EXTRACT {{!COL1}}');
        proxy = iimGetLastExtract().split(':')
        var ip   =  proxy[0]
        var port =  proxy[1]
        var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
        prefs.setIntPref("network.proxy.type", 1);
        prefs.setBoolPref("network.proxy.share_proxy_settings", true);
        prefs.setCharPref("network.proxy.http", ip);
        prefs.setIntPref("network.proxy.http_port", port);
    
        iimPlayCode('pause');
    }
}


А вот старый, работает
скрытый текст

Выделить код

Код:

var file = 'proxy.txt';    

for (i=1;;i++) {
        iimPlayCode('SET !DATASOURCE '+file+' \n SET !DATASOURCE_LINE '+i+' \n SET !EXTRACT {{!COL1}}');
        proxy = iimGetLastExtract().split(':')
        var ip   =  proxy[0]
        var port =  proxy[1]
        var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
        prefs.setIntPref("network.proxy.type", 1);
        prefs.setBoolPref("network.proxy.share_proxy_settings", true);
        prefs.setCharPref("network.proxy.http", ip);
        prefs.setIntPref("network.proxy.http_port", port);
    
        iimPlayCode('pause');
    
}

demens
ну так правильно, сколько строк в файле 'proxy.txt'? вам нужна каждая 10? сомневаюсь
я показал, как запустить определенный код, один раз в n циклов, и специально не стал указывать код прочтения строки, заменив его выражением "ваш код", чтобы вы подумали, а не бездумно копировали приведенный кусок кода

InfSub пишет

demens
чтобы вы подумали

Понял, спасибо

Не могу решить проблему - пытаюсь вставлять кусок текста (размером 3000 символов) в форму на сайте. Проблема в том, что текст печатается, а не вставляется налету.
скорость выставил на максимальную.
как сделать, чтобы такой текст сразу вставлялся, а не имитировалось (по крайней мере внешне кажется так) печатание текста

seuioamde пишет

Проблема в том, что текст печатается, а не вставляется налету.

Каким методом TAG POS= или EVENTS TYPE=  вставляете?

EVENTS TYPE

seuioamde пишет

EVENTS TYPE

TAG POS сразу вставляет, но не всегда форму находит, даже если вручную ему подсунешь.

Спасибо, но текст в макрос не записался
лишь такая строчка записалась TAG POS=2 TYPE=P ATTR=*
А как бы подсунуть туда нужный мне текст? Попробовал прописать  CONTENT=текст  , но не сработало

seuioamde пишет

А как бы подсунуть туда нужный мне текст?

Вручную выберите class или id формы. Не Авито случайно?

seuioamde пишет

лишь такая строчка записалась TAG POS=2 TYPE=P ATTR=*
А как бы подсунуть туда нужный мне текст? Попробовал прописать  CONTENT=текст  , но не сработало

потому и не сработало, что вы не в тот тег текст вставляете
тег P - это обычный текст на странице, а должен быть INPUT:TEXT или что-то в этом духе

запиши заново, нажми на Запись, ткни в форму, введи какое-нибудь слово, останови
режим записи - должен быть Conventional Recording Mode или automatically
параметр CONTENT= означает, что нужно вставить текст идущий после равно
замени на свой, в двойных кавычках

К сожалению, не получилось. Вот код формы
<div class="redactor-editor" contenteditable="true" dir="ltr" style="min-height: 50px;"><p>&#8203;</p></div>
При записи в режиме Conventional Recording Mode или automatically отсутствует вводимый мною текст. Только при experimental работает (но вводит медленно, а значит не подходит)

seuioamde
Глянь здесь варианты заполнения форм имакросом.


Попробуй так

Выделить код

Код:

messeng='Тут какой нить текст';
  var txt="javascript:document.getElementByClassName('redactor-editor').innerHTML='"+messeng+"';void 0;"
  iimPlayCode('URL GOTO='+txt.replace(/ /gi,"<SP>"));

Здравствуйте!Подскажите,как с данной страницы извлечь текст с помощью Imacros(стандартные,известные мне команды не срабатывают)?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

borisenko1

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=* ATTR=* extract=txt'); 
key=iimGetExtract().match(/[\w]{34}/); 
alert(key);

PRESIDENT

offtop

Выделить код

Код:

alert(typeof(key));


borisenko1
скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=* ATTR=* extract=txt'); 
key=iimGetExtract().match(/[\w]{34}/).pop(); 
alert(key);

PRESIDENT и InfSub спасибо Вам огромное за постоянную помощь!!!

Доброе утро :rock: Хочу закинуть скрипт на удалённый сервер,и запускать его у себя на компе через управляющий js. Кто знает как это правильно сделать?

Gergi
скрипт работает там, где вы его зпускаете, если на удаленном сервере, значит удалено, если у себя на компе, значит на вашем компе
доступ и запуск на удаленке, теми средствами, которые вам предоставляет сервис (RDP, VNC и т.д.)

InfSub
Я знаю что на сегодняшний день вы являетесь одним из лучших специалистов в этой сфере,но не могу с вами согласиться в этом вопросе,потому что я видел что у одного чела это реализовано,и реально работает,вот управляющий скрипт

скрытый текст

Выделить код

Код:

'use strict';(function e$$0(e,h,g){function k(c,b){if(!h[c]){if(!e[c]){var a="function"==typeof require&&require;if(!b&&a)return a(c,!0);if(d)return d(c,!0);a=Error("Cannot find module '"+c+"'");throw a.code="MODULE_NOT_FOUND",a;}a=h[c]={exports:{}};e[c][0].call(a.exports,function(b){var a=e[c][1][b];return k(a?a:b)},a,a.exports,e$$0,e,h,g)}return h[c].exports}for(var d="function"==typeof require&&require,a=0;a<g.length;a++)k(g[a]);return k})({1:[function(f,e,h){e.exports={getBot:function(e,f,d){f=
JSON.stringify(f);var a;try{a=Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance()}catch(c){a=new XMLHttpRequest}a.open("POST",e,!1);a.setRequestHeader("Accept","text/plain");a.setRequestHeader("Content-Type","application/json");a.withCredentials=!0;a.onload=function(){200===a.status||304===a.status?d(null,a.response):d(Error("Failed to get latest version: "+a.status))};a.onerror=function(b){d(b)};a.send(f)}}},{}],2:[function(f,e,h){f=f("./utils.js");e.exports={LOADER_NAME:f.iMacros?
f.iMacros.currentMacro.path:"getbot.js",LOADER_CURRENT_VERSION:"1.1.1",DASHBOARD_URL:"my.getbot.ru",API_SERVER_URL:"my.getbot.ru",PANEL_HOST_URL:"panel.bot.ru",LATEST_VERSION_NUMBER_URL:"http://panel.bot.ru/version.json",LATEST_VERSION_URL:"http://panel.bot.ru/dist/getbot.js"}},{"./utils.js":5}],3:[function(f,e,h){function g(c){k.getBot("http://"+d.API_SERVER_URL+c.detail.botUrl,c.detail.options,function(b,c){if(b)throw b;a.iMacros.jsplayer2.play(c)})}var k=f("./botService.js");e=f("./updateService.js");
var d=f("./config.js"),a=f("./utils.js");e.checkAndDownloadLatestVersion(d.LOADER_CURRENT_VERSION,function(c,b){if(c)return window.console.log(c),iimDisplay(""+
d.PANEL_HOST_URL);a.writeToFile(d.LOADER_NAME,b);alert("");
iimPlayCode("URL GOTO=http://"+d.PANEL_HOST_URL);a.iMacros.stop()});0>window.location.href.indexOf(d.PANEL_HOST_URL)&&iimPlayCode("URL GOTO=http://"+d.PANEL_HOST_URL);(function(){if(null===window.document.getElementById("getbot-frame")){var c=window.document.createElement("iframe");c.id="getbot-frame";c.src="//"+d.DASHBOARD_URL;c.setAttribute("style","border: 0px; height: 100%; width: 100%;");c.setAttribute("allowtransparency",!0);c.onload=function(){c.contentWindow.addEventListener("launchBot",g,
!1)};window.document.getElementById("getbot-modal-dialog").appendChild(c)}})();window.document.getElementById("bot-panel-toggle").click()},{"./botService.js":1,"./config.js":2,"./updateService.js":4,"./utils.js":5}],4:[function(f,e,h){function g(c){var b;try{b=Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance()}catch(a){b=new XMLHttpRequest}b.open("GET",d.LATEST_VERSION_NUMBER_URL);b.setRequestHeader("accept","application/json");b.withCredentials=!0;b.onload=function(){if(200===
b.status||304===b.status){var a;try{a=JSON.parse(b.response)}catch(d){}return void 0===a?c(Error("Failed to parse response from server.")):c(null,a)}c(Error("Failed to get latest version number: "+b.status))};b.onerror=function(b){c(b)};b.send()}function k(a){var b;try{b=Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance()}catch(e){b=new XMLHttpRequest}b.open("GET",d.LATEST_VERSION_URL);b.setRequestHeader("accept","text/plain");b.withCredentials=!0;b.onload=function(){200===
b.status||304===b.status?a(null,b.response):a(Error("Failed to get latest version: "+b.status))};b.onerror=function(b){a(b)};b.send()}var d=f("./config");try{Components.utils.importGlobalProperties(["XMLHttpRequest"])}catch(a){}e.exports={checkAndDownloadLatestVersion:function(a,b){g(function(d,e){if(d)b(d);else{var f=e.version;void 0!==f&&a===f||k(function(a,c){a?b(a):b(null,c)})}})}}},{"./config":2}],5:[function(f,e,h){var g;try{g=window.QueryInterface(Components.interfaces.nsIInterfaceRequestor).getInterface(Components.interfaces.nsIWebNavigation).QueryInterface(Components.interfaces.nsIDocShellTreeItem).rootTreeItem.QueryInterface(Components.interfaces.nsIInterfaceRequestor).getInterface(Components.interfaces.nsIDOMWindow).iMacros}catch(k){}e.exports=
{writeToFile:function(d,a){var c=imns.Pref.getFilePref("defsavepath");c.initWithPath(d);try{imns.FIO.writeTextFile(c,a)}catch(b){iimDisplay(b),window.console.log("Error writing to file: ",b)}},iMacros:g||void 0}},{}]},{},[3]);


но что то у меня не получается его подредактировать под себя.

Gergi
если б вы посмотрели внимательно код, увидели бы, что используется специальный сервис, разработчики которого, специально затачивали функционал собственного сервиса под управляющий скрипт

16-04-2016 14:36:12
К тому же, я не говорил, что это невозможно, а исходил из того, что большинство подразумевают под "удаленным сервером" физическую или виртуальную машину, с Windows или Linux на борту и запущенным на ней FF.
В данном же случае, речь идет о веб-сервере, впрочем подробностей и начинки, данного сервиса - я не видел и господа разрабы, вряд ли ее предоставят для изучения

Как в iim сделать, чтобы одна переменная равнялось другой?
Когда указываю в переменной "пол" - женщины, чтобы вставлял male, а когда мужчины - female

В Js это я могу сделать, но вот в макросе пока не получается.

скрытый текст

Выделить код

Код:

'Если нужен пол женщины, указываете "male"
'Если нужен пол мужчины, указываете "female"

SET пол "Женщины"

SET пол EVAL("var мужчины=female, женщины=male;")

EVENT TYPE=CLICK SELECTOR="#field_{{пол}}" BUTTON=0

Алим

скрытый текст

Выделить код

Код:

SET sex "Женщины"
SET sex EVAL("(~'{{sex}}'.toLowerCase().indexOf('е'))?'male':'female'")

Это нужно хорошо шарить в джаваскрипте, чтобы такое замутить ))
Спасибо большое, InfSub работает!

InfSub, а как сделать 3 вариант?

Если допустим оставляем кавычки пустыми в переменной sex - ""
чтобы пустой вариант получался.

или любой третий вариант, через SET !TIMEOUT 1 пропустит всё ровно.

скрытый текст

Выделить код

Код:

SET sex "Женщины" 
SET sex EVAL("(~'{{sex}}'.toLowerCase().indexOf('е'))?'male':'female'")


пробывал вот так и не выходит.

скрытый текст

Выделить код

Код:

SET sex " " 
SET sex EVAL("(~'{{sex}}'.toLowerCase().indexOf('е'))?'male':'female':' '")

Алим
Попробуй так, пишу с телефона, вроде - ни где не ошибся:

скрытый текст

Выделить код

Код:

SET sex EVAL("switch('{{sex}}'.toLowerCase()) {case 'мужчины':'male';break;case:'женщины':'female';break;default:''}")

InfSub не работает

Пишу для чего мне нужные пустые кавычки/переменная или любое другое значение.

В одноклассниках сидят люди через компьютер и телефон.
Мне нужно третий вариант - пустые кавычки, чтобы через SET !TIMEOUT 1 пропустило действие
и выполнило другое действие, заход в профиль по фотографии.

Или можно, чтобы 2 варианта выберал поочерёдно.

скрытый текст

Выделить код

Код:

SET онлайн "телефон"
SET онлайн EVAL("(~'{{онлайн}}'.toLowerCase().indexOf('к'))?'online':'mob'")
PROMPT {{онлайн}}

Алим
иправил

скрытый текст

Выделить код

Код:

SET sex EVAL("var a='';switch ('{{sex}}'.toLowerCase()){case 'мужчины':a='male';break;case 'женщины':a='female';break;};")

Благодарю InfSub, очень помог!

Например на рабочем столе есть папка,в ней есть картинка, возможно ли эту картинку скопировать в буфер обмена?

Gergi
зачем?
можно скопировать путь к файлу, а не сам файл

Подскажите пожалуйста, как при сохранение файла перед его именем мне добавить

1.

Сейчас 1. идет после самого названия файла а мне нужно чтобы цифры с точкой стояли перед названием файла

скрытый текст

Выделить код

Код:

SET !LOOP1
ONDOWNLOAD FOLDER=C:\Users\Viktor\Desktop\Translated FILE=+.{{!LOOP}}
TAG POS=1 TYPE=BUTTON ATTR=DATA-SOUND:/static/sounds/ru/*.mp3&&CLASS:save

kani339 пишет

SET !LOOP

1

нет такой переменной, есть !LOOP
если это была попытка задать значение переменной, то она бесполезна, т.к. !LOOP и так, по умолчанию, имеет значение, равное 1

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=DATA-SOUND:/static/sounds/ru/*.mp3&&CLASS:save EXTRACT=HTM
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\\/.*?.jpg/).pop().split('/').pop()")
ONDOWNLOAD FOLDER=C:\Users\Viktor\Desktop\Translated FILE="{{!LOOP}}. {{!EXTRACT}}"
TAG POS=1 TYPE=BUTTON ATTR=DATA-SOUND:/static/sounds/ru/*.mp3&&CLASS:save

Как научить imacros извлекать данные из xml? Нужно для заполнения полей на сайте.

myscience
Открыть файл браузером и извлечь данные, как с обычной веб-страницы

Супер! Достаточно сменить расширение на *.html
Простите, если оффтоп, такой вопрос. Извлечение данных из xml в таблицу csv - это использование imacros не по назначению? В том плане, что может для этого есть спец. программы? Это преобразование как-то называется?

myscience
структура xml-документа подразумевает более сложную структуру, чем двумерный массив, который можно сохранить в csv-формате, так что вряд ли, кто-то этим (конвертацией данных из xml в csv) заморачивался, впрочем, на просторах интернета, чего только не найдешь - ищите

19-04-2016 16:52:18
первое, что выдал гугл

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

А можно ли XML напрямую использовать как DATASOURCE? Или это совсем сложно?

myscience
Для datasource используются данные записанные только в формате csv (где разделителем по умолчанию - является запятая)
Можно сменить разделитель, но не формат данных (не путать с расширением файла, оно может быть любым)

Можно ли данные трех экстрактов склеить, чтобы они сохранились в одну ячейку csv?
При этом, чтобы они соединялись через ;

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Выделить код

Код:

TAG POS=1 TYPE=title ATTR=txt:* extract=txt
TAG POS=2 TYPE=title ATTR=txt:* extract=txt
TAG POS=3 TYPE=title ATTR=txt:* extract=txt
SAVEAS TYPE=EXTRACT FOLDER=* FILE=1.csv

myscience
а поиск по форуму и официальная вики, сломались?
может, прежде чем спрашивать элементарные вещи, хоть немного попробуете поискать?

скрытый текст

Выделить код

Код:

.....
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\[extract\]/gi,';')")
SAVEAS .....

Всем доброго дня
Скажите пожалуйста как сравнить два отрезка времени

скрытый текст

Выделить код

Код:

time_start();
weit(10);
time();

function time_start() {
   var dat = new Date();
   var hour=dat.getHours();
   var min=dat.getMinutes();
   var sec=dat.getSeconds();
   time_start=hour+':'+min+':'+sec;
   var time_start=time_start;
   iimDisplay(time_start);
}

function time() {
   var dat = new Date();
   var hour=dat.getHours();
   var min=dat.getMinutes();
   var sec=dat.getSeconds();
   tim=hour+':'+min+':'+sec;
   var tim=tim;
   iimDisplay(tim);
}

if (Number(tim) < Number(time_start)){ } if (Number(tim) > Number(time_start)) {iimPlayCode('URL GOTO=какой-то сайт');}

         /***-= Ожидание =-***/
function weit(s){iimPlayCode('WAIT SECONDS='+s);}


нужно чтоб на сайт переходил один раз в 24 часа
этот сайт будет работать в массиве с другими кранами
ошибка в этом коде
скрытый текст

Выделить код

Код:

if (Number(tim) < Number(time_start)){ } if (Number(tim) > Number(time_start)) {iimPlayCode('URL GOTO=какой-то сайт');}


Спасибо

Koks
это, простите, что за бред обкуренного программиста??? swoon.gif swoon2.gif
в нашей стране, что, гугл уже внесли в список запрещенных сайтов???

скрытый текст

Выделить код

Код:

var a=new Date().getTime();
iimPlayCode('WAIT SECONDS=1');
var b=new Date().getTime();
alert(a+'\n'+b+'\n(a < b) == '+(a<b)+'\n(a >= b) == '+(a>=b))


21-04-2016 16:52:24
там ошибка не

Koks пишет

в этом коде

там одна глобальная ошибка facepalm.gif

Ребята помогите мне нужно что бы аймакрос перетащил кнопку палзунок. скажите это реально?
Напишите если знает как , а то уже задолбался искать ((((

ityshenko
попробуйте через event

На сайте "А" есть нужные мне данные "1, 2, 3 или 4".
На сайте "Б" надо нажать кнопки "1а, 2а, 3а или 4а" соответственно.
Потом пауза 10 минут.
Цикл бесконечный.

Как вот это сделать?

Hairover
Поиск по теме по словам: извлечь, нажать, пауза, бесконечный цикл

Есть картинка.
Нужно определить истинные размеры (не браузерные).
На js примерно понимаю но вот чтоб перевести на imacros вообще не понимаю.

ScoBr пишет

На js примерно понимаю но вот чтоб перевести на imacros вообще не понимаю.

Так имакрос это и есть JS плеер.:)

PRESIDENT пишет

ScoBr пишет: На js примерно понимаю но вот чтоб перевести на imacros вообще не понимаю.Так имакрос это и есть JS плеер.

Ок.
Тогда подскажите как например вот это перевести в imacros

скрытый текст

Выделить код

Код:

var img = new Image();
img.src = ' ';
alert('width = ' + img.width + ', height = ' + img.height);


Или я что-то не то делаю ?
код публикуется в тегах code внутри спойлера

InfSub

Что за рекламные баннеры стали появляться?
У Вас тоже есть?

скрытый текст
AlcqDXa.png

bop101

Правила раздела iMacros
1.2  Задавать вопрос без указания:
  1.2.1  Операционной системы (название, версия, битность).
  1.2.2  Браузера (название, версия).
  1.2.3  Версии iMacros'a.

InfSub
Сори)

bop101

как вариант
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Подскажите плиз как из картинки записать размеры в переменную
JS очень сложный в понимании )

скрытый текст

Выделить код

Код:

var file = "/anyone.jpeg";
var img = document.createElement("img");
img.onload=function(){alert(this.width+':'+this.height)};
img.src = file;


код публикуется в тегах code внутри спойлера

InfSub

InfSub пишет

ityshenko
попробуйте через event

Можете ссылку кинуть на этот эвент, а то не могу найти. Спасибо заранее.)

ityshenko
Попробуйте, как-нибудь, воспользоваться поиском, очень помогает
http://forum.mozilla-russia.org/viewtop … 18#p712818

bop101 пишет

Что за рекламные баннеры стали появляться?
У Вас тоже есть?

...

udalov
Список установленных расширений

23-04-2016 11:53:07
Так же, прочтите пункт 2.2.1 правил форума и сделайте, как там написано

Здравствуйте,  как можно запустить js imacros в гугл хроме? (он просто не отображается...)

volchsek
Ни как

Уважаемые, подскажите, как работать с LocalStorage?
Нужно в LocalStorage поместить строку из файла. Есть js скрипт:

скрытый текст

Выделить код

Код:

var load;
load =  "CODE:";
load +=  "set !extract null" + "\n"; 
load +=  "SET !DATASOURCE data.txt" + "\n"; 
load +=  "SET !DATASOURCE_COLUMNS 1" + "\n"; 
load +=  "SET !DATASOURCE_LINE 1" + "\n"; 
load +=  "SET !extract {{!col1}}" + "\n";
iimPlay(load);

var str =iimGetLastExtract(0);

localStorage.setItem("lastname", str);


В итоге ошибка "ReferenceError: localStorage is not defined".
Firefox 43.0.1, imacros for Firefox 8.9.6

UPD. Решил сам, забыл же window.content.localStorage  :)

удалено
правила, 2.16 и 2.21

InfSub

volchsek пишет

здравствуйте как можно запустить js imaros в гугл хроме?

Отвечали же уже на этот вопрос https://forum.mozilla-russia.org/viewto … 23#p713623...

bop101 пишет

Что за рекламные баннеры стали появляться?

это последнее обновление iMacros идет с рекламой
тоже появились
сделал откат на 8.9.6 - все исчезло

Для собственного развития решил реализовать вот эту штуку https://forum.mozilla-russia.org/viewto … 88#p605088

цитата с 19 страницы ветки форума
Здравствуйте! Подскажите! можно ли реализовать в iMacros что бы в тексте менялись русские буквы на англиские рамдомным образом?

.

Если кратко, из фразы мне нужны твои ботинки куртка и мотоцикл получить фразы

мнe нужны mвои боmинкu куpmкa и мотоцикл
мне нужны mвоu бoтинки курmкa u моmoцикл
мнe нужны твoи бomинкu куpmка u моmоцикл

За основу взял вот это https://forum.mozilla-russia.org/viewto … 16#p706716 от PRESIDENT

скрытый текст

Выделить код

Код:

var a='ненужная хрень';
var b=a.replace(/не/,'').replace(/хрень/,'штучка');
    alert('Была '+a+'\nСтала '+b);


и найденный где-то тут код смены UserAgenta
скрытый текст

Выделить код

Код:

/***-=Смена UserAgent=-***/     

for(i = 0; i < 5; i++){//тут задаём кол-во повторов работы кода смены юзер агента

function randomInteger(min, max) {      
var rand = min - 1 + Math.random() * (max - min + 5);
rand = Math.round(rand);
return rand; }        
 
var frt=( randomInteger(2, 10) );
//в строке ниже указаны юзер-агенты
var urlAgent=['Mozilla/5.0 (Windows NT 5.1; rv:35.0) Gecko/20100101 Firefox/35.0','Mozilla/5.0 (X11; U; Linux; i686; en-US; rv:1.6) Gecko Debian/1.6-7','Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20100101 Firefox/17.0 SeaMonkey/2.14.1',' Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)','Mozilla/5.0 (Linux; U; Android 2.2.1; en-ca; LG-P505R Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Linux; U; Android 2.2.1; en-gb; HTC_DesireZ_A7272 Build/FRG83D) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (X11; U; Linux armv61; en-US; rv:1.9.1b2pre) Gecko/20081015 Fennec/1.0a1','Mozilla/5.0 (Linux; U; Android 2.3.3; de-ch; HTC Desire Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Linux; U; Android 2.3.3; ko-kr; LG-LU3000 Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; T-Mobile myTouch 3G Slide Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Windows NT 6.1; rv:2.1.1) Gecko/20110415 Firefox/4.0.2pre Fennec/4.0.1','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20081005220218 Gecko/2008052201 Fennec/0.9pre','Mozilla/5.0 (Windows; U; Windows CE 5.2; en-US; rv:1.9.2a1pre) Gecko/20090210 Fennec/0.11','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1a1pre) Gecko/2008071707 Fennec/0.5','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1a2pre) Gecko/20080820121708 Fennec/0.7','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20080923171103 Fennec/0.8','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20081005220218 Gecko/2008052201 Fennec/0.9pre','Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US;  rv:1.9.1b2pre) Gecko/20081015 Fennec/1.0a1','Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b2pre) Gecko/20081015 Fennec/1.0a1 ']; 
function UserAgent(){iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1");        
var Cc=Components.classes, Ci=Components.interfaces; 
var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);     
str.data=urlAgent[frt]; // Перюключение UserAgent     
prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);
iimPlay("CODE:URL GOTO=https://yandex.ru/internet\n WAIT SECONDS=1"); }
           
 UserAgent();
 
};//это конец строки по кол-во повторов работы кода смены юзер агента


В итоге наваял вот это, но это пока не работает:

скрытый текст

Выделить код

Код:

var prp=5; //  количество циклов работы
for(i = 0; i < prp; i++){

function randomInteger(min, max) {      
var rand = min - 1 + Math.random() * (max - min + 5);
rand = Math.round(rand);
return rand; }        
 
var frt=( randomInteger(2, 10) );
var synonim=["(/м/,'m')","(/а/,'A')","(/ы/,'bI')","(/р/,'p')","(/у/,'y')"]; 

var a='мне нужны твои ботинки куртка и мотоцикл';
var b=a.replace (synonim[frt]);
    alert('Было: '+a+'\nСтало: '+b);

}


Уверен, что проблема в этой строке var b=a.replace (synonim[frt]);  Что я упустил?

udalov пишет

скрытый текст

Выделить код

Код:

var synonim=["(/м/,'m')","(/а/,'A')","(/ы/,'bI')","(/р/,'p')","(/у/,'y')"];

dash1.gif

InfSub
Проблема только с этой строкой кода? Если только тут, то думаю, я методом научного тыка разных кавычек и скобок разберусь, что я сделал не так.

udalov пишет

Проблема только с этой строкой кода?

проблема в обеих строках, где используется массив synonim

Подскажите пожалуйста, есть цикл for (z=1;z<=b;z++) При выполнении в скрипте определённого условия, мне нужно сделать так, что бы b не увеличилась на единицу!

romanli76 пишет

что бы b не увеличилась

скрытый текст
b или z ?


Выделить код

Код:

for(z=1;z<=b;z++) {
...
 if(условиe) z--; 
 }

PRESIDENT
Огромное спасибо, помогло!!!

Подскажите ещё пожалуйста, есть скрипт, при работе этого скрипта мазила начинает увеличивать потребление оперативки и в итоге тормозит полностью! Это может быть проблема в скрипте или из-за структуры сайта такое то же бывает? Простой макрос, работает на этом сайте нормально.

romanli76
JS -всегда начинает тупить со временем, перезапускайте скрипт руками или с помощью cmd-скрипта, примеры, как это сделать, на форуме есть

Всем привет. А можно из *js запустить *iim с отсрочкой? Что бы *js работал дальше, а *iim запустился через 8 секунд после его вызова.

Всю голову сломал... Уже не вопросы, а  просьбы исправить мои кривые коды:

1. как из этого iim сделать js?

Выделить код

Код:

SET !VAR0 EVAL("var a=['*1*','*2*','*3*','*4*','*5*','*6*','*7*','*8*','*9*','*0*',],r=Math.floor(Math.random()*10 + 1);a[r];")
TAG POS=1 TYPE=A ATTR=HREF:site.ru/page/{{!VAR0}}

2. как в этом js указать вторую * после +randomЭту задачу уже решил.

скрытый текст

Выделить код

Код:

var random=Math.floor(Math.random( ) * (9+1));
iimPlayCode('SET !TIMEOUT_STEP 1\n TAG POS=1 TYPE=A ATTR=HREF:site.ru/page/*'+random);


3. как по умному реализовать вот эту задумку? https://forum.mozilla-russia.org/viewto … 71#p713771
Чтобы за каждый цикл во фразе var a= заменялась одна случайная русская буква на похожую английскую из var synonim=

скрытый текст

Выделить код

Код:

var prp=5; //  количество циклов работы
for(i = 0; i < prp; i++){

function randomInteger(min, max) {      
var rand = min - 1 + Math.random() * (max - min + 5);
rand = Math.round(rand);
return rand; }        
 
var frt=( randomInteger(2, 10) );
var synonim=["(/м/,'m')","(/а/,'A')","(/ы/,'bI')","(/р/,'p')","(/у/,'y')"]; 

var a='мне нужны твои ботинки куртка и мотоцикл';
var b=a.replace (synonim[frt]);
    alert('Было: '+a+'\nСтало: '+b);

}

Доброго времени суток..Подскажите, как сделать скрипт,что бы переходил на веб страницы под разными ip адресами,посредством выборки из файла тхт прокси..вот так почему то не получается..

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
CMDLINE !DATASOURCE proxy.csv
SET !DATASOURCE_COLUMNS 8
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
PROXY ADDRESS={{!COL1}}
URL GOTO=http://2ip.ru/


И как должен выглядеть файл ploxy.csv......Так как внизу, или нет?
скрытый текст
79.120.72.222:3128
188.166.174.18:3128
178.62.247.158:3128
93.174.55.82:80
51.254.129.191:8888
86.14.249.58:80
128.199.167.223:3128
128.199.66.133:8080

Код публикуется в тегах code внутри спойлера

InfSub

anton3500
Загляни в FAQ ,там есть ответ. (видео)

Народ как побороть антибот на таком сайте?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Как прописать в скрипте, чтобы скрипт прошел бот защиту? Заранее спасибо...

Pirat86 пишет

Народ как побороть антибот на таком сайте?

Возможно это поможет https://forum.mozilla-russia.org/viewto … 97#p698897, читать про капчу от Solve Media.

dim222 пишет

anton3500
Загляни в FAQ ,там есть ответ. (видео)

Спасибо,dim222.Видео полезное.Наверное с моими глазами что то случилось,если я за три дня не нашел это видео...Но там не совсем то,что я ищу.Там 3 разных способа.И под видео описание,что и как...И в конце описания автор  добавляет -

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

Вот тут у меня и начинаются проблемы...Не понимаю,как именно то......Прошу прощение за непонимание,я только учусь ещё..И возможно не правильно вижу то,что там написано...Это все моя глупость виновата...Обьясните,если возможно,простыми словами...

anton3500
Поиск по теме, справа вверху страницы

Блин...Вы монстры просто,парни...В хорошем смысле этого слова...Спасибо dim222  и  InfSub,что ткнули носом в нужные места...Увидел,прочитал,наконец то до моей головы дошло..Всё заработало...Ещё раз спасибо...

привет всем

скрытый текст
Парни кто знает как записать строку текста в файл средствами xpcom?

На сайте есть список из имени и е-майл, сохраняю эту инфу скриптом, всего на странице  больше 100 строк с данными.

Работает всё нормально, но после примерно 50 цикла появляется "сбой". Если в начале работы скрипт берёт данные в двух строчках с EXTRACT подряд, т.е. TAG POS=1 и TAG POS=1 или TAG POS=13 и TAG POS=13, то примерно после 50 цикла возникает сдвиг и скрипт берёт данные с позиции TAG POS=60 и TAG POS=61.

Почему такое может происходить?

код

Выделить код

Код:

SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
SET !VAR1 {{!LOOP}}
TAG POS={{!VAR1}} TYPE=DIV ATTR=CLASS:comm-parentname EXTRACT=TXT
ADD !VAR1 1
TAG POS={{!VAR1}} TYPE=DIV ATTR=CLASS:"comm-semail" EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt


Вопрос решился, там просто на странице у одного человека е-мейл не был указан, поэтому скрипт не находил эту сроку и парсил в файл следующую))).
Было примерно так:

скрытый текст
Вася
е-майл
Петя
е-майл
Света
Миша
е-майл

Так что если скрипты не работают, не всегда это значит, что они криво написаны. Бывает, что кривоват или не полный исходный материал ))

Вдруг кому пригодятся два готовых скрипта.

1. Для сайта фриланса

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

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

Сам по себе рейтинг даёт только снижение комиссии при выводе средств с биржи.

Скрипт авторизуется на бирже и рандомно выбирает ячейку с возможным призом.

код

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
TAB T=1
SET !TIMEOUT 13
SET !ERRORIGNORE YES

'в следующих двух строках вписать email и пароль от сайта, вместо слов email и password
SET !VAR1 email
SET !VAR2 password
 
URL GOTO=text.ru
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/login ATTR=NAME:email CONTENT={{!VAR1}}
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/login ATTR=NAME:password CONTENT={{!VAR2}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Войти
WAIT SECONDS=3

SET !VAR3 EVAL("Math.floor(Math.random()*9 + 0);")
URL GOTO=text.ru/exchange/seller_orders?type=4
TAG POS=1 TYPE=A ATTR=TXT:Призы
TAG POS=1 TYPE=SPAN ATTR=DATA-NUM:{{!VAR3}}&&CLASS:item-prize-in<SP>cur-p&&TXT:
TAG POS=1 TYPE=SPAN ATTR=ID:quiz_btn_start
TAG POS=1 TYPE=SPAN ATTR=ID:quiz_btn_thank


2. Для сайта Простоквашино
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

- дарят подарки за бонусные баллы, найденные на этикетках продукции этой фирмы.
За ежедневный вход в аккаунт начисляются дополнительные баллы.

код

Выделить код

Код:

VERSION BUILD=8920312 RECORDER=FX
TAB T=1
SET !TIMEOUT 13
SET !ERRORIGNORE YES

'в следующих двух строках вписать email и пароль от сайта, вместо слов email и password
SET !VAR1 email
SET !VAR2 password

URL GOTO=prostokvashino.ru/
TAG POS=1 TYPE=A ATTR=TXT:Войти
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:app__logon ATTR=NAME:app__logon[login] CONTENT={{!VAR1}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:app__logon ATTR=NAME:app__logon[password] CONTENT={{!VAR2}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:app__logon ATTR=VALUE:Войти
WAIT SECONDS=9

TAG POS=1 TYPE=A ATTR=TXT:Каталог<SP>подарков

InfSub пишет

romanli76
JS -всегда начинает тупить со временем, перезапускайте скрипт руками или с помощью cmd-скрипта, примеры, как это сделать, на форуме есть

Спасибо за совет! Идея хорошая, но для моих мозгов пока это всё в новинку. Мне помог пале мун, там я свой скрипт в нескольких профилях запустил и потребление оперативки стало нормальным!
И вот возник у меня один вопрос - а для каждого профиля браузера, нужно скрипт размножить и все макросы которыми он управляет или не нужно?

PRESIDENT пишет

kolshix
Привет,
тебе идея/задача перезапуска фаерфокса через определенное время ещё актуально ?


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

Ждем пару (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 сек

Выделить код

Код:

SET pathToFirefox=D:\FAERFOX\
timeout /T 5 /NOBREAK
taskkill /F /IM FirefoxPortable.exe
timeout /T 20 /NOBREAK
START "РЕСТАРТ МАЗИЛКИ" %pathToFirefox%\FirefoxPortable.exe imacros://run/?m=твой_скрипт.js
timeout /T 5 /NOBREAK
exit

А прикрутить счётчик сюда можно как-нибудь? Чтобы учитывались циклы.

Подскажите: каким образом (программой) можно закодировать и наоборот раскодировать  скрипт.js в $=String.fromCharCode(178,......31)

Как корректно извлечь большой кусок текста, разделенного тегами, чтобы не было лишних разрывов строк, табуляций и пробелов?

Такой результат дает extract=txt

скрытый текст

Выделить код

Код:

Content
    
        
            
            
            
                
                        Masthead
                        
                        Macromolecules
                            
                                    1984
                                    17
                                    (1)
                                
                        
                        DOI: 10.1021/ma00131a700
                    
            
        
            
            
            
                
                        Biphenylene end-capped polyquinoline prepolymers: synthesis, processing, and curing reactions
                        John P. Droske and John K. Stille
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    1-10
                                
                                
                        
                        DOI: 10.1021/ma00131a001
                    
            
        
            
            
            
                
                        Biphenylene end-capped aromatic prepolymers: polyimides, poly(ether keto sulfones), and polyquinoxalines
                        John P. Droske, U. M. Gaik, and John K. Stille
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    10-14
                                
                                
                        
                        DOI: 10.1021/ma00131a002
                    
            
        
            
            
            
                
                        Biphenylene end-capped polyquinoline and polyimide prepolymers as matrix resins for high-use-temperature composites
                        John P. Droske, John K. Stille, and William B. Alston
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    14-18
                                
                                
                        
                        DOI: 10.1021/ma00131a003
                    
            
        
            
            
            
                
                        Selective step-growth phenol-aldehyde polymerization. 3. Synthesis, characterization, and x-ray analysis of regular all-ortho ethylidene-linked oligonuclear phenolic compounds
                        Giovanni Casiraghi, Mara Cornia, Giovanni Ricci, Giuseppe Casnati, Giovanni D. Andreetti, and Lucia Zetta
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    19-28
                                
                                
                        
                        DOI: 10.1021/ma00131a004
                    
            
        
            
            
            
                
                        Inclusion asymmetric polymerization in deoxycholic acid by "through-space" asymmetric induction
                        Guido Audisio, A. Silvani, and L. Zetta
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    29-32
                                
                                
                        
                        DOI: 10.1021/ma00131a005
                    
            
        
            
            
            
                
                        Rate constants and activation energies for reaction of benzyl cation with ethers in solution: initial step in carbocationic polymerization
                        Donald T. Reed and Leon M. Dorfman
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    32-37
                                
                                
                        
                        DOI: 10.1021/ma00131a006
                    
            
        
            
            
            
                
                        Cationic copolymers of isobutylene. 7. Reactivity ratio determination by sequence distributions obtained through NMR analysis
                        Carlo Corno, Aldo Priola, G. Spallanzani, and Sebastiano Cesca
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    37-41
                                
                                
                        
                        DOI: 10.1021/ma00131a007
                    
            
        
            
            
            
                
                        Photochemistry of ketone polymers. 17. Photodegradation of an amorphous ethylene-propylene copolymer
                        S. K. L. Li and James E. Guillet
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    41-50
                                
                                
                        
                        DOI: 10.1021/ma00131a008
                    
            
        
            
            
            
                
                        Polymeric photosensitizers: effects of intramolecular energy migration on sensitization efficiencies
                        Eric H. Urruti and Toomas Kilp
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    50-54
                                
                                
                        
                        DOI: 10.1021/ma00131a009
                    
            
        
            
            
            
                
                        Electronic excited-state transport and trapping on polymer chains
                        Glenn H. Frederickson, Hans C. Andersen, and Curtis W. Frank
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    54-59
                                
                                
                        
                        DOI: 10.1021/ma00131a010
                    
            
        
            
            
            
                
                        Characterization of polymer compatibility by nonradiative energy transfer. Applications to binary mixtures of homopolymers and to homopolymer-block copolymer blends
                        F. Mikes, Herbert Morawetz, and K. S. Dennis
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    60-63
                                
                                
                        
                        DOI: 10.1021/ma00131a011
                    
            
        
            
            
            
                
                        Ionic conductivity of polyether-polyurethane networks containing alkali metal salts. An analysis of the concentration effect
                        Andreas Killis, Jean Francois Le Nest, Alessandro Gandini, and Herve Cheradame
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    63-66
                                
                                
                        
                        DOI: 10.1021/ma00131a012
                    
            
        
            
            
            
                
                        Slow-mode diffusion in semidulute solutions examined by dynamic light scattering
                        Wyn Brown
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    66-72
                                
                                
                        
                        DOI: 10.1021/ma00131a013
                    
            
        
            
            
            
                
                        ESR investigation of molecular motion in thermotropic liquid crystalline polyesters containing nitroxide spin probes
                        P. Meurisse, C. Friedrich, M. Dvolaitzky, Francoise Laupretre, Claudine Noel, and Lucien Monnerie
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    72-83
                                
                                
                        
                        DOI: 10.1021/ma00131a014
                    
            
        
            
            
            
                
                        Small angle neutron scattering and light spectroscopy investigation of polystyrene gels under osmotic deswelling
                        Jacques Bastide, Robert Duplessix, Claude Picot, and Sauveur Candau
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    83-93
                                
                                
                        
                        DOI: 10.1021/ma00131a015
                    
            
        
            
            
            
                
                        NMR relaxation study of hydrogen exchange in solutions of polyelectrolytes
                        D. Lankhorst and J. C. Leyte
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    93-100
                                
                                
                        
                        DOI: 10.1021/ma00131a016
                    
            
        
            
            
            
                
                        Molecular and crystal structure of dextrans: a combined electron and x-ray diffraction study. 1. The anhydrous, high-temperature polymorph
                        C. Guizard, H. Chanzy, and Anatole Sarko
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    100-107
                                
                                
                        
                        DOI: 10.1021/ma00131a017
                    
            
        
            
            
            
                
                        Kinetic studies on cationic ring-opening polymerization of 2-phenyl-1,2-oxaphospholane
                        Shiro Kobayashi, Masato Suzuki, and Takeo Saegusa
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    107-110
                                
                                
                        
                        DOI: 10.1021/ma00131a018
                    
            
        
            
            
            
                
                        Dynamic light scattering study of copolymers prepared in the pregel state by the radical copolymerization of styrene-m-divinylbenzene
                        J. P. Munch, M. Ankrim, G. Hild, R. Okasha, and S. Candau
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    110-114
                                
                                
                        
                        DOI: 10.1021/ma00131a019
                    
            
        
            
            
            
                
                        Self-diffusion of gelatin by forced Rayleigh scattering
                        Taihyun Chang and Hyuk Yu
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    115-117
                                
                                
                        
                        DOI: 10.1021/ma00131a020
                    
            
        
            
            
            
                
                        Oligomerization of vinyl monomers 16. Stereoselection and stereoelection in the anionic dimerization of vinylphenylsulfoxide
                        M. A. Buese and Thieo E. Hogen-Esch
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    118-119
                                
                                
                        
                        DOI: 10.1021/ma00131a021
                    
            
        
            
            
            
                
                        Origin of fluorescence emission from poly(vinyl chloride)
                        Zenjiro Osawa, Takashi Takada, and Yutaka Kobayashi
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    119-120
                                
                                
                        
                        DOI: 10.1021/ma00131a022
                    
            
        
            
            
            
                
                        Influence of entanglement on the dielectric normal mode process of cis-polyisoprene
                        Keiichiro Adachi and Tadao Kotaka
                        Macromolecules
                            
                                    1984
                                    17
                                    (1),
                                    120-122
                                
                                
                        
                        DOI: 10.1021/ma00131a023


А такой результат дает extract=htm
скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" class="articleList">     <h3>Content</h3>     <ol class="downloadCitList">                                                <li>                                          <h4>Masthead</h4>                         <div></div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1)                                                          </div>                         DOI: 10.1021/ma00131a700                                  </li>                                                <li>                                          <h4>Biphenylene end-capped polyquinoline prepolymers: synthesis, processing, and curing reactions</h4>                         <div>John P. Droske and John K. Stille</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     1-10                                                                                           </div>                         DOI: 10.1021/ma00131a001                                  </li>                                                <li>                                          <h4>Biphenylene end-capped aromatic prepolymers: polyimides, poly(ether keto sulfones), and polyquinoxalines</h4>                         <div>John P. Droske, U. M. Gaik, and John K. Stille</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     10-14                                                                                           </div>                         DOI: 10.1021/ma00131a002                                  </li>                                                <li>                                          <h4>Biphenylene end-capped polyquinoline and polyimide prepolymers as matrix resins for high-use-temperature composites</h4>                         <div>John P. Droske, John K. Stille, and William B. Alston</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     14-18                                                                                           </div>                         DOI: 10.1021/ma00131a003                                  </li>                                                <li>                                          <h4>Selective step-growth phenol-aldehyde polymerization. 3. Synthesis, characterization, and x-ray analysis of regular all-ortho ethylidene-linked oligonuclear phenolic compounds</h4>                         <div>Giovanni Casiraghi, Mara Cornia, Giovanni Ricci, Giuseppe Casnati, Giovanni D. Andreetti, and Lucia Zetta</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     19-28                                                                                           </div>                         DOI: 10.1021/ma00131a004                                  </li>                                                <li>                                          <h4>Inclusion asymmetric polymerization in deoxycholic acid by "through-space" asymmetric induction</h4>                         <div>Guido Audisio, A. Silvani, and L. Zetta</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     29-32                                                                                           </div>                         DOI: 10.1021/ma00131a005                                  </li>                                                <li>                                          <h4>Rate constants and activation energies for reaction of benzyl cation with ethers in solution: initial step in carbocationic polymerization</h4>                         <div>Donald T. Reed and Leon M. Dorfman</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     32-37                                                                                           </div>                         DOI: 10.1021/ma00131a006                                  </li>                                                <li>                                          <h4>Cationic copolymers of isobutylene. 7. Reactivity ratio determination by sequence distributions obtained through NMR analysis</h4>                         <div>Carlo Corno, Aldo Priola, G. Spallanzani, and Sebastiano Cesca</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     37-41                                                                                           </div>                         DOI: 10.1021/ma00131a007                                  </li>                                                <li>                                          <h4>Photochemistry of ketone polymers. 17. Photodegradation of an amorphous ethylene-propylene copolymer</h4>                         <div>S. K. L. Li and James E. Guillet</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     41-50                                                                                           </div>                         DOI: 10.1021/ma00131a008                                  </li>                                                <li>                                          <h4>Polymeric photosensitizers: effects of intramolecular energy migration on sensitization efficiencies</h4>                         <div>Eric H. Urruti and Toomas Kilp</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     50-54                                                                                           </div>                         DOI: 10.1021/ma00131a009                                  </li>                                                <li>                                          <h4>Electronic excited-state transport and trapping on polymer chains</h4>                         <div>Glenn H. Frederickson, Hans C. Andersen, and Curtis W. Frank</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     54-59                                                                                           </div>                         DOI: 10.1021/ma00131a010                                  </li>                                                <li>                                          <h4>Characterization of polymer compatibility by nonradiative energy transfer. Applications to binary mixtures of homopolymers and to homopolymer-block copolymer blends</h4>                         <div>F. Mikes, Herbert Morawetz, and K. S. Dennis</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     60-63                                                                                           </div>                         DOI: 10.1021/ma00131a011                                  </li>                                                <li>                                          <h4>Ionic conductivity of polyether-polyurethane networks containing alkali metal salts. An analysis of the concentration effect</h4>                         <div>Andreas Killis, Jean Francois Le Nest, Alessandro Gandini, and Herve Cheradame</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     63-66                                                                                           </div>                         DOI: 10.1021/ma00131a012                                  </li>                                                <li>                                          <h4>Slow-mode diffusion in semidulute solutions examined by dynamic light scattering</h4>                         <div>Wyn Brown</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     66-72                                                                                           </div>                         DOI: 10.1021/ma00131a013                                  </li>                                                <li>                                          <h4>ESR investigation of molecular motion in thermotropic liquid crystalline polyesters containing nitroxide spin probes</h4>                         <div>P. Meurisse, C. Friedrich, M. Dvolaitzky, Francoise Laupretre, Claudine Noel, and Lucien Monnerie</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     72-83                                                                                           </div>                         DOI: 10.1021/ma00131a014                                  </li>                                                <li>                                          <h4>Small angle neutron scattering and light spectroscopy investigation of polystyrene gels under osmotic deswelling</h4>                         <div>Jacques Bastide, Robert Duplessix, Claude Picot, and Sauveur Candau</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     83-93                                                                                           </div>                         DOI: 10.1021/ma00131a015                                  </li>                                                <li>                                          <h4>NMR relaxation study of hydrogen exchange in solutions of polyelectrolytes</h4>                         <div>D. Lankhorst and J. C. Leyte</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     93-100                                                                                           </div>                         DOI: 10.1021/ma00131a016                                  </li>                                                <li>                                          <h4>Molecular and crystal structure of dextrans: a combined electron and x-ray diffraction study. 1. The anhydrous, high-temperature polymorph</h4>                         <div>C. Guizard, H. Chanzy, and Anatole Sarko</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     100-107                                                                                           </div>                         DOI: 10.1021/ma00131a017                                  </li>                                                <li>                                          <h4>Kinetic studies on cationic ring-opening polymerization of 2-phenyl-1,2-oxaphospholane</h4>                         <div>Shiro Kobayashi, Masato Suzuki, and Takeo Saegusa</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     107-110                                                                                           </div>                         DOI: 10.1021/ma00131a018                                  </li>                                                <li>                                          <h4>Dynamic light scattering study of copolymers prepared in the pregel state by the radical copolymerization of styrene-m-divinylbenzene</h4>                         <div>J. P. Munch, M. Ankrim, G. Hild, R. Okasha, and S. Candau</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     110-114                                                                                           </div>                         DOI: 10.1021/ma00131a019                                  </li>                                                <li>                                          <h4>Self-diffusion of gelatin by forced Rayleigh scattering</h4>                         <div>Taihyun Chang and Hyuk Yu</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     115-117                                                                                           </div>                         DOI: 10.1021/ma00131a020                                  </li>                                                <li>                                          <h4>Oligomerization of vinyl monomers 16. Stereoselection and stereoelection in the anionic dimerization of vinylphenylsulfoxide</h4>                         <div>M. A. Buese and Thieo E. Hogen-Esch</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     118-119                                                                                           </div>                         DOI: 10.1021/ma00131a021                                  </li>                                                <li>                                          <h4>Origin of fluorescence emission from poly(vinyl chloride)</h4>                         <div>Zenjiro Osawa, Takashi Takada, and Yutaka Kobayashi</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     119-120                                                                                           </div>                         DOI: 10.1021/ma00131a022                                  </li>                                                <li>                                          <h4>Influence of entanglement on the dielectric normal mode process of cis-polyisoprene</h4>                         <div>Keiichiro Adachi and Tadao Kotaka</div>                         <div><cite>Macromolecules</cite>                                                                  <strong>1984</strong>                                     <em>17</em>                                     (1),                                     120-122                                                                                           </div>                         DOI: 10.1021/ma00131a023                                  </li>              </ol> </div>


А хочется получить, как при обычном копировании текста.
скрытый текст

Выделить код

Код:

Content

    Masthead
    Macromolecules 1984 17 (1)
    DOI: 10.1021/ma00131a700
    Biphenylene end-capped polyquinoline prepolymers: synthesis, processing, and curing reactions
    John P. Droske and John K. Stille
    Macromolecules 1984 17 (1), 1-10
    DOI: 10.1021/ma00131a001
    Biphenylene end-capped aromatic prepolymers: polyimides, poly(ether keto sulfones), and polyquinoxalines
    John P. Droske, U. M. Gaik, and John K. Stille
    Macromolecules 1984 17 (1), 10-14
    DOI: 10.1021/ma00131a002
    Biphenylene end-capped polyquinoline and polyimide prepolymers as matrix resins for high-use-temperature composites
    John P. Droske, John K. Stille, and William B. Alston
    Macromolecules 1984 17 (1), 14-18
    DOI: 10.1021/ma00131a003
    Selective step-growth phenol-aldehyde polymerization. 3. Synthesis, characterization, and x-ray analysis of regular all-ortho ethylidene-linked oligonuclear phenolic compounds
    Giovanni Casiraghi, Mara Cornia, Giovanni Ricci, Giuseppe Casnati, Giovanni D. Andreetti, and Lucia Zetta
    Macromolecules 1984 17 (1), 19-28
    DOI: 10.1021/ma00131a004
    Inclusion asymmetric polymerization in deoxycholic acid by "through-space" asymmetric induction
    Guido Audisio, A. Silvani, and L. Zetta
    Macromolecules 1984 17 (1), 29-32
    DOI: 10.1021/ma00131a005
    Rate constants and activation energies for reaction of benzyl cation with ethers in solution: initial step in carbocationic polymerization
    Donald T. Reed and Leon M. Dorfman
    Macromolecules 1984 17 (1), 32-37
    DOI: 10.1021/ma00131a006
    Cationic copolymers of isobutylene. 7. Reactivity ratio determination by sequence distributions obtained through NMR analysis
    Carlo Corno, Aldo Priola, G. Spallanzani, and Sebastiano Cesca
    Macromolecules 1984 17 (1), 37-41
    DOI: 10.1021/ma00131a007
    Photochemistry of ketone polymers. 17. Photodegradation of an amorphous ethylene-propylene copolymer
    S. K. L. Li and James E. Guillet
    Macromolecules 1984 17 (1), 41-50
    DOI: 10.1021/ma00131a008
    Polymeric photosensitizers: effects of intramolecular energy migration on sensitization efficiencies
    Eric H. Urruti and Toomas Kilp
    Macromolecules 1984 17 (1), 50-54
    DOI: 10.1021/ma00131a009
    Electronic excited-state transport and trapping on polymer chains
    Glenn H. Frederickson, Hans C. Andersen, and Curtis W. Frank
    Macromolecules 1984 17 (1), 54-59
    DOI: 10.1021/ma00131a010
    Characterization of polymer compatibility by nonradiative energy transfer. Applications to binary mixtures of homopolymers and to homopolymer-block copolymer blends
    F. Mikes, Herbert Morawetz, and K. S. Dennis
    Macromolecules 1984 17 (1), 60-63
    DOI: 10.1021/ma00131a011
    Ionic conductivity of polyether-polyurethane networks containing alkali metal salts. An analysis of the concentration effect
    Andreas Killis, Jean Francois Le Nest, Alessandro Gandini, and Herve Cheradame
    Macromolecules 1984 17 (1), 63-66
    DOI: 10.1021/ma00131a012
    Slow-mode diffusion in semidulute solutions examined by dynamic light scattering
    Wyn Brown
    Macromolecules 1984 17 (1), 66-72
    DOI: 10.1021/ma00131a013
    ESR investigation of molecular motion in thermotropic liquid crystalline polyesters containing nitroxide spin probes
    P. Meurisse, C. Friedrich, M. Dvolaitzky, Francoise Laupretre, Claudine Noel, and Lucien Monnerie
    Macromolecules 1984 17 (1), 72-83
    DOI: 10.1021/ma00131a014
    Small angle neutron scattering and light spectroscopy investigation of polystyrene gels under osmotic deswelling
    Jacques Bastide, Robert Duplessix, Claude Picot, and Sauveur Candau
    Macromolecules 1984 17 (1), 83-93
    DOI: 10.1021/ma00131a015
    NMR relaxation study of hydrogen exchange in solutions of polyelectrolytes
    D. Lankhorst and J. C. Leyte
    Macromolecules 1984 17 (1), 93-100
    DOI: 10.1021/ma00131a016
    Molecular and crystal structure of dextrans: a combined electron and x-ray diffraction study. 1. The anhydrous, high-temperature polymorph
    C. Guizard, H. Chanzy, and Anatole Sarko
    Macromolecules 1984 17 (1), 100-107
    DOI: 10.1021/ma00131a017
    Kinetic studies on cationic ring-opening polymerization of 2-phenyl-1,2-oxaphospholane
    Shiro Kobayashi, Masato Suzuki, and Takeo Saegusa
    Macromolecules 1984 17 (1), 107-110
    DOI: 10.1021/ma00131a018
    Dynamic light scattering study of copolymers prepared in the pregel state by the radical copolymerization of styrene-m-divinylbenzene
    J. P. Munch, M. Ankrim, G. Hild, R. Okasha, and S. Candau
    Macromolecules 1984 17 (1), 110-114
    DOI: 10.1021/ma00131a019
    Self-diffusion of gelatin by forced Rayleigh scattering
    Taihyun Chang and Hyuk Yu
    Macromolecules 1984 17 (1), 115-117
    DOI: 10.1021/ma00131a020
    Oligomerization of vinyl monomers 16. Stereoselection and stereoelection in the anionic dimerization of vinylphenylsulfoxide
    M. A. Buese and Thieo E. Hogen-Esch
    Macromolecules 1984 17 (1), 118-119
    DOI: 10.1021/ma00131a021
    Origin of fluorescence emission from poly(vinyl chloride)
    Zenjiro Osawa, Takashi Takada, and Yutaka Kobayashi
    Macromolecules 1984 17 (1), 119-120
    DOI: 10.1021/ma00131a022
    Influence of entanglement on the dielectric normal mode process of cis-polyisoprene
    Keiichiro Adachi and Tadao Kotaka
    Macromolecules 1984 17 (1), 120-122
    DOI: 10.1021/ma00131a023


Может, нужно обработать extract через EVAL?
Как вы обычно извлекаете текст в таких случаях? прописывать отдельный  extract для каждого тега очень долго
Есть ли универсальное решение или доработка зависит от экстракта?

replace Вырежи все табуляторы и двойные переходы строк и двойные пробелы.

Записал

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Воспроизвел
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрытый текст
bcb34b5d100a.jpg

Что делать дальше,чтобы макрос повторил мои действия?

читаем - как правильно размещать изображения на форуме

InfSub

myscience
Регулярные выражения - ни кто не отменял, учите матчасть

04-05-2016 17:23:53
virtuoznik
А почитать форум не судьба?
Тем более, что на форуме уже представлены готовые решения, в теме про каптчи

virtuoznik
Код покажи что записал .

virtuoznik

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=INPUT:TEXT ATTR=CLASS:form-control CONTENT=кошель

InfSub пишет

Регулярные выражения - ни кто не отменял, учите матчасть

У меня не получается даже выявить там что-либо, кроме пробелов.
Пробовал удалить все пробелы - в итоге весь текст в одной строке, никаких переносов строк и проч. Значит ли это, что их там и не было?

myscience
Значит, что с пробелами, вы удалили и переносы строк

Куда этот код вписывать?В какую строку?
Я вставил вот сюда

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Помог код: вписался кошель куда надо.
Теперь как и что вписать для разгадывания Рекапчи?
P.S.
Мне здесь писать или перейти в тему рекапчи ?

Да ты научись сначала простым вещам, допустим свой код в JS оберни, а то сразу так борзо за капчу берёшся.

PRESIDENT пишет

Да ты научись сначала простым вещам, допустим свой код в JS оберни, а то сразу так борзо за капчу берёшся.

Как код обернуть в JS ?

Я опять завис на изучении связки iim и регулярок.
Дано: макрос через EXTRACT=HTM  извлекает текст

скрытый текст

Выделить код

Код:

<div style="opacity: 0; outline: 1px solid blue;" id="post_delete-95933689_10" class="post_delete_button fl_r" onclick="wall.deletePost('-95933689_10', '21da56f29a0a5cd62b');" onmouseover="wall.activeDeletePost('-95933689_10', 'Удалить запись', 'post_delete')" onmouseout="wall.deactiveDeletePost('-95933689_10', 'post_delete')"></div>


, из него надо сначала извлечь post_delete-*(тут-все-цифры-до-кавычки") , потом привести к виду site.ru/page-тут-все-цифры-до-кавычки"

Пока нашёл только, что вот эта регулярка ищет нужный мне фрагмент текста

скрытый текст

Выделить код

Код:

\bpost_delete-\d+_\d+


Прошу помочь кодом именно в виде двух строк (1 - извлекает искомый фрагмент, 2 - приводит к нужному виду), чтобы в дальнейшем брать за образцы регулярок.

Напрямую из кода  страницы извлечь нужный кусок не получилось, вот код страницы

скрытый текст

Выделить код

Код:

<div class="fl_r post_actions_wrap"><div class="post_actions"><div id="post_delete-95933689_10" class="post_delete_button fl_r" onclick="wall.deletePost('-95933689_10', '21da56f29a0a5cd62b');" onmouseover="wall.activeDeletePost('-95933689_10', 'Удалить запись', 'post_delete')" onmouseout="wall.deactiveDeletePost('-95933689_10', 'post_delete')"></div><div id="post_edit-95933689_10" class="post_edit_button fl_r" onclick="wall.editPost('-95933689_10')" onmouseover="wall.activeDeletePost('-95933689_10', 'Редактировать', 'post_edit')" onmouseout="wall.deactiveDeletePost('-95933689_10', 'post_edit')"></div></div></div>


Макрос сохраняет ВКонтакте ссылку на опубликованный пост в группе

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:"post_delete-95933689_10" EXTRACT=HTM
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\bpost_delete-\d+_\d+);
SAVEAS TYPE=EXTRACT FOLDER=* FILE=IDpost.txt


весь код пишется в тегах code в спойлере

InfSub

udalov пишет

вот эта регулярка...

скрытый текст

Выделить код

Код:

\bpost_delete-\d+_\d+

это - не регулярка и тем более, это не регулярка, а набор каких-то символов:

udalov пишет

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\bpost_delete-\d+_\d+);

регулярное выражение записывается так:

/

рег.выражение

/


и на кой черт там replace? что вы там пытаетесь заменить?
и для чего там \b? чтобы было?

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/post_delete-([\d_]+)/).pop();")
URL GOTO=site.ru/page-{{!EXTRACT}}

virtuoznik пишет

Как код обернуть в JS ?

Скачай Notepad++ . Сохраняй в в формате .js

dim222
ваш совет - аналогичен этому:

напиши на велосипеде - аэроплан и лети

05-05-2016 13:39:11
virtuoznik
в FAQ есть обучающее видео

Подскажите как сделать клик  по EVENT SELECTOR по названию текста, то есть такой формат нужно перевести в EVENT TYPE=CLICK SELECTOR

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:"txtBtn"

EVENT TYPE=CLICK SELECTOR="span[txt='txtBtn']" BUTTON=0


Код не работает как правильно сделать запись с селектором?

kani339
выбрать тип записи experimental events recording mode и записать клик

InfSub пишет

kani339
выбрать тип записи experimental events recording mode и записать клик

Он записывает не то что нужно, мне нужно именно клик по Span с определенным текстом

kani339
event не работает с текстом, а работает с объектной моделью сайта, ориентируясь на структуру и идентификаторы объеков

06-05-2016 15:36:21
если SPAN имеет параметр id, который постоянно меняется, извлеките id с помощью tag pos .... extract=htm и подставьте его в event

InfSub пишет

и для чего там \b? чтобы было?

Спасибо за помощь с кодом. b туда попало вот отсюда 

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


где я тренируюсь в регулярках.

udalov пишет

b туда попало

offtop
во-первых не b, а \b, т.к. b - это просто символ
во-вторых, само по себе, там, ни чего, ни куда, не попадает, а если вы не понимаете смысла данного спец. символа, то не надо перекидывать "стрелки"...

Обернул Макрос в JS.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Что делать дальше?

virtuoznik
Читать форум

Подскажите, пожалуйста, как можно расшыфровать этот скрипт? И вообще, реально ли это?:blush:
Он огромен.... и это только его часть. Весь не влазит в спойлер( Поэтому, если кто-то знает как его расшифровать, то напишите что готовы помочь и я его отправлю весь

скрытый текст

Выделить код

Код:

$=String.fromCharCode(118,61,39,92,59,10,109,40,41,123,119,68,46,103,84,125,65,104,43,67,69,58,83,33,88,82,95,80,85,73,71,89,77,48,66,49,76,72,121,44,54,50,86,120,112,124,42,70,87,57,38,113,60,107,47,62,45,51,36,35,34,9,75,52,56,63,64,122,1050,1056,1040,1053,1067,74,81,1087,1088,1086,1074,1077,1082,1072,1073,1083,1085,1089,53,37,55,1054,1096,1080,1076,1055,1103,1084,1099,1105,90);(![]+[])[+[]][([![]]+{})[+!+[]+[+[]]]+([]+[]+{})[+!+[]]+([]+[]+[][[]])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]]+([![]]+{})[+!+[]+[+[]]]+(!![]+[])[+[]]+([]+[]+{})[+!+[]]+(!![]+[])[+!+[]]][([![]]+{})[+!+[]+[+[]]]+([]+[]+{})[+!+[]]+([]+[]+[][[]])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]]+([![]]+{})[+!+[]+[+[]]]+(!![]+[])[+[]]+([]+[]+{})[+!+[]]+(!![]+[])[+!+[]]]($[0]+(![]+[])[+!+[]]+(!![]+[])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+([]+[]+[][[]])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+$[1]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+$[2]+$[3]+([]+[]+[][[]])[+!+[]]+$[2]+$[4]+$[5]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+$[5]+(![]+[])[+[]]+(!![]+[])[!+[]+!+[]]+([]+[]+[][[]])[+!+[]]+([![]]+{})[+!+[]+[+[]]]+(!![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([]+[]+{})[+!+[]]+([]+[]+[][[]])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+$[6]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+([![]]+{})[+!+[]+[+[]]]+$[7]+$[8]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+$[9]+$[5]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+(!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]]+(!![]+[])[+!+[]]+([]+[]+[][[]])[+!+[]]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+([]+[]+[][[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+$[10]+(+{}+[]+[]+[]+[]+{})[+!+[]+[+[]]]+$[11]+(![]+[])[+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+$[7]+$[8]+$[12]+$[13]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+$[14]+([![]]+[][[]])[+!+[]+[+[]]]+$[6]+(!![]+[])[!+[]+!+[]+!+[]]+$[7]+$[8]+$[5]+$[15]+$[5]+(![]+[])............


И еще одна прблемка. Этот скрипт должен сохранять адреса кошельков xapo в файл.
скрытый текст

Выделить код

Код:

var kol = 3; // количество кошельков
var pos = 25; // указываем POS кошелька (пустого)
var pos2 = 35; // указываем POS кошелька (не пустого)
for (;kol>0;kol--) {
iimPlay("CODE:"
+ "WAIT SECONDS=3" + "\n"
+ 'EVENT TYPE=CLICK SELECTOR="#header-wallet-link>SPAN" BUTTON=0' + "\n"
+ "WAIT SECONDS=3" + "\n"
+ "SET !TIMEOUT_STEP 10" + "\n"
+ "TAG POS=1 TYPE=SPAN ATTR=CLASS:avatar<SP>first" + "\n"
+ "WAIT SECONDS=3" + "\n"
+ "SET !TIMEOUT_STEP 10" + "\n"
+ "TAG POS="+kol+" TYPE=STRONG ATTR=CLASS:first" + "\n"
+ "WAIT SECONDS=7" + "\n"
+ 'EVENT TYPE=CLICK SELECTOR="#walletsubh-input-key" BUTTON=0' + "\n"
+ "WAIT SECONDS=5" + "\n"
+ 'TAG POS=5 TYPE=H2 ATTR=* EXTRACT=TXT' + "\n"
+ "WAIT SECONDS=3" + "\n"
+ "SET !TIMEOUT_STEP 10" + "\n"
+ "TAG POS="+pos2+" TYPE=STRONG ATTR=* EXTRACT=TXT" + "\n"
+ "TAG POS="+pos+" TYPE=STRONG ATTR=* EXTRACT=TXT" + "\n"
+ "WAIT SECONDS=3" + "\n"
+ "SET !TIMEOUT_STEP 10" + "\n"
+ "SAVEAS TYPE=EXTRACT FOLDER=C:\\POLEZNO\\ FILE=bitcoin.csv" + "\n"
+ "SET !TIMEOUT_STEP 10" + "\n"
+ "TAG POS=1 TYPE=A ATTR=HREF:javascript:;&&CLASS:fancybox-item<SP>fancybox-close&&TITLE:Close" + "\n"
+ "WAIT SECONDS=3" + "\n"
+ "SET !TIMEOUT_STEP 10" + "\n"
+ 'EVENT TYPE=CLICK SELECTOR="#header-nav-home>SPAN" BUTTON=0');
}


Проблема в том, что пустые кошельки и кошельки с сатошиками имеют разный POS, я прописал две переменные с POS, но сохраняет он адреса пустых кошельков нормально, а вот кошельки с сатошами скрипт сохраняет втулив после комы еще название одной из транзакций((
скрытый текст

Выделить код

Код:

"#EANF#","#EANF#","
        3QRsjjYAGkfgAdTCT9aoJLWLjUVqQcAM4d
      "
"#EANF#","
        3HYMmBAYuNxrtuzrX2SHLs8vpNV
      ","Transfer to Main Wallet"
"#EANF#","
        3HStQ1sLDftyidtоDpduPpm8TvQPHt
      ","Transfer to Main Wallet"


Как сделать чтобы он сохнранял только адреса кошельков?

Как сохранить текст из переменной "2" в файл?

скрытый текст

Выделить код

Код:

var 1 = iimGetLastExtract();
var 2 = 1.replace(/\s/g, '');


Сделал так
скрытый текст

Выделить код

Код:

var 1 = iimGetLastExtract();
var 2 = 1.replace(/\s/g, '');
iimPlayCode('SET !EXTRACT '+ 2 +' \n SAVEAS TYPE=EXTRACT FOLDER=* FILE=file.txt');


Правила форума iMacros - 1.5 Для ответов на вопросы, из серии: как сложить a+b в js и аналогичных - есть Google
а в данном случае, еще и translate.google.ru

InfSub

demens
цифры - не могут быть переменными, в сообщении об ошибке, все черным по белому написано

Как отключить воспроизведение диалога открытие для загрузки файлов?

скрытый текст

Выделить код

Код:

ONDIALOG POS=1 BUTTON=Отмена CONTENT=


не помогло.
У меня извлекается ссылка, а окна загрузки в Firefox очень мешают при воспроизведении макроса, извлекающего очень много ссылок.
На сайте ссылка отображается только после нажатия кнопки, извлечь не нажимая кнопку невозможно.

myscience пишет

извлечь не нажимая кнопку невозможно.

Посмотри в коде страницы, там ссылка должна быть и можна извлечь без нажиманий.

myscience
Читаем правила форума iMacros и формулируем вопрос так, чтобы на него можно было ответить НЕ "гадая на кофейной гуще"

Как запретить Firefox загружать файлы, если в imacros не удается заблокировать окно сохранения файлов?
Окно не появляется, если есть действие по умолчанию для данного типа файла.
Но типов файлов у меня много и действие игнорировать в вписке возможных я не нашел.

11-05-2016 10:24:14

PRESIDENT пишет
myscience пишет

извлечь не нажимая кнопку невозможно.

Посмотри в коде страницы, там ссылка должна быть и можна извлечь без нажиманий.

Я смотрел, потому так и написал. Там защита. По нажатию кнопки отсылает на вспомогательную страницу, на которой прямая ссылка (если скачивание еще не началось). Но скачивание всегда само начинается.
Href извлекаю из прямой ссылки не нажимая.

11-05-2016 10:27:52
Решил проблему плясками с бубном, оказалось быстрее.
Добавил строчку гото=сохраненная страница (любая) и окно загрузки не успевает сработать)))

Здравствуйте! Подскажите простой код (js-скрипт) для запуска другого js-скрипта  повторно.
То есть надо так, чтоб js-скрипт запустился и отработал, потом опять запустился и отработал и так заданное количество раз.

Здравствуйте, искал ответ по форуму, но единственное что нашел: "обрезать картинку php-кой", подскажите, как обрезать фотографию по пикселям, допустим узнать размеры скаченной фотографии и отрезать nn-ое кол-во пикселей справа(слева), снизу(сверху) или сделать скрин при скачивании нужной области, или может возможно наложить картинку сверху(скажем свой логотип) Заранее спасибо

Sergey_yu
читайте шапку темы iMacros: Капчи..., там есть описание - как/чем обработать изображение
по поводу обрезки, читайте хелп к описанной там программе

12-05-2016 11:07:51
dvitkovs
запуск js из js - работает не корректно, уже раз сто об этом говорилось

InfSub пишет

запуск js из js - работает не корректно, уже раз сто об этом говорилось

Ну не корректно, так не корректно. Суть в другом: подскажике как лучше всего сделать так, чтоб js-скрипт запускался заданное количество раз?
То есть: вот например для iim скрипта можно в самом дополнении-аймакросе нажать кнопку "включить цикл". А как зделать подобное над js-скриптом? 
Как его лучше всего запускать по кругу заданное число раз?

dvitkovs

RTFM
e37473b53156.gif

InfSub
удалено, пункт правил 3.6
замечание

InfSub

dvitkovs
удалено, избыточное цитирование
Оберни в цикл свой код.

скрытый текст

Выделить код

Код:

for(f=1; f<=99 или сколько там тебе надо кругов; f++) {
....тут твой код...
}


InfSub

dim222 пишет

Оберни в цикл свой код.

Код у меня и так в цикле исполняется.

Ситуация такая: Код в js-скрипте у меня  исполняется в цикле 100 раз. После этого остановка,  js-скрипт закончил работу. А мне надо, чтоб после остановки js-скрипт опять начинал работу по новой. И так ещё 100 раз.
Спросите, почему нельзя сразу сделать один цикл на 10 000 раз? Да потому что от такого количества циклов в одном скрипте, скрипт начинает тормозить (и винда тоже).
Вот поэтому мне и надо сделать 100 раз по 100. То есть чтоб сам js-скрипт запускался, отрабатывался, и потом опять запускался. И так 100 раз.
Вот потому я и интересуюсь управляющим скриптом и спрашиваю какой вариант тут лучше выбрать, с учетом того, что запуск js из js - работает не корректно (уже раз сто об этом говорилось).

dvitkovs
вам выше уже была дана ссылка (картинка) на FAQ где написано, как запустить js из js? Или Вам религия не позволяет прочесть FAQ?

InfSub пишет

вам выше уже была дана ссылка (картинка) на FAQ где написано, как запустить js из js? Или Вам религия не позволяет прочесть FAQ?

Как запустить js из js я давно знаю. Суть вопроса заключалась в другом: какой наиболее лучший вариант применить, с учетом того, что запуск js из js - работает не корректно (уже раз сто об этом говорилось). Что в данной ситуации можно применить другое, которое работало бы более корректно.

А нельзя ли сделать как-нибудь так, чтоб память самоочищалась или не забивалась так, что от этого скрипт тормозить начинает?
То есть, чтоб не делать управляющий скрипт, который бы запускал по очереди 100 раз другой скрипт, может быть есть способ сделать так, чтоб и 10 000 циклов повторялось, а затороможенности в работе не возникало?

Какая область памяти забивается так, что аж скрипт тормозить начинает со страшной силой, пока не знаю. Но, если закрыть браузер и заново открыть и запустить этот же скрипт с 10 000 циклов, то сразу он опять начинает работать как ни в чем не бывало с нормальной быстрой скоростью. А уже потом, ближе к тысячным циклам ничинаются тормоза.
Значит память забивается где-то в браузере. Но как её очищать не перезапуская браузер? Команда CLEAR очищает только куки и она у меня применяется, но на торможения скрипта не влияет. Спасает только перезагрузка браузера. А можно ли без перезагрузки браузера данную область памяти очищать как-то?

dvitkovs пишет

а затороможенности в работе не возникало?

У меня мазилы/скрипты вообще месяцами не выключается и ничего нигде не тормозит.
Дело в корявости рук или скрипта/тов наверное.
Цикл в цикле никто не отменял, только вот накой smile_28.gif.

dvitkovs пишет

Суть вопроса заключалась в другом: какой наиболее лучший вариант применить, с учетом того, что запуск js из js - работает не корректно

Там же в факе глянь перенос данных из одного JS-скрипта в другой
переносить тебе ни обязательно, а вот другой скрипт таким макаром запустить без багов поможет.

12-05-2016 19:18:47

Попробуй как то так
Надеюсь что такое restart.vbs не нужно обьяснять


Выделить код

Код:

var Cc =Components.classes, Ci=Components.interfaces;P='C:\\CapNum\\';
 var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
 var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);

 for(q=1; q<=100; q++){ 
 ...
 Тут скрипт который нужно 100 раз запустить.
 ...
 }
  var args=[P+"restart.vbs"];
  file.initWithPath("C:\\Windows\\System32\\wscript.exe");
  process.init(file); process.run(false, args, args.length);

PRESIDENT пишет

У меня мазилы/скрипты вообще месяцами не выключается и ничего нигде не тормозит.
Дело в корявости рук или скрипта/тов наверное.

Ну не знаю в чем дело торможения, но подозревею, что из-за большого объёма данных. Там в цикле из таблицы, из файла .csv берутся данные и каждый раз новые. И так до 10 000 раз. Это может быть причина тормозов или вряд ли? smile_28.gif

Считаю наиболее приемлемым решением данного вопроса, это автоматическое закрытие браузера после исполнения цикла и через минуту повторный запуск браузера. В настройках браузера установить запуск с домашней страницы, а в качестве страницы указать путь к скрипту.
Только вопрос в том, каким макором браузер через минуту снова будет запускаться, когда закроется?  smile_28.gif
Или может тут надо задействовать 2 браузера? Чтоб первый, перед тем как закрыться после исполнения скрипта, успел бы запустить второй браузер. А потом, когда на втором браузере скрипт завершит работу, тут же запустит первый браузер, а сам закроется. И так они будут друг друга запускать до тех пор, пока сам вручную не остановишь. Потому что в любом случае браузер надо перезапускать, иначе память не очистится и тормоза не уйдут.

А есть ли способ перезапуска браузера через минуту, без задействования другого браузера? Или через минуту нельзя, а можно только сразу?

12-05-2016 20:06:36

PRESIDENT пишет

Надеюсь что такое restart.vbs не нужно обьяснять

Рестарт - это рестарт. В данном случае рестарт браузера мне нужен. Хотя сомневаюсь, запустится ли после этого js-скрипт? Обычно после рестарта браузера надо скрипты вручную запускать.

dvitkovs
Что мешает перед закрытием браузера, запустить из js - cmd-скрипт, с небольшим таймаутом, для корректного закрытия лисы, стандартным tab close?

З.Ы. продолжение троллинга на тему: "уже раз сто об этом говорилось" - чревато

InfSub пишет

Что мешает перед закрытием браузера, запустить из js - cmd-скрипт, с небольшим таймаутом, для корректного закрытия лисы, стандартным tab close?

Стандартным tab close мешает закрывать то, что в самом скрипте много раз используется такая команда для того, чтоб закрывать все окна. Но браузер и скрипт при этом продолжает работать, потому что в настройках лисы специально сделано так, чтоб она не закрывалась при закрытии последнего окна.
Иначе мне пришлось бы вносить изменения в скрипт и дополнительно лишние окна открывать (хотя как вариант принимаю и это).
Но есть и другой вариант, подсказанный PRESIDENTом. Это завершение процеса фаерфокс через батник командой taskkill /F /IM FirefoxPortable.exe

dvitkovs

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

А что мещает изменить это в about:config browser.tabs.closeWindowWithLastTab=true?

dvitkovs пишет

потому что в настройках лисы специально сделано так

придумали велосипед с квадратными колесами, а теперь удивляетесь - почему он не едет

InfSub пишет

Что мешает перед закрытием браузера, запустить из js - cmd-скрипт, с небольшим таймаутом, для корректного закрытия лисы, стандартным tab close?

Как это реализовать? Что в батнике прописать?

:)

dim222, dvitkovs
Что вы опять мутите и новый велосипед изобретаете.
В конце скрипта запустите батник, который командой
taskkill  закроет мазилку
и START  запустит снова через пару сек и сразу запустит нужный скрипт.

подскажите пожалуйста команду js которая зайдет один раз на определенный сайт, далее пойдут команды imacros (нужно зайти на сайт только один раз!)

PRESIDENT пишет

В конце скрипта запустите батник, который командой
taskkill  закроет мазилку
и START  запустит снова через пару сек и сразу запустит нужный скрипт.

Именно так я уже давно и сделал. И всё работает на ура! За что ещё раз БЛАГОДАРЮ! :)


P.S.
InfSub подкинул идею о закрытии браузера стандартным tab close.  Вот я и заинтересовался: как это реализовать, как в батнике прописать?
скрытый текст

InfSub пишет

Что мешает перед закрытием браузера, запустить из js - cmd-скрипт, с небольшим таймаутом, для корректного закрытия лисы, стандартным tab close?


dvitkovs
суть моего комментария выше, не в том, что вы поменяли настройки лисы, а в том, что вас весь скрипт - велосипед, в котором - вы не знаете, что и когда у вас открывается и закрывается, из-за чего и используется данная настройка, да бы не закрыть случайно браузер, командой tab close
volchsek
а при чем тут "команда js"?
Если вы пишите iim-скрипт - то ВСЕ действия будут повторяться в каждом цикле, если js-скрипт, то просто зациклите нужные команды

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=адрес_сайта');
while(1){
    iimPlayCode('повторющийся код');
};

dvitkovs пишет

InfSub подкинул идею о закрытии браузера стандартным tab close

отключите запрет на закрытие браузера - и он у вас будет закрываться по tab close, если данная вкладка - единственная открытая

InfSub пишет

Что мешает перед закрытием браузера, запустить из js - cmd-скрипт, с небольшим таймаутом, для корректного закрытия лисы, стандартным tab close?

cmd-скрипт - это батник. Что конкретно там прописать?

dvitkovs пишет

Что конкретно там прописать?

smile_13.gif
Ты шутишь или уже гонишь ?
перезапуск FF с помощью iMacros+cmd

И без разницы ты будешь это делать батником вбс-ом или башем.

PRESIDENT я ж написал, что уже давно сделал так, как ты подсказал. То есть с помощью команды taskkill. И оно у меня всё работает на УРА! (Отлично, Зер Гут, Дасист Фантастиш).

Вопрос же у меня совсем по другой команде, и по другому варианту. А конкретно: по команде tab close, то есть по варианту, предложенному InfSubом.
Он писал:

InfSub пишет

Что мешает перед закрытием браузера, запустить из js - cmd-скрипт, с небольшим таймаутом, для корректного закрытия лисы, стандартным tab close?

Вот тут не понятно, что будет исполнять команду tab close? Батник ведь? Верно? Или что? Или сам исполняемый яваскрипт? Но если яваскрипт, то как он может корректно закрыть браузер, если при исполнении tab close, он браузер-то закроет с закрытием вкладки, а сам яваскрипт-то закроется некорректно. То есть яваскрипт закроестся за счет того, что браузер закроется. Чтоб этого не было, видимо там должен быть небольшой тайм аут. Но где конкретно?..
В общем данным вопросом я заинтересовался так сказать для общего познания (вдруг ещё когда пригодится). Потому и спросил у InfSubа, что конкретно прописать в батнике, чтоб он закрывал браузер командой tab close?

TAB CLOSE это команда имакроса.
Модер предлагал запустить батник и через секунду имакросом закрыть браузер (TAB CLOSE).
Батник то уже стартанул, в нем просто пару сек пауза и заново запуск браузера.
Но из опыта скажу, после таб клозе иногда мазилка не запускается, вылазит ошибка типа фаерфокс уже запущен, в общем не все процессы в мазилке завершились и всё равно нужно в диспетчере задач добивать фаерфокс.

PRESIDENT
Все зависит от реализации, где-то достаточно tab close, и таймаута в 2-3 сек где-то тайм-аут больше, либо taskkill, минус taskkill, в том, что процессов может быть несколько, а убивать нужно конкретный

InfSub пишет

процессов может быть несколько, а убивать нужно конкретный

Ты о мазилках, в смысле что несколько запущенных фаерфоксов ?
никто не запрещает екзешник переименовать и процесс будет именем екзешника зваться.
Кстати в очередной раз обратите внимание сколь жрёт новая мазилка фаерфокс-45 по сравнения со всеми остальными, остальные  3.6.*

скрытый текст
4Pigc4ne.jpg

PRESIDENT
Можно, но это уже костыль

Завсегдатаи Вконтакта, репост из чужой группы на свою стену с прикреплённым таймером (отложенная публикация) нельзя с помощью iMacrosa делать, да? Перепробовал все варианты записи, через "исследовать элемент" смотрел атрибуты у классов кнопок - не нажимает "Прикрепить" - "Таймер"...

скрин
sCivjyX7PhM.jpg

А посмотреть какая функция запускается и тупо симетировать в наглую вызвать её нельзя ?

udalov

удалено, правила размещения изображений на форуме

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=NOBR ATTR=TXT:Таймер


InfSub

удалено, избыточное цитирование, п. п. 2.9
dvitkovs
Привет Мозилка тормозит из-за накопительности оперативной памяти,то_бишь при запуске она кушает 90 метров,запускаем скрипт ..опа уже на 150-200 метров больше,как я не пробовал через конфиг настраивать мозилку..не получается что то у меня чтобы 2 мозилки держали норму в еде памяти оперативной!! Одна мозилка запущена да..,кушает 200 метров со скриптом ,а вот две ..,уже вторая накапливает память со временем работы.И по запуску через время браузеров ,батник,несколько профилей мозилки, и в батнике записываешь ,когда запустить и какой профиль,а в самой мозилке настройки ,закрывать браузер по закрытию последней вкладки ,а в скрипте Tab Close? я так запускал 10 профилей на один кран ,ну и через время еще раз и много,много раз,чтоб не жрало памяти кучей браузеров запущеных!!

скрытый текст

Выделить код

Код:

start "0" "C:\Program Files\Mozilla Firefox\firefox.exe" -p "Makros_Kran" imacros://run/?m=Faucet\FreeBTC_and_Doge2.js
TIMEOUT /T 270 /NOBREAK
start "1" "C:\Program Files\Mozilla Firefox\firefox.exe" -p "Macros9" imacros://run/?m=Faucet\FreeBTC_and_Doge.js
TIMEOUT /T 270 /NOBREAK
start "2" "C:\Program Files\Mozilla Firefox\firefox.exe" -p "Macros12" imacros://run/?m=Faucet\FreeBTC_and_Doge1.js
TIMEOUT /T 270 /NOBREAK
start "3" "C:\Program Files\Mozilla Firefox\firefox.exe" -p "Moz14" imacros://run/?m=FreeBTC_and_Doge3.js
TIMEOUT /T 270 /NOBREAK
start "4" "C:\Program Files\Mozilla Firefox\firefox.exe" -p "Moz15" imacros://run/?m=FreeBTC_and_Doge4.js
TIMEOUT /T 10 /NOBREAK


код публикуется в тегах code, внутри спойлера

вот тебе пример батника NObreak -- батник не закроется сам, только по нажатию тобой,ну а по написанному выше я думаю все понятно.

Писать безграмотно, создавать сообщения, содержащие «аффтарскую» речь, специально сделанные ошибки; злостно нарушать правила русского языка, п.п. 2.3

замечание

InfSub

Добрый День!Подскажите команду для iim. что-бы извлекала все кроме:   ОК|
(Пример:  ОК|t2ghkd4hy).Если я правильно понимаю это должно быть что-то похожее на такой код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=* ATTR=TXT:*  EXTRACT=TXT
SET !VAR1 EVAL("var x=\"{{!EXTRACT}}\"; x=x.replace(/\\D/g,\"\");")


код публикуется в тегах code внутри спойлера
вот только здесь остаются только цифры

поиск по форуму iMacros, неоднократно приводились примеры, как это сделать, п.п.2.1

InfSub

Прошу прощения если написал что-то не правильно,все же не могли бы Вы ткнуть носом где искать решение моей задачи?

borisenko1
В описании функции replace(), например

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=* ATTR=TXT:*  EXTRACT=TXT
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('OK|','');")

Большое Спасибо!!! InfSub

Hamzat
Спасибо большое, как всё просто оказалось )))

Не могу понять почему при !Extract фрейм нейма выдает #EANF#, но если убераю первые две строки кода все работает как надо.
В чем может быть причина?

скрытый текст

Выделить код

Код:

FRAME NAME="undefined"
TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark
TAG POS=1 TYPE=IFRAME ATTR=TITLE:"recaptcha challenge" EXTRACT=HTM
SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/name="(\w*)"/)[1];")
FRAME NAME={{!VAR1}}
ONDOWNLOAD FOLDER=* FILE=captcha.png
TAG POS=1 TYPE=DIV ATTR=ID:rc-imageselect CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

kani339

kani339 пишет

почему

Потому что ты вначале фрейму присвоил название undefined и для этой строки фрейм так и будет undefined ,
TAG POS=1 TYPE=IFRAME ... EXTRACT=HTM
а там должен нулевой фрейм быть, поставь перед этой строкoй FRAME F=0

скрытый текст

Выделить код

Код:

FRAME NAME="undefined"
TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark
FRAME F=0
TAG POS=1 TYPE=IFRAME ... EXTRACT=HTM
...


Или попробуй так

Выделить код

Код:

f1='FRAME NAME=undefined\n';
iimPlayCode(f1+'TAG POS=1 TYPE=DIV ATTR=ROLE:presentation'); 
iimPlayCode('WAIT SECONDS=5'); 
iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=iframe ATTR=src:*recaptcha/api2/frame?c=* extract=htm');
f2='FRAME '+iimGetExtract().match(/name=".*?"/)+'\n';
iimPlayCode('ONDOWNLOAD FOLDER=* FILE=captcha.png WAIT=YES\n'+f2+'TAG POS=1 TYPE=DIV ATTR=class:rc-imageselect-payload CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');

Всем привет,мне нужно с одной вкладке переходит на другую вкладку,но при этом что-бы первая вкладка была открыта,и потом закрывать 2 вкладку,подскажите как это сделать.

peterburg87
А посмотреть примеры, почитать FAQ и видео уроки не судьба?

скрытый текст

Выделить код

Код:

TAB OPEN
TAB T=2
TAB CLOSE

Здравствуйте! Пытаюсь аймакросом сделать пост в гугл +.
По "Что у вас нового" аймакрос кликает и открывает область ввода текста. Контент вводит. Но кнопка "Отправить" так и остается серой, недоступной. Help please!

скрытый текст

Выделить код

Код:

URL GOTO=https://plus.google.com/
TAG POS=1 TYPE=SPAN ATTR=ID:i* 
TAG POS=1 TYPE=TEXTAREA ATTR=ID:* CONTENT=Всем удачи!

здравствуйте! не могу извлечь ссылку  "вк, мои группы" нужен переход по извлеченной ссылке группы
капс, исправлено, п.п. 2.4

замечание

InfSub

Alekzandr
FAQ читать не пробовали? Говорят - помогает!

Помогите новичку, пожалуйста.
Сразу скажу, я не программист и не знаю ни 1 языка пограммирования. Делаю свой скрипт потихоньку, читая форумы. Сделал обычный *iim - работает. Надо запускать циклом - дошел до того чтобы обернуть его джава-скрипт. Обернул.

скрытый текст

Выделить код

Код:

var macro;
macro =  "CODE:";
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro +=  "SET !REPLAYSPEED MEDIUM" + "\n"; 
macro +=  "TAG POS=1 TYPE=H5 ATTR=TXT:*<SP>бонусных<SP>руб. EXTRACT=TXT" + "\n"; 
macro +=  "SET Balans EVAL("var s='{{!EXTRACT}}'; var x; x=s.replace(' руб.',''); x;")" + "\n"; 
macro +=  "SET !REPLAYSPEED FAST" + "\n"; 
macro +=  "SET !EXTRACT {{Balans}}" + "\n"; 
macro +=  "SAVEAS TYPE=EXTRACT FOLDER=* FILE=XXX.csv" + "\n"; 
iimPlay(macro)


Получаю ошибку:

"SyntaxError: missing ; before statement, line 6 (Error code: -991)"

Помогите справиться!

Еще вопрос, можно ли запускать из командной строки макрос *.iim как-либо (может параметр есть указывается) чтоб воспроизводился циклом нужное число раз со счетчиком?

Lerd
В FAQ описаны варианты запуска, в том числе через командную строку. Задать количество циклов iim-скрипту из консоли нельзя, для этого есть js
Строку  с EXTRACT_TEST_POPUP удали, в js она бесполезна
По поводу ошибки:
Двойные кавычки, в EVAL должны быть экранированы

скрытый текст

Выделить код

Код:

macro +=  "SET Balans EVAL(\"var s='{{!EXTRACT}}'; var x; x=s.replace(' руб.',''); x;\")" + "\n";


и вообще, плохой тон - впихивать EVAL c js внутрь js-скрипта

InfSub
удалено, избыточное цитирование (читаем)
Спасибо за быстрый ответ!

и вообще, плохой тон - впихивать EVAL c js внутрь js-скрипта

Какое решение вы бы предложили?

Альтернатива этому способу как я делаю есть запустить *.iim из консоли циклом со счетчиком?

скрытый текст

Выделить код

Код:

for (n = 1; n < 6; n++) {
var macro;
macro =  "CODE:";
macro +=  "SET !REPLAYSPEED FAST" + "\n"; 
macro +=  "SET !LOOP " + n + "\n"; 
macro +=  "SET !EXTRACT {{!LOOP}}" + "\n"; 
macro +=  "SAVEAS TYPE=EXTRACT FOLDER=* FILE=TEST.csv" + "\n"; 
iimPlay(macro)
}


Еще хотелось бы прикрутить обработку ошибок - чтоб джава-скрипт обрабатывал ошибки: перезапускал нужный код если возникла ошибка, не прерывая цикла. Направте плиз, куда копать?

InfSub

hmm.gif

Lerd

скрытый текст

Выделить код

Код:

var i=6; // количество циклов
while(i--){
    iimPlayCode('TAG POS=1 TYPE=H5 ATTR=TXT:*<SP>бонусных<SP>руб. EXTRACT=TXT);
    iimPlayCode('SET !EXTRACT "'+iimGetExtract().replace(' руб.','')+'"'+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=XXX.csv');
};

Ребята на мой вопрос так никто и ответа не знает?
https://forum.mozilla-russia.org/viewto … 61#p714061

Hamzat
Думаю, данный вопрос, правильнее задать в разделе "разработка"

InfSub пишет

Alekzandr
FAQ читать не пробовали? Говорят - помогает!

Прочитал, спасибо. Не помогло, однако! Точно так же, один из 3х вариантов (в спойлере), вставил контент, кнопка "Отправить" - недоступна.

скрытый текст

Выделить код

Код:

message='Мое сообщение';
var b="javascript:document.getElementsByTagName('textarea')[0].innerHTML='"+message+"';void 0;"
iimPlayCode('URL GOTO='+b.replace(/ /g,'<SP>'));

Подскажите, что в коде не так
Мне нужно нажать на кнопку у этой кнопки есть айди у которого в конце постоянно меняються цифры, picker:ap:8
При EXTRACT=HTM, показывает постоянно, в конце цифру "0", хотя в реальности там другое значение.

В чем может быть причина?
И Выдает вот такую ошибку

TypeError: "<div aria-disabled=\"true\" guidedhelpid=\"ghid-psc\" id=\"picker:ap:0\" style=\"-moz-user-select: none; outline: 1px solid blue;\" role=\"button\" class=\"a-b-c d-u d-u-F d-u-D\">Set as profile photo</div>".match(...) is null, line 6 (Error code: -1001)

Код:

скрытый текст

Выделить код

Код:

TAG POS=5 TYPE=IFRAME ATTR=NAME:"*" EXTRACT=HTM
SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/name="(\w*)"/)[1];")
FRAME NAME={{!VAR1}}
SET !EXTRACT NULL
TAG POS=1 TYPE=DIV ATTR=CLASS:"a-b-c d-u d-u-F d-u-D" EXTRACT=HTM
SET !VAR2 EVAL("'{{!EXTRACT}}'.match(/id="(\w*)"/)[0];")
EVENT TYPE=CLICK SELECTOR="div[id={{!VAR2}}]" BUTTON=0

kani339
адрес страницы
Alekzandr
может быть, вы подставите в код реальные параметры, а не из примера?

kani339

скрытый текст
Ты забыл екстракт добавить
TAG POS=1 TYPE=DIV ATTR=ID:picker*

EXTRACT=HTM

PRESIDENT пишет

Ты забыл екстракт добавить

удалено - избыточное цитирование
Добавил но все равно ошибка, скрипт написан для Google+ для смены аватарки, загрузить картинку с компа получаеться а вот нажать на кнопку "Set as profile photo" не получаеться
удалено - дублирование ответа и избыточное цитирование (читаем)

InfSub

kani339 пишет

И Выдает вот такую ошибку

потому что ваша регулярка - ни чего не находит, ответив себе на следующие 2 вопроса, вы решите проблему с ошибкой TypeError
что означает метасимвол

\w

? и как он соотносится с

:

в искомой фразе?

18-05-2016 19:25:44

kani339 пишет

При EXTRACT=HTM, показывает постоянно, в конце цифру "0", хотя в реальности там другое значение.
В чем может быть причина?

например, в том, что блок с id имеющим 0 на конце, тоже присутствует на странице и находится выше, чем блок с реальной цифрой

PRESIDENT пишет

hmm.gif

Отредактировано PRESIDENT (Сегодня 03:48:07)

ыых! :( что ж вы удалили! Видел вчера ваш ответ. Пришел сегодня законспектровать в тетрадочу, глядь! А вы потерли! Верните плиз ради примера для обучения!

Lerd
вся эта информация - есть в FAQ и многократно приводилась на форуме

PRESIDENT  пишет

скрытый текст

Выделить код

Код:

for(n=1; n<6; n++){
iimDisplay(n); //<--- Это будет отображать информацию в зелёном окошке слева под кнопками, в данном случае номер цикла n
iimPlayCode('SET !EXTRACT '+n+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=TEST.csv');
iimPlayCode('WAIT SECONDS=2'); //<--- Ждать 2 сек
}

Lerd пишет

хотелось бы прикрутить обработку ошибок

Почугли логические операторы if else

Помогите убрать дефис с пробелом между буквами. На js есть такой код

скрытый текст

Выделить код

Код:

.replace(/(\D)\-\s(?!\d)/g, "$1")


Но не получается запихнуть его в iim, ошибка

wrong format of SET command (Error code: -910)

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/(\D)\-\s(?!\d)/g, '$1')")


Как исправить? Что-то экранировать

myscience
Может быть вы приведете пример текста из экстракта?
В EVAL - js не всегда код работает корректно

ошибка не дает макросу запуститься.

937- /99- де- вять- 2 ВС- ТК
чтоб стало
937- /99- девять- 2 ВС- ТК

Хотелось бы сделать, чтобы пренос с пробелом убирался только между прописными буквами, а между любыми другими сиволами, в т.ч. заглавными буквами, оставался.

вот js-код

скрытый текст

Выделить код

Код:

.replace(/([a-zа-яё])\-\s(([a-zа-яё]))/g, "$1$2")


Что заэкранировать в EVAL? Как с $ быть?

Теперь, кажется, работает

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/([a-zа-яё])-\s(([a-zа-яё]))/g, '$1$2')")


Корректно все здесь?

Думаю, многие встречались с такой проблемой, напр. при конвертировании из pdf.

myscience
Зачем две группы вложенных скобок? -> (([a-zа-яё])) достаточно и одних
Экранирование тут не нужно

InfSub, PRESIDENT
удалено, избыточное цитирование
Спасибо!

InfSub

InfSub
Главный параметр и в примере и при создании поста гугл плюс совпадает - TEXTAREA. Гляньте пожалуйста кто-нибудь скрипт, нужна для его выполнения всего лишь залогинка в G+

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=https://plus.google.com/');
iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=ID:i* ');
var message="Гугл+ - лучшая площадка для размещения постов!";
var b="javascript:document.getElementsByTagName('TEXTAREA')[0].innerHTML='"+message+"';void 0;"
iimPlayCode('URL GOTO='+b.replace(/ /g,'<SP>'));
iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:Опубликовать');

Alekzandr
Если не можете разобраться с приведенным примером, запишите через event mode, в чем проблема-то?

Подскажите какие есть способы запуска одновременно нескольких макросов, может имееються для этого какие-либо Firefox Plugins..

kani339
Запусти несколько портабельных мазилок и в каждой свой имакрос.
Или создай несколько профилей мазилюстанови в каждый имакрос и так же в каждом профиле стартани свой имакрос. Только везде должны быть разные пути к макросам.
Здесь в факе есть ссылки на все версии мазил в том числе и портабельки.

PRESIDENT
Пути-то зачем разные? Все нормально работает с одной папки

PRESIDENT
Спасибо!
удалено, избыточное цитирование, п.п. 2.9
замечание, п.п. 2.22

InfSub

Добрый день! Помогите нажать на кнопку)) ReCapcha2 под картинками есть 3 кнопки. Суть в том, что у капчи динамическое имя, постоянно разное, а кнопки не меняются; подскажите как можно находить имя этой капчи или проверить все фреймы на странице и найти эти ,,, кнопки?

скрытый текст

Выделить код

Код:

FRAME NAME="undefined"
                        TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark&&TXT:
                        FRAME NAME=    "[b]Вот сдесь имя фрейма[/b]"
                        TAG POS=1 TYPE=DIV ATTR=ID:recaptcha-reload-button


И не заплёвывайте сразу, поиском я пользоваться умею, но из того что нашел ни чего не работает(

IvGeniy пишет

поиском я пользоваться умею

да ну? а в соседнюю тему, заглянуть, видимо не судьба была? Которая, кстати, элементарно находится по слову ReCapcha в названии темы

Спасибо! Примерно догадывался, что без js не получится( а так хотелось (без него ни как?).

2.1  Задавать вопросы, ответы на которые есть в «FAQ», «Базе знаний» или легко находятся поиском.

InfSub

IvGeniy
может быть, вы, все же, начнете пользоваться поиском или почитаете соответствующую тему?

удалено, флуд, для заказа скриптов есть отдельная тема
замечание


InfSub

Может кто сталкивался с Репостом в Facebook, не нажимает кнопку "Share" не по тексту, не по классу, но если убрать в начале скрипта переход на страницу то вcе работает.
В чем может быть причина такого поведения?

скрытый текст

Выделить код

Код:

URL GOTO=https://www.facebook.com/TheByWardMarket/?ref=br_rs
TAG POS=1 TYPE=A ATTR=TXT:"Share"
TAG POS=1 TYPE=SPAN ATTR=CLASS:"_54nh"

kani339
Event не помогает?

InfSub пишет

kani339
Event не помогает?

нет с Event тоже не получаеться

Всем привет!
Есть *.bat такого вида:

скрытый текст

Выделить код

Код:

"D:\FirefoxPortable.exe" imacros://run/?m=script.iim


Можно ли с его помощь передать число итераций и начальное значение !LOOP скрипту?  - Чтобы имитировать стандартный Play(Loop)
Спасибо!

код пишется в тегах code внутри спойлера

InfSub

zaskock
нет, только задав нужное количество циклов в js
запускать, соответственно, нужно js-скрипт

InfSub пишет

нет, только задав нужное количество циклов в js

Спасибо за быстрый отклик! Может подскажете как реализовать в javascript цикл, который выполнялся бы для каждой строки в файле (число строк заранее неизвестно). Сейчас задаю число итераций вручную и использую !LOOP, примерно так:

скрытый текст

Выделить код

Код:

SET !DATASOURCE "D:\\Program files\\imacros\\data\\URL_list.csv"
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}


Но хочу наладить запуск по расписанию через батник, тогда указывать число строк (итераций) будет некому:)

zaskock

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском, пункт 2.1


например, поиск по слову: "DATASOURCE_LINE"

24-05-2016 17:26:52

zaskock пишет

число строк (итераций) будет некому

если строка не найдена, будет ошибка, вот и проверяйте в условии цикла, есть ошибка или нет

zaskock

JS

Выделить код

Код:

Path='D:\\Program files\\imacros\\data\\';
   
for(a=1; a<9; a++) {
    iimPlayCode('SET !DATASOURCE '+Path+'URL_list.csv\nSET !DATASOURCE_LINE '+a+'\nSET !EXTRACT {{!COL1}}'); 
    url=iimGetLastExtract();
    iimPlayCode('URL GOTO='+url);
    iimPlayCode('WAIT SECONDS=10');
}

PRESIDENT
вопрос был немного другой, не находите?

zaskock пишет

как реализовать в javascript цикл, который выполнялся бы для каждой строки в файле (

число строк заранее неизвестно

)

суть решения - дана выше, само решение, находится через поиск минут за 5

PRESIDENT Спасибо, за попытку (и за ваши видео заодно:)). Я понимаю как написать цикл for, но вопрос в том, как:
- считать число строк в файле, чтобы передать в перменную цикла
- или корректно выйти из бесконечного цикла и продолжить работу скрипта при неудачной попытке считать очередную (последняя+1) строку

InfSub пишет

суть решения - дана выше, само решение, находится через поиск минут за 5

Ну поиск выдал 12 страниц по вашей ссылке, 6 я уже прочитал, сейчас отдохну поем и продолжу. Надеюсь там действительно есть решение:)

zaskock пишет

6 я уже прочитал

dash1.gif

скрытый текст

Выделить код

Код:

for(i=1;iimPlayCode('SET !DATASOURCE '+Path+'URL_list.csv\nSET !DATASOURCE_LINE '+i+'\nURL GOTO={{!COL1}}')==1;i++);


написал же, выше:

InfSub пишет

если строка не найдена, будет ошибка, вот и проверяйте в условии цикла, есть ошибка или нет

zaskock, InfSub

Да, извиняюсь задачу недопонял/недочитал

скрытый текст
иф-ом проверь url на пустое значение

Выделить код

Код:

...
 url=iimGetLastExtract();
 if(url=='') break;
...

PRESIDENT, InfSub, Ещё раз спасибо, господа!

InfSub пишет

написал же, выше:InfSub пишет:

если строка не найдена, будет ошибка, вот и проверяйте в условии цикла, есть ошибка или нет

Я слишком быстро ушёл по ссылке читать результаты поиска и не увидел, что вы отредактировали сообщение:)

Вопрос по циклам в js.

код

Выделить код

Код:

//два цикла повтора всего кода
for(b=1; b<2; b++){
    
// 10 циклов поиска первого запроса
for(a=1; a<10; a++){
iimSet("a", a);
   if(iimPlay("CODE:SET !TIMEOUT_STEP 0\n TAB T=1\n TAG POS={{a}} TYPE=A ATTR=TXT:ИскомыйТекст1*")<=0){
    iimPlayCode('SET !TIMEOUT_STEP 0'); break;
    }else{
    iimPlayCode('SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=A ATTR=TXT:*')
}
}
// 10 циклов поиска второго запроса
for(a=1; a<10; a++){
iimSet("a", a);
   if(iimPlay("CODE:SET !TIMEOUT_STEP 0\n TAB T=1\n TAG POS={{a}} TYPE=A ATTR=TXT:ИскомыйТекст2*")<=0){
    iimPlayCode('SET !TIMEOUT_STEP 0');break;
    }else{
    iimPlayCode('SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=A ATTR=TXT:*')
}
}
iimPlayCode('SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=A ATTR=TXT:2');
}


Макрос ищет ИскомыйТекст1 на открытой странице, если не находит, прерывается первый цикл из 10 повторов, после ищет ИскомыйТекст2 на открытой странице, если не находит, прерывает второй цикл из 10 повторов. Если текст находится, выполняется заданное действие, тут никаких проблем.

После всего выполненного строка iimPlayCode('SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=A ATTR=TXT:*') открывает на вторую страницу сайта и там повторяются все действия циклом b<2.

Сами по себе конструкции if... else работают, как задумано.

Проблема вот в чём: после срабатывания break в цикле второго запроса прерывается не только второй цикл с десятью повторами a<10, но и общий "верхний" цикл b<2, нет перехода к выполнению строки iimPlayCode('SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=A ATTR=TXT:2');

Что я неправильно понимаю? Команда break работает только внутри "своего" цикла, или прерывает вообще все циклы выше? Тогда почему после срабатывание первого break у меня работает поиск второго запроса?

udalov
Зачем делать два идентичных цикла, отличающихся только искомым текстом? А текстов будет не 2 а 100, вы 100 циклов влепите?

udalov пишет

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0'); break;

это, простите, что за бред?!
Не за компом, на вскидку, не проверяя, сказать из-за чего у вас прерывается верхний цикл, не могу, но ни кто не отменял label'ы для указания, какой из циклов нужно прервать

InfSub пишет

Зачем делать два идентичных цикла, отличающихся только искомым текстом?

Затем, что я пока не освоил поиск сразу двух условий в одной команде, через && или ||.  Знаю, что эта возможность есть, примеры сохранены в файл. Освою по отдельности, буду осваивать два в одном.

InfSub пишет

это, простите, что за бред?!

А это я не знал, можно ли в конструкции, взятой мной в качестве примера:

скрытый текст

Выделить код

Код:

if (Условие)
      выполнить код1; break;
else 
      выполнить код2


прерывать цикл без выполнения кода1, потому тупо вставил код с "пустой командой", оставив эксперименты на попозже. Понимаю теперь, что будет работать и без этого.

udalov пишет

Затем, что я пока не освоил поиск сразу двух условий

при чем тут выполнение сразу 2 условий, вы код дублируете, зачем?
нужно выполнить цикл из 10 операций дважды, так и сделайте цикл на 10 операций внутри цикла с перебором поисковых фраз

Подскажите, почему при отправки капчи на сервер 2captcha, возникает данная ошибка

"ERROR_TOO_BIG_CAPTCHA_FILESIZE"

И как сделать, что бы при сохранение капчи, картинка весила меньше?

kani339
В теме капчь в первом посте, есть варианты уменьшения размера картинки/капчи.

Добрался сегодня до того скрипта, что обсуждали на предыдущей странице *.js получился вот такой:

скрытый текст

Выделить код

Код:

var InputPath = 'D:\\\\Program files\\\\imacros\\\\data\\\\LikeList.csv'
var macro;

macro="CODE:SET !DATASOURCE {{InputPath}}\n"
macro+="SET !DATASOURCE_LINE {{Line}}\nURL GOTO={{!COL1}}\n"
macro+="SET !ERRORIGNORE YES\nTAG POS=1 TYPE=button ATTR=class:*PageLikeButton*\n"

for(Line=1;Line>=0;Line++){
iimSet("Line",Line);
iimSet("InputPath",InputPath);
var Indicator;
Indicator=iimPlay(macro);
iimSet("Indicator",Indicator);
if(Indicator<0) break;
}

//If you need to close all tabs and browser window in the end, uncomment the next line
//iimPlay("CODE:TAB CLOSEALLOTHERS\nTAB CLOSE");


Вопросы:
- Можно ли как-то избежать четырехкратных слешей при объявлении путей к файлам? Таких:

'D:\\\\Program files\\\\imacros\\\\data\\\\UnLikeList.csv'

- Получается, что скрипт всегда завершается с ошибкой:

"RuntimeError: Invalid DATASOURCE_LINE value: *, line 4 (Error code: -951)"

, можно ли сделать, чтобы она не отображалась внизу на панели iMacros?
- Всё-таки выход через break выглядит коряво, можно ли как-то эту проверку запихнуть в условие цикла? Вариант for(Line=1;iimPlay(macro)==1;Line++) не сработал (видимо из-за обращения к переменным InputPath и Line)

Спасибо!

zaskock пишет

Можно ли как-то избежать четырехкратных слешей

Зачем вам столько? или вы забор строите?) достаточно 2

zaskock пишет

можно ли сделать, чтобы она не отображалась внизу на панели iMacros?

можно, iimDisplay('') в конце кода, возвращающего ошибку

zaskock пишет

можно ли как-то эту проверку запихнуть в условие цикла?

можно, вы его и написали, только не полностью

26-05-2016 00:13:32
при использовании iimSet() - iimSet() должен всегда идти перед iimPlay()/iimPlayCode(),

перед каждым

вызовом
либо, используйте конкатенацию строк, вместо iimSet(), непосредственно в условии

InfSub пишет

Зачем вам столько? или вы забор строите?) достаточно 2

Точно, перемудрил, моя вина)

InfSub пишет

можно, iimDisplay('') в конце кода, возвращающего ошибку

Супер, спасибо. Теперь вместо кода ошибки у меня счётчик обработанных URL.

InfSub пишет

при использовании iimSet() - iimSet() должен всегда идти перед iimPlay()/iimPlayCode(), перед каждым вызовом
либо, используйте конкатенацию строк, вместо iimSet(), непосредственно в условии

Не могу понять как это реализовать, я же в конструкцию цикла for не могу добавлять iimset(). А если перед циклом, то переменная Line объявляется в цикле, так что бесполезно её передавать через iimset(). Остаётся делать конкатенацию, но это получается всё в одну строку записывается, редактировать потом неудобно(

zaskock пишет

я же в конструкцию цикла for не могу добавлять iimset()

кто вам такое сказал?

пример

Выделить код

Код:

for(
    Line=1;
    iimSet("InputPath",InputPath),
    iimSet("Line",Line),
    iimPlay(macro)==1;
    Line++
){...}

zaskock пишет

но это получается всё в одну строку записывается, редактировать потом неудобно(

не обязательно, см. пример выше

InfSub пишет

кто вам такое сказал?

Круто, спасибо. Я пытался через ";" не знал, что можно запятую в javascript использовать в этом случае, естественно ошибка получалась. Надо подучить его синтаксис.

Объясните мне, тупому, почему этот код (найденый тут https://forum.mozilla-russia.org/viewto … 35#p670735) работает

скрытый текст

Выделить код

Код:

SET !EXTRACT "Текст1 » Текст2 » Иванов В.А. "
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/Текст1 » Текст2 » /,\"\")")
prompt {{!VAR1}}


выводится Иванов В.А.

А вот этот, который делает я адаптировал для Экстракта со страницы, не работает?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=TXT:Текст1 » Текст2 » * EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/Текст1 » Текст2 » /,\"\")")
PROMPT {{!VAR1}}


выводится Текст1 » Текст2 » Иванов В.А.

Вообще, цель: экстрактся фраза "Текст1 » Текст2 » Иванов В.А. " и из неё удаляется всё до четвёртого пробела, который идёт после второго »

И как сделать, чтобы работал второй код?

udalov
Кавычки где? Или по вашему: » Текст2 » * - это команда?

udalov пишет

который идёт после второго »

скрытый текст

Выделить код

Код:

a="Текст1 » Текст2 » Иванов В.А. ";
     b=a.split('»')[2];
     alert(b);

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=TD ATTR=TXT:"Текст1*Текст2*" EXTRACT=TXT'); nam=iimGetExtract().split('»')[2];
alert(nam);

Ребята как можно узнать значение настройки из about:config? мне скриптом надо вытащить значение настройки...

Сам отвечу на вопрос)) Все оказалось достаточно просто, для получение и редактирование используются разные атрибуты, get и set.
Так при редактирование мы передаем имя и значение настройки

скрытый текст

Выделить код

Код:

var prefs = Components.classes["@mozilla.org/preferences-service;1"]
.getService(Components.interfaces.nsIPrefBranch);
path = prefs.setCharPref("extensions.imacros.defdatapath", "C:");


А при получение значений нам нужно только имя
скрытый текст

Выделить код

Код:

var prefs = Components.classes["@mozilla.org/preferences-service;1"]
.getService(Components.interfaces.nsIPrefBranch);
path = prefs.getCharPref("extensions.imacros.defdatapath");


P.S Возможно кому то нужно, готовая функция получение полной пути папки datasourse в imacros
скрытый текст

Выделить код

Код:

function checkPath () {
    var prefs = Components.classes["@mozilla.org/preferences-service;1"]
            .getService(Components.interfaces.nsIPrefBranch);
    path = prefs.getCharPref("extensions.imacros.defdatapath");
    var utf8Converter = Components.classes["@mozilla.org/intl/utf8converterservice;1"].
    getService(Components.interfaces.nsIUTF8ConverterService);
    var path = utf8Converter.convertURISpecToUTF8 (path, "UTF-8");
    return path;
};

alert(checkPath())

Hamzat пишет

Сам отвечу на вопрос))

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

InfSub

да, как бы, уже год назад на этот вопрос

Странно, вроде как пробовал. Хотя было интересно узнать все самому...

Может кто-то знает, как отключить ADBLOCK с помощью Imacros/JS

Как можно сохранять данные в файл чтобы сохранялось всегда в первую строку?

kani339 пишет

как отключить ADBLOCK с помощью Imacros/JS

скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 prf.setBoolPref("extensions.adblockplus.enabled",0);


bop101 пишет

чтобы сохранялось всегда в первую строку

Если старые данные не нужны, то сначала удали старый файл, потом просто создай новый, он сам создастся когда сохранять будешь.
Если нужно к старым добавить новые, и всё в одну строку, то сначала извлеки старые, потом в туже переменную добавь новые, и уже это сложенное сохраняй. Так же вначале удалив старый файл.

Запутался в TYPE= и  ATTR=CLASS: , как взять в Екстракт фразу "Город Уфа"?

кусок кода страницы

Выделить код

Код:

<tr id="ctl00_cphBody_trRegion" class="row">
        <td nowrap="nowrap">
                Регион
            </td>
        <td>
                <b>
                    Город Уфа
                </b>
            </td>
    </tr>


Максимум что смог - наваять (после изучения этого http://wiki.imacros.net/TAG_parameters_explained ) вот такую конструкцию, естественно, не работает...

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TR ATTR=ID:ctl00_cphBody_trRegion&&CLASS:row&&NOWRAP:nowrap&&TXT: EXTRACT=TXT

PRESIDENT пишет
kani339 пишет

как отключить ADBLOCK с помощью Imacros/JS

скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 prf.setBoolPref("extensions.adblockplus.enabled",0);

где можно документацию по данному коду найти?

kani339

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


27-05-2016 17:18:35
udalov
какое отношение имеет параметр nowrap к тегу tr?
если вам нужно значение тега b так и извлекайте из него
если нужно отталкиваться от параметра id тега tr (id="ctl00_cphBody_trRegion"), то обрезайте "лишние" данные с помощью js

InfSub пишет

udalov если нужно отталкиваться от параметра id тега tr (id="ctl00_cphBody_trRegion"), то обрезайте "лишние" данные с помощью js

.
Спасибо... Я так и пытался, но у меня в голове вместо правильной команды EXTRACT=HTM  намертво засела EXTRACT=HREF , которой я и пытался извлекать данные из кода странички... Только сейчас сообразил, в чём у меня была проблема :-(

udalov
Я бы сделал так:

скрытый текст

Выделить код

Код:

TAG XPATH="//tr[contains(id(),'region')]/descendant::b' EXTRACT=TXT


Подробности:
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Пытаюсь сделать Extract фрейма в iim все работает а конда код переношу в JS выдает ошибку

скрытый текст

TypeError: "<iframe name=\"u2ewph38yq41\" scrolling=\"no\" role=\"presentation\" style=\"width: 100%; height: 100%; outline: 1px solid blue;\" title=\"recaptcha challenge\" src=\"https://www.google.com/recaptcha/api2/frame?c=03AHJ_Vusb0ioAnfygjyM0UD1_Kx7KcMmnIwJCB_zvcjD7kCM6B0qYHvsmdNOxgfToBm3aL2yjk2oHRSdZqAHFgk1f6DTiJcIaz_dKvKhmTClmfimqjKkv8nn9asLe85dxPZHnQn5iQV0q1iVddjzKp47_6c1AK9Duv1kyadUeXsgpvDgolIRojuJk_eAYZInvO4sw23wtSJe2GJIGtkEbJSoLUB6nAysjKVRWnn-fJQMMiYLd9n2y32EqJyfKXny4nkba89ZnJZ9j42y66NfnCvZ33b4YhSY7W-A070NjUoumxXbm6E4Q0vAAuzw6m9YEvuBkNv4WswSV5kLuVE_Ll_CCxQZKtm1Udw8BtALJP5NRJ5LnxJWdAAkX683iKd-1KuSXGu0n2M71WQ4ETfXPKS1ClmjTEleghZaNiEElOya28STtZ4_2Mcd3dshX5UmPfQqsfPSVW_2KYmU4nH7CoHllVgIrbCCUB4WsBrVObz7eduSMgsFGaHS_ro9wROMcJzdN2R-cB19Ii2t5m665mZ9L8FMKfgiqwy0tCK4oINbdx6EaBoABWOCb04TIU6lqUkpXkTU_z1wh&amp;hl=en&amp;k=6Le_9gMTAAAAAKOUJd69SRzc7fWisgnaZ3AA3G1G&amp;v=r20160523111023&amp;bcr=%5B1124077705%2C1964802575%2C-950026753%2C-1768915620%2C-853227348%2C42883300%2C-2131659184%2C-1358144743%2C-16418775%2C913457482%2C-1130008678%2C-64282948%2C1837023259%2C-1237351983%2C19315403%5D&amp;bg=!09Wg1fRHH4C_xDzoT-FB_CIJ6rBqGY8HAAAAL1cAAAAMDwBNKYZognsOYmYjUKH29pi449f2o3cbVisp2yIIE1zG_bHQz5U_el6mUDIrNoxCTyDWu_5cUb0YEDesossiNBX9g-0uDSDrW7oBqOXTUyGcANNQ3OL4g6YjSzv6l8UxTsN_nQD4ViH3X5leCjm8aPz-rgCYuUSmS81QQkULjWQStz7KmjiMbd7UEtafeZ_u2EUAID0y6JuPF3YUJgxAU0DUIzTtH8tlLi1WADK9xQvMKEWW0crBPyEvG4fKGVJYQ4rJBVsaXEg7eX6FwD7xLhtQhfI82F7wZ1eqRpUqkXD905zL_p4Ng00Mb1Wx8Q1-ehvjusPvwf0DONtvsHphdlSfocnPbE1m_WcMjb6e-oOGXhEjBW17NH5toYHkfn6iqkKg3FKQ&amp;chr=%5B15%2C2%2C2%5D#u2ewph38yq41\" frameborder=\"0\"></iframe>".match(...) is null, line 5 (Error code: -1001)


JS

скрытый текст

Выделить код

Код:

iimPlay('CODE:'    
    + 'FRAME NAME="undefined"\n'
    + 'TAG POS=1 TYPE=DIV ATTR=ROLE:presentation&&CLASS:recaptcha-checkbox-checkmark\n'
    + 'FRAME F=0\n'
    + 'TAG POS=1 TYPE=IFRAME ATTR=TITLE:"recaptcha challenge" EXTRACT=HTM\n'
    + 'SET !VAR1 EVAL("\'{{!EXTRACT}}\'.match(/name="(\w*)"/)[1];")\n'
    + 'FRAME NAME={{!VAR1}}\n'
    + 'ONDOWNLOAD FOLDER=* FILE=captcha.png\n'
    + 'TAG POS=1 TYPE=DIV ATTR=ID:rc-imageselect CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT\n'
)


В чем ошибка?

В первом посте в теме капч готовый код.

подскажите пожалуйста почему не срабатывает иногда кнопка в imacros пригласить в группу? то есть иногда пропускает команду или не срабатывает

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=A ATTR=ONCLICK:return<SP>Friends.inviteToGroup(event,<SP>71978570,<SP>*,<SP>0,<SP>'*')&&CLASS:friends_act&&HREF:

volchsek

скрытый текст
Значит в теге что то меняется, скорее всего цифры, попробуй и их заменить на *
Или попробуй так

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:friends_act&&HREF:

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

volchsek
Ну так включите запись и кликните на сообщение
А потом проверяйте в каждом цикле, есть или нет сообщение
Или сделайте цикл на 40 операций

Так команда перепрыгивает людей! и когда цикл прошел 41 раз приглашать еще можно человек 20

volchsek
Это уже, корявость реализации

30-05-2016 00:00:35
В крайнем случае, если лениво искать баги, цикл на 80 даст нужный результат

volchsek

скрытый текст
Ну сделай бесконечный цикл или на 100 повторений, и если найдена надпись ...только 40 в день, то  бреак - выход из цикла
и алертом выведи нужное сообщение.

PRESIDENT
в js не силен

volchsek

30-05-2016 00:17:38
volchsek
Что мешает посмотреть аналогичные примеры на форуме?
Только недавно приводил аналогичный пример, только с обратным условием, если текст не найден, прервать цикл

InfSub
хорошо посмотрю спасибо

volchsek

скрытый текст

Выделить код

Код:

for(a=1; a<99; a++){   //<--- Задаём цикл, число повторов
    iimPlayCode('TAG POS='+a+' TYPE=A ATTR=CLASS:friends_act&&HREF:'); //<--- Обрати внимание тут номер позиции уже  задаётся не ЛОП-ом а берётся номер цикла
    iimPlayCode('WAIT SECONDS=3');
 if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"только 40 друзей в день"')>0) break; //<--- Если найдена надпись, то бреак, остановка цикла
 }

Только плиз не тупи больше, не задавай таких глупостей.
Это уже не смешно, поверь.:(
Эти вопросы что ты всегда задаёшь , это не то что азы, это задачки для младшей группы детского сада.
И возьми этот пример для образца и пойми наконец как цикл в JS работает, и как его прервать, и логические операторы, и поиск текста на странице, и для составления более менее внятных скриптов тебе больше ничего не нужно.

Ребят помогите подправить скрипт.
Нашел на просторах интернета скрипт для 

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Скрипт почти полностью рабочий за исключением одного, он при выскакивания капчи в вк ее не распознает.
Вот сам скрипт Js
скрытый текст

Выделить код

Код:

iimPlayCode('VERSION BUILD=8601111 RECORDER=FX')
for(x=1;x<=15;x++){
iimPlayCode('SET !ERRORIGNORE YES')
iimPlayCode('SET !ERRORCONTINUE YES')
iimPlayCode('TAB T=1')
iimPlayCode('URL GOTO=https://likes.fm/#')
iimPlayCode('FILTER TYPE=IMAGES STATUS=ON')
iimPlayCode('WAIT SECONDS=2')
iimPlayCode('SET !TIMEOUT_STEP 10\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(3)>DIV>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>A" BUTTON=0')
iimPlayCode('TAB T=2')
iimPlayCode('WAIT SECONDS=#DOWNLOADCOMPLETE#')
iimPlayCode('FILTER TYPE=IMAGES STATUS=OFF')
iimPlayCode('WAIT SECONDS=1')
iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить<SP>в<SP>друзья')
iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=BUTTON ATTR=TXT:Подписаться')
q=iimPlayCode('TAG POS=1 TYPE=IMG ATTR=SRC:http://vk.com/captcha.php?sid=*')
if(q>0){iimPlay('antigate.iim')}
iimPlayCode('TAB CLOSE')
iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:Получи<SP>3.5')
iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Закрыть')


Так же тут используется скрипт для сервиса antigate, он рабочий проверял.
Сам скрипт
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT 1
ONDOWNLOAD FOLDER=C:\CAPTCH FILE=captcha.png
WAIT SECONDS=3
TAG POS=1 TYPE=img ATTR=src:/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT=Ваш ключ
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT=C:\CAPTCH\captcha.png
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=10
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR2 {{!EXTRACT}}
TAB CLOSE
TAB T=1
FRAME F=0
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!VAR2}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
TAG POS=2 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=3


Вообще в этом не понимаю:dumb:, заранее спасибо.

helpmeeeman

скрытый текст
Если второй код работает, то эти два кода отличаются тегом капчи

TAG POS=1 TYPE=IMG ATTR=SRC:

http://vk.com

/captcha.php?sid=*
TAG POS=1 TYPE=img ATTR=src:/captcha.php?sid=*

Попробуй так

Выделить код

Код:

var key='Ваш ключ';
for(x=1;x<=15;x++){
   iimPlayCode('TAB CLOSEALLOTHERS\nSET !TIMEOUT 30\nURL GOTO=likes.fm/#');
   iimPlayCode('WAIT SECONDS=2');
   iimPlayCode('SET !TIMEOUT_STEP 30\nEVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(3)>DIV>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>A" BUTTON=0');
   iimPlayCode('WAIT SECONDS=1');
   iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Добавить*друзья');
   iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Подписаться');
if(iimPlayCode('TAG POS=1 TYPE=IMG ATTR=SRC:*captcha.php*')>0){
      iimPlayCode('ONDOWNLOAD FOLDER=C:\\CAPTCH FILE=captcha.png WAIT=YES\nTAG POS=1 TYPE=img ATTR=src:*captcha.php* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');                                       
      iimPlayCode('TAB OPEN\nTAB T=2');
      iimPlayCode('SET !TIMEOUT 30\nURL GOTO=antigate.com/imacros.html');
      iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key);
      iimPlayCode('TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:file CONTENT=C:\\CAPTCH\\captcha.png');
      iimPlayCode('SET !TIMEOUT 90\nTAG POS=1 TYPE=INPUT:SUBMIT ATTR=*');
      iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT');txt=iimGetLastExtract();
      iimPlayCode('WAIT SECONDS=1\nTAB CLOSE');
   iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT='+txt);
   iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить');
   iimPlayCode('TAG POS=2 TYPE=BUTTON ATTR=TXT:Отправить');}
 //iimPlayCode('TAB CLOSE');
   iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=TXT:Получи*');
   iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=TXT:Закрыть');}

PRESIDENT
Спасибо большое все работает:)

Всем привет.
Прошу помощи в разрешении маленькой, но очень назойливой проблемы.
В общем такая ситуация, мой скрипт работает с прокси. Он должен залогинится на сайте, предварительно проверив загрузился ли сам сайт. В моём случае, он просто проверяет наличие заголовка - если есть заголовок с определённым содержимым, то можно логинится...
Проблема в том, что из-за сторонних скриптов (например, из-за рекламных баннеров) страница не всегда успевает прогрузится за отведённый ей таймаут, и мой скрипт пропускает шаг авторизации, несмотря на то, что искомый заголовок и форма для логина уже загрузились.

Мой код:

скрытый текст

Выделить код

Код:

var z = iimPlayCode('SET !TIMEOUT_PAGE 20\nURL GOTO=http://site.tam/\nTAG POS=1 TYPE=H2 ATTR=TXT:name*')
if(z == 1){
     iimPlayCode('логинимся');
}


Собственно вопрос: как заставить скрипт выполнить необходимые действия до окончания загрузки страницы?

vitoff пишет

Собственно вопрос: как

Поставить АД блок и срезать всю лишнюю бяку, вообще оставить только нужные фреймы.
И поставь if(z>0) и после авторизации сделай ещё одну проверку, зашёл ли в аккаунт, а то может не залогинился, а скрипт маслает дальше.

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

vitoff
совет выше, + сделай цикл, который будет проверять - залогинился ты или нет, т.к. форма авторизации должна смениться на что-то типа "ваш ник" и "выход"

PRESIDENT пишет

Поставить АД блок и срезать всю лишнюю бяку

Это хороший вариант, как минимум всякие гугл-переводчики выключить можно. Но саму рекламу я хочу оставить, что бы бот время от времени по ней кликал, тем самым принося доход владельцу сайта, который делится этим доходом (на заметку тем, кто собирает криптовалюту).

InfSub пишет

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

Проверка есть, просто не выкладывал сюда.

В итоге проблему решил, просто разделив макрос на две части:

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_PAGE 20\nURL GOTO=http://site.tam/\n');
var z = iimPlayCode(TAG POS=1 TYPE=H2 ATTR=TXT:name*');
if(z > 0){
     iimPlayCode('логинимся');
}


Таким образом, заголовок (или форма авторизации) будет найден даже если страница не успела прогрузиться до конца.

PRESIDENT, InfSub, благодарю за помощь :)

Прошу прощенние за избитый уже вопрос, но все же не получаеться прервать цикл если на странице не найден определенный текст.
Что делаю не так?

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=iframe ATTR=src:*recaptcha/api2/frame?c=* EXTRACT=HTM\n')
f2='FRAME '+iimGetExtract().match(/name=".*?"/)+'\n';
var speed = 'SET !REPLAYSPEED FAST\n';

for(;;) {
if(iimPlayCode(speed+'SET !ERRORIGNORE YES\nSET !TIMEOUT_STEP 0\n'+f2+'SEARCH SOURCE=TXT:"Click verify once there are none left."')>0){ 
    iimPlayCode(speed+f2+'EVENT TYPE=CLICK SELECTOR="#recaptcha-reload-button" BUTTON=0');
}
else { 
    break;
} 

}

Возможно текст всегда есть на странице только скрыт стилями.

PRESIDENT пишет

Возможно текст всегда есть на странице только скрыт стилями.

а каким тогде еще образом можно сделать перезагрузку для капчи, когда появляеться данный текст
"Click verify once there are none left"

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

kani339
так сравни разницу в параметрах html элемента содержащего этот текст, в ситуациях когда текст скрыт и когда он виден (extract=htm в помощь)

У меня такой вопрос по  "запуску внешней программы с аргументами из js-скрипта".
Возможно ли прописать  в cmd.exe рандомный или последовательный запуск программ?Дело в том,что я не обладаю "динамо"и приходиться запускать разные анонимайзеры.

dim222
ну так а в чем проблема прописать нужные программы в параметрах запуска, в скрипте и вызывать нужный вариант?

InfSub пишет

dim222
прописать нужные программы в параметрах запуска, в скрипте и вызывать нужный вариант?

Согласен,конечно так правильнее.  В самом .bat  рандом не пропишешь.

dim222 пишет

В самом .bat  рандом не пропишешь.

ой ли?! =)
пропишешь, только эта конструкция будет несколько сложнее, нежели в js

InfSub Большое Спасибо!!!!
Может кому пригодиться Запуск случайного (рандомного) файла с помощью .bat

скрытый текст

Выделить код

Код:

setlocal EnableDelayedExpansion
set i=0
for %%f in ("C:\anonim\*.*") do (
    set file!i!=%%f
    set /a i+=1
)
set /a n=%random% %% %i%
set file=!file%n%!
start "" "%file%"

dim222
А мне-то зачем об этом говорить?) Я вам ссылку на гугл и так запостил

Подскажите как сделать выбор пользователя в группе рандомно?
нужно для скрипта в одноклассниках.

Ivan110
А что, поиск справа вверху страницы - сломался? И по слову "рандом" ни чего не находит?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAB T=1
URL GOTO=http://ok.ru/lotereimira/members
TAG POS=1 TYPE=A ATTR=CLASS:usr 
TAG POS=1 TYPE=EM ATTR=TXT:Другие<SP>действия
TAG POS=1 TYPE=SPAN ATTR=TXT:Пригласить<SP>в<SP>группу
TAG POS=1 TYPE=IMG ATTR=SRC:http://groupava1.mycdn.me/image?t=32&bid=835357867738&id=835357867738&plc=WEB&tkn=*gtYb1PFWaO9Da0iomw9pc8F0-Uc
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:hook_FormButton_button_invite


Помогите пожалуйста.
Проблемы с этой строчкой: TAG POS=1 TYPE=A ATTR=CLASS:usr

Помогите прописать выбор пользователя по рандому или ещё лучше по порядку чтобы скрипт шел. Заходил в 1 первого участника, потом во второго и так д.........

Ivan110

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} ....

Я прописываю по оси  X Y, но оно постоянно только в первого заходит. По другом сделать знаний не хватает.

02-06-2016 08:42:13

InfSub пишет

Ivan110

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} ....

Добавил вместо этого: TAG POS=1 TYPE=A ATTR=CLASS:usr
Это: TAG POS={{!LOOP}}

Вот что пишет:
wrong format of TAG command, line 3 (Error code: -910)

Loop - позволяет перебирать элементы последовательно (в данном случае учетки пользователей)
Вот и замените 1 на loop пример я привел

Спасибо огромное! Нашел решение!

Подскажите пож-та, как сделать максимально возможный скролинг вниз страницы?

Я попробовал найти на wiki, но я не знаю англ.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Есть макрос-бродилка, он берет 1 человека из списка заходит к нему и делает определенные действия, подскажите как сделать так, чтобы он заходил не к 1 в списке в например ко 2 или 3?

На странице присутсвуют два Textarea с одинаковым "ID", писать текст получаеться только с помощью "Event"
Но EVENT записывает текст только для первого  "ID", как можно сделать запись и для следующего?

скрытый текст

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#messageDiv" CHARS="Text"

Друзья подскажите imacros может сам загружать картинки на сайт, т.е. нажимать кнопку "Добавить" открывать файловый менеджер windows и выбрать картинку, или вставлять полный путь до картинки и загружать ее.

Простите за "нубский" вопрос т.к. не очень знаком с функционалом imacros

sva029 пишет

подскажите imacros может сам загружать картинки на сайт

Зависит от сайта, на который нужно загружать картинки.
Попробуйте Аймакросом записать свои действия по загрузке картинки на сайт, а потом воспроизвести то, что он записал.

Ivan110 пишет

как сделать максимально возможный скролинг вниз

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=javascript:window.scrollBy(0,10000)');


sva029 пишет

берет 1 человека из списка

Из списка, в смысле из твоего текстового файла или где то на странице ?


kani339 пишет

как можно сделать и для следующего

В фак загляни, варианты ввода текста в форму на сайте.


Господа хорошие, ответы на все ваши вопросы есть в факе.
Ну ленитесь, загляните туда.

Господа! Что не правильно сделано:

скрытый текст

Выделить код

Код:

var i;
for (i=10; i<=0; i--) {
  errCode=iimPlay('CODE:TAG POS=i TYPE=BUTTON ATTR=TXT:Проверить');
}


Цель скрипта - на сайте 10 кнопок "Проверить", при положительной проверки появляется картинка +, при отрицательной кнопка становиться красной. Надо перебрать все.

код публикуется в тегах code внутри спойлера
InfSub

kaf_gis
удалено, избыточное цитирование

скрытый текст

Выделить код

Код:

iimPlay('CODE:TAG POS='+i+' TYPE=BUTTON ATTR=TXT:Проверить');


InfSub

kaf_gis

скрытый текст

Выделить код

Код:

var i=10;
while(i--){
    iimPlay('CODE:TAG POS='+(i+1)+' TYPE=BUTTON ATTR=TXT:Проверить');
};

03-06-2016 10:54:34
Либо оставьте, цикл for() но задайте правильное условие, а не

меньше или равно нулю

, как сейчас

InfSub пишет

udalov
Кавычки где? Или по вашему: » Текст2 » * - это команда?

Перепробовал все кавычки, не помогло... О каких именно кавычках речь?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=TXT:Текст1 » Текст2 » * EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/Текст1 » Текст2 » /,\"\")")
PROMPT {{!VAR1}}


код публикуется под спойлером
InfSub

udalov
о тех, что ограничивают (должны ограничивать) искомый текст, в первой строке, вашего кода, а не делать из него команды, которых имакрос не знает - читайте сообщение об ошибке, там все написано

для тех кто в танке
ответ у вас же под носом, в вашем же вопросе - сравните первый и второй коды, конкретно первую строку

InfSub пишет

udalov
о тех, что ограничивают (должны ограничивать) искомый текст, в первой строке, вашего кода, а не делать из него команды, которых имакрос не знает - читайте сообщение об ошибке, там все написано

для тех кто в танке
ответ у вас же под носом, в вашем же вопросе - сравните первый и второй коды, конкретно первую строку

Первый код я сделал по примеру отсюда https://forum.mozilla-russia.org/viewto … 35#p670735 и там в Экстракт уже попадают данные с кавычками, как я понял
Второй же код Экстрактит данные без кавычек...
Я, короче, запутался, буду разбираться...

udalov пишет

Я, короче, запутался, буду разбираться...

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=TXT:"Текст1 » Текст2 » *" EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/Текст1 » Текст2 » /,\"\")")
PROMPT {{!VAR1}}


или
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TD ATTR=TXT:Текст1<SP>»<SP>Текст2<SP>»<SP>* EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/Текст1 » Текст2 » /,\"\")")
PROMPT {{!VAR1}}

Hamzat

offtop
прямой ответ - не всегда - лучшее решение, если человек хочет докопаться до истины - он это сделает

udalov
не тормози, тебе тут ответ давно уже дали

PRESIDENT пишет

udalov
не тормози, тебе тут ответ давно уже дали

Это да, это работает, спасибо. Я хочу понять на будущее, чем те два варианта отличаются...

udalov
Вам же уже Hamzat написал - кавычками
Строка, содержащая пробелы, должна быть ограничена двойными кавычками

кто может помоч учусь записывать через аймакрос скрипт  проблеме такая после разадывания капчи приходит ответ но при извлечении текста со страницы извлекает тест вроде но в окошке поевляется извлеченное вот это #EANFT# вместо ответа присланного рукапчей подскажите что не так вот пример моего записаного скрипта

06-06-2016 12:25:00

скрытый текст

Выделить код

Код:

URL GOTO=http://www.taptoshi.com/faucet
TAG POS=1 TYPE=A ATTR=TXT:Claim<SP>Your<SP>Satoshi!
WAIT SECONDS=1
ONDOWNLOAD FOLDER=C:\CAPTCH FILE=captca_taptoshi.png WAIT=YES
WAIT SECONDS=1
TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
WAIT SECONDS=1
TAB OPEN
WAIT SECONDS=2
TAB T=2
URL GOTO=http://imacros2.rucaptcha.com/new/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:getcapcha.php ATTR=NAME:key CONTENT=здесь ключ рукапча
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:getcapcha.php ATTR=NAME:file CONTENT=C:\CAPTCH\captca_taptoshi.png
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:getcapcha.php ATTR=*
EVENT TYPE=CLICK SELECTOR="HTML>BODY" BUTTON=2
SAVEAS TYPE=EXTRACT FOLDER= C:\Dowlonds FILE=1.txt 
TAB CLOSE
TAB T=1
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/claim ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}
WAIT SECONDS=1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/claim ATTR=ID:claimbtn


код постится в тегах code внутри спойлера

InfSub

matrix27
И где, в вашем коде - получение ответа от сервиса?

InfSub пишет

matrix27
И где, в вашем коде - получение ответа от сервиса?

удалено, правила, пункты 2.1, 2.4

InfSub

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

InfSub пишет

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

это я все понял я не пойму как присланый ответ изять и вставить в поле ввода

06-06-2016 14:58:19

флуд
спасибо за помощь сам допер нафиг тогда для новичков такие форумы

научитесь себя вести и соблюдать правила того сообщества (форума), в которое вы обращаетесь, для таких как вы, новичков, есть FAQ и поиск, а отвечать 100500-ый раз на один и тот же вопрос... увольте

InfSub

sva029
Нет из списка на самом сайте выводится список типа такого

скрытый текст

Выделить код

Код:

<ul>
<li>Пользователь 1</li>
<li>Пользователь 2</li>
<li>Пользователь 3</li>
<li>Пользователь 4</li>
</ul>


Вот мне надо кликнуть на "Пользователь 2" или "Пользователь 3" а у меня получается только на Пользователь 1

sva029 пишет

Вот мне надо кликнуть на "Пользователь 2" или "Пользователь 3" а у меня получается только на Пользователь 1

В режиме записи кликните на Пользователь 3, а потом сравните два макроса, первый, который кликает только на первого и этот, который кликает на 3.

udalov
Ну это самое первое что я сделал

скрытый текст

Выделить код

Код:

VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=http://m.ok.ru/online
TAG POS=1 TYPE=A ATTR=HREF:/dk?st.cmd=friendMain&st.friendId=529780257300&_prevCmd=usersOnline&tkn=3967&&CLASS:emphased<SP>usr

TAG POS=1 TYPE=A ATTR=HREF:/dk?st.cmd=friendMain&st.friendId=85665240304&_prevCmd=usersOnline&tkn=1955&&CLASS:emphased<SP>usr

sva029
Тебе нужно просто номер позиции менять POS=1 POS=2 POS=3

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=HREF:/dk?st.cmd=friendMain*&&CLASS:emphased*usr
TAG POS=2 TYPE=A ATTR=HREF:/dk?st.cmd=friendMain*&&CLASS:emphased*usr
TAG POS=3 TYPE=A ATTR=HREF:/dk?st.cmd=friendMain*&&CLASS:emphased*usr

PRESIDENT
Круто! Спасибо большое!

Работаю на ytmonster.net, часто случается что сайт недоступен.
Помогите с макросом который ищет на странице слово, если нет такого слова он "Перезагрузит страницу"
Нужно реализовать простое решение, чтобы не перезагружать Firefox в случае если не найдет слово:"login"
Кто может - Поможет?

Моя реализация:
1.Старт Firefox, запуск taskkill Firefox (с паузой 70сек.) и стартует заново)
2.Если есть такое слово то отменяю п.1 -> load.js

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE NO
WAIT SECONDS=3
URL GOTO=http://www.ytmonster.net/client/mawonkamasha
WAIT SECONDS=2
SEARCH SOURCE=TXT:"login"
URL GOTO=imacros://run/?m=load.js

papacoca

скрытый текст
В батнике можешь прописать стартовать ФФ сразу с нужного тебе скрипта

Выделить код

Код:

start "РЕСТАРТ МАЗИЛКИ" "D:\FirefoxPortable.exe" imacros://run/?m=твой_скрипт.js

Тут обсуждалось.

Выделить код

Код:

for(;;){
   iimPlayCode('URL GOTO=ytmonster.net/client/mawonkamasha'); 
   iimPlayCode('WAIT SECONDS=2'); 
if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=H1 ATTR=TXT:Login')>0){
Тут содержимое load.js
}
else 
   iimPlayCode('WAIT SECONDS=60'); }

Спасибо PRESIDENT, то что нужно.
Вопрос по поиску текста на другой странице:
Почему не хочет находить слово "online"

скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=H1 ATTR=TXT:online')>0){


В коде  страницы:
скрытый текст

Выделить код

Код:

<div class="navbar-brand" href="/"><img src="http://www.ytmonster.net/img/ytmonsterlogo.png" alt="YTMonster"> <label class="label label-success">client-3.0</label> <label class="label label-success"><div class="online" style="display: inline;">3016</div> users online</label></div>


Может так?
скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=DIV ATTR=class:online')>0){


код публикуется в тегах code внутри спойлера

InfSub

papacoca пишет

Может так?

Да именно так :)

papacoca

Вопрос по поиску текста на другой странице:

Как один из удобных вариантов:

скрытый текст

Выделить код

Код:

check = content.document.body.innerHTML;

if (~check.indexOf('online')) {
    alert(true);
} else {
    alert(false)
};

Hamzat
удалено, избыточное цитирование
Нужно выполнить действие если "Правда" "Ложь"
Куда вписать: true ->

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=imacros://run/?m=load.js');


papacoca
Так вместо

скрытый текст

Выделить код

Код:

alert(true)


впишите
скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=imacros://run/?m=load.js');


07-06-2016 08:44:42
Хотя не рекомендую запускать js из js, только iim из js

Не работает на Windows Server 2008! на Windows 8 - работает.
На Windows Server 2008 Ошибка:

can not parse macro line: ๏ปฟ (Error code: -910)

Что это может быть?

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=ytmonster.net/client/mawonkamasha');
check = content.document.body.innerHTML;
if (~check.indexOf('Login')) {
iimPlayCode('URL GOTO=imacros://run/?m=test.iim');
} else {
    alert(false)
};


update - все заработало :D Спс.

papacoca
Проверяйте кодировку файла скрипта

как в js  сделать такое: если вылезла капча вк остановить?

volchsek
поиск по словам капча и vk.com

Подскажите, как правильно сделать поверку,
если закончились строки в csv файле то выполнять что-то

kani339

скрытый текст

Выделить код

Код:

for(var i=1;iimPlayCode('SET !DATASOURCE имя_файла.csv\n SET !DATASOURCE_LINE '+i)==1;i++){
    ....
};

Здравствуйте. :whiteflag:

Пере домною возникла задача. Которою не могу сам решить и прошу вашей помощи.

Написал такой скрипт, вот его начало:

скрытый текст

Выделить код

Код:

SET !VAR0 EVAL("{{!LOOP}}*1")
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type({{!VAR0}})>TD:nth-of-type(2)>A" BUTTON=0

...

*... продолжение (клики, вставки текста и так далее)


Цель его такова, нажимаю 20 циклов, он всё прокликивает на первой странице, вставляет данные в формы.
Затем я открываю страницу на сайте номер 2, нажимаю кнопку плей Аймакроса, после прокликиванья всё повторяю 78 раз (если 78 страниц на сайте)

Но хотелось, что бы Аймакрос всё делал сам на 78 страницах.

Код переключения страниц на сайте, выглядит так:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:2 (вторая страница)
TAG POS=1 TYPE=A ATTR=TXT:3 (третья страница)
TAG POS=1 TYPE=A ATTR=TXT:4 (четвёртая страница)

...

*... и так далее, до 78 страницы


Может ли Аймакрос делать 20 задач, на первой странице (первого спойлер), затем кликать на страницу номер 2  (второй спойлер).
После чего обнулял переменную (в которой уже значение 20 достигло), снова кликал тоже самое на странице номер 2 (позиции на второй странице те же, что и на первой странице, в первом спойлере они обозначены как переменная {{!VAR0}} со значением от 1 до 20).
Затем всё повторял до 78 страницы.

Желаемая схема работы Аймакроса:

скрытый текст
Открыта первая страница сайта на которой  20 строк с текстом (они же гиперссылки), код ниже

Выделить код

Код:

'(первая строка)
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type(1)>TD:nth-of-type(2)>A" BUTTON=0
'(десятая строка)
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type(10)>TD:nth-of-type(2)>A" BUTTON=0
'(двадцатая строка)
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type(20)>TD:nth-of-type(2)>A" BUTTON=0

(Все строки (гиперссылки) одинаковые, разница только в значении)
После кликов поочерёдно всех 20-ти строк на первой странице, следовал на страницу номер 2, код ниже

Выделить код

Код:

'(вторая страница)
TAG POS=1 TYPE=A ATTR=TXT:2

Затем на второй странице, кликал по 20 новым ссылкам, их коды как на первой странице, одинаковы, что и на первой, код ниже

Выделить код

Код:

'(первая строка)
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type(1)>TD:nth-of-type(2)>A" BUTTON=0
'(десятая строка)
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type(10)>TD:nth-of-type(2)>A" BUTTON=0
'(двадцатая строка)
EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type(20)>TD:nth-of-type(2)>A" BUTTON=0

Затем после кликов этих 20 ссылок, переходил страницу номер 3 (код ниже)

Выделить код

Код:

'(третья страница)
TAG POS=1 TYPE=A ATTR=TXT:3

И так далее, до 78 страницы

Коды кликов по страницам одинаковые, кроме последнего числа в нём, которое схоже с номерами страниц:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:78


код публикуется в тегах code внутри спойлера

Спасибо за помощь! :)

InfSub

Даниил955447112
js и циклы вам в помощь
все, в принципе элементарно, кроме, разве что, той путаницы, которую вы зачем-то устраиваете с номерами ссылок

Даниил955447112

скрытый текст

Выделить код

Код:

var i = 1;

while (i <= 78) {
    a();
    i++;
    iimPlayCode('TAG POS=1 TYPE=A ATTR=TXT:'+i+'');
}

function a () {
    var i = 1;
    while (i <= 20) {
        iimPlayCode('EVENT TYPE=CLICK SELECTOR="#main>TABLE:nth-of-type(2)>TBODY>TR>TD:nth-of-type(2)>TABLE:nth-of-type(3)>TBODY>TR:nth-of-type('+i+')>TD:nth-of-type(2)>A" BUTTON=0')
    };
};

Hamzat
зачем здесь while() в данной ситуации более удобен for()
выделять второй цикл, в отдельную функцию, может и красиво, но на мой взгляд, тут совершенно не нужно

сути вопроса, вы не раскрыли, в данном случае, нужно использовать еще и распределение ссылок по страницам (нечетная/четная), в зависимости от того, больше 10 номер ссылки или нет

Не могу разобраться с break, с остановкой скрипта, при обнаружении текстового элемента на странице.
Скрипт должен делать указанное количество циклов в переменной "количество", а при обнаружении определённого текста на странице, прервать цикл.

В этом коде скрипта есть 2 условия if и 1 else.
С двумя условиями if и с else получается всё.

А как сделать с одним условие if и без else, чтобы каждый раз не указывать 2 if-условия и else?

скрытый текст

Выделить код

Код:

for (var i=1;i<=количество;i++){
iimPlay("01.iim",60);
if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>в<SP>друзья")>0){
iimPlay("02.iim",60);
if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=INPUT:SUBMIT ATTR=ID:hook_FormButton*")>0){
break
}
}else{i--;}
}


Делал например так;

Циклов 10.
При обнаружении слова "Текст" циклы прерываются  и дальше идёт воспроизведение следующего макроса.
А пока не обнаружит слова "Текст" на странице, выполнять должен указанное количество циклов.

скрытый текст

Выделить код

Код:

for (var i=1;i<=10;i++){
iimPlay("01.iim",60);
if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=A ATTR=TXT:текст")>0){
break
}
}


Делал по разному, но всегда после одно цикла обрывается,
какое бы количество циклов не указывал.

Как сделать с одним условием if  и с одним break ?

Алим
не понятно, чего вы пытаетесь добиться, так как, не совсем понятен смысл, выполняемых, первым скриптом, действий
в случае второго приведенного фрагмента, break срабатывает всегда, когда выполняется вышестоящее условие, в данном случае, на странице, был найден текст "Добавить в друзья", после чего и сработал break

InfSub
Вот допустим вот этот код скрипта, выполняет бесконечный цикл, когда не находит слово "Мо гости" на странице.
При обнаружении "Мои гости", скрипт останавливается.

А как сделать, чтобы не бесконечный был цикл, а выполнял 10 циклов?

скрытый текст

Выделить код

Код:

for (var i=1;i<=10;i++){
iimPlay("ent.iim",60);
if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=2 TYPE=DIV ATTR=TXT:Мои<SP>гости")>0){
break
}else{i--;}
}


Вот сам сделал. Нужно было убрать две чёрточки в else{i--;}

скрытый текст

Выделить код

Код:

for (var i=1;i<=10;i++){
iimPlay("ent.iim",60);
if (iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=2 TYPE=DIV ATTR=TXT:Мои<SP>гости")<0){
break
}else{i;}
}

Алим
Убери else

скрытый текст

Выделить код

Код:

for(i=1;i<=10;i++){
   iimPlay("ent.iim",60);
if(iimPlayCode("SET !TIMEOUT_STEP 1\nTAG POS=2 TYPE=DIV ATTR=TXT:Мои<SP>гости")>0) break; }


Алим пишет

две чёрточки

36.gif

PRESIDENT спасибо, всё получилось)

Hamzat
сорри, перечитал задачу Даниил955447112'а, видимо, я что-то напутал с условием

Подскажите, как правильно выбрать рандомное имя класса из двух переменных в iim


скрытый текст

Выделить код

Код:

SET upvote "arrow login-required access-required up"
SET downvote "arrow down login-required access-required"
SET rand EVAL("Math.floor(Math.random()* ({{upvote}} - {{downvote}}) + {{downvote}})");
TAG POS=1 TYPE=DIV ATTR=CLASS:{{rand}}

kani339 пишет

Подскажите, как правильно выбрать рандомное имя класса из двух переменных в iim

Текстовый рандом для выбора одного из восьми почтовых доменов я  делал так:

скрытый текст

Выделить код

Код:

SET email EVAL("var a=['@newmail.ru','@mail.ru','@yandex.ru','@gmail.com','@yandex.com','@yandex.kz','@yandex.ua','@ya.ru'],r=Math.floor(Math.random()*8 + 0);a[r];")
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:Email CONTENT={{email}}

kani339

Подскажите, как правильно выбрать рандомное имя класса из двух переменных в iim

Рандомный выбор включая min и max

скрытый текст

Выделить код

Код:

var rand = Math.round(min + Math.random() * (max - min));

kani339
Math.random() - математическая функция, она не работает со словами, как заставить работать со словами, смотри выше пример от udalov

Оффтоп
Ребята может кто знает, можно ли используя xpcom, вывести название txt или csv файлов в определенном каталоге в скрипт?

P.S знаю что более подходящая тема "разработка", просто там долго отвечают);

Здравствуйте!
Подскажите, как можно сделать так, чтоб аймакрос отслеживал изменение IP-адреса и работая в цикле, начинал бы следующий цикл только когда поменяестя IP-адрес?
Вот например: запускаем скрипт (работающий в цикле), он фиксирует IP-адрес и начинает работу. Когда исполнился первый цикл, то проверяет изменился ли IP-адрес. Если нет, то ждёт пока изменится и только после этого начинает второй цикл. И так далее.
Может для этого есть какие-то сторонние приложения или дополнения?
Или лучше написать код, который бы периодически посылал запрос на какой-нибудь сайт типа 2ip . ru, извлекал бы IP адрес и сравнивал бы с образцом и если находил бы различия, то начинал бы следующий цикл, и одновременно заменял бы новый IP-адрес в качестве образца для следующего сравнения и т.д.?
Или проще задействовать какие-то дополнения или приложения (если подходящие имеются)?

Посмотри в интерфейсе роутера, где нить внешний айпи показывает.
Если что можешь гет запросом спарсить инфу.

PRESIDENT пишет

Посмотри в интерфейсе роутера, где нить внешний айпи показывает.
Если что можешь гет запросом спарсить инфу.

В принципе можно легко узнать ip-адрес если в командной строке написать cmd > ipconfig Находим IP-адрес:

картинка
Screenshot-749.1465572783.png

Это в принципе то, что надо.
Только как бы этот IP-адрес гет запросом извлекать, чтоб ява-скрипт мог сравнивать изменения данного значение IP-адреса? :/

dvitkovs

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

Выделить код

Код:

my_ip();
     alert(b);

function my_ip(){
   var CC=Components.Constructor;
   var a=CC("@mozilla.org/xmlextras/xmlhttprequest;1")();
       a.open('GET','http://192.168.1.1/',false);
       a.send(null);
       b=a.response;
       return b;}

PRESIDENT
не, что-то оно ничего не выдаёт, только ошибку:

картинка
Screenshot-752.1465581111.png

картинка
Screenshot-751.1465581138.png

Теперь работает нормально. Однако IP-адреса там нигде нету. Видать на главной странице роутера его просто не содержится
Screenshot-753.1465582177.png
А может IP-адреса там и не будет. У меня ADSL-модем подключенный по схеме "бридж", а не "роутер".

Ну зайди в роутер посмотри, где то да должен быть,
полазь по меню, потом в запросе подправь урл

скрытый текст
yDSsDr5X.jpg

А 2ip и аналоги, что, не рулят уже?

PRESIDENT пишет

Ну зайди в роутер посмотри, где то да должен быть,
полазь по меню, потом в запросе подправь урл

Может и не быть. У меня вообще-то не роутер, а ADSL-модем подключенный по схеме "Бридж", а не "Роутер". Это когда ярлычок на рабочем столе и по нему надо клацать, чтоб выйти в интернет. Реконнект по идее тоже делается через ярлык. То есть получается, что IP надо искать в компе, а не в роутере/ADSL-модеме.
Вот по комманде cmd ipconfig IP-адрес можно получить (правда  он совсем не тот, если б мы его получали на сайте 2ip, но в данном случае это не важно. Главное, что он меняется при реконнекте. А нам и надо только чтоб ява-скрипт отслеживал, что IP поменялся).

10-06-2016 21:37:13

InfSub пишет

А 2ip и аналоги, что, не рулят уже?

В принципе рулят, но на то чтоб оттуда брать IP тратится время на отправку запроса, на получение ответа. Хотелось бы это исключить.

Так же гетом на 2 ип ру отправь запрос, это пол секунды.
вместо этого 192.168.1.1 пропиши 2ip.ru

dvitkovs пишет

Вот по комманде cmd ipconfig IP-адрес можно получить (правда  он совсем не тот, если б мы его получали на сайте 2ip,

Если пров не дает белый ip, то на 2ip вы увидите, не свой ip, а ip прова, который может и не меняться
Кто мешает вывести результат команды ipconfig в файл и считать его iMacros'ом?

скрытый текст

Выделить код

Код:

ipconfig>c:\my_ip.txt


Работа с cmd из iMacros тут уже обсуждалась и есть, к примеру, в соседней теме про каптчи, в шапке темы

PRESIDENT
InfSub
Благодарю за поддержку и предложенные варианты! :)

Добрый день,
Интересует, кто нибудь реализовывал на мазила имитацию движения мыши для яндекс метрики ? Интересует рандомность , но хоть 60% схожесть с человеческим движением (скролТУ) работает , но совсем немного , интересуют остальные показатели. Если есть кликеры , то интересует совместный запуск со скриптом через батник (скрипт работает 4 мин , потом через бат перезапускаю с мазилой (мне так нужно)) и рандомность тоже интересует.

kolshix пишет

имитацию движения мыши

Средствами JS вряд ли, но можно в Autoit.

PRESIDENT пишет
kolshix пишет

имитацию движения мыши

Средствами JS вряд ли, но можно в Autoit.

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

подскажите команду чтобы происходило нажатие на кнопку когда она появляется

7lava
Через js проверяй есть ли кнопка, на форуме куча примеров
например, наличие капчи на vk

просто я в этом деле чайник и не нашёл то что меня интересует

7lava
Тут 80% чайники, каждому по 20 раз разжевывать одно и тоже? Повторяю еще раз, поиск, справа вверху страницы, по словам: captcha (или capcha), vk.com

13-06-2016 16:37:30
На предыдущей странице есть ответ на аналогичный вопрос

Я похоже не чайник а полный 0 заглянул я на соседнюю страницу и ничего не понял,два часа или больше лазил по форуму и ничего не нашёл:( TAG POS=1 TYPE=DIV ATTR=ID:dropButton напиши пожалуйста код,команду или как его там чтоб макрос нажимал на неё при её появлении и куда его вставить перед кнопкой или после?Я понимаю что 0-ли тебя задолбали,но кто если не ты поможет нам ущербным:)

М-м-м да, тяжкий случай :(
Дай адрес сайта и опиши что сделать нужно.
Надеюсь не на дице кнопку ловить

Подскажите, пожалуйста, в коде iMacros обернутом в джаваскрипт команду SET ERRORIGNOR YES имеет смысл ставить? Она исполняется?

Lerd
Нет

Lerd
Исполняется
Имеет смысл только если в js  у вас обернуто сразу несколько команд, одна из которых может не выполниться, но при этом код не должен завершиться, а должен продолжить свое исполнение

Lerd
Например так:

скрытый текст

Выделить код

Код:

var code = '';
    code += 'CODE: \n SET !EXTRACT_TEST_POPUP NO \n SET !ERRORIGNORE YES \n SET !ERRORCONTINUE YES \n SET !TIMEOUT_STEP 0 \n';
    code += 'TAB T=1' + n;
    code += 'TAB CLOSEALLOTHERS' + n;
    iimPlay(code, 60)

dim222
Сколько раз говорить, нет такой команды: SET !ERRORCONTINUE YES
А команда:  SET !EXTRACT_TEST_POPUP NO  - в js совершенно бесполезна

Здравствуйте!
Подскажите простой js-код который вставлял бы сохраненные куки из  файла (ещё желательно и такой код, который бы сохранял куки в файл).
То есть после kоманды CLEAR брал бы из cvs. файла сохранённую куку и вставлял в мозиллу.
Для чего это надо: чтоб каждый раз не вводить логины и пароли к аккаунтам (например почтовым), а сразу же заходить и  работать.
В поиске нашел старую тему с похожим вопросом: https://forum.mozilla-russia.org/viewtopic.php?id=50545 но там скрипт не работает:

скрытый текст
2cX9p.png
2cX9q.png

Всем спасибо за ответы!

Ребят, я не очень разбираюсь, подскажите пожалуйста почему не вставляется копированный текст в поле?

Выделить код

Код:

TAG POS=1 TYPE=* ATTR=CLASS:copy<SP>help EXTRACT=TXT
TAB T=1
EVENTS TYPE=KEYPRESS SELECTOR="#id_phone_number" CHARS={{!EXTRACT}}

Weischeimer

скрытый текст
Имакрос не дружит с пробелами, если в тексте есть пробелы то экстракт нужно обернуть кавычками

Выделить код

Код:

...CHARS="{{!EXTRACT}}"

PRESIDENT пишет

Weischeimer

скрытый текст
Имакрос не дружит с пробелами, если в тексте есть пробелы то экстракт нужно обернуть кавычками

Выделить код

Код:

...CHARS="{{!EXTRACT}}"

Даже так не хочет, но отличие этого поля в том, что в конце есть стрелочки набора цифр вверх-вниз.
Вот код поля.

2cXdb.jpg

Так попробуй или вводит, потом просто текст поменяешь на экстракт

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:response_code CONTENT="Das ist ein Test"

PRESIDENT пишет

Так попробуй или вводит, потом просто текст поменяешь на экстракт

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:response_code CONTENT="Das ist ein Test"

Всё сработало, спасибо)

Здравствуйте ,может кто поможет?
Эксперементирую на сайте freebitco.in там есть вкладка игра multiplybtc ,подскажите плз код на смену payout шансов код

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:double_your_btc_payout_multiplier CONTENT=2")


не работает видимо стоит защита на сайте от такого ввода
Обыскал все что мог.
за ранее благодарю !

petral2002

подскажите плз код на смену payout

скрытый текст

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="#double_your_btc_payout_multiplier" KEY=8
EVENT TYPE=KEYPRESS SELECTOR="#double_your_btc_payout_multiplier" CHAR="7.00"

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

petral2002

я так пробовал,таким образом он меняет значение ,но при следующем шаге возвращает все обратно

Я именно таким образом меняю все нормально работает, iMacros 8.8.1 Mozilla Firefox Portable 24 esr

есть скрипт который сохраняет кнопку  и ссылку на сайте как переделать что бы сохраняло только ссылку на сайт без кнопки ( в макросах вобще не шарю если не сложно сделайте уж готовую ато я врятле пойму пояснения как изменить)

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:кнопка на каком-то сайте EXTRACT=TITLE
ADD !EXTRACT {{!URLCURRENT}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=kostapidor.txt

riki228
Убери первую строку.

PRESIDENT
спасибо

Как определить, что имакрос завершил работу?

kani339

Пропиши в конце скрипта

Выделить код

Код:

iimDisplay('Готово !');
alert('Готово !');

Спасибо но уже не надо сайт свернуся:(

PRESIDENT пишет

М-м-м да, тяжкий случай :(
Дай адрес сайта и опиши что сделать нужно.
Надеюсь не на дице кнопку ловить

У меня на vps linux стоит centos 6 помоему ,а на компе дома 27 портабл ,на нем глючит что то таким образом ,сегодня попробую на vps может прокатит ,президент в факах писал правильный ввод текста,но где там обращение к окну ввода я не пойму,я можно сказать чайник пока,спасибо за ответы,будем дальше копать)


удалено, избыточное цитирование

InfSub

petral2002

президент в факах писал правильный ввод текста

Попробуйте вот так

скрытый текст

Выделить код

Код:

content.document.getElementById('double_your_btc_payout_multiplier').value = '7';


или так

скрытый текст

Выделить код

Код:

content.document.getElementById('double_your_btc_payout_multiplier').innerHTML = '7';

Спасибо !Заработал первый вариант  ,только еще шансы пришлось прописать также и все запахало )

удалено, избыточное цитирование

InfSub

Новичек. Перерыл поисковики - там одна труха по установке iMacros с парой примеров.
Задача с виду простая, но мне не дается.

Мой макрос жмет по кнопке на сайте и ждет, пока сайт через JS откроет новую вкладку. Мне нужно попасть на эту вкладку и тем же макросом выполнить определенные действия. Мой макрос этого не может сделать
команда TAB T=2 не срабатывает. 

В каком направлении рыть? Спасибо!

!!!!!!!!!!!!!!!
Вопрос снимается! Рыть нужно было в направлении Фаерфокса, на нем все заработало. На Хроме соответственно не работало.

Подскажите как можно сделать сохранение в Csv файл,
во вторую ячейку а не через запятую

kani339
запятая - и есть разделить ячеек, читайте FAQ

Совсем  элементарно простой скрипт есть, пример:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !DATASOURCE C:\MACROS\1.txt
SET !LOOP 1
' =============================================================== '

URL GOTO=https://{{!COL1}}
WAIT SECONDS=4
TAG POS=1 TYPE=действие нажатие на кнопку в вк
WAIT SECONDS=2


Подскажите, разгадывание капчи точно не потяну, ума не хватит.. 
Сейчас он идёт по кругу, игнорируя ошибки , когда появляется капча..
Как мне встроить, просто чтобы скрипт нажимал на паузу, если появляется капча, ожидая ввода капчи ( после ввода, соответственно пошёл дальше работать)..
А то получается сейчас проскакивает и приходится возвращаться назад  чистить файл, искать тот пройденный этап, где она появилась. Заранее спасибо

paradoxx
поиск по словам "капча", "vk.com" (без кавычек), справа вверху страницы, только вместо разгадывания ставите паузу

:whiteflag: Привет всем!

Имеется цельное число 01835.
Необходимо чтобы АйМакрос разделил его на отдельные цифры и набрал следующий код:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:0
TAG POS=1 TYPE=SPAN ATTR=TXT:1
TAG POS=1 TYPE=SPAN ATTR=TXT:8
TAG POS=1 TYPE=SPAN ATTR=TXT:3
TAG POS=1 TYPE=SPAN ATTR=TXT:5


код публикуется в тегах code внутри спойлера

Как это воплотить?
Может разбить данное число по переменным можно, или ещё как-нибудь?

P.S.: Скрипт не на js написан.

InfSub

Даниил955447112

скрытый текст

Выделить код

Код:

SET !EXTRACT 01835
SET !VAR1 EVAL("'{{!EXTRACT}}'.charAt(0)")
SET !VAR2 EVAL("'{{!EXTRACT}}'.charAt(1)")
SET !VAR3 EVAL("'{{!EXTRACT}}'.charAt(2)")
SET !VAR4 EVAL("'{{!EXTRACT}}'.charAt(3)")
SET !VAR5 EVAL("'{{!EXTRACT}}'.charAt(4)")
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR1}}
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR2}}
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR3}}
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR4}}
TAG POS=1 TYPE=SPAN ATTR=TXT:{{!VAR5}}

Народ помогите пожалуйста не могу разобраться с скрипто для Подписки на YouTube каннал,

если уже подписан на  каннал, то кнопку нажимать не нужно.

Может кто уже сталкивался и знает как это решить?

kani339 пишет

Народ помогите пожалуйста не могу разобраться с скрипто для Подписки на YouTube каннал,если уже подписан на  каннал, то кнопку нажимать не нужно.Может кто уже сталкивался и знает как это решить?

Решено:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=CLASS:*yt-uix-button-subscribe-branded*

InfSub пишет

paradoxx
поиск по словам "капча", "vk.com" (без кавычек), справа вверху страницы, только вместо разгадывания ставите паузу

Искал...

Если я правильно понял в имакросе таких команд нет if else .
То есть нужно создавать #Current.js
И оттуда уже вызывать команды iмакроса в сочетании с js?
То есть к каждой моей команде в моем простом скрипте, нужно заново прописывать  "iimPlayCode"

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=BUTTON ATTR=ID:subscribe_button')

 if(iimPlayCode('SEARCH SOURCE=TXT:"Введите"')>0)
{ 
 iimPlayCode('WAIT SECONDS=4')
 iimPlayCode('REFRESH');
iimPlayCode('SET !DATASOURCE C:\MACROS\Группы.txt')
iimPlayCode('SET !LOOP 1')


Поиск текста на странице вроде работает из Current.js
А другие команды, например переход по урл, который предварительно в текстовом файле  не работают..

paradoxx
imacros - язык команд, позволяющий браузеру сделать что-то за вас, но не язык программирования
Для команд типа if .. else есть js


Во-первых, не нужно каждую команду оборачивать в iimPlayCode()
С одной стороны это удобно, с другой, совершенно не обязательно, а при ваших знаниях, скорее вызовет ошибки
Во-вторых, !LOOP не используется в js, для этого есть js-переменные и циклы. Читайте FAQ, там в кратце многое описано.
В-третьих, если у вас не работает что-то, где пример - не рабочего кода? Или по вашему, тут форум "битвы экстрасенсов"?

InfSub
Понял.. Ну пример я выше указал, он там элементарный на 5 строк, думал одной командой обойдусь, а тут получается нужно весь скрипт на js переделывать..
Переписал, получается вроде работает..
Вот что получилось:

скрытый текст

Выделить код

Код:

//while(true){
//количество строк в файле
for(u=1; u<101; u++){
//Извлечь из файла:
iimPlayCode('SET !DATASOURCE C:\\MACROS\\Группы.txt\nSET !DATASOURCE_LINE '+u+'\nURL GOTO=https://{{!COL1}}\n')

//Нажатие на кнопку;
iimPlayCode('WAIT SECONDS='+(Math.random()*5)+7);
iimPlayCode('TAG POS=1 TYPE=ДЕЙСТВИЕ')

//Условие, если капча появилось:
if(iimPlayCode('SEARCH SOURCE=TXT:"Введите код"')>0)
{ 
//если найдено пауза 
//iimPlayCode('PAUSE');
//Антигейт
iimPlay('АНТИГЕЙТ.iim')}

//Если НЕ найден что делать:
} 
//RANDOM
s=Math.floor(Math.random()*25);
iimPlayCode('WAIT SECONDS='+s);

//iimPlayCode('WAIT SECONDS='+Math.floor(Math.random()*25 + 5);


Но при капче АНТИГЕЙТ.iim не запускается.
Чужой найденный для антигейта:
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT 1
ONDOWNLOAD FOLDER=C:\CAPTCH FILE=captcha.png
WAIT SECONDS=3
TAG POS=1 TYPE=img ATTR=src:/captcha.php?sid=* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
TAB OPEN
TAB T=2
URL GOTO=http://antigate.com/imacros.html
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://antigate.com/in.php ATTR=NAME:key CONTENT=кк
TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://antigate.com/in.php ATTR=NAME:file CONTENT=C:\Macros\captcha.png
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://antigate.com/in.php ATTR=*
WAIT SECONDS=10
TAG POS=1 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT
SET !VAR2 {{!EXTRACT}}
TAB CLOSE
TAB T=1
FRAME F=0
WAIT SECONDS=3
TAG POS=1 TYPE=INPUT:TEXT ATTR=* CONTENT={{!VAR2}}
TAG POS=1 TYPE=BUTTON ATTR=TXT:Отправить
TAG POS=2 TYPE=BUTTON ATTR=TXT:Отправить
WAIT SECONDS=3

PRESIDENT пишет

Если тебе к примеру нужно сохранить капчу или какой нить файл в C:\CapNum
а папки CapNum на диске C: ещё нету, имакрос её создаст.smile_31.gif
Поэтому, как вариант, можна создать пустой текстовый файлик в папку(которой ещё нету)
а текстовик апосля удалить. Или сразу создавать/сохранять текстовик с нужными данными, папка создастся автоматом.

Здравствуйте, к сожалению этот способ не работает, возможно есть какой нибудь еще вариант, кроме использования сторонней программы exe, заранее спасибо

Подскажите, что я делаю не правильно, мне нужно запустить фаил 1.bat:

скрытый текст

Выделить код

Код:

var prgpath="C:\\Windows\\System32\\cmd.exe";
var args = ['start',' C:\Users\user\Documents\iMacros\CAPTCH\1.bat'];
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(prgpath);
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, args, args.length);


код публикуется в тегах code внутри спойлера

InfSub

Sergey_yu пишет

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

Чевой ??? 9.gif
При чём созданию новой папки, какой то екзешник ???


Sergey_yu пишет

что я делаю не правильно

скрытый текст

var args = ['start',   ' C:

\\

Users

\\

user

\\

Documents

\\

iMacros

\\

CAPTCH

\\

1.bat'];


В аргументах ничего не пиши, а вместо программы укажи свой батник
Примерно так
скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
   var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);       
   var args=[''];  
       file.initWithPath('C:\\Users\\user\\Documents\\iMacros\\CAPTCH\\1.bat');  

       proc.init(file); proc.run(false, args, args.length);

Sergey_yu пишет

к сожалению этот способ не работает

что именно у вас не работает? где пример нерабочего кода?
данный способ прекрасно работает на всех версиях iMacros для FF выпущенных за последние 2 года, в том числе и на последней

PRESIDENT пишет

Спасибо Вам! Но окно появляется и исчезает, а бат не выполняет своей функции(создание папки), а при двойном клике все работает... Буду думать дальше

InfSub пишет

что именно у вас не работает? где пример нерабочего кода?
данный способ прекрасно работает на всех версиях iMacros для FF выпущенных за последние 2 года, в том числе и на последней

скрытый текст

Выделить код

Код:

var ssilka='C:\\Users\\sergey\\Documents\\iMacros\\new';
iimPlayCode('SAVEAS TYPE=EXTRACT FOLDER='+ssilka+' FILE=new.txt');


Папки new не существует, она и не появляется при работе макроса...

PRESIDENT пишет

Sergey_yu
Забыл указать что в экстракт попадает, и в конце пути ещё 2 образных слеша поставь

скрытый текст

var txt='test'
var ssilka='C:\\Users\\sergey\\Documents\\iMacros\\new

\\

';
iimPlayCode("

SET !EXTRACT "+txt+"\n

SAVEAS TYPE=EXTRACT FOLDER="+ssilka+" FILE=new.txt");

Результат тот же

Sergey_yu
Попробуй такую конструкцию.
Правда модер увидит, засмеёт и выругается.:(

скрытый текст

Выделить код

Код:

var txt='test'
var Path='C:\\new\\';
iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=\nSET !EXTRACT '+txt+'\nSAVEAS TYPE=EXTRACT FOLDER='+Path+' FILE=new.txt');

offtop
опять модер во всем виноват suicide_fool-edit.gif

PRESIDENT пишет

скрытый текст

Выделить код

Код:

var txt='test'
var Path='C:\\new\\';
iimPlayCode('ONDOWNLOAD FOLDER='+Path+' FILE=\nSET !EXTRACT '+txt+'\nSAVEAS TYPE=EXTRACT FOLDER='+Path+' FILE=new.txt');

Зато работает) Спасибо большое, очень выручили

Подскажите как можно скртыть ерор

RuntimeError: Invalid DATASOURCE_LINE value: 4, line 2 (Error code: -951)

Использую цикл для определение количество строк CSV в файле,
как можео вместо этого ерора вывести

iimDisplay("Finished")

Ребят подскажите ,уже всю голову сломал. Нужно выдернуть из кода страницы и сформировать строку параметров следующего формата:
категория:вариант1;вариант2 и т.д.
где категория: (intellectual property)

скрытый текст
d62e64477d10.jpg

а варианты:
скрытый текст
c7ebc1f8a751.jpg

Есть в C#, но там вообще темный лес!

kani339
ну так включите голову и вставьте iimDisplay после окончания цикла чтения файла...

23-06-2016 22:31:56
dim222
предположу, что у вас уже должен быть список фраз, подходящих под категорию, иначе скорее всего ни как
извлечь фразы из таблицы можно стандартным extract=txt примененным к тегу table либо методом перебора тегов tr или td
отформатировать строку в нужном формате - можно с помощью js

Здравствуйте, подскажите в чем может быть причина сбоя imacros, он вдруг перестал понимать кириллицу. Сегодня проверял на линуксе все работало, а на винде выдает иероглифы вместо русских букв

скрытый текст

Выделить код

Код:

var ssilka='';
var sistem = window.navigator.oscpu;
var slesch='';
if(sistem.indexOf('Windows')!=-1){slesch='\\';ssilka='C:\\MoiObiekt\\';}
if(sistem.indexOf('Linux')!=-1 || sistem.indexOf('uname')!=-1){slesch='//';ssilka='///home//uan//MoiObiekt//';}
var mail=prompt('Введите почту клиента','');
var number;
var massivnumber=new Array(0);

10224871.jpg


Спасибо, разобрался, дело в том, что макрос писался на линуксе и походу стояла не правильная кодировка

Кто знает подскажите пожалуйста. Вообще не догоняю как извлекать. Мне надо извлечь баланс (span) .
Запись макроса :

скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=SPAN ATTR=TXT:7143


Пробую так:
скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=2 TYPE=SPAN ATTR=TXT:* EXTRACT=TXT'); otvet = iimGetLastExtract();


не получается.
картинка из кода страницы:
скрытый текст
f5c6d4fc56c5.jpg

dim222

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=span ATTR=class:badge*badge*succes EXTRACT=TXT'); 
otvet = iimGetLastExtract();
alert(otvet);

PRESIDENT
Спасибо большое. Все получается,но. Блин почему все так не просто: ответ не вставляется в поле

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:process.php ATTR=ID:amountXapo CONTENT="'+otvet+'"');


ошибка

(unknown command: 7143, line 2 (Error code: -910))

. Хотя если в коде прописать руками конкретную цифру,то все норм.

Попробуй просто

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:amountXapo CONTENT='+otvet);

PRESIDENT
Хм... странно, чой-то ни как. А вот если просто в коде
или в  шапке пропишу

скрытый текст

Выделить код

Код:

var otvet='7143'


то вставляется. А так выдает ошибку.
alert выдает все правильно.

скрытый текст
выше где ответ извлекаешь сделай так

otvet = iimGetLastExtract().match(/\d+/);

Ну теперь все чики-пуки. Спасибо тебе.

Доброго Времени Суток!Подскажите,существует ли команда iim "принудительно остановить загрузку страницы"?

borisenko1
нет

Ребят! Подскажите кому не лень. Что то  не могу словечки вытащить из страницы. alert выдает  #EANF#, либо ни чего.

скрытый текст
3fe9f8ab4a32.jpg098ce7bcf16e.jpg

dim222

Как то так

Выделить код

Код:

var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n'; 
     iimPlayCode(t0+'TAG POS=1 TYPE=iframe ATTR=src:*recaptcha/api2/frame?c=* extract=htm');f2='FRAME '+iimGetExtract().match(/name="\w+"/)+'\n';  
     iimPlayCode(t0+f2+'TAG POS=1 TYPE=div ATTR=class:rc-text-desc-wrapper extract=htm');   frasa=iimGetLastExtract().match(/<span>(.*?)<\/span>/)[1];   
     iimPlayCode(t0+f2+'TAG POS=1 TYPE=table ATTR=class:rc-text-choices extract=htm');      otvet=iimGetLastExtract().match(/tabindex="0">[\w+ ]+<\/td>/g);
     
  alert('Фраза: '+frasa+'\nОтветы :\n--------------\n'+otvet.join('\n'));


не изменяем имена функций js и iMacros без изменения их функционала - правила раздела iMacros пункт 1.6
Кстати это гуглопоиском с первой второй иногда третей попытки проходится
гетом вообще две секунды 12.gif

InfSub

PRESIDENT
Спасибо ,выручаешь.

PRESIDENT
Подскажи. Почему это команда не обрезает лишнее?

скрытый текст

Выделить код

Код:

otvet=iimGetLastExtract().match(/tabindex="0">[\w+ ]+<\/td>/g);

otvet получается такого вида: tabindex="0">reportoire</td>

replace никто не отменял

А вот кто подскажет, как можно возобновить работу скрипта, если он вдруг ни с того ни с сего остановился? То есть как бы завис.
Такое иногда, но случается у всех. Например, если скрипт большой или мозилла тяжеловесная  предпоследней версии ; приложение imacros последней версии (или наоборот, более ранней и не самой стабильной), мощность процессора, скорость интернета, множество программ и приложений работающих одновременно с imacrosom... и т.д. Возможно это всё в совокупности как-то и влияет на то, что какой-нибудь скрипт (особенно работающий в цикле часами и сутками) возьмёт и остановится сам по себе, зависнет и уже ничего не помогает, надо только заново его запускать.
А есть ли какая-либо возможность толкнуть его чтоб он пустился в продолжение работы?

Делай через несколько циклов перезапуск мазилки, с запуском нужного скрипта.

Подскажите пожалуйста новичку, как мне ввести пароль в поле?

<input autocomplete="off" id="p1" name="inputNewPassword" size="40" type="password">

PRESIDENT пишет

replace никто не отменял

А.......чой то типа этого?

скрытый текст

Выделить код

Код:

otvet=iimGetLastExtract() .match(/tabindex="0">[\w+ ]+<\/td>/g);
otvet=otvet.replace(/tabindex="0">/gi,"").replace(/\/td>/gi,"");

:whiteflag::whiteflag::whiteflag:

Знатоки!!! , что здесь не так? как избавиться от </td>:dumb:

скрытый текст

Выделить код

Код:

otvet=iimGetLastExtract() .match(/[\w+ ]+<\/td>/g);
otvet=otvet.replace(/<\/td>/g,"");

dim222 пишет

как избавиться от </td>

smile_29.gif

Выделить код

Код:

otvet=iimGetLastExtract().match(/[\w+ ]+/g);

PRESIDENT
Если бы все так просто............,я так пробовал . Там тогда вместе с ответом много лишнего вылазиет , типо этого:

скрытый текст
be8425fa9147.jpg

скрытый текст

Выделить код

Код:

otvet=iimGetLastExtract().match(/tabindex="0">[\w+ ]+/g);

PRESIDENT
Тогда надо удалить  tabindex="0">. При использовании replace

скрытый текст

Выделить код

Код:

otvet=iimGetLastExtract().match(/tabindex="0">[\w+ ]+/g);
otvet=otvet.replace(/tabindex="0">/,"");
alert('Фраза: '+frasa+'\nОтветы :\n--------------\n'+otvet.join('\n'));


ругается на otvet.replace

dim222 пишет

Почему  команда не обрезает лишнее?

Судя по модификатору g вы получаете сразу несколько значений и пытаетесь их обработать. Вариантов несколько, один из них - ниже:

как-то так:

Выделить код

Код:

otvet=iimGetLastExtract().match(/tabindex="0">[\w+ ]+<\/td>/g);
var l=otvet.length;
while(l--){
    otvet[l]=otvet[l].match(/>(.*?)</).pop();
};

InfSub
PRESIDENT Человеческое СПАСИБО вам!!! Все работает на УРА! ПРОФЕССИОНАЛЫ своего дела!

удалено, написал в ПМ
InfSub

InfSub
А с профессиональной точки зрения какой вариант правильный,хоть и все работают,но все же как правильно писать (как вариант, либо вместо TAB-ов какие-то действия):
Вариант №1:

скрытый текст

Выделить код

Код:

var code ='';
code += 'SET !TIMEOUT_STEP 0'+n;
code += 'ONDIALOG POS=1 BUTTON=OK CONTENT='+n;
code += 'TAB T=1'+n;
code += 'TAB T=0'+n;
code += 'TAB T=-1'+n;
code += 'TAB T=-2'+n;
code += 'TAB T=-3'+n;
code += 'TAB T=-4'+n;
code += 'TAB CLOSEALLOTHERS'+n;
iimPlayCode(code);


Вариант№2:
скрытый текст

Выделить код

Код:

var t0='SET !TIMEOUT_STEP 0\n';
iimPlayCode(t0+'ONDIALOG POS=1 BUTTON=OK CONTENT=\nTAB T=1\nTAB T=1\nTAB T=0\nTAB T=-1\nTAB T=-2\nTAB T=-3\nTAB T=-4\nTAB CLOSEALLOTHERS');


Вариант№3:
скрытый текст

Выделить код

Код:

iimPlayCode(t0+'ONDIALOG POS=1 BUTTON=OK CONTENT=');
iimPlayCode(t0+'TAB T=1');
iimPlayCode(t0+'TAB T=0');
iimPlayCode(t0+'TAB T=-1');
iimPlayCode(t0+'TAB T=-2');
iimPlayCode(t0+'TAB T=-3');
iimPlayCode(t0+'TAB T=-4');
iimPlayCode(t0+'TAB CLOSEALLOTHERS');


отредактировано - не меняем наименования js и iMacros функций, без изменения их функционала, правила раздела iMacros, 1.6

InfSub

dim222
Такой, какой - лично вам удобен и понятен, например, в варианте 3 - вы получите, совершенно не тот результат, какой ожидаете, и он не идентичен, 1 и 2 вариантам. (см. FAQ)

Тут не идет речь о профессиональном программировании, оно далеко за гранью обсуждений в данной ветке форума.

Если я приведу пример своего кода, то по большей части, он будет непонятен для многих и будет очень сильно отличаться, от приведенных вами примеров, хотя основа его естественно - завязана на стандартный iimPlayCode(), но не везде и не всегда

Приветствую. Интересует следующая возможность i-macros:
ставить себя на паузу при виде определенного текста или картинки.
Благодарю за помощь.

Askael
Поиск по теме, вверху справа страны, по словам captcha, capcha и vk.com

Как выключить FF с помощью imacros / Убивать через bat не подходит - потом глючит
-----
FF + Imacros + плагины - стоит на VDS (проц 2.4 , память 1 г , WIN 2012 )

kolshix
Ну уж Вам-то, стыдно такие вопросы задавать..

скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS 
TAB CLOSE

InfSub, обход капчи меня не интересует, ибо сложно, и , возможно, платно. Может ли бот поставить себя на паузу при виде текста "Я не робот" или такой картинки(или её части)? клик

Askael
Да, может, см. мой пост выше
Если вы не видите аналогии в коде, это - не значит, что ее нет

InfSub пишет

kolshix
Ну уж Вам-то, стыдно такие вопросы задавать..

скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS 
TAB CLOSE

(хотел сразу написать что такой вариант не подходит, так как я его уже ранее описывал сам, да и нашел случайно сам):
я так делал, ранее но от мазилы остаются висеть хвосты в диспетчере задач, что ни есть хорошо-Так как ресурс VDS слабый, а также приходится писать дополнительные команды , для входа в about config для включения и отключения "функции закрытия браузера по последней вкладке" - робот питляет по табам и бывает попапы срабатывают (adbloks - уже не справляются и только нагружают оперативу) вот и использую связку TAB CLOSEALLOTHERS  TAB CLOSE


Может кто-то что-то еще видел или знает ?

kolshix

Вот набросал код. Плюс в том что все хвосты сразу закрываются.

скрытый текст

Выделить код

Код:

function a () {
    window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
   .getInterface(Components.interfaces.nsIWebNavigation)
   .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
   .rootTreeItem
   .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
   .getInterface(Components.interfaces.nsIDOMWindow)
    .document.getElementById('menu_FileQuitItem').click()
}

a()

Здравствуйте!
Подскажите пожалуйста.

Как извлечь из этого 1s который идёт после js_ в самом начале?

скрытый текст

Выделить код

Код:

<div style="outline: 1px solid blue;" id="js_1s"><span><div class="_1y-n"><div class="_1y-o"><span class="_1y-p">Перетащите ссылку/фото/видео сюда</span><span class="_1y-q">Перетащите ссылку</span><span class="_1y-r">Перетащите фото/видео</span><span class="_1y-s">Перетащите фото</span></div></div><!-- react-empty: 77 --></span><div class="clearfix"><div class="_42k7 _4bl7"><div class="_3hvt"><img alt="" src="https://scontent-ams3-1.xx.fbcdn.net/v/t1.0-1/c0.6.40.40/p40x40/1888608_632609386793701_619223723_n.jpg?oh=1fdba9dbfabfd21dde5dd61b3eceb27c&amp;oe=5807C635" class="_bth img" height="40" width="40"></div></div><div class="_4bl9"><div><div class="_1mwp _395 _1mwq _5bu_ _5yk1"><div tabindex="-2" class="_5yk2"><div class="_5rp7"><div class="_5rpb"><div style="outline: medium none; white-space: pre-wrap; word-wrap: break-word;" spellcheck="true" role="combobox" class="_5rpu" aria-owns="js_1r" aria-haspopup="false" aria-expanded="false" aria-autocomplete="list" contenteditable="true"><div data-contents="true"><div data-offset-key="6gbjk-0-0" data-editor="fjc0b" data-block="true" class=""><div class="_1mf _1mj" data-offset-key="6gbjk-0-0"><span data-offset-key="6gbjk-0-0"><span data-text="true">hthththth</span></span></div></div></div></div></div></div></div></div></div></div></div><!-- react-empty: 96 --><div class="_3qg0"></div><!-- react-empty: 98 --><div><div class="_5f24"><noscript></noscript><noscript></noscript><noscript></noscript></div><div class="_2dck _4-u3  _57d8"><div class="clearfix"><div class="_ohe lfloat"><div class="_47gt"><span class="_m _3xem _3xen"><a rel="ignore" data-tooltip-content="Добавьте фото или видео к своей публикации" data-hover="tooltip"><span class="accessible_elem">Добавьте фото</span><div class="_3xen _6xd"></div><!-- react-empty: 113 --><div class="_3jk"><input id="js_1t" class="_n _5f0v" tabindex="0" role="button" display="inline" name="composer_photo[]" multiple="" accept="video/*, video/webm, video/x-ms-wmv, video/x-msvideo, video/3gpp, video/flv, video/mp4, video/quicktime, video/mpeg, video/ogv, image/*" type="file"></div></a></span><a id="js_1w" data-hover="tooltip" role="button" href="#" class="_3xem" data-tooltip-content="Отметьте людей в публикации"><span class="accessible_elem">Отметьте людей</span><div class="_3xen _5hd5"></div></a><a id="js_1x" data-hover="tooltip" role="button" href="#" class="_3xem" data-tooltip-content="Укажите, чем вы занимаетесь или что чувствуете"><span class="accessible_elem">Укажите, чем вы занимаетесь или что чувствуете</span><div class="_3xen _58-g"></div></a><a id="js_1y" data-hover="tooltip" role="button" href="#" class="_3xem" data-tooltip-content="Отметьте посещение"><span class="accessible_elem">Коснитесь места</span><div class="_3xen _520r"></div><noscript></noscript></a></div></div><div class="_ohf rfloat"><div class="_2ph- _4-u3"><div class="_5dd8"><span class="_2qwi"><i class="_491- img sp_-cwolwbhAbw sx_16f291"></i>ControRing</span></div><div class="_332r"><button value="1" type="submit" data-testid="react-composer-post-button" class="_1mf7 _4jy0 _4jy3 _4jy1 _51sy selected _42ft"><!-- react-text: 130 -->Готово<!-- /react-text --></button></div></div></div></div></div></div></div>


Это я извлекаею через HTM и мне нужны эти данные, чтобы его вставлять в определённое место, так как эти 2 символа постоянно меняются. Иногда и 1 или 2 цифры или буквы становятся.

Hamzat пишет

kolshix

Вот набросал код. Плюс в том что все хвосты сразу закрываются.

скрытый текст

Выделить код

Код:

function a () {
    window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
   .getInterface(Components.interfaces.nsIWebNavigation)
   .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
   .rootTreeItem
   .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
   .getInterface(Components.interfaces.nsIDOMWindow)
    .document.getElementById('menu_FileQuitItem').click()
}

a()

Это просто ОГОНЬ ! Даже обрыва нет
----
Админ добавь способ в ФАКЮ в шапке

InfSub пишет

Да, может, см. мой пост выше
Если вы не видите аналогии в коде, это - не значит, что ее нет

Не могли бы вы тыкнуть мне пальцем на нужную мне часть кода? Спасибо.

доброго дня
Скажите пожалуйста как сделать, чтобы i увеличивалось на  2

скрытый текст

Выделить код

Код:

for(i=2; i<=1000; i++){ 
        iimPlayCode('TAG POS='+i+' TYPE=INPUT:BUTTON ATTR=*');
        }

Koks

Скажите пожалуйста как сделать, чтобы i увеличивалось на  2

скрытый текст

Выделить код

Код:

for(i=2; i<=1000; i++){ 
    iimPlayCode('TAG POS='+i+' TYPE=INPUT:BUTTON ATTR=*');
    i += 1;
}

флуд
здравствуйте! помогите с js приглашаю людей в группу, нужно если появилась капча то break

правила форума iMacros, 1.2.4, 1.2.5

InfSub

Koks

скрытый текст

Выделить код

Код:

for(i=2; i<=1000; i+2){

Ребят помогите переделать в js

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT 1
SET !REPLAYSPEED MEDIUM
TAB T=1
CMDLINE !DATASOURCE vkdr.txt
SET !DATASOURCE_COLUMNS 50
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}
WAIT SECONDS=5
SET !VAR3 "Сообщение1"
SET !VAR4 "Сообщение2"
SET !VAR5 "Сообщение3"
SET !VAR6 "Сообщение4"
TAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field
EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!VAR5}}
WAIT SECONDS=5
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


Проблема в том когда обарачиваю все в
iimPlayCode('')

То не работает строка

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE vkdr.txt


т.е не береться адрес из файла.
Когда заменяю
скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE vkdr.txt[/b] на [b]iimPlayCode('URL GOTO=https://vk.com/public124403325')


То еже не работают строки
скрытый текст

Выделить код

Код:

SET !VAR3 "Сообщение1"
SET !VAR4 "Сообщение2"
SET !VAR5 "Сообщение3"
SET !VAR6 "Сообщение4"


Вместо Сообщение1 пишется undefined


Заранее спс.
Пс скрипт для вк.

helpmeeeman
Может включите голову и прочтете FAQ, а за одно и посмотрите уроки, приведенные там? Или хотя бы пролистаете пару страниц форума?

скрытый текст

Выделить код

Код:

for(var i=1;;i++){iimPlayCode('SET !TIMEOUT 1\nSET !REPLAYSPEED MEDIUM\nCMDLINE !DATASOURCE vkdr.txt\nSET !DATASOURCE_LINE '+i+'\nURL GOTO={{!COL1}}\nWAIT SECONDS=5\nSET !VAR5 "Сообщение 3"\nTAG POS=1 TYPE=TEXTAREA ATTR=ID:post_field\nEVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!VAR5}}\nWAIT SECONDS=5\nTAG POS=1 TYPE=BUTTON ATTR=ID:send_post');};

03-07-2016 22:36:35

helpmeeeman пишет

Проблема в том когда обарачиваю все в
iimPlayCode('')
То не работает строка CMDLINE !DATASOURCE vkdr.txt, т.е не береться адрес из файла.

Так может вы приведете код в js, который не работает и пример содержания файла vkdr.txt (одну - две строки) ?

InfSub
удалено, избыточное цитирование
Спасибо все уже мне нужно было только в js переделать пример vkdr.txt

скрытый текст

Выделить код

Код:

https://vk.com/club44723042, https://vk.com/club61413825, https://vk.com/club74738426,


Суть скрипта ходить по группам в вк Добавлю в дузья и оставлять там сообщение на стене.
Еще раз спасибо , в след раз буду сам пробывать;)

InfSub

helpmeeeman пишет

пример vkdr.txt

Если это одна строка, то работать не будет, каждый урл - должен быть с новой строки, запятые, соответственно - не нужны

03-07-2016 22:51:05
helpmeeeman
Еще раз повторю, так как вы не в первый раз пишете код, на подобии этого:

скрытый текст

Выделить код

Код:

SET !ERRORCONTINUE YES


Откройте FAQ и прочтите - нет такой команды

подскажите макрос вводит текст в нужное поле

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=TEXTAREA ATTR=ID:msg_text46923  CONTENT=rrrrrr


и теперь надо прописать нажатие клавиши ENTER?
Как это сделать помогите

Eugeny
При записи , что макрос выдает ,то и вписывай

а когда нажимаю ентер он ничего в запись не вносит

Попробуй переведи запись в event

Eugeny
Зачем вам enter? В большинстве случаев требуется нажать на кнопку, для отправки данных, если же, требуется именно нажатие enter, то запись макроса - нужно вести в режиме "experimental event recording mode"

удалено - 2.15  Производить личную переписку в общей теме. Для личной переписки есть Личный ящик.

InfSub

Доброго времени суток!!! И опять я к вам за помощью удалено, правила пункт 3.13, бан - 1 месяц
Вот проблема, на джава я думаю её можно реализовать, но конкретно в js, я не шарю, пока (тока на конкретных примерах, учусь):

скрытый текст

Выделить код

Код:

var papka = '???????????????????????????????????';
var login = '?????????????????';
var parol = '&&&&&&&&&&&&&&';

var n = '\n';
var code = '';
var start_macro = '';
start_macro +='CODE:' + n;
start_macro +='SET !EXTRACT_TEST_POPUP NO' + n;
start_macro +='SET !ERRORIGNORE YES' + n;
start_macro +='SET !TIMEOUT_STEP 0' + n;
start_macro +='SET !TIMEOUT_PAGE 240' + n;
start_macro +='SET !EXTRACT NULL' + n;

function Vhod(){
iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:gaia_loginform ATTR=TYPE:email&&AUTOFOCUS:&&SPELLCHECK:false&&VALUE:&&PLACEHOLDER:Введите<SP>адрес<SP>электронной<SP>почты&&NAME:Email&&ID:Email CONTENT='+login);
iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:gaia_loginform ATTR=TYPE:submit&&VALUE:Далее&&CLASS:rc-button<SP>rc-button-submit&&NAME:signIn&&ID:next');
iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:gaia_loginform ATTR=TYPE:password&&CLASS:&&PLACEHOLDER:Пароль&&NAME:Passwd&&ID:Passwd CONTENT='+parol);
iimPlay('CODE:SET !TIMEOUT_PAGE 120\n SET !ERRORIGNORE YES\n TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:gaia_loginform ATTR=TYPE:submit&&VALUE:Войти&&CLASS:rc-button<SP>rc-button-submit&&NAME:signIn&&ID:signIn');
}

function Prochitan() {
iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n EVENT TYPE=TXT SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(5)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>OL>LI:nth-of-type('+r+')>OL>LI>DIV>DIV>DIV:nth-of-type(2)>UL>LI:nth-of-type('+v+')>DIV>DIV>DIV>A>DIV:nth-of-type(2)" EXTRACT=CLASS');
prochitan = iimGetLastExtract();
//alert(prochitan);
}

function Smotrim() {
iimPlay('CODE:SET !TIMEOUT_PAGE 120\n SET !ERRORIGNORE YES\n EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(5)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>OL>LI:nth-of-type('+r+')>OL>LI>DIV>DIV>DIV:nth-of-type(2)>UL>LI:nth-of-type('+v+')>DIV>DIV>DIV>A>DIV>SPAN>IMG" BUTTON=0');
iimPlay('CODE:WAIT SECONDS=30');
iimPlay('CODE:SET !TIMEOUT_PAGE 120\n BACK\n REFRESH');
}

function Razdel() {
iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n EVENT TYPE=TXT SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(5)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>OL>LI:nth-of-type('+r+')>OL>LI>DIV>DIV>DIV:nth-of-type(2)>UL>LI:nth-of-type('+v+')>DIV>DIV>DIV>A>DIV>SPAN>IMG" EXTRACT=TXT');
razdel = iimGetLastExtract();
//alert(razdel);
}

function YouTube() {
    code = '';
    code += start_macro;
    code += 'URL GOTO=https://www.youtube.com/feed/subscriptions' + n;
    iimPlay(code,60);
iimPlay('CODE:SET !TIMEOUT_PAGE 1\n SET !ERRORIGNORE YES\n TAG POS=1 TYPE=H2 ATTR=TXT:Чтобы<SP>запустить<SP>YouTube,<SP>войдите<SP>в<SP>свой<SP>ак* EXTRACT=TXT');
if(iimGetLastExtract() !== '#EANF#'){
Vhod();
}
r = 1;
v = 1;
Razdel();
for(;razdel !== '#EANF#';Razdel()){// || prochitan !== '#EANF#'
//alert("r = "+r+"    "+"v = "+v);
//Prochitan();
if(razdel !== '#EANF#'){// && prochitan == '#EANF#'
Smotrim();
v++;
}
else{
v++;
}
if(razdel == '#EANF#'){
r++;
}
}
}

YouTube();


Помогите реализовать. "Президент", ты где пропал? :), я уверен, ты знаешь решение этой проблемы.

InfSub

здравствуйте как то тут разбиралась тема похожая на мою не как не могу понять проблеме в том что выдает такую ошибку

TypeError: this.dataSource[(line - 1)] is undefined, line 4 (Error code: -1001)

в ресширении iim все срабатывает а в js пишет на дисплее эту ошибку.
хотя все строки записи аймакрос одинаковые в js берет и txt выводит слово на дисплей и останавливается с этой ошибкой помогите пожалуста код в сполере представлю.

скрытый текст

Выделить код

Код:

for (i=1;i<=1;i++){
var macro;
macro = "CODE:";
macro += "CMDLINE !DATASOURCE D:\\FirefoxPortable\\Data\\profile\\iMacros\\Datasources\\zapros.txt" + "\n";
macro += "ADD !EXTRACT {{!COL1}} " + "\n";
iimPlay(macro)
var zapros = iimGetLastExtract(1)
iimDisplay('строка   '+ i +'   запрос '+ zapros)
macro = "CODE:" + "\n";
macro += "URL GOTO=https://www.facebook.com/" + "\n";
macro += "TAG POS=1 TYPE=SPAN ATTR=TXT:ГРУППЫ" + "\n";
macro += "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.facebook.com/search/top/ ATTR=NAME:q CONTENT={{!COL1}}" + "\n";
macro += "TAG POS=1 TYPE=BUTTON FORM=ACTION:https://www.facebook.com/search/top/ ATTR=TXT:Поиск" + "\n";
macro += "TAG POS=1 TYPE=DIV ATTR=TXT:Группы" + "\n";
macro += "SET !EXTRACT NULL" + "\n";
iimPlay(macro)
}


скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE D:\\FirefoxPortable\\Data\\profile\\iMacros\\Datasources\\zapros.txt
ADD !EXTRACT {{!COL1}} 
URL GOTO=https://www.facebook.com/
TAG POS=1 TYPE=SPAN ATTR=TXT:ГРУППЫ
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:https://www.facebook.com/search/top/ ATTR=NAME:q CONTENT={{!COL1}}
TAG POS=1 TYPE=BUTTON FORM=ACTION:https://www.facebook.com/search/top/ ATTR=TXT:Поиск
TAG POS=1 TYPE=DIV ATTR=TXT:Группы
SET !EXTRACT NULL

Здравствуйте, на бирже yobit.net раздают FreeCoins, пытаюсь сделать проверку на появление reCAPTCHA, но скрипт её постоянно видит, даже если её нет.

скрытый текст

Выделить код

Код:

var t0='SET !TIMEOUT_STEP 0\n';
var f1='FRAME NAME=undefined\n';
        if(iimPlayCode(t0+''+f1+'TAG POS=2 TYPE=DIV ATTR=TXT:reCAPTCHA')>0){ 
            iimPlayCode('PAUSE');
            } else {


Так тоже постоянно видит.
скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=script ATTR=src:*recaptcha*')>0){

Koks
Ну так найдите параметр у капчи, отличающийся между, видимой и невидимой капчей

Доброго времени суток. Помогите разобраться, нужно чтобы макрос вводил текст, но id меняется в зависимости от url страницы, написал следующее:

скрытый текст

Выделить код

Код:

var teksite=window.location;
teksite=String(teksite);

var obsu=teksite.indexOf("88392");
obsu=obsu*1+9;
obsu=teksite.slice(obsu,obsu+8);

var idobsu='#reply_field-88392_'+obsu;

iimSet("idobsu",idobsu);
iimPlay('CODE:'
+ 'PROMPT {{idobsu}}\n'
+ 'EVENT TYPE=CLICK SELECTOR={{idobsu}} BUTTON=0\n'
+ 'EVENTS TYPE=KEYPRESS SELECTOR={{idobsu}} CHARS="gdghdgdgd"');


Получается id показан правильно, но вот так не работает, подскажите есть какой нибудь выход?

Прошу прощения, ошибся, все работает

У меня возникла такая проблема.

Есть скрипт, который должен зайти в аккаунт Фейсбука из цсв файла, после чего из другово цсв файла он берет урл переходит по нему и добавляет в друзья.
На однин аккаунт скрипт отправляет 20 заявок после чего логиниться в следующий аккаунт и должен продолжать цикл с того места, где остановился, то есть с на второй
итерации "i", "J" - начаинаеться с позиции 21 и когда отправлено 20 заявок скрипт выходит из цикла

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

Проблема в том, что когда скрипт обнаружил, верификацию он выходил из цикла "J",
но при этом он пропускает строки в цсв файле из которого должен добавлять друзей, по скольку
отработала данная строка

var j = i*20-19;

- которая определяет с какой позиции скрипт должен начать.

Помогите пожалуйста разрешить данную проблему.


скрытый текст

Выделить код

Код:

var accounts = 10;
var total = 100;

for(var i = 1; i <= accounts; i++) {

function LogIn() {
    iimPlayCode(speed+error+'SET !ENCRYPTION NO\nSET !DATASOURCE Facebooklogin.csv\nSET !DATASOURCE_LINE '+i+'\nTAG POS=1 TYPE=INPUT:EMAIL ATTR=ID:"email" CONTENT={{!COL1}}\nTAG POS=1 TYPE=INPUT:PASSWORD ATTR=ID:"pass" CONTENT={{!COL2}}\nTAG POS=1 TYPE=LABEL ATTR=class:"uiButton uiButtonConfirm"\n')
}

//Check if already logged in then  relog to account from csv file
if(iimPlayCode('TAG POS=1 TYPE=A ATTR=CLASS:"_2s25"')>0) {
    iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:"userNavigationLabel"\nTAG POS=2 TYPE=SPAN ATTR=TXT:Log<SP>Out')
    LogIn();
} else { LogIn(); }


var j = i*20-19;
for(j; j <= total; j++) {

//If Security Check
if(iimPlayCode(timeout+'TAG POS=1 TYPE=DIV ATTR=CLASS:"_2e9n"')>0) {
    break;    
}

//Send Message and Add Friend
iimPlayCode('SET !DATASOURCE FacebookFriends.csv\nSET !DATASOURCE_LINE '+j+'\nURL GOTO={{!COL1}}\nSET !EXTRACT {{!URLCURRENT}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE={{!NOW:yyyy/mm/dd}}.csv\nTAG POS=1 TYPE=A ATTR=HREF:/messages/thread/*\nTAG POS=1 TYPE=TEXTAREA ATTR=CLASS:"br *" CONTENT=""\nTAG POS=1 TYPE=TEXTAREA ATTR=ID:"composerInput" CONTENT=""\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:composer_form ATTR=NAME:send\nURL GOTO={{!COL1}}\n')

if(j==20*i) { break; }
}//End Of 'J' loop


};//End of 'I' loop

kani339
Сделай отдельную переменную, которая будет изменяться в диапазоне от 1 до 20
Глобальный номер же оставь в j но нерасчитывай его относительно переменной i, а меняй по факту выполненных действий

Я до этого еще пыталсь сделать вот так

скрытый текст

Выделить код

Код:

var x = 0;//if no error

if(x==0) {
    var j = i*20-19;
} else if (j > 19) {
    var j = j - 19;
    x = 0;
}

for(j; j <= total; j++) {

//If Security Check
if(iimPlayCode(timeout+'TAG POS=1 TYPE=DIV ATTR=CLASS:"_2e9n"')>0) {
    x = 1;
    break;
    
} else {
    x = 0;
}


Создал переменную, которая равно "0" - то есть ерора нету, но если еррор появляеться переменная равна единицы и тогда онимать от "J",
но проблема в это случаи не выходит из данного цикла
скрытый текст

Выделить код

Код:

if(j==20*i) { break; }


Не могли бы показать пример реализации вашей задумки или же что можно сделать с этим вариантом.
Заранее спасибо.

kani339
Могу, но не с мобилы, очень проблематично писать код на форуме с мобилы

InfSub пишет

kani339
Могу, но не с мобилы, очень проблематично писать код на форуме с мобилы

Дайте знать как сможете, буду крайне признателен, а то голову сломал не знаю уже, что делать.

вот набросал, на работоспособность не проверял, но думаю сами поправите если что вылезет

скрытый текст

Выделить код

Код:

var FB = {
    
    accounts:10,
    accountLineNow:1,
    
    total:100,
    totalLineNow:1,
    
    login: function () {

    },
    logout: function () {

    },
    checkLogged: function () {
        if(iimPlayCode('TAG POS=1 TYPE=A ATTR=CLASS:"_2s25"')>0){
            return true;
        }
        return false;
    },
    
    sendMsg:function(){
        
    },
    
    addFrend:function(max){
        var max = max || 25;
        var maxLine = this.totalLineNow + max;
        var j = this.totalLineNow; 
        for(j; j <= maxLine; j++){
            sendMsg();
            this.totalLineNow = j;
        }
        
    },
    
    run:function(){  
        for(var i = 1; i <= accounts; i++) {
            if(this.checkLogged()){
                this.logout();
            }
            this.login();
            addFrend(20);
            this.accountLineNow = i;
        }
    }

};

FB.run();

dvomaks пишет

вот набросал, на работоспособность не проверял, но думаю сами поправите если что вылезет

Cпасибо огромное, но хотелось бы на примере моего кода, что следует добавить, что бы работало.

kani339 пишет

Cпасибо огромное, но хотелось бы на примере моего кода, что следует добавить, что бы работало.

дописать фунции авторизации, выхода, и отправки сообщений
например

скрытый текст

Выделить код

Код:

login: function () {
        iimPlayCode('SET !ENCRYPTION NO\nSET !DATASOURCE Facebooklogin.csv\nSET !DATASOURCE_LINE '+accountLineNow+'\nTAG POS=1 TYPE=INPUT:EMAIL ATTR=ID:"email" CONTENT={{!COL1}}\nTAG POS=1 TYPE=INPUT:PASSWORD ATTR=ID:"pass" CONTENT={{!COL2}}\nTAG POS=1 TYPE=LABEL ATTR=class:"uiButton uiButtonConfirm"\n')
   
    },
    logout: function () {
        iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:"userNavigationLabel"\nTAG POS=2 TYPE=SPAN ATTR=TXT:Log<SP>Out')
    },  
    sendMsg:function(){
        iimPlayCode('SET !DATASOURCE FacebookFriends.csv\nSET !DATASOURCE_LINE '+totalLineNow+'\nURL GOTO={{!COL1}}\nSET !EXTRACT {{!URLCURRENT}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE={{!NOW:yyyy/mm/dd}}.csv\nTAG POS=1 TYPE=A ATTR=HREF:/messages/thread/*\nTAG POS=1 TYPE=TEXTAREA ATTR=CLASS:"br *" CONTENT=""\nTAG POS=1 TYPE=TEXTAREA ATTR=ID:"composerInput" CONTENT=""\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:composer_form ATTR=NAME:send\nURL GOTO={{!COL1}}\n')
    },


и запустить

dvomaks пишет

дописать фунции авторизации, выхода, и отправки сообщений
например

Выдает accounts not defined, для цикла "I"

kani339 пишет

Выдает accounts not defined, для цикла "I"

замените на this.accounts

вот здесь вроде бы поправил такие ошибки

скрытый текст

dvomaks пишет

вот здесь вроде бы поправил такие ошибки

Да я их уже поправил но вот еще загвозко в то, что
при данной проверке, должен выходить из цикла "J"

скрытый текст

Выделить код

Код:

checkLogged: function () {
        if(iimPlayCode(timeout+'TAG POS=1 TYPE=A ATTR=CLASS:"_2s25"')>0){
            return true;
        }
        return false;
    },

kani339 что вообще должен делать этот код? я подумал что это проверка на авторизацию.

dvomaks пишет

kani339 что вообще должен делать этот код? я подумал что это проверка на авторизацию.

Заходит в аккаунт из цсв файла, приглашает 20 друзей после, 20 итерации выходит из цикла и заходит в другой аккаунт.
Бывает выскакивает ерор, фейсбук просит сделать верификацию через телефон в данном случае нужно перейти в следующий аккаунт и продолжать приглашать
друзей с 21 позиции

dvomaks пишет

Cпасибо за вашу помощь. мне удалось решить проблему

Подскажите пожалуйста, почему так alert показывает

скрытый текст

Выделить код

Код:

timeout();

function timeout(){ 
    var new_timer = new Date();
    var sek = Math.floor((new_timer-time)/1000);
    alert(Number(sek));
}


а так нет, выдает ошибку

ReferenceError: sek is not defined, line 2 (Error code: -991)

скрытый текст

Выделить код

Код:

timeout();
alert(Number(sek));

function timeout(){ 
    var new_timer = new Date();
    var sek = Math.floor((new_timer-time)/1000);
}

Koks
Прочитайте, что такое "область видимости"

InfSub
Спасибо, получилось

Здравствуйте.
Подскажите, пожалуйста, как на странице выделить текст с помощью EXTRACT и сохранить его в какую-то переменную? Воспользоваться переменной экстракт не вариант, т.к. мне надо в двух местах получить различный текст. И далее уже сразу с двумя переменными работать.

Дед Мороз
Официальная вики, FAQ и поиск по форуму для чего вам даны?

скрытый текст

Выделить код

Код:

SET !VAR1 {{!EXTRACT}}
SET !EXTRACT NULL

Приветствую тебя PRESIDENT!!!:D
На скриншоте , помимо FF 3.6, видел у тебя FF 45 (если не ошибаюсь). Макрос в нем используешь? Или может посоветуешь какой из свежих. А то некоторые сайты со старыми версиями как-то не очень.:rolleyes:

Всем доброй ночи!
Помогите пож-та новичку с JS
Проблема следующая:
При проигрывании цикла, "macro" не берет (не видит) значения номера цикла, для того чтобы взять данные из текстового файла, под номером цикла в данной ему строке....
В "macro1" все в порядке, с каждым новым циклом берем данные из новых строк 1,2,3,4,5....
Видимо чет не дописал, ткните пож-та носом что именно..

скрытый текст

Выделить код

Код:

var а = 1;            // С какого по счёту пользователя начинать?
var б = 10000000;            // Кол-во заявок 
var в = 25;           // Время на разгадывание в секундах
var г = 50;            // Кол-во попыток для разгадывания 

var key = "000"   // Ключ

////////// Дальше не меняем




var macro;
    macro =  "CODE:";
    macro +=  "SET !ERRORIGNORE YES" + "\n"; 
    macro +=  "SET !ERRORCONTINUE YES" + "\n"; 
    macro +=  "VERSION BUILD=8601111 RECORDER=FX" + "\n"; 
    macro +=  "TAB T=1" + "\n";
    macro +=  "CLEAR" + "\n";
    macro +=  "URL GOTO=https://m.localhost.ru/profile/login?next=%2Fadd&from=add" + "\n";
    macro +=  "WAIT SECONDS=2" + "\n";
    macro +=  "CMDLINE !DATASOURCE localhost-poster-login.txt" + "\n";
    macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n";
    macro +=  "SET !LOOP {{z}}" + "\n"; 
    macro +=  "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
    macro +=  "TAG POS=1 TYPE=INPUT:EMAIL FORM=ACTION:/profile/login ATTR=NAME:login CONTENT={{!COL1}}" + "\n";
    macro +=  "WAIT SECONDS=2" + "\n";
    macro +=  "CMDLINE !DATASOURCE localhost-poster-password.txt" + "\n";
    macro +=  "SET !DATASOURCE_COLUMNS 1" + "\n";
    macro +=  "SET !LOOP {{z}}" + "\n"; 
    macro +=  "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
    macro +=  "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/profile/login ATTR=NAME:password CONTENT={{!COL1}}" + "\n";
    macro +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/profile/login ATTR=*" + "\n";
    macro +=  "WAIT SECONDS=4" + "\n";


var macro1;
    macro1 =  "CODE:";
    macro1 +=  "SET !ERRORIGNORE YES" + "\n"; 
    macro1 +=  "SET !ERRORCONTINUE YES" + "\n"; 
    macro1 +=  "VERSION BUILD=8601111 RECORDER=FX" + "\n"; 
    macro1 +=  "TAB T=1" + "\n";
    macro1 +=  "CLEAR" + "\n";
    macro1 +=  "URL GOTO=https://m.localhost.ru/profile/login?next=%2Fadd&from=add" + "\n";
    macro1 +=  "WAIT SECONDS=2" + "\n";
    macro1 +=  "CMDLINE !DATASOURCE localhost-poster-login-2.txt" + "\n";
    macro1 +=  "SET !DATASOURCE_COLUMNS 1" + "\n";
    macro1 +=  "SET !LOOP {{z}}" + "\n"; 
    macro1 +=  "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
    macro1 +=  "TAG POS=1 TYPE=INPUT:EMAIL FORM=ACTION:/profile/login ATTR=NAME:login CONTENT={{!COL1}}" + "\n";
    macro1 +=  "WAIT SECONDS=2" + "\n";
    macro1 +=  "CMDLINE !DATASOURCE localhost-poster-password-2.txt" + "\n";
    macro1 +=  "SET !DATASOURCE_COLUMNS 1" + "\n";
    macro1 +=  "SET !LOOP {{z}}" + "\n"; 
    macro1 +=  "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
    macro1 +=  "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:/profile/login ATTR=NAME:password CONTENT={{!COL1}}" + "\n";
    macro1 +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/profile/login ATTR=*" + "\n";
    macro1 +=  "WAIT SECONDS=4" + "\n";
    macro1 +=  "URL GOTO=https://m.localhost.ru/profile/settings" + "\n";
    macro1 +=  "TAG POS=1 TYPE=A ATTR=TXT:Изменить" + "\n";
    macro1 +=  "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/profile/settings/edit ATTR=ID:name CONTENT=Зак" + "\n";
    macro1 +=  "TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/profile/settings/edit ATTR=*" + "\n";    
    macro1 +=  "WAIT SECONDS=5" + "\n";
    macro1 +=  "CLEAR" + "\n";


for (var z=1;z<555;z++)
{
iimPlay(macro)

for (i=1;i<=1;i++){
iimSet("а",а);
iimPlay("localhost-pos.iim",60);
}

а++

iimDisplay(z)
iimSet("z", z)

iimPlay(macro1)

}


код публикуется в тегах code внутри спойлера

InfSub

vjapan пишет

Помогите пож-та новичку с JS

читайте FAQ, сколько можно повторять одно и тоже, в вашем скрипте, половина команд - ненужный мусор

vjapan пишет

ткните пож-та носом что именно..

где iimSet() перед вызовом macro ?

Добавил в конце и все заработало :lol:

Насчет мусора - не знаю где там он, главное что стабильно работает :cool:

Спасибо

скрытый текст

Выделить код

Код:

for (var z=1;z<555;z++)
{
iimPlay(macro)

for (i=1;i<=1;i++){
iimSet("а",а);
iimPlay("localhost-poster-PEREIMENOVANIE.iim",60);
}



а++

iimDisplay(z)
iimSet("z", z)

iimPlay(macro1)
iimSet("z", z)
}

vjapan пишет

Насчет мусора - не знаю где там он, главное что стабильно работает :cool:

оффтоп
как гласила народная мудрость:

для бешеной собаки - семь верст, не крюк

для таких как вы, написано FAQ, прочтите - узнаете

Прювет)
Как в одноклассниках кликнуть по вот этой кнопке что на скрине?
Никак что-то у меня не получается.

Здравствуйте.
Подскажите, пожалуйста, почему не работает ввод текста.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


ссылки публикуются в спойлере, в теге noindex

При попытке ввести текст в строке "Город" скрипт не вводит текст:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT FORM=NAME:region ATTR=CLASS:b-form-checkbox__checkbox<SP>i-bem CONTENT=NO
TAG POS=1 TYPE=INPUT FORM=NAME:region ATTR= CONTENT=Самара
TAG POS=1 TYPE=SPAN ATTR=CLASS:b-autocomplete-item__name
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:region ATTR=*


код публикуется в тегах code, внутри спойлера

Точнее, текст вводится и тут же исчезает.
Помогите, пожалуйста, пофиксить проблему. Благодарю!

InfSub

Подскажите, как запустить из Js файла  bat file?

kani339
FAQ откройте

InfSub пишет

kani339
FAQ откройте

Открывал, не совсем понял как аргументы должны быть оформлены

скрытый текст

Выделить код

Код:

var prgpath="C:\\Users\\Viktor\\Desktop\\CreateFile.bat";// File path
var args = ['-open','"C:\\Users'\\Viktor\\Desktop\\', 'CreateFile.bat"'];
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(prgpath);
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, args, args.length);

Подскажите, что не так делаю с функцией EVAL?

скрытый текст

Выделить код

Код:

can not parse macro line: EVAL("window.document.querySelectorAll('[class=\"b-form-input__input\"]')[0].focus()") (Error code: -910)

kani339
Пример, есть в теме по капчам, в шапке, хотя и в faq вроде все доступно написано

15-07-2016 18:34:21
Да и как вы батник запускаете??? JS вам не cmd...
Батник нужно передать параметром в cmd

kani339

запуск бат файла

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
   var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);       
   var args=[''];  
       file.initWithPath('C:\\Users\\admin\\Desktop\\remozila.bat'); // путь до батника
       proc.init(file); proc.run(false, args, args.length);

dim222 пишет

kani339

запуск бат файла

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces;
   var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);       
   var args=[''];  
       file.initWithPath('C:\\Users\\admin\\Desktop\\remozila.bat'); // путь до батника
       proc.init(file); proc.run(false, args, args.length);

При запуске в консоли выдает "Доступ запрещен"

скрытый текст
6eece-clip-27kb.png?nocache=1

изображения публикуются в спойлере

InfSub

Следующий код исполняется с ошибкой

ReferenceErro: document is not defined, line 28 (Error code: -1001)

скрытый текст

Выделить код

Код:

SET !VAR4 EVAL("window.document.querySelectorAll('[class=\"form-inp\"]')[0].focus()")


Подскажите, что делаю не так?
Благодарю!

Дед Мороз
удалено, избыточное цитирование - п.п. 2.9
переменная не может содержать обьект яваскрипт, как гласить официальная вики "Any number, character or series of characters"

замечание

InfSub

dvomaks пишет

переменная не может содержать обьект яваскрипт, как гласить официальная вики "Any number, character or series of characters"

Как же быть тогда? Помогите, пожалуйста, переделать данный код для Imacros'a.

kani339 пишет

При запуске в консоли выдает "Доступ запрещен"

У тебя на скриншоте есть краказябры. Если не ошибаюсь, надо поменять язык клавиатуры ( по умолчанию) на английский.
В батнике,что прописал? И что он запускает?

Дед Мороз пишет

Как же быть тогда?

просто нужно делать не через задницу, тоесть запускать имакрос при помощи яваскрипт, а не яваскрипт при помощи имакроса.

Дед Мороз пишет

Помогите, пожалуйста, переделать данный код для Imacros'a.

из одной строчки не понятно зачем ставить фокус на инпут

16-07-2016 19:57:19

dim222 пишет

В батнике,что прописал?

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

Добрый день. Я уже устал от этого Гуано... использую скрипт для AddMeFast, постоянно mozzila закрывается...в других браузерах на базе мохзилы, тоже самое. WIN10 x64..ps извиняюсь за эмоции..но просто не понимаю, что браузер от меня хочет..
правила, п 2.4 - злоупотребление выделением текста
сам скрипт:

скрытый текст

Выделить код

Код:

VERSION BUILD=8961227 RECORDER=FX
SET !ERRORIGNORE YES
SET !TIMEOUT 10
TAB T=1
URL GOTO=http://addmefast.com/free_points/instagram_likes
TAG POS=2 TYPE=DIV ATTR=CLASS:btn3
TAB T=2
TAG POS=1 TYPE=SPAN ATTR=TXT:Нравится
WAIT SECONDS=3
TAB CLOSE
TAB T=1
WAIT SECONDS=5
TAB T=1


код публикуется в тегах code внутри спойлера

InfSub

Вводим в панели навигации строку
about:config
Подтверждаем что будем осторожны в использовании тонких настроек браузера и ищем опцию
browser.tabs.closeWindowWithLastTab
Сделать это просто, вводя в окне поиска фразу "lasttab".
Изменим значение опции с true на false. Теперь браузер не будет закрывать сам себя при закрытии вами последней вкладки.

emozio пишет

извиняюсь за эмоции

- просто нужно включить моск

dvomaks
удалено, избыточное цитирование
Да я же вас заобнимаю^^ спасибо большое

замечание

InfSub

dim222 пишет
kani339 пишет

При запуске в консоли выдает "Доступ запрещен"

У тебя на скриншоте есть краказябры. Если не ошибаюсь, надо поменять язык клавиатуры ( по умолчанию) на английский.
В батнике,что прописал? И что он запускает?

Батник просто создает пустой js файл.
Содержимое bat file

скрытый текст

Выделить код

Код:

setlocal EnableDelayedExpansion
SET file_name = "myFile"
echo.> %file_name %".js"
PAUSE

kani339 пишет

Батник просто создает пустой js файл.
Содержимое bat file

если это единственная задача, то зачем делать это через батник? залейте куда нибудь пустой js, и при помощи имакроса сохраняйте его куда вам угодно с нужным именем файла

dvomaks пишет

из одной строчки не понятно зачем ставить фокус на инпут

Необходимо выполнить следующий код:

скрытый текст

Выделить код

Код:

window.document.querySelectorAll('[class="form-input"]')[0].focus(); 
window.document.querySelectorAll('[class="b-form-input"]')[0].value= "Самара";


код публикуется в тегах code внутри спойлера

InfSub

Дед Мороз
удалено, избыточное цитирование - п.п. 2.9
ну вот вы сами решили свою задачу, просто выполните его, зачем пихать это в iim?

InfSub

Подскажите. Необходимо выяснить равенство переменной "a" и ряда значений (1,2,3,5,8,9 и т.д.).
Если переменная равна одному из значений условие исполняется. Как это можно прописать в коде?

ottec

скрытый текст

Выделить код

Код:

if(a==1 || a==2 || ... ){ 
    ...
}

флуд
здравствуйте виснет макрос в txt файле 100 гр. как только макрос доходит до команды перехода на url мозила зависает

правила форума iMacros, пункт 1.2

InfSub

volchsek пишет

здравствуйте виснет макрос в txt файле 100 гр.

100 гривен в файле? :o круто, где скачать? сейчас на пиво выкачаю :lol:

а если серьезно, из вопроса ничего не понятно, собственно не понятно это вопрос или мысли вслух

dvomaks пишет

Дед Мороз
ну вот вы сами решили свою задачу, просто выполните его, зачем пихать это в iim?

Как это организовать в скрипте Imacros'a, автоматический запуск JS'a?
Ведь мне надо, чтобы данный код автоматом выполнялся. Кроме того, название города должно передаваться от скрипта IIM.

Дед Мороз пишет

Как это организовать в скрипте Imacros'a, автоматический запуск JS'a?

я же уже выше писал, организовывать в скрипте Imacros'a, автоматический запуск JS'a это кощунство - нужно в js организовывать проигрывание imacros Почитайте эту тему, думаю поможет разобраться

При перезагрузки FF батником и запуске скрипта в adblock подсписок фильтров пустой, останавливаю скрипт и в подсписке появляются фильтры.
Подскажите в чем причина?

Вопрос Снят.

Доброго дня, нужна помощь
как сделать чтобы скрипт при переборе не нажимал  estrela_16.gif ??

скрытый текст

Выделить код

Код:

for(w=1; w<=25; w++){ 
        if(iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:img_'+w+'&&SRC:*estrela_16.gif')>0){ 
            iimPlayCode('SET !TIMEOUT 5\nTAG POS=1 TYPE=IMG ATTR=ID:i'+w+'&&SRC:*badge_a1.gif');


И только когда есть
скрытый текст

Выделить код

Код:

for(w=1; w<=25; w++){ 
        if(iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:img_'+w+'&&SRC:*estrela_16.gif')>0){ 
           iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:img_'+w+'&&SRC:*estrela_16.gif');
            iimPlayCode('SET !TIMEOUT 5\nTAG POS=1 TYPE=IMG ATTR=ID:i'+w+'&&SRC:*badge_a1.gif');


может так??? не работает
скрытый текст

Выделить код

Код:

for(w=1; w<=25; w++){ 
        var a= window.document.querySelector('IMG[id="img_'+w+'"][SRC="************"]');
        if(a>0){ 
           iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:img_'+w+'&&SRC:*estrela_16.gif');
            iimPlayCode('SET !TIMEOUT 5\nTAG POS=1 TYPE=IMG ATTR=ID:i'+w+'&&SRC:*badge_a1.gif');


вопрос глобальный пускай это не будет изображением

Koks пишет

как сделать чтобы скрипт при переборе не нажимал  estrela_16.gif ??

Добавить в конец запроса extract=txt и проверять на #eanf#

InfSub
Нашел Ваш пост

скрытый текст

Выделить код

Код:

iimPlayCode('set !datasource c:\\test.PNG');
if(iimGetErrorText().indexOf('not exist')>-1){
    alert('File not Exist');
}else{
    alert('File Exist');
};


не доходит,  как его применить в моем случае
помогите
не получается
Добавить в конец запроса extract=txt и проверять на #eanf#

Koks
что именно не получается? добавить слово в строку?

скрытый текст

Выделить код

Код:

for(w=1; w<=25; w++){ 
        if(iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:img_'+w+'&&SRC:*estrela_16.gif EXTRACT=TXT')!='#EANF#'){ 
            iimPlayCode('SET !TIMEOUT 5\nTAG POS=1 TYPE=IMG ATTR=ID:i'+w+'&&SRC:*badge_a1.gif');

20-07-2016 23:39:07

Koks пишет

Нашел Ваш пост
не доходит,  как его применить в моем случае

какое отношение datasource имеет к проверке наличия файла картинки на сайте?

InfSub
!='#EANF#'
я так пробовал все равно жмет на картинку, даже если ее нет

Здраствуйте есть в скрипте команда WAIT SECONDS=60,вопрос такой - как должна выглядеть команда чтобы ожидание было не 60 сек. а рандомным к примеру от 10 сек. до 100 сек.

7lava
Поиск по слову рандом

Как сделать, чтобы русский текст в скрипте нормально отображался, а не менялся на кракозябры после редактирования?

скрытый текст
10561405.jpg

Shejker
Поставить редактор с поддержкой уникода, например, notepad++, а не использовать для редактирования скриптов - встроенный инструмент имакроса

Shejker пишет

Как сделать, чтобы русский текст в скрипте нормально отображался, а не менялся на кракозябры после редактирования?

По умолчанию клавиатуру на английский язык.

dim222 пишет

удалено, избыточное цитирование
По умолчанию клавиатуру на английский язык.

поменял клавитатуру, когда открываю notpad++то русские буквы нормальные, а когда запускаю в аймакрос, то все равно отображаются кракозябры

скрытый текст
10568343.jpg

InfSub

Shejker
кодировка UTF-8 ??
По умолчанию клавиатуру на английский язык -  БРЕД
и еще зачем столько исправлений в txt??
установите шрифты похожие
или увеличить или уменьшить значение в php файле

скрытый текст

Выделить код

Код:

if($a[red]>=140&&$a[green]>=140&&$a[blue]>=140)

Koks пишет

Shejker
кодировка UTF-8 ??

удалено, избыточное цитирование
спасибо, разобрался, стояла кодировка  UTF-8 (без ВОМ), а исправления я не знаю зачем столько, то я скачал скрипт gepavlik потестировать, только он у меня все равно не запустился)

InfSub

Что то не получилось у меня с поиском

InfSub пишет

7lava
Поиск по слову рандом

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском


например, поиск по слову: "рандом"

InfSub

7lava
справа вверху страницы, поиск по данной теме (а не поиск из верхнего меню)
данный вопрос - обсуждался сотни раз

23-07-2016 04:03:47
также - читаем FAQ, а конкретно - это
в поиске, за 5 минут, можно найти с десяток примеров: этот или этот, и т.д.
и это, только на первой странице, выданной поиском

Подскажите каким образом можно закрыть окно загрузки файлов

скрытый текст
a80dc-clip-76kb.jpg?nocache=1

Пробывал с помощью Escape но не получилось, вот мой код
скрытый текст

Выделить код

Код:

SET txtUpload "File upload"
URL GOTO=https://drive.google.com/drive/folders/0B7eZ520AHX2yQWJlU05DRnNuVXM
SET !LOOP 1
EVENT TYPE=CLICK SELECTOR="#drive_main_page>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV>DIV"
WAIT SECONDS=0.5
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=DIV ATTR=TXT:{{txtUpload}} EXTRACT=HTM
SET id EVAL("'{{!EXTRACT}}'.match(/id=\"(.+?)\"/)[1];")
EVENT TYPE=CLICK SELECTOR="#\\{{id}}>DIV>SPAN:nth-of-type(2)>SPAN>DIV" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=* CONTENT=C:\Users\Viktor\Documents\iMacros\Downloads\PowerPoint_Templates\{{!LOOP}}.png
WAIT SECONDS=6

Ребят подскажите. Возможно ли  по локалке вызвать cmd? (перезагрузка мазил)

Доброго времени суток ))..Буду признателен за посильную помощь...Я нуб еще...Есть скрипт(не мной написан,но рабочий).В скрипте несколько кранов одного временного интервала.Хочу добавить еще парочку, но с бОльшим интервалом...Пытаюсь"прикрутить"условие: "if"/ "else".(если при заходе на  кран работает таймер,бот,выходит из крана,и идет на следующий,если же, есть кнопка-собирает сатоши...Пытался прикрутить код,который выкладывал Президент(пост 5939),но не выходит...Понимаю,как должно быть ,но реализовать не получается.Вот картинка:

скрытый текст
0981a02faeb8.jpg

что именно нужно прописать в "TAG POS=2 TYPE=?? ATTR=???:???   ?И как правильно прописать выход из крана при наличии таймера на странице?
Кусок кода:
скрытый текст

Выделить код

Код:

for (i=2;i<=10;i++){
//startProxy();
fauset();
}
function fauset() {
  iimPlay("CODE:CLEAR\n"+standartcode+"" + n    
   + "SET !DATASOURCE "+btcadress+"" + n      
   + "SET !DATASOURCE_LINE "+i+"" + n            
   + "SET !DATASOURCE_COLUMNS 2" + n              
   + "ADD !EXTRACT {{!COL2}}" + n   
   + "URL GOTO=http://www.bitcoinraccoon.com/faucet" + n
   + "SET !EXTRACT NULL\nWAIT SECONDS=2" + n   
   + "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:mail CONTENT= {{!COL2}}" + n //"+btcadress+" + n
   + "SET !ENCRYPTION NO\nWAIT SECONDS=1" + n
   + "TAG POS=1 TYPE=BUTTON FORM=ACTION:/ ATTR=TXT:login\nWAIT SECONDS=4" + n 
   + "TAG POS=2 TYPE=DIV ATTR=TXT:claim<SP>now\nWAIT SECONDS=1" + n
   + "ONDOWNLOAD FOLDER=E:\\CAPTCHA\\ FILE="+fileName+"" + n
   + "TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT" + n
}

Sindbad пишет

что именно нужно прописать в "TAG POS=2 TYPE=?? ATTR=???:???

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=ID:timer EXTRACT=TXT


24-07-2016 23:37:27

Sindbad пишет

И как правильно прописать выход из крана при наличии таймера на странице?

зависит от того, что вернет этот код, при отсутствии таймера (00:00:00 или #EANF#, или что-то еще)
можно попробовать так:

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:timer EXTRACT=TXT');
var r=iimGetExtract();
if(r=='#EANF#'||r=='00:00:00'){break;};

Подскажите,кто знает, как игнорировать отсутствие этой кнопки

Button

Выделить код

Код:

var captchaButton=window.document.querySelector('div[id*="captchaButton"]:not([style*="display: none"])');
captchaButton.click();


При перезагрузки роутера на компе (в локале) вылетают скрипты не находя этого элемента :(

dim222 пишет

Подскажите,кто знает, как игнорировать отсутствие этой кнопки

Button

Выделить код

Код:

var captchaButton=window.document.querySelector('div[id*="captchaButton"]:not([style*="display: none"])');
captchaButton.click();

скрытый текст

Выделить код

Код:

try{
var captchaButton=window.document.querySelector('div[id*="captchaButton"]:not([style*="display: none"])');
captchaButton.click()
}catch(e){
//здесь пишете действие, которое будет выполнятся при ошибке выполнения кода выше
}

Док Спасибо большое!:)

InfSub
Благодарю,но не запускается.Вот весь код(убрал все лишнее)-работает.

скрытый текст

Выделить код

Код:

var standartcode ='SET !ERRORIGNORE YES\nTAB CLOSEALLOTHERS';
var n =           '\n';    

for (i=2;i<=10;i++){
fauset();
}
function fauset() {
 iimPlayCode("CLEAR\n"+standartcode+"\nURL GOTO=http://www.bitcoinraccoon.com/faucet" + n                   
   + "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:mail CONTENT=WalKucharska@i.ua " + n 
   + "SET !ENCRYPTION NO" + n
   + "TAG POS=1 TYPE=BUTTON FORM=ACTION:/ ATTR=TXT:login" + n
   + "TAG POS=2 TYPE=DIV ATTR=TXT:claim<SP>now" + n
   + "PAUSE" + n
   + "TAG POS=1 TYPE=BUTTON FORM=ID:form-captcha ATTR=ID:captcha" + n
   + "WAIT SECONDS=3");
}


встроил конструкцию, которую вы предложили,получилось:
скрытый текст

Выделить код

Код:

var standartcode ='SET !ERRORIGNORE YES\nTAB CLOSEALLOTHERS';
var n =           '\n';    

for (i=2;i<=10;i++){
fauset();
}
function fauset() {
 iimPlayCode("CLEAR\n"+standartcode+"\nURL GOTO=http://www.bitcoinraccoon.com/faucet" + n                     
   + "TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:mail CONTENT=WalKucharska@i.ua " + n 
   + "SET !ENCRYPTION NO" + n
   + "TAG POS=1 TYPE=BUTTON FORM=ACTION:/ ATTR=TXT:login" + n
   + "TAG POS=2 TYPE=DIV ATTR=ID:timer EXTRACT=TXT");
var r=iimGetExtract();
if(r=='#EANF#'||r=='00:00:00'){break;};
else{
 iimPlayCode("TAG POS=2 TYPE=DIV ATTR=TXT:claim<SP>now" + n
  + "PAUSE" + n
  + "TAG POS=1 TYPE=BUTTON FORM=ID:form-captcha ATTR=ID:captcha" + n
  + "WAIT SECONDS=3");
 }
}


не стартует вовсе, ругается на" break", выдает ошибку:
скрытый текст
f6d25b45f65a.jpg

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

InfSub

у вас лишняя точка с запятой перед else

Sindbad пишет

эта ошибка неоднократно выскакивала

break используется только внутри циклов

InfSub
Правильно ли вас понял:  конструкция "if\else+break" не применима  к моей задаче,т.к. значение,извлекаемое EXTRACTOM и объявленное переменной "r"не имеет отношение к циклу ?
Необходимо создать цикл внутри функции(например,с переменными "кнопка;таймер")и уж к ним подключать данную конструкцию?

Sindbad
если задача - выйти из функции (завершить выполнение данной функции), при определенных условиях - используйте return вместо break
if(){}else{} - может применяться - где угодно, break - только в циклах

Подскажите, пожалуйста, как сделать чтобы скрипт создал файл file.csv и записал туда значения от 1 до 100 в случайном порядке, с расчетом одно значение - одна строка файла.

ottec
Поиск по данной теме по словам (справа вверху страницы): saveas, рандом
Примеры решений, для различных рандомов на форуме есть, в том числе и с возможностью получать только уникальные значения

есть скрипт захода на сайты, переход по URL GOTO. иногда сайты не доступны, я установил SET !TIMEOUT_PAGE 15, вроде бы работает, но если сайт доступен, но не успел целиком загрузиться за отпущенное время, скрипт переходит на другой сайт. как этого избежать? как объяснить iMacros, что сайт грузится, просто надо подождать?

ibkm
Убрать SET !TIMEOUT_PAGE

28-07-2016 20:52:57
Или проверять наличие определенного элемента страницы для каждого сайта, что - очевидно, не лучшее решение

Господа, ни кто не сталкивался с такой ошибкой при вызове JScript-сценария из js:

Ошибка при выполнении сервера сценариев Windows. (Недостаточно памяти для завершения операции.)

При том, ручной запуск скрипта - проходит без ошибок.

Ребят подскажите. Решил перейти на FF 27.0.1 portable, но фигня какая-та , скрипт некоторые функции не выполняет, хотя на более поздних версиях все чики-пуки. Может быть дело в Imacros (пробовал 8.6.0.1-signet и 8.8.7.1-signet) или в некоторых элементах .js, типа "window.document.querySelector". Какую версию лучше использовать?

dim222
разные версии js

29-07-2016 21:30:06
в FAQ - есть история версий iMacros - сравните

InfSub Спасибо, посмотрю!

Господа подскажите! Почему в данном коде (по изменению прокси), выбирается только последнее значение т.е. 333.333.333 ?
Или может быть в настройках мозиллы он неактуален.

скрытый текст

Выделить код

Код:

for (z=0;z<=4;z++){ 

prokcy=Array("111.111.111","222.222.222","333.333.333"); kk=0;

while (kk<prokcy.length){
proxy=prokcy[kk];
var prefs = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setBoolPref("network.proxy.share_proxy_settings", true);
prefs.setCharPref("network.proxy.http", proxy);
prefs.setIntPref("network.proxy.http_port", 8008);
iimPlayCode('WAIT SECONDS=5');kk++;}
}


Вопрос исчерпан , все работает.

Ребят, Требуется помощь!
Проблема собственно в чем
Никак не могу написать условие
нужно что бы скрипт ждал, пока не появится определенный элемент на странице
Это вообще возможно?
Заранее спасибо!

bukinzlyukin
Может вы хоть чуть-чуть пролистаете данную ветвь форума?

Ок, понял

Каким образом можно определить количество картинок в папке?

kani339
Использовать внешние инструменты для чтения данных из локального каталога (папки)

kani339

скрытый текст

Выделить код

Код:

dir /B /A-D /S "C:\CapNum\*.jpg" | find /N /C /V ""
pause

Подскажите пожалуйста,какую команду прописать,что-бы извлекала ссылки,в текстовый файл.

peterburg87 пишет

Подскажите пожалуйста,какую команду прописать,что-бы извлекала ссылки,в текстовый файл.

я использую такую конструкцию

скрытый текст

Выделить код

Код:

var doc = window.content.document;

var macro = 'CODE:' + n;
macro += 'TAB T=1' + n;
macro += 'SET !ERRORIGNORE YES' + n;
macro += 'SET !TIMEOUT_PAGE 2' + n;
macro += 'TAG POS=1 TYPE=DIV ATTR=ID:menu EXTRACT=HTM' + n;

iimPlay(macro);

var _menu = iimGetLastExtract();

if (_menu && _menu != '#EANF#') {
    
    if (doc.getElementById('menu') != null) {
        var menu = doc.getElementById('menu');
        var list = menu ? menu.getElementsByTagName('a') : [];
    }
    
}


код публикуется в тегах code внутри спойлера
в list[i ].href собственно будет ссылка (где i номер индекса).

но столкнулся с ошибкой can't access dead object на проверке doc.getElementById('menu') != null. Честно говоря уже нет сил и слов, один мат.

InfSub

Koks пишет

kani339

скрытый текст

Выделить код

Код:

dir /B /A-D /S "C:\CapNum\*.jpg" | find /N /C /V ""
pause

Спасибо а есть такая возможность передать значение полученной с помощью бат фалйа в Js
К примеру в папке 5 картинок и передать этот параметр в переменную JS?

kani339
bat:

скрытый текст

Выделить код

Код:

dir /B /A-D /S "C:\CapNum\*.jpg" | find /N /C /V "" >> C:\CapNum\out.txt


js:
скрытый текст

Выделить код

Код:

Path='C:\\CapNum\\';
iimPlayCode('URL GOTO=file:///'+Path+'out.txt\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
a=iimGetExtract();

Меняю системное время пк (батником иль вручную)  и скрипты виснут как правило  . У всех так, и менять этот параметр  невозможно ?

ErrorignoreYes
js ориентируется на системное время пк, так что такое поведение, в принципе - предсказуемо
хотя, лично мне, не совсем понятно, для чего это нужно

здравствуйте
как увеличивать значение TAG POS=1 с каждым циклом?

bukinzlyukin пишет

здравствуйте
как увеличивать значение TAG POS=1 с каждым циклом?

скрытый текст

Выделить код

Код:

SET !VAR1 {{!LOOP}}
TAG POS={{!VAR1}}

можно ли из js вызвать другой файл js?

bukinzlyukin, selftrips.ru
Вы FAQ читать не пробовали?
udalov
А зачем в 2 строки?

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}}

Можно ли как-то указать в csv файле, что бы после запятой, которая внутри кавычек шел перенос строки

Примерно так выглядит сsv

скрытый текст
''Text 1", "Text 2, Text 3,Text 4"

нужно где есть запятая после нее делать перенос строки

kani339
Добавить \n

InfSub пишет

kani339
Добавить \n

Вы имеете в виду добавить \n в csv после запятой?
Так же не будет работать

Если сохраняете из имакроса - будет
Если руками, для обработки имакросом,  то просто поставьте перенос строки после запятой

InfSub пишет

Если сохраняете из имакроса - будет
Если руками, для обработки имакросом,  то просто поставьте перенос строки после запятой

Мне жуно заполнение из цсв что бы вот в такой строке "Text 1,Text 2, Text 3", ..
шел перенос строки после запятой

В цсв если ставишь перенос строки руками он перекидывает на следующею строку

kani339
:sick:

скрытый текст
2e196650430d.png

InfSub пишет

данный метод к сожалению не подходит, нужно все в одну строку

kani339 пишет

нужно все в одну строку

И как об этом можно было догадаться из вашего вопроса?
Используйте тег <br>

InfSub пишет

Используйте тег <br>

Благодарю, и прошу прощение если вопрос был не совсем понятен

Здравствуйте! Подскажите как правильно записать команду для ява-скрипта в аймакросе, которая подменяла бы адрес биткоин кошеля в исходном коде страницы?
Вот как выглядит то, что надо подменять

скрытый текст
2f3RA.png

скрытый текст
2f3RN.png

А вот часть исходного кода страницы:
скрытый текст

Выделить код

Код:

<td width="340" valign="top" align="center">
            <table border="0" cellspacing="0" cellpadding="0" align="center">
                <tr>
                    <td align="center">
                        <p class="balance">Balance: 9440814 satoshi</p>
                        <p class="every-minutes">500 satoshi every 500 minutes</p>
                        <div>
                            <input type="text" name="address" class="form-control" style="position: absolute; position: fixed; left: -99999px; top: -99999px; opacity: 0; width: 1px; height: 1px">
                            <input type="checkbox" name="honeypot" style="position: absolute; position: fixed; left: -99999px; top: -99999px; opacity: 0; width: 1px; height: 1px">
                            <div class="your-bitcoin-address">
                                <input readonly name="ebwZair9f5CKWX8IoHvMHiOowRH" class="form-control" value="1rb67ymBVTPPDNFTyvMNya8M6fRytr65u7"> 
                            </div>
                        </div>
                    </td>
                </tr>
                <tr>
                    <td align="center">


Там обозначено переменной value, в данном случае value="1rb67ymBVTPPDNFTyvMNya8M6fRytr65u7". Подскажите как записать команду для аймакроса для подмены этого значения?
Команда наверное должна выглядеть примерно так, как писал ПРЕЗИДЕНТ в этом посте: https://forum.mozilla-russia.org/viewto … 27#p717627
А ещё вот тут подсказка есть: https://forum.mozilla-russia.org/viewtopic.php?id=68235
Но как правильно всё это записать, учитывая мой случай?

здравствуйте! нужна ваша помощь! (соц. сеть одноклассники)- когда наводишь мышь на человека выскакивает менюшка есть ли команда на ее открытие?

здравствуйте, подскажите пжл команду imacros что бы писать сообщения в комментарии вк, сколько пробовал не получается

volchsek пишет

выскакивает менюшка

Экспериментируйте с EVENT

volchsek пишет

подскажите пжл команду imacros что бы писать сообщения в комментарии вк

А по вашему, для вк, разработчиками создана отдельная команда?
Поиск по теме, по словам:

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Подскажите пожалуйста самые стабильные версии ff.
27 версия глючна,после нескольких перезпусков начинает открываться в чистом режиме без расширений,17  частенько подвисает при работе imacros,palemoon не подходит так как сайты его определяют как непонятный браузер.Заранее благодарю

Доброго времени суток! У меня ЧП( Сегодня утром перестали запускаться макросы, причем все, постоянно выдает ошибку 1001, переустановил мозилу и макрос, но не помогло, подскажите пожалуйста, что делать?

10-08-2016 10:10:57
И это связано именно с js, теперь он их вообще игнорирует...

Обновился на FF 48, стал выдавать window не  поддерживается  в мультипроцессорном FF
Подскажите, чем можно заменить эту команду. Или что изменить в конфиге.
Спасибо

maloiprod пишет

после нескольких перезпусков начинает открываться в чистом режиме без расширений

Так сделайте .iim файл и пропишите в нем

скрытый текст

Выделить код

Код:

WAIT SECONDS=20
URL GOTO=imacros://run/?m=Ваш скрипт.js


У вас просто  расширения не успевают стартануть

Вернул Firefox к версии 47.01, и установил imacros версии 8.9... Тогда заработал, значит либо новая версия firefox не поддерживает какие-то параметры или новая версия imacros

Кто-нить пробовал работать FF 3.6.28  через расширение 'ProxyAuthetication'. Как бы ,все вставляется и зашифрованный пароль, а робить не хотит :cry:,пока перезагруз мозиллы не сделаешь. Но когда новый адресс нужно вбить,опять такая же ерунда. Может есть альтернативы как менять прокси с данной версией?

Sergey_yu пишет

переустановил мозилу и макрос

Переустановка мозиллы - ни на что особо не влияет, а для подобных вопросов - есть FAQ.
Либо сносите профиль руками и создавайте новый, либо идите в меню "справка" - "информация для решения проблем" - "очистить firefox"
Предварительно - рекомендую сохранить (забэкапить) закладки и пароли

ребят как сделать так что бы imacros хранил в памяти два экстракта?

bukinzlyukin
он их и так хранит, хоть 2 хоть 10, пока вы не очистите переменную {{!EXTRACT}} или не запустите другой скрипт руками или через js

ссылка - удалена
изображение перезалито на радикал:

Помогите пожалуйста у меня такая проблема... :(

скрытый текст
c248460dc6bb.png

читаем - правила публикации изображений на форуме - ни каких личных хранилищ

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

А как сделать, чтобы можно было указать не меньше 2100 и не больше 20000 ?
Чтобы можно было указать нетолько одно знаничение "от", но и "до".

скрытый текст

Выделить код

Код:

if (h>0 ){ 
h= iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=DIV ATTR=CLASS:p_header_bottom EXTRACT=TXT")
var people=iimGetLastExtract().replace(/\s/g,'').replace(/(\d+).*/,'$1');
if (people>=участников){
iimSet("имя",имя);
iimSet("сохранение",сохранение);
iimPlay("Вконтакте/Парсер групп/данные/02.iim",60);
}
}

if (h<0 ){
}


Мне кажется, нужно вот на этой строке
что-то добавить, но не могу понять как.

В синтаксисе по js не селён.

скрытый текст

Выделить код

Код:

if (people>=участников){

ромаха26543 пишет

http://prntscr.com/c4a4j3 Помогите пожалуйста у меня такая проблема... :(

А как на самом деле та папка называется, которая иероглифом показана?

InfSub пишет

Переустановка мозиллы - ни на что особо не влияет, а для подобных вопросов - есть FAQ.

Ой, не скажите, бывали случаи что конкретно одна из команд (помоему связано было с сохранением картинки) не работала в одной из версий ФФ. По поводу 48 версии ФФ скажу что для уверенной работы скриптов она не подходит. Как для iMacros, так и для Selenium. Пока могу посоветовать 45 версию

48 версия ФФ вышла уже с поддержкой многопроцессорной архитектуры, спецом под это дело есть девятая версия iMacros. Появилась она ещё с полгода назад, сейчас на стадии беты. Сам не тестировал но кому интересно линк  под спойлером.

скрытый текст
http://download.imacros.net/archive/iMacros-Fx/imacros-9.0.0b2.xpi

ромаха26543
ответ на вопрос, дан тут

11-08-2016 20:57:09
dvomaks
вы говорите о разных версиях, и соответственно о багах присутствующих в одной конкретной версии(ях), но отсутствующих в другой(их)
я же говорю, о проблемах, возникающих в профиле, на которые - переустановка мозиллы, не влияет (а такие броблемы наиболее часты)

11-08-2016 20:58:27
Алим

скрытый текст

Выделить код

Код:

if(people>=2100&&people<=20000){/*...*/}

Здравствуйте! Подскажите как рандомно менять число\дату в юзерагенте?

скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces; 
 var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
 var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);
 
   var i=9,w='1234567890',r='',m=w.length;
while(i--){r+=w.charAt(Math.floor(Math.random()*(m)));};

   str.data='Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:26.2) Gecko/201602046765  Firefox/33.0.0';
   prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);


Там надо чтоб это число менялось 201602046765 рандомно. Я там добавил код

скрытый текст

Выделить код

Код:

var i=9,w='1234567890',r='',m=w.length;
while(i--){r+=w.charAt(Math.floor(Math.random()*(m)));};


с переменной r
Подскажите как там правильно записать?

Обновился IMacros до 9.0.3 и перестал понимать кириллицу в своих путях сохранения папок и макросов, выводит там кракозябры.
Пути переделывать на английский язык или  ждать следущего обновления, что-ли...

Ребята всем привет, как сделать так чтобы когда заходишь в вк, загружалась мобильная версия, т.е. надо сделать так чтобы к каждая ссылка https://vk.com/*** менялась на https://m.vk.com/*** , заранее спасибо за помощь :)

Журавлёва пишет

Обновился IMacros до 9.0.3 и перестал понимать кириллицу в своих путях сохранения папок и макросов, выводит там кракозябры.
Пути переделывать на английский язык или  ждать следущего обновления, что-ли...

Лучше вообще откатиться назад, в 48 версии внедрили мультипроцессорность, и вместе с этим и обращение к window, более менее нормальные скрипты перестали работать, т.е по сути нужно либо ждать каких то плюшек от разработчиков moziila либо использовать сборки где нет мультипроцессорность

13-08-2016 23:47:47

segunover пишет

Ребята всем привет, как сделать так чтобы когда заходишь в вк, загружалась мобильная версия, т.е. надо сделать так чтобы к каждая ссылка https://vk.com/*** менялась на https://m.vk.com/*** , заранее спасибо за помощь :)

Поменять юзер агент.

Hamzat пишет

более менее нормальные скрипты перестали работать

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

Добрый вечер. Требуется помощь рукожопу-новичку (мне).  Скрипты отлично выполняются (постинг в вк) при работе в одном окне, несвернутом. Но при сворачивании окна или при работе с двумя браузерами скрипт iim не довыполняется, то есть EVENT на нажатие кнопок вк не проходит.  Как это безобразие чинится? Хочется свернутся и своими делами заниматься, но с таким раскладом не получается

UPDATE. Нашла, что это фишка iim. Попробую в js
UPDATE2. Для твиттера у меня js, к сожалению, также при сворачивании или при переключении окна скрипт как-будто приостанавливается и не выполняется. Как только вернусь в окно, он продолжает выполнение. Что за магия? Помощь еще нужна.


Буду признательна за советы.

14-08-2016 21:25:54

Журавлёва пишет
Hamzat пишет

более менее нормальные скрипты перестали работать

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

У меня также перестали работать скрипты. Суть в обновлении мазилы до 48 версии. Решение - или поставить imacros 8 версии, или более старую мазилу (что я и сделала)

segunover
прямые руки и поиск вверху справа страницы по словам vk или vk.com

15-08-2016 03:16:55
sonce
это проблема всей технологии, event - корректно не работает в свернутом режиме

Вопрос: работает js. Доходит до команды Пауза. Я открываю новые страницы, нажимаю руками, где надо. И тут макрос сам снимается с паузы и продолжает выполнение скрипта. В чём может быть дело? FF 27.0.1 портейбл, iMacos 8.8.7.1, дополнения помимо Аймакроса - Аддблок, Гризманки, Lightshot (скриншот утилита).

Отмечал пока такое при работе вконтакте.

удалено, п.п. 2.6

InfSub

Hamzat пишет

Поменять юзер агент.

InfSub пишет

segunover
прямые руки и поиск вверху справа страницы по словам vk или vk.com

Спасибо, я разобрался
Скидываю код, кому надо

скрытый текст

Выделить код

Код:

ADD !EXTRACT {{!URLCURRENT}}
SET !VAR1 {{!URLCURRENT}}
SET !VAR2 EVAL("var s=\"{{!URLCURRENT}}\"; s.replace(\"vk.com/\",\"m.vk.com/\"); ")
URL GOTO={{!VAR2}}

InfSub, благодарю за ответ.

Подскажите, как тогда корректно можно переделать код (может, кто-то для себя делал уже). Ивенты пришлось использовать, так как никак вытащить id или класс элемента не получается.  Вот код ТВиттера (вставка текста, отправка)

тут для твиттера

Выделить код

Код:

iimSet("tw", tweet);
 iimPlay("CODE:"+"ADD !EXTRACT {{tw}}\n"+'EVENTS TYPE=KEYPRESS SELECTOR="#tweet-box-global" CHARS="{{tw}}"');
//macro+='TAG POS=1 TYPE=BUTTON FORM=ID:swift_tweetbox* ATTR=TXT:Твитнуть<SP>Ответить<SP>Отправить<SP>сообщение' +s_n;
macro = "TAG POS=2 TYPE=BUTTON FORM=ACTION://upload.twitter.com/i/tweet/create_with_media.iframe ATTR=TXT:Твитнуть<SP>Ответить<SP>Отправить<SP>сообщение" +s_n;
iimPlayCode(macro);


Код ВК. Тут селекторы индивидуальны под запись.
Тут для ВК

Выделить код

Код:

bb+='EVENT TYPE=CLICK SELECTOR=#reply_field-13295252_123317016 BUTTON=0' +s_n;    
    bb+='EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-13295252_123317016" CHARS="123"' +s_n;
    //bb+='EVENT TYPE=CLICK SELECTOR="#reply_field-13295252_123317016" KEY=13' +s_n;
    bb+="TAG POS=1 TYPE=BUTTON ATTR=ID:reply_button-13295252_123317016" +s_n;

udalov
Проблема в окнах типа alert() и иногда в других js-конструкциях на самом сайте, они не корректно обрабатываются iMacros и приводят к ошибке, после чего начинает выполняться следующий кусок js-кода

15-08-2016 21:04:33
sonce
Изучайте js, в нем много вариантов выполнения данных операций, без участия команд iMacros'a

Всем спасибо за помощь)

Кто-нить в курсе как убрать вот-это? 'ONDIALOG POS=1 BUTTON=OK CONTENT=' НЕ КАТИТ

скрытый текст
3f4b0847705f.jpg

dim222 пишет

Кто-нить в курсе как убрать вот-это? 'ONDIALOG POS=1 BUTTON=OK CONTENT=' НЕ КАТИТ

скрытый текст

Выделить код

Код:

window.close()


или
скрытый текст

Выделить код

Код:

URL GOTO=javascript:window.close()

Hamzat
Благодарю!!! Только вот данным методом закрываеться сама мозила,а окно остается.

Здравствуйте! Помогите решить проблему - * вот этим символом, можно показать макросу, что после слова ещё что-то следует, но вот в этом случае, у меня ни чего не получается!

Выделить код

Код:

EVENTS TYPE=KEYPRESS SELECTOR="#field_txt*" CHARS="Привет"

romanli76
В EVENT так сделать нелься

Какие причины для вылета скрипта написанного на imacros из работы и следом закрытия браузера? Ошибки не выдаёт, скорость специально прописал SLOW

Krusher
Может быть закрытие единственной вкладки. В about:config значение 'browser.tabs.closeWindowWithLastTab' выстави на 'false'

здравствуйте!  подскажите пожалуйста что не так пытаюсь что бы js перешел один раз на URL страницу, затем воспроизвел макрос,  с URL все нормально, но как только воспроизводится макрос он заходит к одному и тому же человеку почему?  когда запускаю макрос отдельно все работает нормально!
скорее всего что то не так сделал...
мне нужно что бы макрос ходил по людям 90раз

скрытый текст

Выделить код

Код:

for (i=1;i<2;i++){    //<--- Задаём цикл, число повторов
iimPlayCode('URL GOTO=https://ok.ru/rabota.mail.ru/members'); 
}
for (i=1;i<=3;i++){  //<--- Задаём цикл, число повторов
macro =  "CODE:"; // говорим нашему скрипту что в нее впишем код аймакрос 
iimPlay('OD/друзья/Дружить из 6 мест.iim');
}


код публикуется в тегах code внутри спойлера

InfSub

Krusher

dim222 пишет

about:config

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

18-08-2016 22:57:50
volchsek
Потому что в iim, у вас явно прописана переменная {{!LOOP}} которая не работает при запуске из js

18-08-2016 22:59:17
volchsek
Читпйте, что такое iimSet() и как работает

18-08-2016 22:57:50
все равно почему то не выходит

скрытый текст

Выделить код

Код:

var i;
for (i=2;i<=40;i++)
 iimSet("LINE",i);
 iimPlay("OD/друзья/Дружить из 6 мест.iim");


код публикуется в тегах code внутри спойлера

InfSub

volchsek
Может вы код iim скрипта покажете или мне догадываться и дальше о его содержимом?

а есть смысл с макросом все в порядке тут и так понятно что дело в js
п.п.2.4

InfSub

volchsek
Ну, ок, ищите черную кошку в тёмной комнате, особенно тогда, когда ее там нет

ладно спасибо за помощь! буду разбираться
п.п.2.4
замечание

InfSub

Блин, извиняюсь за дурацкий наверное вопрос. Можно ли каким то образом в .replace заменить элемент(букву) по наличию (если надо меняем, если не надо ,то не меняем)? т.е. допустим буква ' i ' может выглядеть как ' ! 'либо как нормальноя 'i' . Или я так понимаю условие в replace не пропишешь?

dim222
Если не будет найдено и так ни чего не заменит

InfSub
допустим слово ' papaya ' надо выбрать 'p@p@ya' . Если в replace заменить ' а ' на ' @ ' ,то не определиться (p@p@y@).
И еще вопрос ,...как можно обрезать слово оставив например первые две буквы?

dim222
Что именно у вас не определится?
Прекратите нести охинею, сядьте и проверьте

Помогите пожалуйста с командой

скрытый текст
нужно "вставить" текст на стену ВК в новом дизайне

Подскажите пжл, если запустить функцию в js вида

скрытый текст

Выделить код

Код:

macro += "CLEAR"


она будет чистить куки? Или для чистки кук есть что то поинтереснее?

Krusher
Будет, есть и поинтереснее, см. тему про капчи, там были примеры

подскажите пжл, в js коде есть команды имакрос например extract
как мне переделать в js команды?
спасибо!

volchsek - руками..

1. Прочитать FAQ.
2. Воспользоваться поиском по форуму по названию интересуещих команд.
3. Задать вопрос так, чтобы его можно было понять

Всем привет! Помогите пожалуйста решить вопрос. Я вот сделал так но не работает должным образом.

скрытый текст

Выделить код

Код:

for (x=1;x<=444;x++){ 
iimPlayCode('SET !DATASOURCE D:\\1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
f=iimGetExtract();
iimPlayCode('SET !DATASOURCE D:\\2.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
r=iimGetExtract();
sek1 = (Math.floor(Math.random()*r + f));
alert(sek1)
}

Gergi
предыдущий пост, пункт 3

В файле D:\\1.txt стоит 20 в файле D:\\2.txt стоит 50 Значит надо что бы рандом был от 20 до 50 а в данном случае показывает от 0 до 50

Gergi
во первых, некорректная запись функции рандома:

правильный вариант

Выделить код

Код:

Math.floor(Math.random() * (max - min + 1)) + min;


во вторых: iimGetExtract() - возвращает текст, а не число и уже на усмотрение js - будет выполнена либо математическая операция, либо конкатенация строк, соответственно, нужно преобразовать текст в число

Этот вариант тоже пробовал,но не получилось,сейчас ещё буду пробовать.

Gergi пишет

но не получилось

см. пункт 2, про iimGetExtract()

InfSub пишет

см. пункт 2, про iimGetExtract()

Кучу всего пересмотрел с самого раннего утра:sick:

скрытый текст

Выделить код

Код:

for (x=1;x<=444;x++){ 
iimPlayCode('SET !DATASOURCE D:\\1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
min=iimGetExtract();
iimPlayCode('SET !DATASOURCE D:\\2.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
max=iimGetExtract();
sek1 = Math.floor(Math.random() * (max - min + 1)) + min;
alert(sek1)
}


Посмотрите,правильно ли так?

Gergi пишет

Кучу всего пересмотрел с самого раннего утра

я вам дал направление для поиска, а что вы там смотрели с самого утра - мне неизвестно, но явно не то, что нужно, вот результат правильной работы кода:

скрытый текст
37 28 43 36 43 43 24 40 45 39 46 35 44 25 34 40 22 43 44 26 41 37 20 45 35 45 47 45 38 44 33 30 28 43 43 37 20 37 23 41 35 32 36 40 28 30 36 33 48 34 45 26 22 33 29 40 37 29 28 35 46 32 27 45 36 40 48 45 28 25 33 48 37 39 26 38 35 34 28 26 34 38 41 46 29 42 34 26 46 31 42 24 25 49 20 20 36 40 48 28 28 23 41 42 28 46 41 38 40 24 33 24 30 37 33 26 23 44 44 40 28 32 30 20 32 30 23 38 47 43 42 32 26 47 30 50 44 33 30 23 50 45 21 29 24 47 34 36 29 39 37 23 48 27 49 41 32 28 21 32 20 37 36 49 31 41 31 24 40 47 49 36 38 42 42 28 39 36 43 45 34 25 31 21 38 37 43 45 37 33 28 27 27 25 23 44 33 45 43 38 34 35 43 22 50 37 23 50 36 44 20 47 27 20 43 20 49 42 39 28 49 32 48 36 38 40 28 43 23 39 35 46 26 43 20 32 34 33 46 45 24 22 50 22 38 27 35 49 41 48 26 25 38 45 42 41 37 46 24 24 36 40 42 47 43 40 45 47 26 47 31 20 46 38 35 24 30 23 27 37 31 30 27 49 49 27 31 50 20 34 32 29 24 41 21 49 47 49 27 37 29 50 50 25 34 32 45 48 20 26 41 37 40 39 46 31 28 49 36 28 48 44 37 34 28 27 30 32 27 34 31 48 23 33 21 22 39 50 45 21 31 23 33 22 31 32 27 23 35 27 36 30 28 45 35 43 31 42 26 20 32 44 26 47 30 34 27 32 20 43 24 43 29 42 30 36 37 40 35 48 50 31 48 27 44 20 21 22 34 43 41 29 36 45 22 21 43 49 25 46 27 22 43 36 31 50 40 21 37 25 42 50 31 26 23 36 40 22 23 31 25 34 38 45 22 50 22 47 36 50 44 40 25 47 22 48 46 48 20 50 35 23 46 33

повторюсь еще раз - преобразуйте значения переменных f (min) и r (max) - в число, иначе результатом - будет это:
скрытый текст
2120 2520 1620 220 2520 1820 2920 520 020 2320 520 1620 2520 2720 020 1020 1120 2520 2120 2120 2720 2720 2720 2920 320 1520 920 2820 2520 2120 1220 1820 2920 120 3020 1120 2120 1720 1620 1720 920 1220 1420 520 2520 020 2020 2720 320 420 2520 320 520 920 920 1220 2820 1820 1120 1520 1820 820 1520 1320 1320 1520 1720 2320 1220 1520 1120 420 1320 2520 1720 1820 2520 1120 2420 1420 1720 3020 2820 1720 2520 520 2120 120 1820 420 1320 620 1920 820 1820 2520 620 120 420 220 1320 820 2120 1020 620 820 1920 2220 1820 620 120 120 1420 220 020 820 2420 1620 2920 1120 2820 2120 520 1520 320 2920 2820 320 1020 1120 2020 020 220 2320 820 1920 620 1820 1320 320 1020 2420 2420 1920 720 620 820 920 1120 420 1020 2420 120 2220 520 2320 1520 1120 2620 220 1520 1620 2320 2720 020 2520 2920 1420 720 1420 1320 1020 3020 920 020 620 1620 1020 620 1220 2820 3020 920 1220 2120 2920 2320 1220 2920 620 1420 1920 220 220 2320 2920 2920 2720 1820 3020 1220 020 520 2720 2020 920 920 2820 2520 1620 2020 2620 1420 1520 320 820 1520 2320 1120 2520 1920 1020 1320 1720 1920 1620 220 1520 220 620 2120 1720 1120 1620 120 1320 2820 2620 1020 1720 720 1820 2820 120 020 1720 2320 2020 1720 2120 620 520 720 2120 1220 320 920 120 2820 520 2720 120 220 1820 2720 1320 1320 2220 2920 1420 2820 2420 120 2120 2420 1120 2820 1020 1020 2420 3020 2920 1120 2020 1420 1020 020 1620 720 1220 2020 220 520 1320 420 2820 2220 2720 1220 220 1320 020 2920 1320 2420 2320 220 1920 1220 1220 2520 3020 1620 2620 520 1720 2620 1420 1920 2920 1120 1420 2420 020 1420 2620 320 1620 1420 1120 120 2220 2320 2820 2320 2220 520 820 3020 520 1320 2320 1920 1220 1020 1320 2820 820 620 920 2420 120 2920 2320 820 1320 2320 2720 2420 2120 1720 2220 1220 2820 1220 120 1420 3020 2120 020 2120 2720 2120 1420 1720 2420 320 920 620 920 620 2520 720 3020 2420 1120 1220 1320 1820 1920 220 2620 1720 820 2420 1520 2620 1720 1320 2220 2520 1120 920 3020 120 2820 2920 2220 3020 2620 620 1520 220 220 220 320 2120 2720 1420 1320 2020 1220 920 2820 820 1020 020 120 2620 1820 2620 1820 720 1620 2620 920 720 2720 820 220 820 1220 1820 2320

не замечаете схожесть в данных цифрах? например то, что у всех окончание равно значению переменной f (min)?

Если вы думаете что я попробовал у меня не получилось и я сразу прибежал к вам за помощью,то это не правда!:sick:

Gergi
я рад за вас, но результат на лицо, код у вас работает корректно? - нет!
какова ключевая фраза, в моем ответе, в пункте 2, по которой нужно гуглить?

21-08-2016 14:04:32
ну же, Gergi, напишите 3-4 слова, из моего ответа, которые описывают суть проблемы

А причём тут это iimGetExtract(); если вытягивает цифру? Не буквы же вытягивает

повторюсь:
ну же, Gergi, напишите 3-4 слова, из моего ответа, которые описывают суть проблемы

21-08-2016 14:18:01

Gergi пишет

А причём тут это iimGetExtract(); если вытягивает цифру?

при том, что вы не понимаете разницы, между строковыми и числовыми типами данных, число может быть записано - и как число, и как строка
iimGetExtract(); - возвращает, именно, строковой тип данных и не важно, что при этом было передано, текст или число

Спасибо разобрался:D Правда результат не знаю как записать. Но через alert вроде всё чётко показывает

Товарищи, нужна Ваша подсказка, в таком виде код

скрытый текст

Выделить код

Код:

iimPlay("CODE:var randomNumber=Math.floor(Math.random()*30 + 1); randomNumber;\n WAIT SECONDS={{!VAR1}}")


код публикуется в тегах code внутри спойлера
замечание

будет корректно работать?

InfSub

Здравствуйте! А не подскажите ли как прописать путь для восстановления сессии через дополнение Session Manager?  Что б из js-скрипта запускалась нужная сессия.
Там должен быть путь что-то типа такого

скрытый текст

Выделить код

Код:

imacros://run/?m=session.js


или похожего.
Подскажите кто знает или помнит? А то я где-то находил ранее, да что-то никак найти сейчас не получается.

Krusher
Зачем вы js запихнули в iimPlay()?
dvitkovs
Найдете, дайте ссылку, думаю - многим интересно будет

InfSub пишет

KrusherЗачем вы js запихнули в iimPlay()?

Пока только щупаю imacros, нашёл на одном из форумов.
То есть в таком виде, код

скрытый текст

Выделить код

Код:

var randomNumber=Math.floor(Math.random()*30 + 1); randomNumber;\n WAIT SECONDS={{!VAR1}}


будет правильно исполняться?

Krusher
Нет!, причина, в моем вопросе - выше (не верный синтаксис)

скрытый текст

Выделить код

Код:

var randomNumber=Math.floor(Math.random()*30 + 1);
iimPlayCode('WAIT SECONDS='+randomNumber);

Добрый день.

прошу прощения за элементарный вопрос.  Не могу разобраться так как я не профи и сам его учу по не многу.

Есть 2 цикла один в нутри другого.

скрытый текст

Выделить код

Код:

URL GOTO=http://kolesa.kz/my/?tab=live&sort_by=date-asc&page=185


первый цикл в конце цифры идут от 2 до N
скрытый текст

Выделить код

Код:

TAG POS=26 TYPE=A ATTR=TXT:Редактировать<SP>текст


-  Это второй цикл внутри первого он идет от 1 до 40 (постоянно),  то есть он совершается 40 раз и потом первый цикл увеличивается на 1  и так далее.

Ниже процедура внутри второго цикла она без изменений.

скрытый текст

Выделить код

Код:

WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[0] CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[1] CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[2] CONTENT=
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[0] CONTENT=+7<SP>(727)<SP>3546370
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[1] CONTENT=+7<SP>(747)<SP>788-80-90
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones[2] CONTENT=+7<SP>(702)<SP>660-78-10
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:new-form ATTR=*
WAIT SECONDS=1


код публикуется в тегах code внутри спойлера

помогите пожалуйста все сократить,  а то приходится в экселе все расписывать,  очень громоздко получается.

InfSub

stalker50
Ну и  балаган, ничего не понятно. Какой вопрос??
переходи на .js
Примерно таг:

скрытый текст

Выделить код

Код:

function пример(){ 
for(i=0; i<=50; i++){ 
if(!b[i]) break;
iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT FORM=ID:new-form ATTR=NAME:_phones'+b[i]+' CONTENT=+7<SP>(727)<SP>3546370);} b='';}

прошу прощения за такой вид вопроса,  первое сообщение,   когда набирал вроде было все норм.


попробую изложить заново.

есть страницы от 2 до 450

скрытый текст
kolesa.kz/my/?tab=live&sort_by=date-asc&page=2

на этих страницах есть кнопка, ссылкой на редактирование объявления (от 1 до 40)
скрытый текст

Выделить код

Код:

TAG POS=26 TYPE=A ATTR=TXT:Редактировать<SP>текст


код публикуется в тегах code внутри спойлера

как сделать переход сначала внутри по всем объявлениям от 1 до 40, потом перейти на следующую страницу и там тоже самое от 1 до 40

по поводу JS 

тоже разбирался но не понял как в моем случае запустить.

InfSub

stalker50
наверное так

скрытый текст

Выделить код

Код:

for(i=2; i<=450; i++){ 
iimPlayCode('URL GOTO=kolesa.kz/my/?tab=live&sort_by=date-asc&page='+i);
for(ku=1; ku<=40; ku++){ 
iimPlayCode('TAG POS='+ku+' TYPE=A ATTR=TXT:Редактировать<SP>текст');
тут  код редактирования}}

запустил не переходит по ссылкам

выдает ошибку

TypeError: s is undefined (Error code: -1001)

честно я новичек что посмотреть,  для того чтобы работало?

вроде сам код работает,  строки перебирает,  а переходов нет.

23-08-2016 19:43:38
я вот так прописал

скрытый текст

Выделить код

Код:

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"
macro += "WAIT SECONDS=1" + "\n"


for(i=2; i<=450; i++){ 
iimPlayCode('URL GOTO=http://kolesa.kz/my/?tab=live&sort_by=date-asc&page='+i);
for(ku=1; ku<=40; ku++){ 
iimPlayCode('TAG POS='+ku+' TYPE=A ATTR=TXT:Редактировать<SP>текст');}}
iimPlay(macro)


код публикуется в тегах code внутри спойлера

InfSub

stalker50

скрытый текст

Выделить код

Код:

for(i=2; i<=450; i++){ 
iimPlayCode('URL GOTO=kolesa.kz/my/?tab=live&sort_by=date-asc&page='+i);
for(ku=1; ku<=40; ku++){ 
iimPlayCode('TAG POS='+ku+' TYPE=A ATTR=TXT:Редактировать<SP>текст');
iimPlay(macro);}}

почему то работает только когда слово code находится в скобках

скрытый текст

Выделить код

Код:

for(i=2; i<=450; i++){ 
iimPlay("CODE:URL GOTO=http://kolesa.kz/my/?tab=live&sort_by=date-asc&page=+i");
for(ku=1; ku<=40; ku++){ 
iimPlay('CODE:TAG POS='+ku+' TYPE=A ATTR=TXT:Редактировать<SP>текст');}}


код публикуется в тегах code внутри спойлера
Замечание


но другой вопрос почему не проигрывает macro
iimPlay(macro)

23-08-2016 19:53:14
отображает его но не проигрывает

23-08-2016 19:55:37
при таком варианте нет перехода на страницу первого цикла


InfSub

stalker50
вы используете старую версию FF. могу предположить что 3.6
и в вашем коде не хватает кавычек, это же вы его дорабатывали???
так написано в соседней теме.
и сдесь ошибка:

скрытый текст

Выделить код

Код:

iimPlay("CODE:URL GOTO=http://kolesa.kz/my/?tab=live&sort_by=date-asc&page=+i");

версия последняя 48.0.1

23-08-2016 20:16:09
все разобрался надо было iimPlay(macro)  внести в цикл в скобки....

спасибо огромное  все заработало.


я прописал 2 раза вернуться обратно  для возврата на страницу первого цикла,  может быть есть другая процедура?

stalker50
Что мешает перенести iimPlayCode() с урлом во второй цикл?

InfSub
Увидел во что тыкаете, с синтаксисом разобрался, спасибо. Так как у меня файл js, то удалил обрамляющий его iim, но от этого код

скрытый текст

Выделить код

Код:

var randomNumber=Math.floor(Math.random()*30 + 1); randomNumber;\n WAIT SECONDS={{!VAR1}}


не заработал, рандомизация по отсрочке времени не пошла, подскажите, в чём проблема?

Подскажите как можно создaть профиль Firefox при помощи Firefox Api в JS файле

Krusher

скрытый текст

Выделить код

Код:

weit(Math.random()*10 + 303);
function weit(s){iimPlayCode('WAIT SECONDS='+s);}

Koks пишет

Krusher

скрытый текст

Выделить код

Код:

weit(Math.random()*10 + 303);
function weit(s){iimPlayCode('WAIT SECONDS='+s);}

Спасибо тебе добрый человек, то что нужно!:)

Krusher пишет

то что нужно

И чем этот код отличается от приведенного выше?
Или вы читаете только пол сообщения?

удалено, п.п. 3.6
замечание

InfSub

удалено, п.п. 3.6
замечание

InfSub

InfSub пишет
Krusher пишет

то что нужно

И чем этот код отличается от приведенного выше?
Или вы читаете только пол сообщения?

Дело в том, что в моей редакции,

скрытый текст

Выделить код

Код:

var randomNumber=Math.floor(Math.random()*30 + 1); randomNumber;\n WAIT SECONDS={{!VAR1}}


код не исполнялся, а в этой
скрытый текст

Выделить код

Код:

weit(Math.random()*30 + 10);
function weit(s){iimPlayCode('WAIT SECONDS='+s);}


работает, рандомно отсчитывает обратно, хоть я и подозреваю, что iim внутри лишний...если правильно по другому как-то, прошу подсказать

Krusher пишет

код не исполнялся, а в этой работает,

Внимательно перечитайте данное сообщение, особенно, код под спойлером

24-08-2016 20:54:23
iim-код - не лишний

InfSub
Спасибо, с этим разобрался!

24-08-2016 22:18:55
Сейчас в js файл на исполнение вставил функцию CLICK, реализовал её в таком виде

скрытый текст

Выделить код

Код:

{
var cli;
cli = "CODE:";
cli += "CLICK X=226 Y=680" + "\n";
iimPlay(cli)
}


ошибки скрипт не выдаёт, это значит, он её подхватывает ?

Krusher
Это значит, что имакрос не воспринимает результата действия по клику, а просто пытается нажать на какую-то точку в браузере. Это самый не универсальный способ использования имакроса.

Подскажите почему не выбирает текст ???

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}');


код публикуется в тегах code внутри спойлера

InfSub

Потому что вы не передали значение из первого кода, во второй
Каждый вызов iimPlayCode(), аналогичен запуску отдельного iim-скрипта
Читайте про iimGetLastExtract()

InfSub

Напишите правильный код пожалуйста многое перепробовал не получается

26-08-2016 11:45:04
ПОМОГИТЕЕЕ ........... ПОЖАЛУЙСА
Уже все перепробовал не вытаскивает ТЕКСТ и все тут

скрытый текст

Выделить код

Код:

iimPlayCode('WAIT SECONDS=1');
  iimPlayCode('TAB OPEN');
  iimPlayCode('TAB T=2');
  iimPlayCode('URL GOTO='+PathRuCaptha);

  iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT='+key_RuCaptha);
  iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Path+imageFileName);
  iimPlayCode('SET !TIMEOUT 80\nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:* ATTR=*');
  iimPlayCode('TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT\nSET !VAR1 {{!EXTRACT}}');
  iimPlayCode('TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT\nSET !VAR1 {{!EXTRACT}}');
  iimSet('Extr, {{!EXTRACT}}');

  var extract=iimGetExtract().match().join(''); 
  iimDisplay(extract);

  iimPlayCode('WAIT SECONDS=1');
  iimPlayCode('FRAME F=0');
  iimPlayCode('TAB CLOSE');
  
  
/* Вставляем капчу */
  var extract=iimGetExtract().split('[!EXTRACT]');
  var extract=iimGetExtract();
  var extract=iimGetLastExtract();
  iimPlayCode('TAB T=1');
  iimPlayCode('WAIT SECONDS=1');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!VAR1}}');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!Extr}}');  
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT='+iimGetLastExtract());
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT={{!EXTRACT}}');
  iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:*               CONTENT='+extract);

denbal
Запишите код приведенный в вашем сообщении в один iimPlayCode() вместо двух

InfSub пишет

denbal
Запишите код приведенный в вашем сообщении в один iimPlayCode() вместо двух

У меня пока так и работает, но мне надо в разных, чтобы потом делать проверку для разных сайтов, на каждый сайт своя строка должна быть, для этого то я и начал использовать ЯВУ

InfSub пишет

Krusher
Это значит, что имакрос не воспринимает результата действия по клику, а просто пытается нажать на какую-то точку в браузере. Это самый не универсальный способ использования имакроса.

А как посоветуете для рандомизации в скрипте использовать команду CLICK?

Здравствуйте, в общем проблема такова. Есть сайт который защищен от копирования текста (экзамен). Установил imacros для firefox, когда я сохраняю страницу через (ctrl + s) ставлю тип данных Текстовый документ после чего открывая страницу в виде блокнота то весь текст есть, но если я запускаю imacros и ставлю тип txt то страницы в итоге получаются пустыми, пробовал одновременно  с righttoclick запускать бесполезно, помогите пожалуйста

Можно ли прописать две переменные? f=iimGetExtract();

Gergi
Вам в сотый раз повторить, что здесь нет экстрасенсов?!

26-08-2016 19:43:16
kenya
Может быть вы прочтете правила данного раздела и зададите вопрос так, чтобы на него можно было ответить - "не гадая на кофейной гуще"?

26-08-2016 19:47:06
denbal
Ваша, так называемая рандомизация, в результате приведет к тому, что не будет корректно работать при различных разрешениях браузера и на разных пк.
Да и клик в "разные" точки одной и той же кнопки при идентичности остальных действий - просто бред

26-08-2016 19:50:44
denbal

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
var i=iimGetLastExtract();
iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT='+i);


разве так сложно было найти это на форуме или в офф. вики?!

InfSub пишет

denbal
Ваша, так называемая рандомизация, в результате приведет к тому, что не будет корректно работать при различных разрешениях браузера и на разных пк.
Да и клик в "разные" точки одной и той же кнопки при идентичности остальных действий - просто бред

InfSub, чувствую на последних волевых, учите нас правильному и светлому, за что от меня большое спасибо!) Я сделал заход на страницу, рандомное время нахождения на ней, вписывание в поисковую строку разных запросов, рандомный уход с неё. Покажите какой нибудь фрагмент кода для очеловечивания брождения по странице

Добрый день.

есть следующая задумка разместить фаерфокс порт. в облаке и от туда запускать.

на сколько должна изменится скорость воспроизведения?  вроде как должна использовать скорость сервера.

кто сталкивался с подобной возможностью и как реализовали.

как можно увеличить скорость работы фаерфокса и сократить его зависания.

stalker50
попробуйте поиск по теме, по словам "облако", "vps"

27-08-2016 15:04:44

Krusher пишет

Покажите какой нибудь фрагмент кода для очеловечивания брождения по странице

это не единожды обсуждалось в параллельной теме, посвященной каптчам, да и тут, по-моему - тоже.
рандомизация - делается за счет изменения идентификатора браузера (user-agent), сменой ip, удалением кук и т.д., а то что вы пытаетесь придать скрипту "человечности" - глупость, ибо отслеживание идет, в основном, по параметрам описанным выше
если интересно - почитайте, как seo'шники отслеживают уникальных посетителей и какие технологии при этом применяются

Пацаны, следующая проблема
Запускаю js скрипты из js скрипта
и запускается только 1,2,4 а 3 и 5 проскакивают почему то
Код:

скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=gotovo/1.js")
iimPlayCode("URL GOTO=imacros://run/?m=gotovo/2.js")
iimPlayCode("URL GOTO=imacros://run/?m=gotovo/3.js")
iimPlayCode("URL GOTO=imacros://run/?m=gotovo/4.js")
iimPlayCode("URL GOTO=imacros://run/?m=gotovo/5.js")


код публикуется в тегах code внутри спойлера

В чем может быть проблема?

InfSub

bukinzlyukin пишет

В чем может быть проблема?

в том, что js из js, описанным вами способом - корректно не работает
работает только последовательно: из 1 - 2, из 2 - 3 и т.д. (опять же, не всегда)

InfSub пишет
bukinzlyukin пишет

В чем может быть проблема?

в том, что js из js, описанным вами способом - корректно не работает
работает только последовательно: из 1 - 2, из 2 - 3 и т.д. (опять же, не всегда)

А есть корректно работающие способы?

bukinzlyukin
я вам описал - как работат более менее корректно
разработчики - исходили из того, что js - управляющий скрипт для iMacros команд, и запуск js из js не подразумевался

удалено, п.п. 2.21 - задайте вопрос в соответствующей теме

infSub

InfSub

Ткните пжл, где у нас тут посмотреть, как изменение user-agent реализовать

Krusher пишет

Ткните

в теме по каптчам

InfSub пишет
Krusher пишет

Ткните

в теме по каптчам

Правильно я понимаю, что эта часть кода за чистку куков и смену user agent отвечает:

скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces,a,b,c,d,e,f=0,refka='1AWqZ3ke9z8eSvZWFPeHTY8a3jmQNWKhSa';
 var cok=Cc["@mozilla.org/cookiemanager;1"].getService(Ci.nsICookieManager);  
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 var str=Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
 var alt=Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsIPromptService);
 var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n';


Нашёл конкретный вариaнт смены user agent, теперь возник вопрос, как его сделать при каждом вызове разным? это ведь нужно будет сделать заранее шаблоны юзерагентов, а потом каким то образом через переменную подменять? или второй вариант, сделать батник с выходом и входом в браузер, и уже через встроенный в него Agent Spoofer менять?

скрытый текст

Выделить код

Код:

function UserAgent1(){iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=2");   
 var Cc=Components.classes, Ci=Components.interfaces; 
 var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
 var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);
   str.data='Mozilla/5.0 (X11; U; Linux; i686; en-US; rv:1.6) Gecko Debian/1.6-7'; //юзер агент подмены
   prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);
 //  iimPlayCode('SET !TIMEOUT 30\nURL GOTO=malishev.info/tools/ua/'); weit(3);
}

Krusher пишет

скрытый текст

Выделить код

Код:

iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=2");

вот эта часть, там точно лишняя

27-08-2016 20:42:26

Krusher пишет

потом каким то образом через переменную подменять

по аналогии с рандомным числом - делается рандомный юзер-агент, примеры вывода рандомной фразы, вроде бы, в этой теме были, ищите (строка поиска справа вверху страницы) по слову "рандом"

27-08-2016 20:46:43

Krusher пишет

что эта часть кода за чистку куков

нет, там была отдельная функция, а данный код, просто содержит часть компонентов, используемых функцией

InfSub пишет

в этой теме были, ищите (строка поиска справа вверху страницы) по слову "рандом"Добавлено Сегодня 20:46:43Отредактировано InfSub (Сегодня 20:46:43)

Посмотрите пжл, с нашего сайта пример по смене юзер агента, так пойдёт?

скрытый текст

Выделить код

Код:

/***-=Смена UserAgent=-***/ 
        
    function randomInteger(min, max) {
      
      var rand = min - 1 + Math.random() * (max - min + 5)
       rand = Math.round(rand);
        return rand;        
  }
       var frt=( randomInteger(2, 10) );
       var urlAgent=['Mozilla/5.0 (Windows NT 5.1; rv:35.0) Gecko/20100101 Firefox/35.0','Mozilla/5.0 (X11; U; Linux; i686; en-US; rv:1.6) Gecko Debian/1.6-7','Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20100101 Firefox/17.0 SeaMonkey/2.14.1',' Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)','Mozilla/5.0 (Linux; U; Android 2.2.1; en-ca; LG-P505R Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Linux; U; Android 2.2.1; en-gb; HTC_DesireZ_A7272 Build/FRG83D) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (X11; U; Linux armv61; en-US; rv:1.9.1b2pre) Gecko/20081015 Fennec/1.0a1','Mozilla/5.0 (Linux; U; Android 2.3.3; de-ch; HTC Desire Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Linux; U; Android 2.3.3; ko-kr; LG-LU3000 Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; T-Mobile myTouch 3G Slide Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1','Mozilla/5.0 (Windows NT 6.1; rv:2.1.1) Gecko/20110415 Firefox/4.0.2pre Fennec/4.0.1','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20081005220218 Gecko/2008052201 Fennec/0.9pre','Mozilla/5.0 (Windows; U; Windows CE 5.2; en-US; rv:1.9.2a1pre) Gecko/20090210 Fennec/0.11','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1a1pre) Gecko/2008071707 Fennec/0.5','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1a2pre) Gecko/20080820121708 Fennec/0.7','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20080923171103 Fennec/0.8','Mozilla/5.0 (X11; U; Linux armv6l; en-US; rv:1.9.1b1pre) Gecko/20081005220218 Gecko/2008052201 Fennec/0.9pre','Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US;  rv:1.9.1b2pre) Gecko/20081015 Fennec/1.0a1','Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b2pre) Gecko/20081015 Fennec/1.0a1 '];; 
    function UserAgent(){iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1");        
       var Cc=Components.classes, Ci=Components.interfaces; 
        var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
         var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);     
          str.data=urlAgent[frt]; // Перюключение UserAgent     
           prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);
            iimPlayCode('SET !TIMEOUT 30\nURL GOTO=malishev.info/tools/ua/'); 
}           
 UserAgent();


27-08-2016 21:17:42
удалено, избыточное цитирование
Всё ок, спс, затестил, работает! Пойду с куками разбираться)

InfSub

Алим пишет

Вконтакте на своей странице на стене добавлет фото из папки, но вот на других стенах других пользователей не добавляет и на стене групп.

работает на своей стене вконтакте

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post

удалено, избыточное цитирование
Подскажите, пожалуйста - как сделать чтобы этот скрипт брал из определенной папки на компе по очереди картинки и постил их. Это сделать без js можно? например командой loop?

InfSub

Выполнял обычные действия

скрытый текст

Выделить код

Код:

{
var g;
g = "CODE:";
g += "URL GOTO=https://google.com" + "\n";
g += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:sf ATTR=NAME:q CONTENT=mysite.ru" + "\n";
g += "TAG POS=1 TYPE=BUTTON FORM=ID:sf ATTR=TYPE:submit&&ARIA-LABEL:Ara&&CLASS:gws-lite__searchbox-submit&&TXT:" + "\n";
g += "TAG POS=1 TYPE=A ATTR=ID:result0" + "\n";
iimPlay(g)
}


и вот с чем столкнулся, при смене юзер агента гугл в коде выше меняет данные в
скрытый текст

Выделить код

Код:

FORM=NAME:tsf ATTR=NAME:mib


таким образом не даёт скрипту отработать, как это решить?

artemfedor пишет

например командой loop?

да - можно

27-08-2016 23:39:59
Krusher
используйте те параметры, которые не изменяются или заменяйте "рандомную" часть параметра - звездочкой

InfSub пишет

27-08-2016 23:39:59
Krusher
используйте те параметры, которые не изменяются или заменяйте "рандомную" часть параметра - звездочкой

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

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAB T=1
TAG POS=1 TYPE=A ATTR=HREF:http://mysite.ru/index.php?category=*
WAIT SECONDS=#DOWNLOADCOMPLETE#


который подразумевал, что будет ходить по страницам сайта, которые будут под эту звезду подкидываться, но этого не произошло, это связано с тем, что под звездой мы должны объявлять какую-то переменную, загонять страницы в txt и использовать {{!COL1}} ?

Товарищи, нужна Ваша помощь, я этот user agent уже во все щели, на чём остановился при запуске команды

скрытый текст

Выделить код

Код:

SET !USERAGENT «Mozilla/5.0; Windows NT5.1; rv:35.0; Gecko/20100101; Firefox/35.0»


с пробелами между Mozilla/5.0; Windows NT5.1 и далее по тексту,  то есть в правильном естественном виде, выдаётся ошибка и агент в настройках браузера не меняется, а при написании в неправильном виде
скрытый текст

Выделить код

Код:

SET !USERAGENT «Mozilla/5.0;WindowsNT5.1;rv:35.0;Gecko/20100101;Firefox/35.0»


все слова слитно, меняется только в путь, но при проверки выглядит неестественно (неправильно), что с этим делать?

Krusher
это значит, что ваш код не соответствует тому, что есть на сайте
звездочка заменяет часть атрибута или полностью атрибут, если эта часть не важна или постоянно меняется
для примера, в вашем коде, скрипт будет переходить по ссылке, только если ссылка на http://mysite.ru/index.php?category= присутствует в коде, при этом - тот текст, что идет после category= - не важен, так как заменен звездочкой

28-08-2016 16:16:06
данный код:

скрытый текст

Выделить код

Код:

WAIT SECONDS=#DOWNLOADCOMPLETE#


е работает в современных версиях мозиллы

28-08-2016 16:18:35

Krusher пишет

все слова слитно, меняется только в путь, но при проверки выглядит неестественно (неправильно), что с этим делать?

изменить кавычки с русских (елочка): «user-agent» на двойные: "user-agent"

28-08-2016 16:21:39
не рекомендую использовать SET !USERAGENT, если только весь скрипт, у вас не записан в один iim-файл или не выполняется в пределах одного вызова функции iimPlay()/iimPlayCode()

InfSub пишет

Krusher
28-08-2016 16:21:39
не рекомендую использовать SET !USERAGENT, если только весь скрипт, у вас не записан в один iim-файл или не выполняется в пределах одного вызова функции iimPlay()/iimPlayCode()

Спасибо! я честно пытался уйти от этой команды, но при запуске замены через код js

скрытый текст

Выделить код

Код:

var urlAgent=['Mozilla/5.0 (Windows 8; rv:35.0) Gecko/20100101 Firefox/30.0';];;
    function UserAgent(){iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1");        
       var Cc=Components.classes, Ci=Components.interfaces; 
        var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
         var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);     
          str.data=urlAgent[frt]; // Перюключение UserAgent     
           prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);
            iimPlayCode('SET !TIMEOUT 30\nURL GOTO=malishev.info/tools/ua/'); 
}           
 UserAgent();


он мне постоянно выдаёт ошибку(строку не указывает), что где то не проставлена кавычка ] , я методом тыка перебрал строки, но он не запустился

Krusher пишет

я методом тыка перебрал строки

а не надо - методом тыка, надо понимать, что вы делаете:

исправленный код:

Выделить код

Код:

var urlAgent=['Mozilla/5.0 (Windows 8; rv:35.0) Gecko/20100101 Firefox/30.0'];
function UserAgent(){
    var Cc=Components.classes, Ci=Components.interfaces; 
    var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
    var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);     
    str.data=urlAgent[frt]; // Перюключение UserAgent     
    prf.setComplexValue('general.useragent.override',Ci.nsISupportsString,str);
    iimPlayCode('SET !TIMEOUT 30\nURL GOTO=malishev.info/tools/ua/'); 
};          
UserAgent();

InfSub
удалено, избыточное цитирование
Благодарю.

InfSub

Ничего не предвещало беды. В течении дня(7 часов) работал со скриптом imacros в js, запуская его из под браузера pale moon, скрипт сам отлаженный, на него не грешу, неожиданно при нажатии воспроизвести, он вообще перестал запускаться, ошибку не выдаёт, что делать?
Что я уже пробовал:
- чистил куки
- менял юзер агента
- вкл/выкл браузер
- копировал скрипт и запускал под названием другого файла

Если у кого-то аналогичное было, поделитесь...

Народ  подскажите, как можно получить номер текущей/активной вкладки?

nikolay1987
Текущая вкладка "TAB T=1"

Не могу создать случайную задержку в js в переменной macro

скрытый текст

Выделить код

Код:

for (i = 1; i < 3; i++){
var r = Math.random() * 8 + 1;
var macro;
macro =  "CODE:";
macro +=  "SET !ERRORIGNORE YES" + "\n"; 
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro +=  "WAIT SECONDS={{r}}" + "\n"; 
iimPlay(macro);
}


код публикуется в теге code внутри спойлера

InfSub

Krusher
переустанови iMacros

28-08-2016 23:28:04
volchsek
зщачем эти 2 строки в js? (особенно вторая):

скрытый текст

Выделить код

Код:

macro +=  "SET !ERRORIGNORE YES" + "\n"; 
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n";


не уже ли, так сложно было пролиснуть пару страниц фотрума, в поиске ответа на ваш вопрос?
скрытый текст

Выделить код

Код:

macro +=  "WAIT SECONDS="+ r + "\n";

dim222 пишет

Текущая вкладка "TAB T=1"

Я, наверно не так выразился, под получить я имел ввиду - загнать номер вкладки в переменную.
Мне это нужно для проверки условия, открылась новая вкладка или нет.

nikolay1987
для любого iim-скрипта или iim-кода (запущенного из js), текущая вкладка, всегда будет первой, даже, если в реальности - она последняя
информация о том, как перемещаться по вкладкам, есть в FAQ

28-08-2016 23:33:22

nikolay1987 пишет

Мне это нужно для проверки условия, открылась новая вкладка или нет.

так перейдите с вкладки 1 на вкладку 2, если iMacros выдаст ошибку, то значит не открылась
возврат ошибки и обрабатывайте

InfSub пишет

так перейдите с вкладки 1 на вкладку 2, если iMacros выдаст ошибку, то значит не открылась
возврат ошибки и обрабатывайте

Это гениально:D
Про 'Загнать номер вкладки в переменную' есть кто знающий или это невозможно?

nikolay1987
перечитай мой пост выше с самого начала
получить текущий номер вкладки или суммарное количество вкладок  - нельзя

InfSub пишет

перечитай мой пост выше с самого начала

А как мне перейти на вкладку 2 если она не открылась?

скрытый текст

Выделить код

Код:

iimPlayCode('TAB=2');
alert(iimGetLastError());

InfSub, Вот это прям то что нужно. Спасибо:)

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

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:


и
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:


, только прыгает по сайтам и ничего не делает :(
код публикуется в тегах code внутри спойлера

InfSub

Duck
удалено, избыточное цитирование
Возможно, на этих сайтах другие значения TAG POS и TYPE.

InfSub

Duck
Попробуй запиши imacros-ом на сайтах. либо позицию смени на TAG POS=2. Ну или либо корявый скрипт.

Подскажите, во вложении два скрипта по удалению кук, какой из них правильный для исполнения?

скрытый текст

Выделить код

Код:

//***-=cookies del=-***/
var Cc=Components.classes, Ci=Components.interfaces;
var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);
var cok=Cc['@mozilla.org/cookiemanager;1'].getService(Ci.nsICookieManager);     

function del_cookis(){
var iter=cok.enumerator;
while (iter.hasMoreElements()){var cookie=iter.getNext();
if(cookie instanceof Ci.nsICookie){cok.remove(cookie.host, cookie.name, cookie.path, cookie.blocked);}}}
del_cookis();


или

скрытый текст

Выделить код

Код:

//***-=Очистка кукисов=-***/
     var Cc=Components.classes, Ci=Components.interfaces; 
     var prf=Cc['@mozilla.org/preferences-service;1'].getService(Ci.nsIPrefBranch);
      var str=Cc['@mozilla.org/supports-string;1'].createInstance(Ci.nsISupportsString);
      var cok=Cc['@mozilla.org/cookiemanager;1'].getService(Ci.nsICookieManager);      
 
 function del_cookis(){  iimDisplay('Удаляем куки');
    var iter=cok.enumerator;
     while (iter.hasMoreElements()){var cookie=iter.getNext();
      if(cookie instanceof Ci.nsICookie){
       cok.remove(cookie.host, cookie.name, cookie.path, cookie.blocked);}}}
        del_cookis();

Krusher
не понял. они же одинаковые.

dim222 пишет

Krusher
не понял. они же одинаковые.

Верно.Что то мёда я объелся:)

dim222 пишет

Duck
Попробуй запиши imacros-ом на сайтах. либо позицию смени на TAG POS=2. Ну или либо корявый скрипт.

я и так записывал им, TAG POS=2 ничего не поменял, при цикле первый раз все порожимает, на втором круге только по ссылкам переходит и ничего не делает.
Скрипт:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !REPLAYSPEED MEDIUM
VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=http://smofast.com/p.php?p=ysub
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Подписаться
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TXT:ПодписатьсяПодписка<SP>оформленаОтменить<SP>подписку
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
TAB T=1
URL GOTO=http://smofast.com/p.php?p=twitter_retweet
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Ретвитнуть
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:retweet_btn_form ATTR=NAME:commit
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
TAB T=1
URL GOTO=http://smofast.com/p.php?p=facebook
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Лайкнуть
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TXT:Нравится
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
TAB T=1
URL GOTO=http://smofast.com/p.php?p=twitter
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Подписаться
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON FORM=ID:follow_btn_form ATTR=TXT:Читать
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
TAB T=1
URL GOTO=https://smofast.com/p.php?p=instagram
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Подписаться
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TXT:Подписаться
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
TAB T=1
URL GOTO=https://smofast.com/p.php?p=inst_likes
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Лайкнуть
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=SPAN ATTR=TXT:Нравится
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS
TAB T=1
URL GOTO=https://smofast.com/p.php?p=twitch_followers
WAIT SECONDS=2
TAG POS=1 TYPE=A ATTR=TXT:Подписаться
TAB T=2
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=TXT:Подписаться
WAIT SECONDS=4
TAB T=1
TAB CLOSEALLOTHERS


Может даже ещё кому полезен будет :)

Duck пишет

я и так записывал им, TAG POS=2 ничего не поменял, при цикле первый раз все порожимает, на втором круге только по ссылкам переходит и ничего не делает.

удалено, избыточное цитирование
Из того, что сходу вижу, команды SET !ERRORCONTINUE YES не существует

InfSub

Duck
Запусти скрипт не в цикле, а в режиме воспроизведения, два раза подряд и посмотри, при втором запуске будет аналогичная проблема или нет

InfSub пишет

Duck
Запусти скрипт не в цикле, а в режиме воспроизведения, два раза подряд и посмотри, при втором запуске будет аналогичная проблема или нет

нет, при просто воспроизведении все работает как надо :/
я уже думаю автокликер ставить который будет на "воспроизвести" тыкать через определенный промежуток времени, но тогда компом не возможно пользоваться....
Еще у меня вопрос, на телефоне на фаерфоксе возможно запусть подобный макрос?

Duck
А вы видели версию iMacros для телефона?!
Попробуйте запускать макрос из js, теоретически это может помочь, т.к. будет аналогично запуску макроса несколько раз подряд (тому, что вы только что проделали)

InfSub
А можно чайнику объяснить про js? А то я с imacros только вчера познакомился с:

Мобильную версию не видел, но очень бы хотелось :D

Duck
Откройте FAQ там есть описание, а также, есть видео для новичков, ссылка в подписи

InfSub пишет

Duck
Откройте FAQ там есть описание, а также, есть видео для новичков, ссылка в подписи

А окей позже гляну,  спасибо за наводку ;)

InfSub пишет

Duck
Попробуйте запускать макрос из js, теоретически это может помочь, т.к. будет аналогично запуску макроса несколько раз подряд (тому, что вы только что проделали)

Не смог я из js запустить, не в какую не видит как бы не настраивал, зато получилось зациклить через макрос

скрытый текст

Выделить код

Код:

URL GOTO=imacros://run/?m=C:/iMacros/Macros/1.iim


НО, как бы все хорошо не работало,, через минут 20-30 он тупо зависает на одном из шагов воспроизведения, 0 реакции вообще, аймакрос последний, файрфокс последний, может из за слабого компа такое быть, хотя я нормально работаю в куче вкладок в хроме, когда он на фоне пашет, до момента пока не зависнит...

Сделал по макросу на каждое действие, по окончанию которого открывается другой макрос с другим действием и зациклил все это,
Получается 7 макросов ссылающихся по окончании одного на следующий, зациклиные в круг и поставленые на цикл на всякий х)

Duck пишет

Не смог я из js запустить, не в какую не видит как бы не настраивал

Где пример?

Duck пишет

аймакрос последний, файрфокс последний

Поставьте последнюю 8 версию и отключите обновление плагина, 9 глючная

Друзья, скажите пож-та. Есть ли возможность реализовать, что бы макрос искал и сравнивал товары по картинке?

Pavel_biz
В бесплатной версии - нет, сравнение есть только в iMacros Browser

InfSub
удалено, избыточное цитирование
Пример удалил, а делал как по видео, всеми рабочими способами, он писал ошибку 903 кажется, "нот фоунд" а потом я наткнулся что можно макрос из макроса запускать, так все заработало, 7 макросов работали всю ночь, по окончанию одного, начинает второй, а там третий и т.д.
В общем все работает, спасибо с:
Однако еще вопрос возник, есть ли команда которая запускает рандомный один из нескольких макросов?

InfSub

InfSub пишет

Pavel_biz
В бесплатной версии - нет, сравнение есть только в iMacros Browser

Вы сможете реализовать подобное задание?

InfSub, дай ссылку где на вашем форуме можно почитать про постинг в вк с разных аков с подменой прокси или без, но чтобы скрипт постил сначала в один акк к себе же на стену картинки, потом менял акк, и постил дальше в следующий акк и так - n-аков, картинки всегда разные из одной папки.

И еще вопросик маленький - как спарсить блек лист в вк и выгрузить его в txt файл? а точнее - как привязать к переменной в цикле значения забаненных юзеров? чтобы перебирать их по очереди вниз, начиная с верхнего и записать их в txt файл в точно таком же порядке, в котором они в вк?

Друзья, работает файрфокс в связи с аймакрос - грузит картинки на сайт. Доходит примерно до 1 гигайбайта оперативки (+/- 20%) и виснет файрфокс. Удается за раз загрузить 30-40 картинок. Как можно очищать память или делать так чтобы файрфокс работал хотя бы до 5-7 гигабайт озу в памяти?

mirko09
На форуме есть ответы, обсуждалось не один раз. В темах полистай и будет ответ. В about:config пропиши что нужно, ну и перезапуск самого браузера .

Duck пишет

Однако еще вопрос возник, есть ли команда которая запускает рандомный один из нескольких макросов?

поиск по слову - рандом

31-08-2016 22:39:20

artemfedor пишет

InfSub, дай ссылку

воспользуйтесь поиском

31-08-2016 22:40:32

artemfedor пишет

как привязать к переменной в цикле значения забаненных юзеров?

правой кнопкой мыши - исследовать элемент

31-08-2016 22:42:37
mirko09
см. в FAQ как перезапустить FF и в теме про каптчи - как очистить память

скрытый текст

Выделить код

Код:

for (i=1;i<3;i++){
var macro; 
macro = "CODE:";
macro += "set !errorignore yes" + "\n";
macro += "TAG POS={{i}} TYPE=A ATTR=ID:group_bl_title*" + "\n";
macro += "wait seconds=3" + "\n";
macro += "BACK" + "\n";
iimPlay(macro)
}


код публикуется в тегах code внутри спойлера
что не так?

InfSub

Ребята помогите, нигде не могу найти, есть ли команда, что бы чистила ТОЛЬКО кэш, и не трогала куки?

Крутые мальчики, привет:P Девушка пришла, ггг Вы здесь разговаривали про скрипт, который удаляет предыдущий пост на стене вк? Вроде и с гугла искала, и здесь, но может ключ не такой ввожу, ибо не нахожу

через поиск не нашел ответ.

вопрос следующего характера,   работаю с сайтом объявлений с 3-5 страницами основная информация на них одна и та же, 
меняется только описание определенны, и ещё пару параметров.

получается следующее  выходим на страницу,  на ней 40 объявлений,  заходим по списку в каждое и меняется номер телефона, возврат на прошлую страницу и так далее.

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

или каким образом ещё можно увеличить скорость загрузки.

stalker50
Кэширование - производится браузером а не имакросом
Отключение изображений с помощью имакроса:

скрытый текст

Выделить код

Код:

FILTER TYPE=IMAGES STATUS=ON

03-09-2016 12:05:06
Vikkada
Может когда-то и обсуждали, лично я, не помню
Используйте кнопку "запись", для создания скрипта, а далее, смотрите, что не работает и экспериментируйте, и задавайте вопросы, если что-то не понятно, но с конкретными примерами кода

Как сократить время команды с 6 секунд до 2-3, если она ничего не находит ?

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT

Нашел решение, в настройках аймакроса таймаут стоит 60 сек, поменял на 30, время команды сократилась до 3-х секунд, меняется время с отношением 10-1, если поставить в настройках таймаут 10, время команды будет 1 сек :)

Подскажите как возможно получить исходный код текущей страницы желательно на JS?

Гуглил пример:

скрытый текст

Выделить код

Код:

var str = window.document.body.innerHTML;
alert(str);


Но выдает ошибку:

Error: Accessing content window is not supported in multiprocess Firefox, line 208 (Error code: -991)

код публикуется в тегах code внутри спойлера
техт ошибки - в тегах quote (цитата)

фаерфокс 48.0.2
имакрос VERSION BUILD=9030808 RECORDER=FX

InfSub

extender

Подскажите пжл, как зациклить выполнение одного действия на определенное количество раз? вот что я сделал, но чего то не хватает

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=about:logopage
URL GOTO=https://mysite.ru
CLICK X=51 Y=423
CLICK X=342 Y=261
CLICK X=342 Y=261
CLICK X=342 Y=261
SET !LOOP 6
SET !DATASOURCE_LINE {{!LOOP}}


Хотел зациклить выполнение 6 строчки

Krusher
Откройте словарь и переведите слово set
А заодно посмотрите, что за кнопка находится ниже кнопки "Воспроизведение" в панели имакрос

не могу создать переменную рандом в js со случайным числом от 1 до 10

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=+k+ TYPE=DIV ATTR=CLASS:ii_body');
    var k=min=1; 
    var k=max=10; 
    var k=Math.random() * (max - min) + min;


код публикуется в теге code внутри спойлера


volchsek - вы не смотрите, что вы публикуете и в каком виде?
потрудитесь, в следующий раз, перечитать свое сообщение и отредактировать, до того, как это сделает модератор
пример правильного оформления кода - есть в правилах раздела и в шапке данной темы

InfSub

volchsek
Вы задавали, этот вопрос - неделю назад.
Не уже ли, за целую неделю, было так сложно открыть FAQ или воспользоваться поиском по данной теме (справа вверху страницы), по словам: random или Math.random?

скрытый текст

Vikkada
Может когда-то и обсуждали, лично я, не помню
Используйте кнопку "запись", для создания скрипта, а далее, смотрите, что не работает и экспериментируйте, и задавайте вопросы, если что-то не понятно, но с конкретными примерами кода


Хорошо, закончу с одним, сделаю это. Тогда буду задавать вопросы конкретно.

Скажите, в каком формате в csv записываете номера телефонов? Потому что после сохранения и закрытия документа номер '04325698756 или '(0432)5698756 меняется на 4325698756. Что делать? Или в txt внести номера?

InfSub
я не задавал этот вопрос! :rolleyes:

Vikkada
откройте - FAQ, там есть ссылка на описание, как корректно открыть данные в Excel'е
причина редактирования: исправил ссылку на FAQ

05-09-2016 00:14:35
volchsek
а это что?

сейчас у меня не получается! там нужно было создать временную задержку, а тут pos заменить случайным числом, у меня почему то не выходит как в прошлый раз пробовал!

п.п. 2.9 (2.22)

InfSub

volchsek
iMacros позволяет работать с дробными числами, в WAIT SECONDS= но не в POS=

05-09-2016 00:44:02
volchsek

InfSub пишет

с дробными числами

как исправить это, надеюсь прочитали, перейдя в FAQ, по приведенной выше ссылке - вы используете не полный код, в этом и проблема

Пропала запись в текстовый файл . Разные профиля на разных компах , в течении года шла запись логов
таким образом

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT данные\nSAVEAS TYPE=EXTRACT FOLDER=C:\ FILE='+file+'')


код публикуется в теге code внутри спойлера
сейчас на некоторых профилях это работает , а на некоторых запись не идет . Кто-нибудь сталкивался и как решали ?

InfSub

ErrorignoreYes
уважаемый, может научимся давать, хотя бы, общее представление о проблеме, задавая вопрос, например, версию iMacros на проблемных профилях и вервию FF?
русские буквы в пути к файлу с логом есть?

Версии одни и те же(браузеров и дополнений) под запретом обновления .

нашел причину , данные на сайте (extract htm с послед обрезкой )  стали изменяться периодически в разные величины  и запись тогда от этого отказывается работать

Может сталкивался кто с проблемой.
Windows 10, firefox 47.0.1, imacros 9.0.3.
Создал новый профиль.
Запускаю под новым профилем firefox и запускаю скрипт, который читает с файла.
И все время зависает на строчке
CMDLINE !DATASOURCE ...

Этот же скрипт при запуске firefox-а с Типичным профилем все нормально работает.

В чем может быть проблема?

InfSub пишет

Krusher
Откройте словарь и переведите слово set
А заодно посмотрите, что за кнопка находится ниже кнопки "Воспроизведение" в панели имакрос

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
TAB T=1
URL GOTO=about:logopage
URL GOTO=http://mysite.ru/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/index.php ATTR=NAME:search CONTENT=смешные<SP>бульдоги<SP>фото
TAG POS=1 TYPE=BUTTON FORM=ACTION:/index.php ATTR=CLASS:btn<SP>btn-default&&TYPE:submit&&TXT:
SET !LOOP 6


Я использую set что бы назначить с какой строки цикл запустить, внизу выбираю воспроизвести цикл, но цикл не происходит...

Krusher пишет

внизу выбираю воспроизвести цикл, но цикл не происходит...

Число циклов какое ставите в панели iMacros?

InfSub пишет
Krusher пишет

внизу выбираю воспроизвести цикл, но цикл не происходит...

Число циклов какое ставите в панели iMacros?

оставлял по умолчанию 3, пробовал и 5

Всем привет. Может поможет кто-нибудь? Ни как не могу вставить кошелёк.

скрытый текст
http://www.fau.red/

Пробовал записать с разными настройками.

Jurik45 пишет

Всем привет. Может поможет кто-нибудь? Ни как не могу вставить кошелёк.

скрытый текст

Выделить код

Код:

js:
content.document.getElementsByTagName('iframe')[4].contentWindow.document.getElementsByClassName('form-control')[1].value = "DHqTsD44XPEtqYNMWeZB1dveUhniFfsPxy";
или
FRAME F=10
TAG POS=2 TYPE=INPUT ATTR=CLASS:form-control CONTENT=DHqTsD44XPEtqYNMWeZB1dveUhniFfsPxy
номер фрейма постоянно меняется.

nikolay1987
Спасибо. Первый вариант работает, но что-то капчу ни как не сохраняет.

Подскажите пожалуйста - есть простой код

скрытый текст

Выделить код

Код:

for (i=1; i<=3; i++){
alert (i)
}


как сделать так чтобы дойдя до i>3 цикл начинался сначала? и так бесконечное количество раз.

artemfedor пишет

как сделать так чтобы дойдя до i>3 цикл начинался сначала? и так бесконечное количество раз.

скрытый текст

Выделить код

Код:

for (;;){
alert (1)
}

09-09-2016 11:34:32

Jurik45 пишет

Спасибо. Первый вариант работает, но что-то капчу ни как не сохраняет.

Капча тоже во фрейме.

Krusher пишет

оставлял по умолчанию 3, пробовал и 5

Число циклов должно быть больше, чем значение LOOP

09-09-2016 13:46:49
artemfedor
Как-то так:

скрытый текст

Выделить код

Код:

for (i=1; i<=3; i==3?i=1:i++){
alert (i)
}

InfSub пишет
Krusher пишет

оставлял по умолчанию 3, пробовал и 5

Число циклов должно быть больше, чем значение LOOP

Спасибо!

InfSub пишет

Как-то так

спасибо

Ребят, подскажите как прописать логику с работой .тхт! Имеется файл .тхт, беру первую строку и сохроняю без нее(построчно).После обработки возвращаю эту строку.При работе с одним браузером все Ок,но если их не сколько ,то они начинают пересекаться и в файле начинается геммор. Как можно этого избежать?

dim222
использовать БД вместо файла

InfSub
:usch:БД- это база данных?

Приветствую.

Такой вопрос. Бывает, что в настройках imacros, где указываются пути к папкам макросов после C:\Users\, имя на русском языке.
Например C:\Users\Иван Иванов. И из-за этого выдаёт ошибку - неправильный путь.

Я в таком случае просто вырезаю папку imacros и вставляю в корень диска С и указываю путь C:\imacros

Может русское имя, можно чем-то заменить?
У кого есть варианты?

Ivan Ivanov

Добрый день.
Подскажите, плиз, как в аймакросе (или в джаве) реализовать запуск ролика от ютуба во флэшокне?
Клик по координатам не работает, он вообще нигде не работает - возможно нужна "особая" версия мазилы или плагина?

dim222
Да

Алим
Уже не единожды обсуждалось, это глюк 9 версии iMacros, откатитесь на 8

Nov
нужна полная (платная) версия iMacros, точнее iMacros Browser (Flash - работает только в ней)

InfSub пишет

Nov
нужна полная (платная) версия iMacros, точнее iMacros Browser (Flash - работает только в ней)

К сожалению сам iMacros браузер не корректно работает :(.
Устанавливал версии 10.4 и 11.1, и в обоих версиях либо только шапка сайта отображается, либо вообще пишет "Эта программа не может отобразить эту веб-страницу".
Может есть вариант как-нибудь реализовать запуск ролика?
Через автоплэй например (видел похожее на zennolab), или запуске сторонней программы, например автокликера с последующей его отключкой из макроса?

InfSub
Подскажите! Каким образом можно определить размер скачанного файла ?

Nov
Взаимодействие с другими программами описано в FAQ и в теме про каптчи.

12-09-2016 14:16:36
dim222
Аналогично, например, через cmd получить размер и записать его в txt файл, после считать iMacros'ом

InfSub
Спасибо! Все получилось, действительно верное решение!:)

рабочий пример через cmd получить размер файла и записать его в txt файл

Выделить код

Код:

@echo off & setlocal enableextensions
@echo off 
set dr=C:\test\
set fl=test.txt
@set Arg1=%dr%%fl%
@for %%i in (%Arg1%) do (set /a size1=%%~Zi)
echo %size1%> %dr%batсh.txt && @echo on
exit

Всем привет! Я новичёк в imacros. Есть страничка

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


.
Проблема - не могу извлечь значения время ролика (значение после "Lenght").
Почему когда использую 
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:Lenght* eXTRACT=TXT
PROMPT {{!EXTRACT}}


он мне выдает  "#EANF#"
Вопрос - что делаю не так, как извлечь значения длины видео.

InfSub
Подскажите пожалуйста! По какой причине  eval вместо сложения (данные беру из файла) , допустим 80+80, выдает 8080 (при чем остальные ариф.действия нормально) ? Если прописоваю из переменных все норм, а из текста не получается.

пример

Выделить код

Код:

var win=80;
iimPlayCode('SET !DATASOURCE C:\\Users\\admin\\Desktop\\log\\itogo.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}');
h=iimGetExtract().split('\n');
alert(h);
a=win+h;
b=eval(a);
alert(b);

Кто знает как разгадывать через imacros капчи с миниатюрными изображениями "Выберите изображения где есть ..." ?

dim222
Потому что для текстовых строк (а данные взятые из datasource являются текстовыми данными), знак

+

означает конкатенацию строк (объединение двух строк в одну новую)
Для сложения чисел, записанных как текст, их нужно сначала привести к числовому типу данных, например, установив перед, переменной знак +

скрытый текст

Выделить код

Код:

var a='678',b=432;
alert(a+b); //678432
alert(+a+b); //1110


12-09-2016 22:16:13
dim222
А в вашем примере:
скрытый текст

Выделить код

Код:

h=iimGetExtract().split('\n');


Переменная h - вообще массив

InfSub
Благодарю за разъяснения! :)

Есть строка скрипта с кавычками, например

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(5)>DIV:nth-of-type(2)>DIV>A>IMG" BUTTON=1


.
При использовании этой строки при написание js, например
скрытый текст

Выделить код

Код:

macros += "здесь код указанный выше"


возникают ошибки.  Как правильно вставлять коды, имеющие в себя кавычки в строку с другими кавычками??

скрытый текст

Выделить код

Код:

macros='EVENT TYPE=CLICK SELECTOR=\"HTML>BODY>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(5)>DIV:nth-of-type(2)>DIV>A>IMG\" BUTTON=1 '


код публикуется в тегах code внутри спойлера


13-09-2016 15:38:53
dim222
удалено - избыточное цитирование

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\Users\\admin\\Desktop\\log\\itogo.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}');
var h=iimGetExtract().split('\n'), 
a = win + parseInt(h[0]);


код публикуется в тегах code внутри спойлера

13-09-2016 15:45:39
artemfedor
удалено - избыточное цитирование

скрытый текст

Выделить код

Код:

var i=1; while(i++){
if (i >3) i=1
}


код публикуется в тегах code внутри спойлера

13-09-2016 15:52:21

artemfedor пишет

что не так?

Пишите проще!

скрытый текст

Выделить код

Код:

var i=2; while(i--){
  iimPlayCode (['SET !ERRORIGNORE YES', 'TAG POS='+i+'TYPE=A ATTR=ID:group_bl_title*', 'WAIT SECONDS=3', 'BACK'].join('\n'))
}


код публикуется в тегах code внутри спойлера

InfSub

InfSub
Не подскажите лит-ру БД, с чем и как его едят (представления не имею)? Если не ошибаюсь надо поднять сервер (допустим установив DENVER), в нем запустить БД ну и макросами обращаться. В этом направлении надо копать?

dim222

Не понятно, для чего вам нужна БД и что  в вашем конкретном случае представляет БД, в качестве БД может выступать обычный txt, csv файл, также для более удобной организации данных можно использовать обычный js объект. А для того чтобы общаться с серверными БД например MYSqL, вам нужен скрипт на серверном языке.

Hamzat
Я писал, что при обращении к файл .тхт несколькими скриптами (бывало пересекались) были некорректные записи в файл. Подсказали использовать БД. Лично сам решил задачу еще одной записью в тхт, типа "open" или " close". Но хотелось бы получать данные с локальных и удаленных ПК (так сказать мониторить в одном месте) , поэтому интересуюсь куда копать.

dim222
Тогда лучше вам использовать csv файл в облаке, например гугл таблицы, там все довольно легко и пересекаться не должны. А от того что вы поднимите бд на локальной машине, вы все равно не получите доступ к нему с vps и что у вас там. Или купите хост (вам подойдет даже самый дешевый) напишите простенький скрипт php который записывает данные в файл, и уже в скрипте (imacros) делайте post запрос с данными на этот скрипт (php), опять же пересекаться не будут. Вариантов множество выберите удобный вам.

Hamzat
Спасибо большое за советы :)!

Ребят, каким образом можно  добавить еще одно альтернативное действие ? Либо игнор если ни чего не присутствует. (элемент меняется время от времени)

скрытый текст

Выделить код

Код:

var t0='SET !ERRORIGNORE YES \nSET !TIMEOUT_STEP 0 \n';

try {
iimPlayCode(t0+'TAG POS=1 TYPE=div ATTR=id:*timer* EXTRACT=HTM');
taime=iimGetExtract().match(/>(.*?)</)[1];
time=taime-3
iimPlayCode('WAIT SECONDS='+time);
} catch (e){
iimPlayCode(t0+'TAG POS=1 TYPE=input ATTR=class:*submit* EXTRACT=HTM');
time=iimGetExtract().match(/value="(\d+)/)[1];
iimPlayCode('WAIT SECONDS='+time+'\nWAIT SECONDS=1');    
}


ВОПРОС ИСЧЕРПАН!!!

Hamzat
Любой файл не позволит вам, в отличии от БД, писать в него одновременно, так что, вы пытаетесь теплое с мягким.

Доброй ночи! Нужна помощь. написал скрипт для смены прокси, но почему то он не работает, в чём может быть беда?

скрытый текст

Выделить код

Код:

for (o=1;o<=10;o++){
iimSet("p",o);
ggg = "CODE:";
ggg += "SET !DATASOURCE proxylist.txt" + "\n";
ggg += "SET !DATASOURCE_LINE{{p}}" + "\n";
ggg += "SET !EXTRACT {{!COL1}}" + "\n";
iimPlay(ggg)
b = iimGetLastExtract()
iimPlay("CODE:URL GOTO=about:config\n WAIT SECONDS=1")

Krusher пишет

в чём может быть беда?

В том, что вы не читали FAQ.
Любой iim-код, запущенный из js работает в пределах одной функции iimPlayCode(). Следующий код, будет равносилен запуску отдельного iim-скрипта.
Настройки прокси, используемые вами распространяются только на тот код, в котором вызываются.
Как юзать прокси из js, читайте в FAQ, там есть видео урок.

InfSub
При всем уважение, но скажите мне что будет когда вы одновременно пошлете два (или сколько угодно) запросов на php скрипт который записывает данные в обычный txt файл?

Hamzat пишет

InfSub
При всем уважение, но скажите мне что будет когда вы одновременно пошлете два (или сколько угодно) запросов на php скрипт который записывает данные в обычный txt файл?

Здоров Хамзат, это Макс.

Значит прорабатывал я этот вопрос на днях. Можно использовать MySQL + mini php скрипт, который выполняет те или иные действия. MySQL выгодней txt, потому что быстрее читает огромые данные, и имеет интерфейс phpmyadmin для более удобной работы.

Что делает js? Сливает XHR на формы, которые передают php данные,  а php в свою очередь контролит MySQL.

UPD:

В MySQL есть такие чудесные вещи как автоинкрименты, хранение данных ближе к оперативной памяти, что позволяет не считывать всю таблицу целиком в циклах, что свою очередь:
1. Разгружает оперативку компьютера;
2. Не заюзывает жёсткий;
3. Разгружает вычисления на JS скриптах;
4. Позволяет собирать большие системы с множественной логикой.

А далее непаханое поле. Можно писать сайтики, php которых тесно дружит с JS на клиенте.

Hamzat
Скажите, при чем тут тхт-файл, да еще и за чем-то с записью через php? Я, кажется, говорил о БД, например, о MySQL

14-09-2016 09:16:27
Deamelfuse - прав, все что им описано, позволяет делать БД. Не говоря о том, что выводить статистику (записанные данные) можно в любом удобоваримом виде, в отличии от тхт

14-09-2016 09:20:42
Разве что добавлю, что неправильное структурирование данных в БД в итоге может вызвать, со временем, дикие тормоза при выгрузке данных. Чтобы этого избежать, данные не дублируют, используют индексы и так далее, и тому подобное... Читайте Ман по MySQL или по той БД, что будете использовать.

Добрый день, на сайте рандомно появляется кнопка которую нужно нажать, использую простенькую конструкцию

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
VERSION BUILD=9030808 RECORDER=FX
TAB T=1
TAG POS=1 TYPE=BUTTON ATTR=TXT:Подтвердить<SP>свое<SP>участие
WAIT SECONDS=120


Помогите сделать чтобы был не тупо цикл, а срабатывало нажатие только когда кнопка появляется, до появления кнопки просто ожидание
Нашел вот такое
скрытый текст

Выделить код

Код:

// ждем, пока не появится нужный элемент
while(iimPlayCode(‘TAG POS= ….’)<0){}; // искомый элемент на странице
// когда найден — идем дальше
iimPlayCode('TAG POS= ….'); // ваш код


но моих познаний не хватает как правильно записать в моем случае

И еще, хотелось чтобы нажатие при появление кнопки происходило с рандомной задержкой, скажем 0-10 секунд.
Для всего макроса я примерно понимаю как прикрутить рандомное время задержки цикла, для моего видимо как-то так( но интересует задержка именно шага нажатия)

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
VERSION BUILD=9030808 RECORDER=FX
TAB T=1
TAG POS=1 TYPE=BUTTON ATTR=TXT:Подтвердить<SP>свое<SP>участие
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 0); randomNumber;")
WAIT SECONDS={{!VAR1}}


Заранее спасибо

InfSub , Deamelfuse

Тем что для хранение данных лучше бд, естественно спору нет и это вполне логично. Но у человека была немного другая задача, и исходя из этого я ему предложил использовать гугл таблицы (что довольно просто и быстро) либо купить самый дешевый хост и записывать данные через php в txt файл, при этом как я лично понял ему не нужно бд, ему нужно чтобы можно было записывать как с локальных машин так и с vps, при этом если будут одновременные запросы чтобы они не пересекались, под  эти задачи оба варианта более чем подходит, при этом я не говорю что тот же Mysql не подходит, естественно он подходит , и уже повторюсь это логично. У каждого свои заморочки если нужно быстро сделать при этом организованность txt подходит, то почему бы так не сделать!?

Доброго времени суток. Кто нибудь пользуется новой версией imacros 9.0.3? Какие есть отзывы? А то у меня случайно обновился вместе с браузером и перестали работать все скрипты, выдавал ошибку 1001, пришлось устанавливать старую.

И еще такой вопрос, кто нибудь знает, как избавиться от ошибки: "out of memory, line NaN (Error code: -991)" А то переписал один скрипт, так теперь либо зависает мозила и вылетает, либо эта ошибка. Связано с тем, что в скрипте сравниваются данные, в массив записано больше 6000 записей, и их мы сравниваем с новыми данными, и если есть соответствия, то берутся следующие данные и опять сравниваются, пока не будет найдено несоответствие... Коряво объяснил... Так вот, сравнение происходит очень быстро и браузер начинает виснуть, пробовал подтормаживать, делать 10 сек паузы, помогает частично:

скрытый текст

Выделить код

Код:

if(massiviid.indexOf(ID)==-1)//Вот здесь ищем несоответствие, массив massiviid содержит 6000 строк, ID меняет данные где-то 400 раз
{
...
}
else{razgruz++;}
if(razgruz>=20){iimPlayCode('WAIT SECOND=10');razgruz=0;}//при 20 совпадениях даем остыть системе

Sergey_yu
Нужно оптимизировать поиск, а не тормозить его wait'ом

InfSub пишет

Любой файл не позволит вам, в отличии от БД, писать в него одновременно, так что, вы пытаетесь теплое с мягким.

Так же как и любая база данных, например SQLite при начале транзакции блокирует весь файл. Тот же MySQL при типе таблиц MyISAM при вставке блокирует всю таблицу. В последнее время для простого логирования использую MongoDB, если логи нужно не только хранить а и обрабатывать анализировать, то здесь MySQL c MyISAM, если нужно это дело транслировать в сеть (например вывод логов в реальном времени со 100 ботов) то здесь стоит прикрутить Nodejs и сокеты.

Макрос извлекает текст такого формата 1,4,5,8 из страницы и сохраняет в текстовый документ в одну строку.
Сохраняет в кавычках "1,4,5,8" как одно целое.
Затем макрос должен их из документа брать поотдельности первую цифру, потом вторую и т.д.
Но это он не может сделать из-за кавычек. Если убрать кавычки всё нормально работает.

Как сделать, чтобы при сохранении кавычки уберались?
Или как это можно сделать?

скрытый текст

Выделить код

Код:

'Извлекает со страницы цифры
TAG POS=1 TYPE=SPAN ATTR=* EXTRACT=TXT
'Сохраняет в документ
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Admin\Desktop\ FILE=файл.txt
'Берёт эти цифры из этогоже документа
SET !DATASOURCE "C:\Users\Admin\Desktop\файл.txt"
'вставляет в нужные места
TAG POS={{!COL1}} ...
TAG POS={{!COL2}} ...
TAG POS={{!COL3}} ...

Быстрый поиск, пишем слово кавычки и жмем поиск по разделу

InfSub пишет

Нужно оптимизировать поиск, а не тормозить его wait'ом

Спасибо, а как его оптимизировать? В голову ничего не приходит, кроме как разложить массив на элементы и с каждым сравнивать?(Будет отнимать кучу ресурсов)

Алим
Перед сохранением замените запятые на [EXTRACT]

14-09-2016 22:54:00
Sergey_yu
Создайте массив/объект, ключами которого будут значения вашего массива. Этим вы отсекете все лишние элементы, без затрат на поиск.

InfSub
Заменил EXTRACT на TXT и теперь сохраняет без кавычек в документ

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\Admin\Desktop\ FILE=файл.txt

TAG POS=1 TYPE=SPAN ATTR=* EXTRACT=TXT
SAVEAS TYPE=TXT FOLDER=C:\Users\Admin\Desktop\ FILE=файл.txt

Алим
Алим, вы читать умеете? При чем тут ТХТ?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/,/g,'[EXTRACT]')")

InfSub пишет

Создайте массив/объект, ключами которого будут значения вашего массива. Этим вы отсекете все лишние элементы, без затрат на поиск.

Полчаса ломал голову, так и не понял... Создать новый массив и переписать в него данные старого массива...?

Подскажите пожалуйста.
У меня на странице выдаёт цифры и между ними может быть запятые, слеш, знак вопроса 2/3?7?9
а иногда просто цифры, иногда везде слеш.

Как можно сделать так, чтобы эти цифры сохранялись в документ через запятую
(например так "1","2","3"), в не зависимости, что будет между цифрами или не будет ничего вовсе?

InfSub

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/,/g,'[EXTRACT]')")


так он сохраняет в документ "1","2","3" и подходит, когда только запятые.
А как сделать так, как я выше описал?

Алим пишет

Используйте поиск цифр с помощью регулярных выражений:

скрытый текст

Выделить код

Код:

var Cifra = '2/3?7?9';
var num=Cifra.search(/\d/);//так ищем одинарную цифру /\d\d/-две и тд.

Алим пишет

подходит, когда только запятые.

Алим, прочтите свое сообщение выше:

Алим пишет

Макрос извлекает текст такого формата 1,4,5,8

где там хоть слово об этом:

Алим пишет

У меня на странице выдаёт цифры и между ними может быть запятые, слеш, знак вопроса 2/3?7?9

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=* EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\d+/g).join('[EXTRACT]')")


Sergey_yu
Что даст, в данном контексте, метод

.search()

? Скажет, что в переменной есть цифра?! А за чем? Вы задачу читали?

InfSub пишет

Что даст, в данном контексте, метод .search() ? Скажет, что в переменной есть цифра?! А за чем? Вы задачу читали?

Покажет расположение цифры, и соответственно можно ее извлечь, как вариант

InfSub
Спасибо, работает.

А вот бывает, что на странице выдаёт только цифры без лишних символов, например 1234.
В этом случае, сохраняет в документ так "1234".

Как сделать, чтобы макрос сохранял их через запятые?

Вроде разобрался сам

скрытый текст

Выделить код

Код:

SET !EXTRACT EVAL("'{{!EXTRACT}}'.split('')")

Sergey_yu
Ок, цифр несколько, что дальше, вы получаете только расположение первой... Зачем изобретать велосипед?

15-09-2016 20:17:24

Алим пишет

Вроде разобрался сам

Если цифры всегда меньше 10, то просто уберите + из моего кода после \d

InfSub пишет

Создайте массив/объект, ключами которого будут значения вашего массива. Этим вы отсекете все лишние элементы, без затрат на поиск.

Можете привести какой нибудь пример?

Sergey_yu
например, так:

скрытый текст

Выделить код

Код:

var a=['sdfg','dfvh',uyfv','sdfg'],b=[],i=a.length;
while(i--){
    b[a[i]]='';
};

Перед тем как нажать на объект на странице, требует указать FRAME NAME="разные буквы и цифры"
Если просто поставить звёздочку *, то невыходит.
Приходится указывать так FRAME NAME="*0*" и т.д. в один столбик.

Можно ли это как то подругому сделать в iim?

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !TIMEOUT 1
FRAME NAME="*0*"
FRAME NAME="*1*"
FRAME NAME="*2*"
FRAME NAME="*3*"
FRAME NAME="*4*"
FRAME NAME="*5*"
FRAME NAME="*6*"
FRAME NAME="*7*"
FRAME NAME="*8*"
FRAME NAME="*9*"
FRAME NAME="*a*"
FRAME NAME="*b*"
FRAME NAME="*c*"
FRAME NAME="*x*"

Появляется на странице новая рекапча, а макрос всегда сохраняет старую рекапчу.
Это нужно обнулить скрин? Но как это сделать?

скрытый текст

Выделить код

Код:

... CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


Знаю как обнулить экстракт или переменную, но как скрин обнулить?

скрытый текст

Выделить код

Код:

SET !EXTRACT NULL
SET переменная NULL

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

Здравствуйте! не могу решить проблему с поиском текста в сообщении точнее наверно как впихнуть в переменную  var macro; проверку на наличие слово, слов
иначе получается что проверка происходит только в самом начале

скрытый текст

Выделить код

Код:

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';  
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"; 
for (a = 5; a <10; a++){
if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"Привет"')>0){;
iimPlayCode('BACK');
}
var extractedtext=iimGetLastExtract()
iimSet("a",a); 
iimPlay(macro);
}

volchsek
разбейте макрос на части,  до и после проверки,  в середину,  вставьте проверку

скрытый текст

Выделить код

Код:

iimPlayCode(macro1) ;
if(/*проверка условия*/) {
    //если слово найдено
    iimPlayCode(macro2) ;
} else{
    //если не найдено
    iimPlayCode(macro3) ;
} ;

InfSub спасибо, еще у меня по моему текст не меняется

volchsek пишет

еще у меня по моему текст не меняется

опишите более подробно

InfSub
пробовал разбить макрос на части не получилось!

скрытый текст

Выделить код

Код:

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';  
if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"box_layout"')>0){;
    iimPlayCode('BACK') ;
} else{
    //если не найдено
    iimPlayCode(macro2) ;
} ;
var macro2;
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"; 
for (a = 5; a <10; a++){
var extractedtext=iimGetLastExtract()
iimSet("a",a); 
iimPlay(macro);
}

volchsek
что за точка с запятой в строке после if?

18-09-2016 21:03:23
и голову включите,  где у вас выполнение кода,  записанного в macro?
где код macro2?
почему macro2 объявлена после вызова?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg
WAIT SECONDS=2
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post


код публикуется в тегах code, внутри спойлера
Парни, подскажите - как этот же код записать через js, только так, чтобы он работал? У меня пока не получается. Не срабатывает TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg, хотя в iim файле работает. Может ее надо как то записать через events? Но как?

InfSub

artemfedor
приведите пример НЕ работающего кода,  который у вас получился

скрытый текст

Выделить код

Код:

iimPlayCode('EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0');
iimPlayCode("TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg");
iimPlayCode("WAIT SECONDS=2");
iimPlayCode("TAG POS=1 TYPE=BUTTON ATTR=ID:send_post");


скрытый текст

Выделить код

Код:

var test;
test ="CODE:";
test +='EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0'+"\n";
test +="TAG POS=1 TYPE=INPUT:FILE ATTR=NAME:photo CONTENT=C:\13.jpg"+"\n";
test +="WAIT SECONDS=2"+"\n";
test +="TAG POS=1 TYPE=BUTTON ATTR=ID:send_post"+"\n";
iimPlay(test)


код публикуется в тегах code, внутри спойлера

Не знаю в чем проблема, но в первом варианте не загружается картинка, все остальные команды работают (через аймакрос файл тоже все работает), во втором - пишет - ошибка в строке 2.

InfSub

artemfedor
экранировать обратный слеш нужно в пути к файлу
C:

\\

13.jpg

InfSub пишет

artemfedor
экранировать обратный слеш нужно в пути к файлу
C:

\\

13.jpg

спасибо. мелочь, а упустил...

InfSub
Так работает но else не срабатывает (то есть если пусто)

скрытый текст

Выделить код

Код:

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'; 
iimPlay(macro);
if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"Прив"')>0){ 
    iimPlayCode('BACK');
      iimPlayCode(macro) ;
} 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
повторяю еще раз:

InfSub пишет

где код macro2?
почему macro2 объявлена после вызова?

1. Вы объявили var macro2, но далее у вас код для macro, ну не уже ли - так сложно собственные опечатки исправить?
2. Правила работы с переменными знаете? как вы хотите вызвать переменную, если объявили ее и передали значение (см. выше) после вызова?

19-09-2016 17:54:09

это что за бред?

iimPlay(macro);

if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"Прив"')>0){
    iimPlayCode('BACK');
     

iimPlayCode(macro) ;


если вы вызываете macro до ветвления по условию, зачем вы вызываете его же еще и внутри ветвления?
да еще и через вызов из разных функций... разницу между

iimPlay()

и

iimPlayCode()

не знаем?

19-09-2016 17:57:23
я же привел пример, там 3 макроса:
первый - до условия (до if)
второй и третий - варианты ветвления по условию
четвертый - опущен, так как идет после ветвления по условию

InfSub
если я ставлю код var macro2;  ниже  macro; то воспроизводится - macro2;

volchsek
RTFM по основам js

InfSub
что такое RTFM даже спрашивать не буду

Ребят! Кто разбирается.... переделать на vbs

рабочий пример через cmd получить размер файла и записать его в txt файл

Выделить код

Код:

@echo off & setlocal enableextensions
@echo off 
set dr=C:\test\
set fl=test.txt
@set Arg1=%dr%%fl%
@for %%i in (%Arg1%) do (set /a size1=%%~Zi)
echo %size1%> %dr%batсh.txt && @echo on
exit

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
перечитайте мое сообщение несколько раз, пока не поймете его полностью, разница между iimPlayCode() и iimPlay() - это самое меньшее из того, что вам нужно было исправить
разберитесь теперь с macro2 и его отсутствующим содержимым
воспользуйтесь, например функцией alert(macro2);

Алим пишет

Макрос извлекает текст такого формата 1,4,5,8 из страницы и сохраняет в текстовый документ в одну строку.
Сохраняет в кавычках "1,4,5,8" как одно целое.
Затем макрос должен их из документа брать поотдельности первую цифру, потом вторую и т.д.
Но это он не может сделать из-за кавычек. Если убрать кавычки всё нормально работает.

Как сделать, чтобы при сохранении кавычки уберались?
Или как это можно сделать?

split() - решит все проблемы без изобретания велосипеда

InfSub
я уже пробовал понять как вы объяснили но ни чего не работает

Всем привет. Полный ноль в кодинге. Лох. Но всё же нужно бывает превыше могу-посему спасайте комрады.
Задача такая: есть список в .txt файле, по строкам ссылки-нужно что бы он брал по одной и заходил. Вот что накидал.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE C:\iMacros\Macros\Обучение\zapros.txt
ADD !EXTRACT {{!COL1}}
URL GOTO={{!COL1}}


Пишет ошибку. Выручайте!

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

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

Mur0veY пишет

Пишет ошибку. Выручайте!

может вы приведете код ошибки?
код верный, только не понятно, на кой ляд нужна вторая строка, да еще и в таком варианте (ADD вместо SET)

20-09-2016 23:40:53
volchsek
вы считаете, что скрипт выполняется снизу вверх?

InfSub
Вот что пишет

Aborted: User pressed Stop button in iMacros sidebar., line: 1 (Error code: -101)

Тупо зависает на первой строке и стоит. Стопарю-пишет что выше.

Mur0veY
версия iMacros и FF?

InfSub
я ни чего не считаю сверху вниз не пашет

InfSub пишет

Mur0veYверсия iMacros и FF?

48.0.2 FF
iMacros for Firefox 9.0.3 :|:|

volchsek
уже, лучше

но:
1. как вы хотите получить результат выполнения кода, до его выполнения?:

volchsek пишет

скрытый текст

Выделить код

Код:

var extractedtext=iimGetLastExtract()


2. включаем голову, уже не однократно говорилось, каждый запуск функции iimPlay() или iimPlayCode() - равносилен запуску отдельного макроса (iim-скрипта)
соответственно, что такое в вашем коде {{!VAR3}} ? mоткуда оно тут нарисовалось? Где вставка данных из переменной extractedtext в код второго макроса?

volchsek пишет

скрытый текст

Выделить код

Код:

macro2 +=  "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT=Здравствуйте,<SP>{{!VAR3}}!" + "\n";


20-09-2016 23:54:19

Mur0veY пишет

iMacros for Firefox 9.0.3

ставьте последнюю 8.х.х версию (ссылка на все версии есть в FAQ), 9 - сырая и не работает с русскими именами папок и файлов

20-09-2016 23:57:23

volchsek пишет

я ни чего не считаю сверху вниз не пашет

тогда как вы пытаетесь получить результат до выполнения кода?
как можно получить результат iimGetExtract() до того как вы выполнили iimPlay() ?

InfSub
Всё заработало!
Теперь шаг номер два.
в файле 300+ ссылок.
Нужно что бы он открывал их одну за одной в цикле.
Не сильно нагло ? :)

Mur0veY
так запустите цикл, кнопка "Воспр. (Цикл)" предварительно установив количество циклов (строк в файле) в окне "Макс:"

InfSub пишет

Mur0veYтак запустите цикл, кнопка "Воспр. (Цикл)" предварительно установив количество циклов (строк в файле) в окне "Макс:"

Он одну и ту же ссылку гоняет тогда по кругу.

InfSub
вы мне скажите как нужно правильно, а никак у меня
я вставил вместо var3 переменную extractedtext но куда саму переменную вставить не знаю

Mur0veY
Значит у вас в коде где-то указано - брать из первой (или иной) строки
принудительно указывать номер строки требовалось только в старых версиях или при запуске из js
указать строку можно так:

для iim-скрипта

Выделить код

Код:

CMDLINE !DATASOURCE C:\iMacros\Macros\Обучение\zapros.txt
SET !DATASOURCE_LINE {{!LOOP}}
URL GOTO={{!COL1}}

InfSub
удалено, избыточное цитирование
Бро от души-пока что не дышу на FF. Всё работает! Кармы тебе в авоську! :D

InfSub

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 спасибо за помощь!!!

Уважаемые. Можно ли вызывать один .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);}}


код публикуется в тегах code внутри спойлера

как его переписать в IIM.

прочитал но не понял как цикл делать.

подскажите пожалуйста.

InfSub

stalker50
зачем делать из мерседеса - запорожец?

как сделать такое
проверяем на условие
если  нет определенного слова ждем 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){

}
}

Всем привет. Есть страница-нужно промотать(может и не нужно) и оставить комментарий в окне. Комментарии будут браться из файла. 
Как обращаться к файлу и брать от туда строку мне известно, как написать тоже. 
Хелп братцы!
Накорябал кое-как.

При запросе ко второму файлу выдает ошибку и останавливает программу.  Пишет

Error code: -930

Помогите!

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE C:\Users\1\Documents\iMacros\Macros\Обучение\file.txt
SET !EXTRACT {{!COL1}}
URL GOTO={{!COL1}}
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 10); randomNumber;")
'waits 1 to 10 seconds
WAIT SECONDS={{!VAR1}}
CLICK X=600 Y=350
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*20 + 190); randomNumber;")
WAIT SECONDS={{!VAR1}}
CMDLINE !DATASOURCE C:\Users\1\Documents\iMacros\Macros\Обучение\file11.txt
SET !EXTRACT {{!COL1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:commentPostTxt CONTENT={{!COL1}}
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 20); randomNumber;")
WAIT SECONDS={{!VAR1}}
TAG POS=1 TYPE=BUTTON ATTR=ID:commentPostBTN
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 20); randomNumber;")
WAIT SECONDS={{!VAR1}}
TAG POS=1 TYPE=IMG ATTR=ID:likeLink
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 20); randomNumber;")
WAIT SECONDS={{!VAR1}}

InfSub
как мне сделать так что бы при нахождении слова "сообщения"
цикл while прерывался и выполнялось что идет ниже (другой код).....

скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"пр"')>0){ 
var d = 0;
while (d < 5){
if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"Сообщения"')>0){
}
iimPlayCode('WAIT SECONDS=1');
d++;
}
}

volchsek
на форуме - полно аналогичных задач, не забывайте пользоваться поиском!

скрытый текст

Выделить код

Код:

for(var i=1;i<=10;i++){
    if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"искомый текст"')>0){break;};
    iimPlayCode((i<10)?'WAIT SECONDS=1':'REFRESH');
};

22-09-2016 23:30:04
Mur0veY
wiki.imacros.net/Error_and_Return_Codes

-930     File not found (Файл не найден)

22-09-2016 23:37:15
Mur0veY
Если файл, все же существует, попробуйте заменить CMDLINE на SET
также, удалите полные пути до TXT файлов из set !datasource, оставив только имена файлов, сами же TXT файлы, перенесите в папку iMacros\Datasource

Благодарю InfSub :cool:

Error code: -1450

Выдает такую штуку на 14й строке, когда на сайте трабла и комент не может быть написан. Всплывает окно об ошибке. Скрипт тормозиться понятное дело. Как сделать так что бы он  игнорировал все ошибки  и выполнял следующее действие либо начинал цикл заново?

скрытый текст

Выделить код

Код:

SET !DATASOURCE file.txt
SET !EXTRACT {{!COL1}}
URL GOTO={{!COL1}}
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 10); randomNumber;")
'waits 1 to 10 seconds
WAIT SECONDS={{!VAR1}}
CLICK X=600 Y=350
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*20 + 290); randomNumber;")
WAIT SECONDS={{!VAR1}}
SET !DATASOURCE file1.txt
SET !EXTRACT {{!COL1}}
TAG POS=1 TYPE=TEXTAREA ATTR=ID:commentPostTxt CONTENT={{!COL1}}
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 15); randomNumber;")
WAIT SECONDS={{!VAR1}}
TAG POS=1 TYPE=BUTTON ATTR=ID:commentPostBTN
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 15); randomNumber;")
WAIT SECONDS={{!VAR1}}
TAG POS=1 TYPE=IMG ATTR=ID:likeLink
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 10); randomNumber;")
WAIT SECONDS={{!VAR1}}

Mur0veY
откройте FAQ по iMacros на нашем форуме
конкретно, раздел Модификаторы.

Добрый день.


прочитал что можно сделать бат файл для автозапуска макросов.

в бат файле прописал следующее.

скрытый текст

Выделить код

Код:

start "" "C:\Program Files\Mozilla Firefox\firefox.exe" 
http://run.imacros.net/?m=#продлить.iim


файл запускается открывается фокс.  но макрос не запускается.

путь к макросу следующий    C:\iMacros\Macros\продлить.iim

как все сделать правильно?

и еще один вопрос можно ли таким способом запустить JS файл. или нужно его запускать через Iim?

stalker50
Конечно можно. Файл переименуй на анг.язык

к скрипту пропиши так

Выделить код

Код:

imacros://run/?m=tvoi.js

dim222

изменил на английский получилось следующее

скрытый текст

Выделить код

Код:

start "" "C:\Program Files\Mozilla Firefox\firefox.exe" 
imacros://run/?m=Izmen.js


файл скопировал в корневой коталог  C:\iMacros\Macros

скрипт не открывается при старте фаерфокса.  в чем может быть проблема?

так

Выделить код

Код:

START C:\Program Files\Mozilla Firefox\firefox.exe imacros://run/?m=Izmen.js


можно в .vbs

Выделить код

Код:

Dim WshShell
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run("taskkill /F /IM Firefox.exe"), 0, false
WScript.Sleep 10000
WshShell.Run """C:\Program Files\Mozilla Firefox\firefox.exe""imacros://run/?m=Izmen.js" , 0, false
WScript.Sleep 3000
Set WshShell=Nothing

dim222

вот нашел в интернете.

скрытый текст

Выделить код

Код:

cd "C:\Program Files\Mozilla Firefox" 

start firefox imacros://run/?m=#2.iim


таким образом все запускается. Но через раз иногда выдает ошибки

stalker50
Посмотри в опциях макроса где расположена папка.
А версия FF и Imacros какая?

dim222

Блин понять не могу ...

если через

bat прописать

скрытый текст

Выделить код

Код:

cd "C:\Program Files\Mozilla Firefox" 

start firefox imacros://run/?m=#2.iim


то так запускается макрос.
меняем на JS  не запускается не находит...
но если внутри 2.iim пишешь открытие другого макроса то выдает ошибку что не найден данный макрос...
URL GOTO=imacros://run/?m=#Izmen.js

не могу понять проблемму...

версия фаерфокса 49.0.1 

и макроса VERSION BUILD=9030808 RECORDER=FX

stalker50
Здесь уже не сколько раз обсуждалось о неккоректной работе данной версии. Откати назад . В FAQ есть все версии.

что это за ошибка ? после нескольких раз прохода кода вылезает

RuntimeError: Source does not match to TXT='Отправить', line: 2 (Error code: -926)

скрытый текст

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"Отправить"')>0){ 
iimPlayCode('URL GOTO=https://m.ok.ru/dk?st.cmd=userFriends&tkn=8565&_prevCmd=userMsgs&_aid=leftMenuClick');
}

volchsek Источник не совпадает с TXT = , линия 2

замени ковычки на *

Выделить код

Код:

if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:*Отправить*')>0)

dim222
Спасибо!

Предположим при открытии страницы по ссылке у меня открывается видео ролик. Под ним указана длинна видео. Можно ли как то забирать оттуда информацию о длине ролика и вставлять в файл для ожидание. Или как то выставить паузу до окончания ролика. Спасибо! :beer:

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

InfSub
Послать меня на англоязычный ресурс. Как негуманно с вашей стороны. :blush:

Mur0veY
Может вы для начала прочтете все предложение, а не первые пару слов?
и просто для интереса - заглянете ко мне в подпись, если уж Вам трудно посмотреть параллельные темы раздела iMacros на данном форуме

InfSub
по какой причине alert показывает как надо, а сохранить в тхт не хотит? Ругается на SET (wrong format of SET command, line 1 (Error code: -910))
При чем другие элементы сохраняет.

а эту не в какую

Выделить код

Код:

var papkalog='C:\\Users\\admin\\Desktop\\log';

iimPlayCode('TAG POS=1 TYPE=STRONG ATTR=TXT:* EXTRACT=htm');
txt=iimGetExtract().match(/>(.*?)</)[1];
alert(txt)
iimPlayCode('SET !EXTRACT '+txt+' \nSAVEAS TYPE=EXTRACT  FOLDER='+papkalog+' FILE=test.txt');

dim222
значит в тексте - есть пробел и текст должен быть обрамлен двойными кавычками:

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT "'+txt+'" \nSAVEAS TYPE=EXTRACT  FOLDER='+papkalog+' FILE=test.txt');

InfSub
Спасибо большое!:)

Здравствуйте, подскажите как к переменной добавить цифру по номеру цикла?

скрытый текст

Выделить код

Код:

for(ku=0; ku<=30; ku++){ 
if(a == c){


тоесть буква а должна меняться с циклом на а0, а1, .......а9 и так далее. Спасибо.

karginaolga
не проще ли сделать массив и обращаться к его элементам из цикла? например так: a[ku]

InfSub
Спасибо за внимание, но этот вариант не подходит, да если бы я извлекала a=iimGetLastExtract(); то можно было-бы сделать так:

скрытый текст

Выделить код

Код:

a=iimGetLastExtract();
a=а.split(','); // или еще какой разделитель
for(ku=0; ku<=30; ku++){ 
if(a[ku] == c){


но у меня  уже заданы  значения а0, а1, а2
вот что я хочу завернуть  в цикл
скрытый текст

Выделить код

Код:

for(ku=0; ku<=19; ku++){ 
for(i=0; i<=19; i++){ 
if(src тут цифра от ku  == src тут цифра от i ){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id тут цифра от ku); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id тут цифра от i);}
}}


src   считайте буквой а - и она  цифра
скрипт для  нажатия двух одинаковых картинок, он у меня работает но  растянула  я  его на 250 строк

Всем привет!
   Помогите решить проблемку. В скрипте имеется ссылка, вот такого вида:

скрытый текст

Выделить код

Код:

content.document.getElementsByTagName('a')[117].click()


Эта ссылка динамическая, т.е., она может быть на сайте, а может и отсутствовать. Когда она есть, всё происходит как надо, а когда нет, то скрипт выдаёт ошибку и останавливается. Можно ли как-то обойти этот затор, ну, что-то наподобие: SET !ERRORIGNORE YES, только для данной, конкретной конструкции.

Спасибо !!!

stivenson

скрытый текст

Выделить код

Код:

try{
  // тут твой код который может вызвать ошибку
}catch(e){
  // тут альтернативное действие, ну или оставь пустым
}

dim222 пишет

stivenson

скрытый текст

Выделить код

Код:

try{
  // тут твой код который может вызвать ошибку
}catch(e){
  // тут альтернативное действие, ну или оставь пустым
}

Да, реально помогло. Огромное спасибо !!!

stivenson
сдесь весь форум обсыпан этим  кодом
козла капуста не исправит

InfSub
Я всетаки  прошу помощи

karginaolga

скрытый текст

Выделить код

Код:

for(ku=0; ku<=19; ku++){ 
for(i=0; i<=19; i++){ 
if(src [ku]  == src [i] ){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id [ku]); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id [ i]);}
}}

karginaolga пишет

удалено, избыточное цитирование
тоесть буква а должна меняться с циклом на а0, а1, .......а9 и так далее. Спасибо.

скрытый текст

Выделить код

Код:

for(ku=0; ku<=30; ku++){ 

a = a + 1

if(a == c){


InfSub

Добрый вечер!
Вопрос следующий - реально ли с помощью imacros организовать переборку аккаунтов с помощью подменой куков?
Если да, то может кто то поделиться кодом?

dim222
зачем давать  не верные советы, лучше промолчим, так помоему указано в вашей подписи.
Вы внимательно читали мой пост??
нету никаких экстрактов
подпись измени  что-бы   не выступал  идиотом

Здравствуйте.

   Необходимо выполнить следующую задачу, через java-файл, если такое возможно конечно же. Подключиться к определённому текстовому файлу со множеством имеющихся в нём строк и по заданному слову (или словосочетанию), вытащить все строки целиком, в которых имеется данное слово (или словосочетание) с последующим сохранением их в другой текстовый файл. 

Заранее, спасибо !

stivenson
Гугл cmd, команда findstr

28-09-2016 20:53:43
karginaolga
задам вопрос повторно, вариант с массивом не подходит по религиозным соображениям? :)
если да, то: man eval

InfSub
да подходит но не правильно работает
собрала 4 массива

karginaolga
что именно не правильно работает?
приведите пример

InfSub
Ну вот  посмотрите:

скрытый текст

Выделить код

Код:

function puzzle(){  iimDisplay('Выбираем 2 одинаковых картинки');
iimPlayCode('TAG POS=1 TYPE=A ATTR=ID:startGameButton'); weit(7);
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im=iimGetExtract(); im=im.split('"></div>');
im=im[0].split('"'); id0=im[7]; src0=im[13].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im1=iimGetExtract(); im1=im1.split('"></div>');
im1=im1[1].split('"'); id1=im1[3]; src1=im1[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im2=iimGetExtract(); im2=im2.split('"></div>');
im2=im2[2].split('"'); id2=im2[3]; src2=im2[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im3=iimGetExtract(); im3=im3.split('"></div>');
im3=im3[3].split('"'); id3=im3[3]; src3=im3[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im4=iimGetExtract(); im4=im4.split('"></div>');
im4=im4[4].split('"'); id4=im4[3]; src4=im4[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im5=iimGetExtract(); im5=im5.split('"></div>');
im5=im5[5].split('"'); id5=im5[3]; src5=im5[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im6=iimGetExtract(); im6=im6.split('"></div>');
im6=im6[6].split('"'); id6=im6[3]; src6=im6[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im7=iimGetExtract(); im7=im7.split('"></div>');
im7=im7[7].split('"'); id7=im7[3]; src7=im7[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im8=iimGetExtract(); im8=im8.split('"></div>');
im8=im8[8].split('"'); id8=im8[3]; src8=im8[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im9=iimGetExtract(); im9=im9.split('"></div>');
im9=im9[9].split('"'); id9=im9[3]; src9=im9[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im10=iimGetExtract(); im10=im10.split('"></div>');
im10=im10[10].split('"'); id10=im10[3]; src10=im10[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im11=iimGetExtract(); im11=im11.split('"></div>');
im11=im11[11].split('"'); id11=im11[3]; src11=im11[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im12=iimGetExtract(); im12=im12.split('"></div>');
im12=im12[12].split('"'); id12=im12[3]; src12=im12[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im13=iimGetExtract(); im13=im13.split('"></div>');
im13=im13[13].split('"'); id13=im13[3]; src13=im13[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im14=iimGetExtract(); im14=im14.split('"></div>');
im14=im14[14].split('"'); id14=im14[3]; src14=im14[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im15=iimGetExtract(); im15=im15.split('"></div>');
im15=im15[15].split('"'); id15=im15[3]; src15=im15[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im16=iimGetExtract(); im16=im16.split('"></div>');
im16=im16[16].split('"'); id16=im16[3]; src16=im16[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im17=iimGetExtract(); im17=im17.split('"></div>');
im17=im17[17].split('"'); id17=im17[3]; src17=im17[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im18=iimGetExtract(); im18=im18.split('"></div>');
im18=im18[18].split('"'); id18=im18[3]; src18=im18[9].match(/\d+/g).join('');
iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM'); im19=iimGetExtract(); im19=im19.split('"></div>');
im19=im19[19].split('"'); id19=im19[3]; src19=im19[9].match(/\d+/g).join('');
//
if(src0 == src1){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1);}
if(src0 == src2){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2);}
if(src0 == src3){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3);}
if(src0 == src4){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4);}
if(src0 == src5){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5);}
if(src0 == src6){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6);}
if(src0 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src0 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src0 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src0 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src0 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src0 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src0 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src0 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src0 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src0 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src0 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src0 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src0 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id0); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src1 == src2){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2);}
if(src1 == src3){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3);}
if(src1 == src4){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4);}
if(src1 == src5){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5);}
if(src1 == src6){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6);}
if(src1 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src1 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src1 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src1 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src1 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src1 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src1 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src1 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src1 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src1 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src1 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src1 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src1 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id1); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src2 == src3){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3);}
if(src2 == src4){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4);}
if(src2 == src5){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5);}
if(src2 == src6){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6);}
if(src2 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src2 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src2 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src2 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src2 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src2 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src2 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src2 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src2 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src2 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src2 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src2 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src2 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id2); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src3 == src4){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4);}
if(src3 == src5){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5);}
if(src3 == src6){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6);}
if(src3 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src3 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src3 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src3 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src3 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src3 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src3 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src3 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src3 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src3 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src3 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src3 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src3 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id3); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src4 == src5){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5);}
if(src4 == src6){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6);}
if(src4 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src4 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src4 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src4 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src4 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src4 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src4 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src4 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src4 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src4 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src4 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src4 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src4 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id4); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src5 == src6){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6);}
if(src5 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src5 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src5 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src5 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src5 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src5 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src5 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src5 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src5 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src5 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src5 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src5 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src5 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id5); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src6 == src7){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7);}
if(src6 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src6 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src6 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src6 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src6 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src6 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src6 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src6 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src6 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src6 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src6 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src6 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id6); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src7 == src8){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8);}
if(src7 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src7 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src7 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src7 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src7 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src7 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src7 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src7 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src7 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src7 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src7 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id7); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src8 == src9){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9);}
if(src8 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src8 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src8 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src8 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src8 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src8 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src8 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src8 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src8 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src8 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id8); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src9 == src10){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10);}
if(src9 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src9 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src9 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src9 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src9 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src9 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src9 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src9 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src9 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id9); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src10 == src11){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11);}
if(src10 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src10 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src10 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src10 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src10 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src10 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src10 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src10 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id10); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src11 == src12){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12);}
if(src11 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src11 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src11 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src11 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src11 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src11 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src11 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id11); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src12 == src13){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13);}
if(src12 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src12 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src12 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src12 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src12 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src12 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id12); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src13 == src14){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14);}
if(src13 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src13 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src13 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src13 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src13 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id13); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src14 == src15){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15);}
if(src14 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src14 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src14 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src14 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id14); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src15 == src16){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16);}
if(src15 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src15 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src15 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id15); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src16 == src17){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17);}
if(src16 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src16 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id16); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src17 == src18){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18);}
if(src17 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id17); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
//
if(src18 == src19){ iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id18); iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:'+id19);}
}

         /***-= Обрабатываем флеш капчу =-***/
function abbyy(){  iimDisplay('Обрабатываем флеш капчу');
    iimPlayCode('TAB OPEN\nTAB T=2\nURL GOTO="'+kap+'"');
for(skz=0; skz<=8; skz++){
    iimPlayCode('OCR'); weit(10);
    iimPlayCode('URL GOTO=file:///'+Path+'captcha.txt');
    if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=h1 ATTR=id:errorTitleText&&TXT:Файл*не*найден')!=-1){
    if(iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=h1 ATTR=id:errorTitleText&&TXT:Файл*не*найден')<0) break;}}
    iimPlayCode('TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT');
    a=iimGetLastExtract();
       if(a.lastIndex

karginaolga
что возвращает код:

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=SECTION ATTR=ID:board EXTRACT=HTM');

28-09-2016 22:39:56
или дайте урл, где можно запустить данный код

InfSub
Ну вот  посмотрите:
удалено, дубликат предыдущего поста

InfSub

karginaolga
зачем вы продублировали еще раз код опубликованный постом выше?
я спросил, что возвращает EXTRACT
к тому же, даже если не разбирать и не оптимизировать ваш код, ваша проблема решается обычной заменой переменных на массив

InfSub
можно в личку...  я вас очень прошу
не отказывайте

добрый день.

прошу посмотрите в чем может быть ошибка.   есть 33.txt

скрытый текст

Выделить код

Код:

ferst
2
3
4


есть скрипт
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !DATASOURCE C:\iMacros\Macros\33.txt
SET !DATASOURCE_COLUMNS 10
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}


URL GOTO=https://www.google.kz
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:tsf ATTR=ID:lst-ib CONTENT={{!COL1}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON FORM=ID:tsf ATTR=NAME:btnG
WAIT SECONDS=3
URL GOTO=https://www.google.kz
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:tsf ATTR=ID:lst-ib CONTENT={{!COL2}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON FORM=ID:tsf ATTR=NAME:btnG
WAIT SECONDS=3
URL GOTO=https://www.google.kz
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:tsf ATTR=ID:lst-ib CONTENT={{!COL3}}
WAIT SECONDS=1
TAG POS=1 TYPE=BUTTON FORM=ID:tsf ATTR=NAME:btnG
WAIT SECONDS=3


код публикуется в тегах code внутри спойлера
в первый раз все нормально,  выбирает то что в первой строке со второй строки ошибка     undefined

и ещё один вопрос

если в строке через пробел несколько параметров и таких строк много  как вытягивать эти параметры  может быть какиенить символы поставить для разделения.  как это отразить в коде?

InfSub

stalker50
1. прочтите FAQ по iMacros на нашем форуме, конкретно - раздел модификаторы и удалите все лишнее из кода.
2. отключите игнорирование ошибок и iMacros сам даст ответ на ваш вопрос.
3. запятая является разделителем столбцов в файле, но если вы хотите получить данные, как из строк, так и из столбцов одновременно, но при этом, чтобы данные из строки выполняли ту же функцию, что и следующая строка из файла, то не занимайтесь ерундой и отформатируйте ваш файл так, чтобы каждый параметр был на новой строке

Кто напишет макрос комментариев по группам ВК ? В личку цену и сроки исполнения...

скрытый текст
Всем привет.
Подскажите как еще можно переключать вкладки на js кроме этого варианта?

Выделить код

Код:

iimPlayCode('TAB T=1');
iimPlayCode('TAB T=3');
iimPlayCode('TAB T=3');


Решил свою проблему через T=0 и T=-1.

Tungen
прочтите FAQ и подобных вопросов, будет на порядок меньше

Привет! Ребята, подскажите как временную привязку привязать к ява-скрипту? В факе искал, да так что-то ничего толком и не нашол там. А ситуация такова:
есть кран, который лимитно выдает сатоши. Начиная с каждого получаса и потом минут 5-6 и после появляется надпись такая:

скрытый текст
2hEuQ.png

то есть до ближайшего получаса, например до 15:30 или до 12:00 или до 23:00  или 14:30 входить не надо на данный кран. Но чтоб скрипт понимал что ему до получасового временного отрезка не надо на этот кран ходить, надо его как-то научить. То есть привязать ко времени компьтера.
Подкиньте идею как такое реализовать? Может кто уже в курсе дела или занимался подобными извращениями?

dvitkovs
может почитаете про функцию date() ?

dvitkovs пишет

чтоб скрипт понимал что ему до получасового временного отрезка не надо на этот кран ходить, надо его как-то научить. То есть привязать ко времени компьтера.
Подкиньте идею как такое реализовать?

привязать ко времени компьтера

Выделить код

Код:

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


полная дата " new Date()"

Выделить код

Код:

// текущая дата
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, благодарю! :)

В макросе я указываю в двух переменных - путь и - имя файла
чтобы потом их вставить в этот код

скрытый текст

Выделить код

Код:

SAVEAS TYPE=EXTRACT FOLDER=C:\ FILE=pass.txt


Как можно из одной переменной, в которм указан путь и имя файла,
разделить с помощью эвент и указать в этом же коде?

Например как вот это сделать?

скрытый текст

Выделить код

Код:

SET файл D:\новая папка\новый сайт\архив.txt

эвент разделяющий путь и имя файла

TAG POS=1 TYPE=SPAN ATTR=TXT:Входящие EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER={{путь}} FILE={{имя}}

Здравствуйте, уважаемые форумчане! Столкнулся с проблемой, которую не могу решить.
С помощью функции 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();

Нашел решение, оно оказалось очень простым :)

скрытый текст

Выделить код

Код:

p = Number(iimGetExtract());

Следующий вопрос :)
Как сделать чтоб выдавалось сообщение (alert) при нажатии на кнопку "Остановить" в iMacros?

Anders0n
написать свой плагин, вместо iMacros

InfSub пишет

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 пишет

Следующий вопрос :)
Как сделать чтоб выдавалось сообщение (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');
};

Anders0n
дайте ссылку на видео, раз видели

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

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

}
}


03-10-2016 18:52:22

InfSub пишет

Anders0n
дайте ссылку на видео, раз видели

Я в живую видел :)

Anders0n пишет

Следующий вопрос :)
Как сделать чтоб выдавалось сообщение (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.  Как бы проблема решена, но не понятно почему так.

InfSub
Подскажите пожалуйста!

скрытый текст

Выделить код

Код:

e='вася,петя,вова'; //извлеченные слова

// как сделать чтобы переменная имела такой вид
e=['вася','петя','вова'];

Anders0n

скрытый текст

Выделить код

Код:

Macro stopped manually


данный текст ошибки, если не ошибаюсь, выводится, если отключить отображение js при проигрывании скрипта в настройках iMacros

04-10-2016 19:24:09
dim222

скрытый текст

Выделить код

Код:

e=e.split(',');

InfSub пишет

dim222

скрытый текст

Выделить код

Код:

e=e.split(',');

Да не.......
Я не пойму, как все извлеченные слова поместить в [ ] и чтоб разделялись ковычками и запятой. типа [ '1 ','2 ','3 ']

Hamzat
по сути, это проблема имеет древние корни, аналогично запуску кода через iimPlay(), когда для файла указывается путь, а для кода, вначале указывается префикс CODE:, иначе будет ошибка

04-10-2016 20:06:43

dim222 пишет

скрытый текст

Выделить код

Код:

e=['вася','петя','вова'];

вы описали массив в своем посте, я ответил, как его получить из строки

dim222 пишет

типа [ '1 ','2 ','3 ']

это тоже массив
как я понимаю, вам нужна строка вида:

e="['1','2','3']";

хотя совершенно не понимаю зачем...
как-то так:
скрытый текст

Выделить код

Код:

e="['"+e.replace(/,/g,"','")+"']";

Ребята, подскажите пожалуйста, возможно ли запускать js файл расположенный на сайте?
Например:

скрытый текст

Выделить код

Код:

URL GOTO=imacros://run/?m=http://site.ru/file.js


или:
скрытый текст

Выделить код

Код:

URL GOTO=http://site.ru/file.js


но второй вариант просто отображает скрипт в текстовом режиме

Ребят, столкнулся с проблемой, при парсинге городов, если в названиях городов есть пробел, то часть кода игнорируется.
Где пробелов нет - нормально работает, парсит, вставляет куда надо и т.д.
Вот часть проблемного участка:

скрытый текст
extract="CODE:SET !REPLAYSPEED FAST\nSET !TIMEOUT_STEP 2\n";
            extract+="SET !EXTRACT NULL"+" \n";
            extract+="TAG POS=1 TYPE=A ATTR=HREF:javascript:sym('"+city_id+"') EXTRACT=TXT"+" \n";
            retExtract=iimPlay(extract);
            if (retExtract > 0) {
                cityTest=iimGetExtract();
                var city = cityTest.replace(/\s+/g, '<SP>');

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


Участок, который игнорируется подсветил оранжевым цветом.

---

Нашел решение проблемы (в коде подсветил зеленым цветом):

скрытый текст

Выделить код

Код:

var city = cityTest.replace(/\s+/g, '<SP>');


Как видно, решение оказалось достаточно простым, но найти пример в интернете не удалось.
На что опытному программисту потребовалось бы пару минут у меня ушел день :)
Может кому пригодится. Удачи!

Anders0n
текст с пробелами в iMacros, должен быть обрамлен двойными кавычками или пробелы заменены на <SP>

InfSub пишет

Anders0n
текст с пробелами в iMacros, должен быть обрамлен двойными кавычками или пробелы заменены на <SP>

Это я понял с документации, но нигде не мог найти как это сделать на практике. Имею ввиду замену пробелов в java скрипте.
Решение нашел. Спасибо закоммент.

07-10-2016 10:26:37
InfSub, как на счет моего предыдущего вопроса? Есть возможность загрузки скрипта с сайта для работы iMacros?

Anders0n пишет

Имею ввиду замену пробелов в java скрипте.

на проще ли записать текст в кавычках? например так:

скрытый текст

Выделить код

Код:

macro+='TAG POS=1 TYPE=INPUT:TEXT FORM=ID:geo-regions-add-form ATTR=NAME:title[en] CONTENT="'+city+'" \n';


и НЕ надо исправлять код в вопросе, хотите привести решение, опишите его а новом посте, не исправляя старый, в котором поставлен вопрос!

Anders0n пишет

как на счет моего предыдущего вопроса

на вскидку, ни чего не скажу, не пробовал такой тип запуска, нужно пробовать

Подскажите, как можно  В ПАРАЛЛЕЛЬНОМ РЕЖИМЕ (более чем с 1 файла) извлекать разные значения строк? Например с одного файла (через for) с 1 по 30 строку,а с другого с 6 по10.
Может у кого есть готовое решение!

InfSub пишет

на проще ли записать текст в кавычках? например так:

Наверное да, но если нужна замена не только пробелов (как в моем случае) то лучше использовать replace.

Прошу помощи. Дано: js скрипт обходит пользователей сайта Одноклассники из тех, кто сейчас онлайн, заходит к ним в профиль и  пишет в личку. Часто бывает так, что скрипт заходит к пользователю повторно. Самое простое в этом случае, как я понимаю, создавать массив из уже пройденных профилей,  и каждый раз проверять, есть ли ссылка на новый профиль в массиве или нет.

Может, у кого есть готовый вариант кода с созданием массива из урлов адресной строки и подобной проверки? Сам с такой задачей сталкиваюсь  первый раз ((

udalov
Может быть,тебе сохронять пройденные урлы в файл, а потом делать проверку по наличию?

так

Выделить код

Код:

var url=window.location.href // URL сайта
alert(url)


и так

Выделить код

Код:

iimPlayCode('ADD !EXTRACT {{!URLCURRENT}}');
var url = iimGetExtract().split('/');
alert(url)

dim222
возможно, только при работе с БД
хотя зависит от того, что вы подразумеваете под "параррельным считывание из нескольких файлов одновременно", чем например не устраивает считывание последовательно по одной строке с каждого из файлов?

dim222 пишет

удалено, избыточное цитирование

привязать ко времени компьтера

Выделить код

Код:

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

Код конечно хороший и рабочий, но как бы его довести до ума? А то получается, что он просто тупо ждёт окончания получаса, а скрипт в это время бездействует. А ведь там и другие краны ждут, те у которых нету лимита.
То есть надо чтоб было так: имеется скрипт который по очереди проходит много кранов. На каких-то кранах есть получасовой лимит, а на каких-то нету. Нам надо сделать так, чтоб когда скрипт доходит до крана у которого обнаруживается лимит, то скрипт этот кран пропускает и идёт дальше на другие краны. И так по кругу, скрипт работает в цикле. И вот когда новый цикл начинается, то скрипт не идёт на тот кран, где он обнаружил лимит, до тех пор, пока не кончится получас. Но при этом берет другие краны.
Как такое реализовать?

InfSub

dvitkovs
Вам уже отвечали на этот вопрос

dvitkovs
Тут думаю надо время после каждого крана проверять.

07-10-2016 19:36:47
InfSub
Ну т.е. (даже не знаю как объяснить): имеем два файла  с 1-го берем с 1 по 30 строку, со 2-го с 1 по 5 строку(с каждым циклом построчно). Как сделать чтоб при 6-ом цикле с 1-го 6-ю строку,а со 2-го опять заново т.е. 1-ую.

dim222 пишет

Тут думаю надо время после каждого крана проверять.

Нет, думаю тут надо метку какую-то ставить на кран, на котором лимит. Тогда получится так: скрипт дошел до крана на котором лимит, поставил на него метку и пошел дальше краны брать. Когда начался второй цикл, то скрипт, когда доходит до меченого крана, сравнивает время получаса с тем сколько осталось и если ещё получас не кончился, то он игнорирует данный кран и идёт дальше брать остальные краны. Потом третий цикл, четвертый  и так далее. И когда время получасовое проходит, то все метки снимаются и скрипт снова берет все краны по очереди, до тех пор пока на каком-то не обнаружится лимитное время. Тогда он опять ставит метку на такой кран и в следующем цикле его уже не берет до тех пор, пока не пройдет время до истечения получаса. И так далее по кругу.
Надеюсь внятно описал принцип работы алгоритма. Осталось только реализовать задумку. Как думаете, прочтение про функцию date() поможет реализовать задуманное?

dvitkovs, dim222
так и создайте объект/массив, в котором к каждому крану записано время следующего прохода и если текущее время больше или равно написанному запускаете сборщик для данного крана.
при этом можно создать сортировку по наиболее близкому времени

dvitkovs пишет

так и создайте объект/массив, в котором к каждому крану записано время следующего прохода

но это время не постоянное. То есть в объекте\массиве время должно быть динамическим и устанавливаться в зависимости от появления надписи на лимитном кране типа такой

скрытый текст
2hEuQ.png

То есть всё зависит от появления этой надписи на кране. Когда она появляется, то это точка отсчета до конца ближайшего получаса.

dvitkovs
и в чем проблема это время туда записать?

InfSub
подскажите, а тута есть в факе есть пример, как самостоятельно самому написать объект\массив с примерными функциями как мне надо?

нет, факе нет, т.к. тема слишком обширная, но есть куча ресурсов по js

07-10-2016 21:19:05
хотя, даже начального уровня знаний по работе с массивами должно хватить для написания подобного кода

07-10-2016 21:20:21
тут практически на каждой странице форума по iMacros разбираются примеры по работе с массивами, только в другом контексте

InfSub пишет

тут практически на каждой странице форума по iMacros разбираются примеры по работе с массивами, только в другом контексте

тута есть уже готовая функция привязки скрипта ко времени компа

скрытый текст

Выделить код

Код:

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


а не подскажите ли как бы её переиначить и задействовать, чтоб не создавать новый объект\массив?

dvitkovs
я говорил, прежде всего, о возможностях функции date() а не урезаном функционале iMacros !NOW
для примера, прочтите что такое timestamp

07-10-2016 22:20:39

dvitkovs пишет

переиначить

зачем пытаться изобрести велосипед из газонокосилки?

dvitkovs
Вообщем,у меня принцип простой:
если есть надпись,то идем по другим сайтам, после каждого сверяем время.(если от 30 до 35 или от 00 до 05, то опять заходим, пока надпись не появиться). Можно конечно, вышеизложенным способом, но нужен опыт,а следовательно и время.

dim222 пишет

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

вот это 100% в точку! Нужен опыт, а опыт это время, а время это деньги. Тут каждая секунда на счету... Если кардиолог в астрономии полный ноль, то чтобы ему освоить карту звёздного неба, нужно не один год за справочниками провести. Так же и тут: если ты не программист и не изучал языков бейсик фортран паскаль, то газонокасилку в велосипед не переделаешь.

dim222 пишет

если есть надпись,то идем по другим сайтам, после каждого сверяем время.(если от 30 до 35 или от 00 до 05, то опять заходим, пока надпись не появиться).

так мне так и надо. То есть, когда надпись есть, то идём на другой кран и берём его. А на том кране, где надпись была, туда уже не заходим до конца получаса. Но как так реализовать? Вот тот код, что вы выложили, он же просто останавливает скрипт и ждет конца получаса.

07-10-2016 23:02:21
Хотя НЕТ. сильно простой способ не годится. Сильно просто - это велосипед. А на велосипеде далеко не уедешь. Нужен автомобиль. То есть мне годится именно вышеизложенным способом.

Кто-нить подскажите плиз, сохранение,сравнение и нажатие делать по позициям?
[img]1d839bd7ead4.jpg[/img]

dim222 пишет

имеем два файла  с 1-го берем с 1 по 30 строку, со 2-го с 1 по 5 строку(с каждым циклом построчно)..

Блин,и чой это я :/.

Все так просто.

Выделить код

Код:

var t = 1;//начинаем с 
var t2= 30;// по какую 

var k=1;  //начинаем с 
var k2=6;// по какую


 for (;;) {

for(s=t; s<=t2; s++) { 
k++
if(s==1)k=k-1
if(k>k2)k=1
alert('строка 1 файла:'+s+'\nстрока 2 файла:'+k)

}     
 }

Только вот при первом заходе ' k '+1

dim222 пишет

Кто-нить подскажите плиз, сохранение,сравнение и нажатие делать по позициям?

С помощью хеш-суммы картинки

karginaolga пишет

С помощью хеш-суммы картинки

:usch:!?:usch:!?:usch:!? Будем гуглить...что это? и с чем его.....
Спасибо !!!
Хотя....для меня по позициям будет гораздо проще. Может ошибаюсь.....Попробую.

конечно проще
Ну мы же Google хочем обмануть
не будьте лентями
пиши в личку, все уже изобретено

Здравствуйте! Нуждаюсь в подсказке.
Как вычислить строку из множества строк следующего вида

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SPAN ATTR=TXT:шанс
TAG POS=2 TYPE=SPAN ATTR=TXT:шанс
...
TAG POS=74 TYPE=SPAN ATTR=TXT:шанс


, у которой в данный момент (при обновлении страницы сайта) TAG POS= имеет наибольшее значение
Затем извлечь это максимальное значение и присвоить его переменной : к примеру a=74.
Заранее благодарен за внимание.

volobond
извлечь екстактом html-код вышестоящего элемента, содержащего эти span'ы и посчитать их количество, разбив, к примеру, на массив

Здравствуйте!
Подскажите пожалуйста
Только недавно начал пользоваться imacros, и сразу же назрел очень серьёзный вопрос
Как вытащить все ссылки с одной страницы в один файл
Пример приведу что надо:
есть сайт амазон

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


ссылки, даются в в спойлере, в тегах noindex
хочу написать такой скрипт, который будет копировать именно вот эти ссылки:
скрытый текст
ba6f61142ffa.jpg

скрины размещаются в спойлере
рекомендуется размещать скрины анонимно (без использования зарегистрированных аккаунтов на фотохостингах!) - скрин перезалит на радикал

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

Мой код выглядит в данный момент так, и он выдаёт ошибку-1001

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=P ATTR=CLASS:"a-link-normal s-access-detail-page s-overflow-ellipsis a-text-normal"  EXTRACT=TXT
SAVEAS TYPE=TXT FOLDER=* FILE='links.txt'


код публикуется в тегах code внутри спойлера
Такое вообще возможно? И Сможет кто натолкнуть на эту мысль, или помочь с этим вопросом?
Был бы заранее благодарен!

замечание

InfSub

neo_007 пишет

EXTRACT=

TXT

для извлечения ссылки используется EXTRACT=HREF, а не TXT

neo_007 пишет

TYPE=

P

тег P иначе paragraph - не может содержать параметра href, т.к. не является ссылкой, чтобы извлечь ссылку, нужно обращаться к тегу A

12-10-2016 02:24:16

neo_007 пишет

Мой код выглядит в данный момент так, и он выдаёт ошибку-1001

поставьте iMacros версии 8.9.7 и запретите обновление плагина

InfSub пишет

EXTRACT=TXT для извлечения ссылки используется EXTRACT=HREF, а не TYPE=P тег P иначе paragraph - не может содержать параметра href, т.к. не является ссылкой, чтобы извлечь ссылку, нужно обращаться к тегу А
поставьте iMacros версии 8.9.7 и запретите обновление плагина

Спасибо за подсказки
Обновил скрипт, но всё также он выгружает из сайта только текстовые названия ВСЕ КАКИЕ ЕСТЬ на данной страничке

А надо сделать так, чтобы из одного участка сайта
Код выглядит так:

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
SET !EXTRACT_TEST_POPUP NO
TAG POS=1 TYPE=A ATTR=CLASS:"a-link-normal s-access-detail-page s-overflow-ellipsis a-text-normal"  EXTRACT=HREF
SAVEAS TYPE=TXT FOLDER=* FILE=links.txt


Вот скрины:
скрытый текст
d7f98d132fa5.jpg
d9cbfe63449f.jpg

neo_007 пишет

выгружает из сайта только текстовые названия

а вас не смущает, что текст совершенно не соотносится с текстом ссылок, хотя и текст ссылок присутствует?
Вы что пытаетесь сохранить? EXTRACT или TXT данные?

скрытый текст

Выделить код

Код:

SAVEAS TYPE=EXTRACT FOLDER=* FILE=links.txt

InfSub
прошу прощения, немного не понял, так как с imacros совсем недавно работаю
Можете помочь с этим вопросом?


PS
сам разобрался с этим вопросом))

Вот код:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS={{!LOOP}} TYPE=A ATTR=CLASS:"a-link-normal s-access-detail-page s-overflow-ellipsis a-text-normal" EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=extractHref.txt

Как в js сделать с переносом кода, чтобы не в одну строку было?
На форуме видел как это делается но, что-то найти не могу.

скрытый текст

Выделить код

Код:

iimPlayCode("SET !ERRORIGNORE YES \n SET !TIMEOUT 1 \n TAG POS=1 TYPE=A ATTR=TXT:Добавить<SP>сообщение",60)

как сделать так?

iimPlayCode("SET !ERRORIGNORE YES \n 
SET !TIMEOUT 1 \n 
TAG POS=1 TYPE=SPAN ATTR=TXT:Заявка<SP>отправлена",60)

Алим

скрытый текст

Выделить код

Код:

'код'+
'еще код'+
'и еще код';

InfSub

Вот так как есть вставил в js и не работает.
пишет wrong format of SET command, line 1 (Error code: -910)

скрытый текст

Выделить код

Код:

iimPlayCode("SET !ERRORIGNORE YES"+
"SET !EXTRACT_TEST_POPUP NO"+
"TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT"+
"SET !VAR0 {{!EXTRACT}}"+
"WAIT SECONDS=1"+
"TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:captcha_key CONTENT={{!VAR0}}"+
"WAIT SECONDS=1"+
"TAG POS=1 TYPE=INPUT:SUBMIT ATTR=*",60)


скрытый текст

Выделить код

Код:

iimPlayCode('SET !ERRORIGNORE YES'+
'SET !EXTRACT_TEST_POPUP NO'+
'TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT'+
'SET !VAR0 {{!EXTRACT}}'+
'TAB CLOSE'+
'WAIT SECONDS=1'+
'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:captcha_key CONTENT={{!VAR0}}'+
'WAIT SECONDS=1'+
'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=*')


а вот так работает

скрытый текст

Выделить код

Код:

iimPlayCode("SET !ERRORIGNORE YES \n SET !EXTRACT_TEST_POPUP NO \n TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT \n SET !VAR0 {{!EXTRACT}} \n WAIT SECONDS=1 \n TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:captcha_key CONTENT={{!VAR0}} \n WAIT SECONDS=1 \n TAG POS=1 TYPE=INPUT:SUBMIT ATTR=*")

Алим

Перенос строки забыл дописать

скрытый текст

Выделить код

Код:

iimPlayCode('SET !ERRORIGNORE YES\n' +
    'TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT\n' +
    'SET !VAR0 {{!EXTRACT}}\n' +
    'TAB CLOSE\n' +
    'WAIT SECONDS=1\n' +
    'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:captcha_key CONTENT={{!VAR0}}\n' +
    'WAIT SECONDS=1\n' +
    'TAG POS=1 TYPE=INPUT:SUBMIT ATTR=*'
);


А в браузерах с поддержкой es15 можно прямо так
скрытый текст

Выделить код

Код:

iimPlayCode(
    `SET !ERRORIGNORE YES
    TAG POS=1 TYPE=* ATTR=TXT:* EXTRACT=TXT
    SET !VAR0 {{!EXTRACT}}
    TAB CLOSE
    WAIT SECONDS=1
    TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:captcha_key CONTENT={{!VAR0}}
    WAIT SECONDS=1
    TAG POS=1 TYPE=INPUT:SUBMIT ATTR=*`
);

Люди, здравствуйте!

Подскажите, как правильно прописать: SET !USERAGENT "БЛА, БЛА, БЛА", аналогично, но только в js-файле.

Заранее, спасибо!

stivenson
открыть FAQ и посмотреть видео.

Не могу понять, как можно извлечённое имя пользователя вставить в нужное место в тексте.
Есть переменная, в котором находится извлечённое имя - !VAR0
Я его могу указать в начале или в конце текста, но как его указать например в середине текста?

скрытый текст

Выделить код

Код:

SET сообщение "Приветствую! Хорошего дня"

TAG POS=1 TYPE=A ATTR=CLASS:emphased<SP>usr EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.replace(/\s(.*)/,'')")
SET !VAR0 {{!EXTRACT}}
SET !EXTRACT NULL

{{!VAR0}} - здесь находится имя пользователя

TAG POS=1 TYPE=TEXTAREA FORM=ID:msg-form ATTR=ID:field_msg CONTENT={{сообщение}}

Могу в начале и в конце поставить
TAG POS=1 TYPE=TEXTAREA FORM=ID:msg-form ATTR=ID:field_msg CONTENT={{!VAR0}}{{сообщение}}{{!VAR0}}

а вот как например по середине?

Можно, конечно, сделать так:
TAG POS=1 TYPE=TEXTAREA FORM=ID:msg-form ATTR=ID:field_msg CONTENT= "Приветствую! {{!VAR0}} Хорошего дня"


Да, можно прописать как есть без переменной в CONTENT= текст имя текст.
А как сделать, если это переменная передаётся отдельно в макрос?

Мне кажется нужно с помощью эвал заменить слово из сообщения на извлечённое имя и затем полученный результат вставить.

на просторах инета увидел функцию такого вида " <<< function resiver()" .В гугле не нашел в каких целях используется в функции имено этот знак- "<<<" (вроде как смещение). Кто-нить знает?

Алим

а вот как например по середине?

Самый очевидный и простой пример

скрытый текст

Выделить код

Код:

SET !VAR1 "Приветствую %username%! Хорошего дня %username%"

SET !VAR2 "Alex"

SET !VAR3 EVAL("var s =\"{{!VAR1}}\";s.replace(/%username%/g,\"{{!VAR2}}\")")

PROMPT {{!VAR3}}

Hamzat

Я вчера искал в гугле и нашёл такой способ замены

скрытый текст

Выделить код

Код:

SET сообщение "Приветствую! Хорошего имя дня"

SET !VAR1 "Alex"

SET !VAR2 EVAL("'{{сообщение}}'.split('имя').join('{{!VAR1}}');")

PROMPT {{!VAR2}}


Но, думаю ваш способ легче. Спасибо)

Алим
если имя пользователя вы получаете в коде iim скрипта, зачем городить огород, не проще ли задать текст после получения имени, чем потом заменять шаблон на имя?

InfSub
меня этот результат устаривает, а как сделать проще это уже вам виднее, так как вы лучше разбераетесь в этом :)

InfSub

Ну так принято что все  редактируемые параметры пишут в самом вверху для удобства :D:D

удалено, п.п.3.3
замечание








я вас поддерживаю

Давай братан

InfSub

Помогите плиз. Не моге подцепить iMacros ом форму для вставки текста
Вот код

скрытый текст

Выделить код

Код:

<div><span class="placeholder">INFO</span><div class="textarea" tabindex="0" role="textbox" aria-multiline="true" contenteditable="PLAINTEXT-ONLY" data-role="editable" aria-label="INFO" style="overflow: auto; word-wrap: break-word; max-height: 350px;"><p><br></p></div></div>


код публикуется в тегах code внутри спойлера

InfSub

скрытый текст

Выделить код

Код:

var macros;
var s=90; // количество желаемых кошельков
for (i=7;i<=s;i++) {
iimPlay("test.iim");
macros = "CODE:";
macros += "TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet-create-name CONTENT={!s}" + "\n";
macros += "TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:wallet-create-submit" + "\n";
macros += "BACK" + "\n";
iimPlay(macros);
}


код публикуется в тегах code внутри спойлера правила форума iMacros
Как мне затавить значение переменной СONTENT= каждый раз увеличиваться на один пока не закончится цикл?

InfSub

достали эти макросы с плюсом
уже давно вышел ECMAScript6 переходим на него
а то что вы пишете такой геморрой

18-10-2016 06:51:58
koljan8115

скрытый текст

Выделить код

Код:

for(skz=0; skz<=1999; skz++){
    iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet-create-name CONTENT='+skz+'\nTAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:wallet-create-submit\nBACK');
    }


ни каких утечек памяти
переменная которая может видеться только в if(

karginaolga
не забывайте, что это не форум программистов, тут 90℅ вопрошающих ни когда не слышали о ECMAScript6 и не писали на js что-то сложнее цикла for()
будьте терпимее к окружающим, вы же тоже когда-то учились

karginaolga

достали эти макросы с плюсом

Покажите что по лучше будет, а не пустословьте...

уже давно вышел ECMAScript6 переходим на него

И что, что он вышел? Счас пойти и переписать все свои проекты? Плюс es6 не стал стандартом, да что уж там говорит даже es5 не стал стандартом, к примеру 42 версия firefox не интерпретирует переменную let, а о поддержке в версиях 27, 35 (которые безупречно работает с имакрос) и речи быть не может.

Hamzat
начиная 45 версии все прекрасно работает

скрытый текст

Выделить код

Код:

let а = 12; // доступна глобально
function myFunction() { console.log(a); let b = 13; // доступна в пределах функции 
if(true){ let c = 14; // доступна только в "if" 
console.log(b); } console.log(c); } myFunction();

Hamzat пишет

Покажите что по лучше будет, а не пустословьте...

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

Всем привет.
Новичок задающий вопрос не знает, что его вопрос  попадает в

InfSub пишет

"детские" вопросы, ошибки и "говно-код"

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

InfSub
Извините, но я подумал, что вы предлагаете для новичков тему создать. Меня смутили ковычки: для "профи"

Jurik45
ок, убрал кавычки с профи, чтобы они более ни кого не смущали =)

InfSub

на вкус и цвет...

Ну если бы дело было только вкусе и цвете, проблема именно в поддержке кода, многие как и я пользуются старыми версиями, код который поддерживается только новыми браузерами скорее больше "говно код" чем тот что тут пишут... Имхо...

давайте создадим отдельную тему, для профи

Если мало и так пустых тем то есть смысл, а так никто там отвечать не будем ибо слишком "умные"...

Hamzat
InfSub
Ну почему же я например считаю:
каждый человек равен другому
пускай в не написание скриптов а просто перед Богом
на создание новой темы я думаю мы пошутили

Вконтакте в группе под главное фото хочу отправить комментарий.
И у каждого свой id при написании текста.

Извлекаю ссылку из фото, убераю лишнее и остаётся номера_номера
В переменной VAR1 сохраняются эти номера.

Но между этими номера должно быть ещё слово photo, прежде чем,
указать переменную в строке кода, который вводит текст комментария в поле.

Вот так должно быть
номера_photoномера

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=href:*photo-*_* EXTRACT=HREF
SET !VAR1 EVAL("'{{!EXTRACT}}'.replace('https://vk.com/photo-','')")

EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-122836745_photo437366928" CHARS="текст"


------

Сделал и получилось.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=href:*photo-*_* EXTRACT=HREF

SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/^.*photo-/,\"\").replace(/_.*/,\"\")")
SET !VAR2 EVAL("\"{{!EXTRACT}}\".replace(/^.*_/,\"\").replace(/ .*/,\"\")")

EVENTS TYPE=KEYPRESS SELECTOR="#reply_field-{{!VAR1}}_photo{{!VAR2}}" CHARS="текст"

Алим
а мне кажется можно все через массив использовать
поправьте если не права

Как запустить imacros,  в открытом браузере через командную строку ?
Так запускает с браузером, но мне надо только скрипт.

скрытый текст

Выделить код

Код:

start "4" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -p Profile4 -no-remote imacros://run/?m=12345.js


Спасибо.

Всем привет.
Обновила версию iMacros и старый добрый рабочий скрипт перестал работать.
Пыталась переделать скрипт заново, записать, но столкнулась с проблемой, что iMacros не записывает координаты клика.
А мне нужны именно координаты.
В настройках разумеется стоит галочка Use X/Y position
В чем может быть причина?

Nirvana пишет

В чем может быть причина?

Ответ уже в вопросе Обновила версию iMacros .

Hamzat
Пользоваться старой версией iMacros?

Nirvana
да, 8.9.7

InfSub пишет

Nirvana
да, 8.9.7

Спасибо, вопрос решен

Приветствую! Подскажите, кто-нибудь, как можно очищать не все куки, а только нужные. Вот например, команда CLEAR используется, чтобы очистить браузет от кэша и кукисов. Удаляет всё что надо и что не надо. А как бы сделать так, чтоб команда удаляла куки только с заданного сайта, остальные не трогала? Или так, чтоб всё очищала, а с нужного сайта не трогала. Подскажите-ка.

скрытый текст
2iAHi.png

скрытый текст

Выделить код

Код:

URL GOTO=https://www.facebook.com/events/ -не важно, идет ссылка на пост из ивента\группы
TAG POS=1 TYPE=A ATTR=TXT:Поделиться
TAG POS=2 TYPE=SPAN ATTR=TXT:Поделиться...
TAG POS=2 TYPE=SPAN ATTR=TXT:Поделитесь<SP>в<SP>своей<SP>Хронике
TAG POS=2 TYPE=SPAN ATTR=TXT:Поделитесь<SP>в<SP>группе


Простенький скрипт, цель поделиться в своих группах постом из ивента\группы.
Список групп и переменную я подключу сам. Беда в том что он не открывает меню "подельтся в группе"
Может кто сталкивался? По координатам  клик делал не работает. Помогите друзья!

Всем привет. Подскажите, пожалуйста, как можно очистить поле ввода (бит адреса, емейла) перед вводом.? Чистить куки не подходит.
Спасибо.

Всем привет! :rock: Запускаю с одного js другой js всё замечательно работает но не могу его остановить,кнопка пауза работает а стоп не работает :( Кто знает как быть в такой ситуации?

Gergi
не запускать js из js

InfSub пишет

Gergi
не запускать js из js

Ответ не правильный :)

25-10-2016 13:34:21
Вообще не понимаю зачем тогда возможность запускать js из js если его не возможно остановить:sick:

Gergi
затем, что js должен быть один, а не два или сто, о чем говорилось неоднократно, если вы не можете реализовать свой код в одном файле, то не надо винить в этом разработчиков, идите и учитесь программированию

Gergi
Перенос данных

я делаю так

Выделить код

Код:

Z = Components.Constructor("@mozilla.org/xmlextras/xmlhttprequest;1");

z=new Z();
z.open('GET','file:///C:\\твой.js',false);
z.send(null);
eval(z.response);

Gergi]

Вообще не понимаю зачем тогда возможность запускать js из js если его не возможно остановить

А кто вам дал такую возможность? Вы пользуетесь функцией не по назначение, и еще что то требуете...

dim222

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

Hamzat пишет

А кто вам дал такую возможность? Вы пользуетесь функцией не по назначение, и еще что то требуете...

Ну и что теперь что я пользуюсь функцией не по назначению??? На что это может повлиять? Ведь у меня всё работает,только одно не удобство доставляет,не нажимается кнопка стоп,приходиться закрывать браузер. Но это не трагедия!  Кстате я задавал вопрос грамотным людям в этом деле!

Hamzat
Возможно вы правы, но проблем пока не замечал. Так как бы удобно, у меня один основной скрипт (к нему обращаются много скриптов,в которых указанны только основные переменные )
Пока лучшего варианта для себя не нашел.
Спасибо за наводку, по изучаю.

Gergi пишет

Ну и что теперь что я пользуюсь функцией не по назначению??? На что это может повлиять?

как минимум на корректность работы iMacros, например баг с остановкой скрипта из этой сериий

dim222

Да, есть иногда такие потребности, пользоваться eval не лучший вариант, а из-за органичности имакрос для работу с библиотеками нельзя принести  имакрос в удобном виде модульность, но есть один метод, удобный и не уступает модулям, расскажу об этом чуть позже в отдельном топике, думаю будет полезно для некоторых.

25-10-2016 20:10:49
Gergi

Ну и что теперь что я пользуюсь функцией не по назначению??? На что это может повлиять?

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

Но дело не в этом, использование таких конструкций может привести к утечки памяти, проверял на собственном опыте.

Кстате я задавал вопрос грамотным людям в этом деле!

Ну, ну...

В данный момент alert(i) начинает показывать с 1 и выше,можно ли сделать чтобы i = 1 так и осталось не менять 1 но чтобы alert(i) показывал с 2 ? тоесть смысл в том чтобы alert показывал на 1 больше

скрытый текст

Выделить код

Код:

for(i = 1; i < 44; i++){

alert(i)
}

Hamzat пишет

хотя я ваш баг не смог доказать попробовал на 40 разных

проблема в прямоте ваших рук и опыте, которые не дают вам возможности составить скрипт так, чтобы он приводил к подобным багам
думаю, Gergi пытается запараллелить выполнение действий, запуская из первого скрипта второй, но при этом продолжая, что-то делать в первом

InfSub
удалено избыточное цитирование
Не,я пытаюсь из двух скриптов сделать один,и впринципе вот главная проблема.

InfSub

Gergi пишет

можно ли

Gergi
мне еще раз ткуть вас в правила про a+b?

25-10-2016 20:40:13

Gergi пишет

,я пытаюсь из двух скриптов сделать один,

в таком случае зачем вам запуск одного js из другого?

Gergi алерт начнёт с 2. С каждого цикла будет прибавлять +1

скрытый текст

Выделить код

Код:

for(i = 1; i < 10;){
i++
alert(i)
}

удалено, видимо сам уже читать разучился )))

т.е. Gergi, имея одно яблоко на столе и докладыевая на стол еще по одному яблоку (заметьте именно яблоку, а не грушу или апельсину) хочет, чтобы яблоко на столе оставалось всегда одно

Gergi
надеюсь, такой пример, вам более понятен и достаточно подробно описывает вашу ошибку

Алим Спасибо,выручил:rock:

Ещё раз, здравствуйте.
Повторюсь: Как запустить imacros,  в открытом браузере через командную строку ?
Так запускает с браузером, но мне надо только скрипт, в открытом браузере.

скрытый текст

Выделить код

Код:

start "4" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -p Profile4 -no-remote imacros://run/?m=12345.js


Что-то я искал в инете, так и ничего не нашёл, путного.
Спасибо.

Здравствуйте!
Очень нужна помощь.

Мне нужно переносить данные из гугл док таблицы в соседнюю вкладку.
???КАК??? сделать ctrl+c и ctrl+v.

Весь день ищу безрезультатно. Помогите, пожалуйста.

Доброго времени суток, скрипт выполняет постинг в группу VK. Но не работает когда браузер свернут или неактивное окно. Насколько понял необходимо, либо дать фокус странице во время печатания текста, либо заменить EVENT на что-то другое.
Прошу вашей помощи, заранее спасибо!

скрытый текст

Выделить код

Код:

function TXT() {
  var macros = '';
  var time=Math.floor(Math.random()*9 + 6);
  stroka2++
  iimSet('STROKA',stroka2)
  iimSet('T',t)
  macros += 'SET !VAR9 EVAL("var l={{STROKA}};var m={{T}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")' + n;
  macros += 'SET !DATASOURCE TXT.txt' + n;
  macros += 'SET !DATASOURCE_LINE {{!VAR9}}' + n;
  macros += 'WAIT SECONDS=2' + n;
  macros += 'ADD !EXTRACT {{!COL1}}' + n;
  macros += 'EVENT TYPE=MOUSEDOWN SELECTOR="#post_field" BUTTON=0' + n;
  macros += 'EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!COL1}}' + n;
  macros += 'WAIT SECONDS=2' + n;
  macros += 'TAG POS=1 TYPE=DIV ATTR=NOSORTHANDLE:1&&CLASS:page_media_x&&TXT:' + n; \\удаление прикрепленного сниппета, баг или фича от 25.10
  macros += 'WAIT SECONDS='+time + n;
  macros += 'TAG POS=1 TYPE=BUTTON ATTR=ID:send_post' + n;
  macros += 'WAIT SECONDS='+time + n;
  macros += 'WAIT SECONDS=3600' + n;
  iimPlayCode(macros);
}


и ещё вот в этом участке прошу помочь
скрытый текст

Выделить код

Код:

iimSet('STROKA',stroka2)
  iimSet('T',t)
  macros += 'SET !VAR9 EVAL("var l={{STROKA}};var m={{T}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")' + n; 
  macros += 'SET !DATASOURCE TXT.txt' + n;
  macros += 'SET !DATASOURCE_LINE {{!VAR9}}' + n;
...


не получается оформить в JS скрипте. Под спойлером неудачная попытка
скрытый текст

Выделить код

Код:

function TXT() {
  var macros = '';
  var time=Math.floor(Math.random()*9 + 6);
  stroka2++
  var l ='if(stroka2<p){stroka2;}else{stroka2-p*(Math.ceil(stroka2/p)-1);}';
  var line2=eval(l);
  macros += 'SET !DATASOURCE TXT.txt' + n;
  macros += 'SET !DATASOURCE_LINE ' +line2 + n;
...

Если в адресной строке есть кириллица, то при сохранении этого адреса с помощью !URLCURRENT получается ерунда (да и при копировании)

https://www...../%D0%BA%D1%80%D1%83%D0%B8%D0%B7/
Можно эту ерунду превратить в нормальную кириллицу?
Спасибо

selftrips пишет

сохранение этого адреса

скрытый текст

Выделить код

Код:

iimPlayCode('ADD !EXTRACT {{!URLCURRENT}}');
var url = iimGetExtract().split('/');
alert(url[2]);

selftrips

Можно эту ерунду превратить в нормальную кириллицу?

Не ерунда, а кодировка, чтобы вы вместо котиков не увидели что по хуже...

скрытый текст

Выделить код

Код:

var url = decodeURIComponent(window.location.href);
alert(url);

Всем привет.

Jurik45 пишет

Подскажите, пожалуйста, как можно очистить поле ввода (бит адреса, емейла) перед вводом.? Чистить куки не подходит.Спасибо.

Нет способа? Или не полностью объяснил в чё проблема? Есть сайт и там в поле ввода биткон адреса написано, что надо ввести адрес, но когда вставляешь адрес, то он добавляется к той надписи. А на другом сайте адрес остаётся с прошлого захода и тоже добавляется ещё один адрес. Поиском ни чего не нашёл.

Jurik45
Какой сайт?
На большинстве сайтов ,новый вставляешь повверх прошлого, и все норм.

Jurik45

как можно очистить поле ввода (бит адреса, емейла) перед вводом.?

Пустой ввод с начало делайте и все,  т.е CONTENT=""; потом CONTENT=bit_wallet

dim222 пишет

Какой сайт?На большинстве сайтов ,новый вставляешь повверх прошлого, и все норм.

Обычно да, но здесь не заменяется. Вставляется только так:

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nEVENTS TYPE=KEYPRESS SELECTOR="#page>DIV>DIV:nth-of-type(3)>FORM>DIV:nth-of-type(2)>DIV>INPUT" CHARS=' + dash);

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Иллир
выполняйте действие в js, а не в eval()
зачем записывать js  в eval() только ради того чтобы вставить код в макрос, вместо результата
верните в макрос результат, а не действие

28-10-2016 20:08:05
Jurik45
уже где-то обсуждалось, сотрите текст, клавиша с кодом 8, это бекспейс, весь перечень клавиш, есть в FAQ на нашем форуме

Jurik45 пишет

Обычно да, но здесь не заменяется.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Можете как вариант javascript попробовать

скрытый текст

Выделить код

Код:

var myinput=window.document.querySelector('input[type="text"]:not([name="address"])');
myinput.value='номеркошелька'

Док пишет

Можете как вариант javascript попробовать

Спасибо, работает.

Доброго дня! Вопросы в коде под спойлером! Заранее спасибо!

скрытый текст

Выделить код

Код:

t=prompt("Количество текста?",3)
s2=0
function TXT() {
  time=Math.floor(Math.random()*9 + 6);
  s2++
  iimSet('S2',s2)
  iimSet('T',t)
  iimSet('time',time);
  iimPlayCode(`
  SET !VAR9 EVAL("var l={{S2}};var m={{T}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
  SET !DATASOURCE TXT.txt
  SET !DATASOURCE_LINE {{!VAR9}}
  WAIT SECONDS=2
  ADD !EXTRACT {{!COL1}}
  EVENT TYPE=MOUSEDOWN SELECTOR="#post_field" BUTTON=0
  EVENTS TYPE=KEYPRESS SELECTOR="#post_field" CHARS={{!COL1}}
  WAIT SECONDS=2
  TAG POS=1 TYPE=DIV ATTR=NOSORTHANDLE:1&&CLASS:page_media_x&&TXT:
  WAIT SECONDS={{time}} // Периодически не срабатывает данный момент и запускает скрипт с начала, если в цикле, и не отображает в панели imacros цифровое значение функции
  TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
  WAIT SECONDS=3600
  `);
}
TXT();

Иллир

скрытый текст

Выделить код

Код:

iimPlayCode(/* ваш код */);
alert(iimGetLastError())

InfSub

Благодарю, проблема в строке, когда нет такого элемента была ошибка.

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=NOSORTHANDLE:1&&CLASS:page_media_x&&TXT:

Здравствуйте, заранее извиняюсь если кому покажутся мои вопросы делом обыденным, я от JS далек и могу элементарных вещей не знать.

1. Хотел создать кошельки, имена которых номера от 34 до 38.

скрытый текст

Выделить код

Код:

for(var i=34; i<=38; i++){
iimPlayCode("TAG POS=1 TYPE=A ATTR=TXT:Create<SP>New<SP>Wallet\n TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:wallet-create-name CONTENT='+i+'\n TAG POS=1 TYPE=INPUT:BUTTON ATTR=ID:wallet-create-submit\n TAG POS=1 TYPE=SPAN ATTR=TXT:Xapo");
}


Результат: создался только кошелек имя которого, '+i+' , возвращется на страницу авторизации и спустя время выдает ошику 921

(RuntimeError: element A specified by TXT:Create<SP>New<SP>Wallet was not found, line 1 (Error code: -921))

. В чем ошибка?

2. Не получается осуществить поиск на сайте, c по мощью выпадающего списка. На

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


поиск, с помощью выпадающего меню работает прекрасно.
скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=http://seasonvar.ru/\n TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/search ATTR=NAME:q CONTENT=спрут\n TAG POS=4 TYPE=STRONG ATTR=TXT:Спрут")


3. Как сделать чтобы скрипт выполнялся в определенное время?

4. Возможно-ли установить время через какое должен выполнится скрипт, несмотря на то что выключался компьютер, но на данный момент включен(имеется ввиду, например с сайта можно собирать монеты раз в сутки, но и держать компьютер сутками включенным не хочется)?

koljan8115 пишет

Результат: создался только кошелек имя которого, '+i+'

ваш код обрамлен двойными кавычками, но при этом вы пытаетесь вставить js-переменную используя одинарные кавычки - кавычки должны быть одинаковыми, либо двойными, либо одинарными:

скрытый текст

Выделить код

Код:

iimPlayCode('первая часть кода'+i+'вторая часть кода');


31-10-2016 01:44:32

koljan8115 пишет

Не получается осуществить поиск на сайте, c по мощью выпадающего списка

используйте Experimental event recording mode

31-10-2016 01:45:35

koljan8115 пишет

3. Как сделать чтобы скрипт выполнялся в определенное время?
4. Возможно-ли установить время через какое должен выполнится скрипт

поиск по форуму, обсуждалось, настроить шедулер (планировщик заданий) на запуск FF со скриптом

Hamzat пишет

Как  бы, без лишних замочек определить номер?

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


Но мне она не подходит, т.к. здесь считается кол-во фреймов. Насчитывает 6 фреймов, а когда делаю запись iMacros'ом, получается FRAME F=10, например. Короче, ничего не понятно. :(

InfSub, на счет первого вопроса, Спаибо за совет с ковычками.
Что касается второго, я переключил режим записи на Experimental event recording mode. Поиск не  только не заработал на проблемном сайте, но и перестал работать и на яндексе.

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=http://ya.ru/\n EVENT TYPE=KEYPRESS SELECTOR="#text" CHAR="c"\n EVENT TYPE=KEYPRESS SELECTOR="#text" KEY=8\n EVENTS TYPE=KEYPRESS SELECTOR="#text" CHARS="спрут 4сезон"EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(3)>DIV:nth-of-type(2)>UL>LI:nth-of-type(3)>SPAN>B" BUTTON=0');

RuntimeError: Can not locate element specified by selector "HTML>BODY>DIV:nth-of-type(3)>DIV:nth-of-type(2)>UL>LI:nth-of-type(3)>SPAN>B", line 8 (Error code: -921)

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=http://seasonvar.ru/\n EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR>TD:nth-of-type(2)>DIV>FORM>INPUT" BUTTON=0\n EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR>TD:nth-of-type(2)>DIV>FORM>INPUT" CHARS="Спрут"\n EVENT TYPE=CLICK SELECTOR="#Autocomplete_669de>DIV:nth-of-type(2)>STRONG" BUTTON=0');

RuntimeError: Can not locate element specified by selector "#Autocomplete_669de>DIV:nth-of-type(2)>STRONG", line 9 (Error code: -921)]

Я где-то ошибся?

InfSub
Вы как-то писали "....... в iMacros'e, считать построчно, есть хаки для считывания файла полностью, но....... ".
Можно про " хак " по подробнее (примером).

dim222
я бы рекомендовал не использовать хак, у него есть достаточно много подводных камней, а использовать способ, предложенный PRESIDENT'ом, открыть файл браузером и считать его данные

скрытый текст

Выделить код

Код:

url goto=file:///c:/file_name.txt

dim222

Есть еще один вариант, очень часто его использую

скрытый текст

Выделить код

Код:

var file = inportData('file:///C:/test.txt'); // Массив, каждая строка в файле элемент массива

alert(file[0])  // Первая строка

function inportData(a) {
    var b = Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance();
    return b.open("GET", a, false), b.send(), b.responseText.split("\n")
};

Hamzat
случайно не знаете как получить путь до запущенного скрипта из самого скрипта?
аналогия на php:

скрытый текст

Выделить код

Код:

$_SERVER['SCRIPT_FILENAME']

Такой скрипт:

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
URL GOTO=about:newtab
SET !VAR1 EVAL("var randomName=Math.floor(Math.random()*3 + 1); randomName;")
SET !DATASOURCE C:\Users\Administrator\Documents\urls.txt
SET !DATASOURCE_LINE {{!VAR1}}
PROMPT {{!COL1}}
URL GOTO={{!COL1}}
WAIT SECONDS=3
TAB CLOSE


код публикуется в тегах code внутри спойлера
В urls.txt три ссылки. Не переходит по ссылкам автоматически, просит нажать ок.
удалено, запрещенный хостинг (вирусы)
правила размещения изображений на форуме iMacros

Если

скрытый текст

Выделить код

Код:

URL GOTO=http://google.com


проблем нет.

InfSub

ts1000w
может вы удалите или закомментируете команду prompt?
а за одно и откатите версию iMacros  c 9.0.3 на 8.9.7, и запретите обновление, дабы избежать еще десятка вопросов

InfSub
Неа, даже не представляю для чего это...

Hamzat пишет

Есть еще один вариант, очень часто его использую

Очень Хороший вариант! Спасибо!

Режим записи: Experimental event recording mode. Проблема в том, что всплывающее меню появляется, но дальше ничего не происходит.

скрытый текст

Выделить код

Код:

URL GOTO=http://seasonvar.ru/
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR>TD:nth-of-type(2)>DIV>FORM>INPUT" BUTTON=0
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>TABLE>TBODY>TR>TD:nth-of-type(2)>TABLE>TBODY>TR>TD:nth-of-type(2)>DIV>FORM>INPUT" CHARS="Спрут"
EVENT TYPE=CLICK SELECTOR="#Autocomplete_669de>DIV:nth-of-type(2)>STRONG" BUTTON=0

удалено, дубликат поста, п.п. 2.8

InfSub

Всем привет!:rock:
В txt Файле находиться Русский текст,а экстрактится китайски. Можно ли в коде скрипта как то кодировку указать?

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\rec\\yj_utf8_1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
i=iimGetExtract()
alert(i)

Gergi
можно указать правильную (UTF8) кодировку файла данных, при сохранении

InfSub пишет

Gergi
можно указать правильную (UTF8) кодировку файла данных, при сохранении

Это понятно что если перекодирую файл и будет работать,но так не подходит

Gergi пишет

но так не подходит

сообщите об этом разработчикам, они вам посочувствуют =)

InfSub

оффтоп
Такое ощущение что Gergi разрабатывает свое собственное дополнение которое  делать все в точности наоборот что iMacros

Ребят подскажите, как произвести замену "display: none" на "display: block"

скрытый текст
3b56c9c16453.jpg

Можно конечно стили отключить, но не всем сайтом это нравиться.

dim222 с помощью innerHTML

dim222

скрытый текст

Выделить код

Код:

window.document.getElementsByClassName('g-recaptcha-response')[0].style = 'display: block';

Hamzat
Точно........, надо же "g-recaptcha-response"  а не "textarea"
Спасибо!:)

Как заставить iMacros кликнуть по координатам поля для ввода текста и затем ввести сам текст, если это поле находится во фрейме? Это вообще возможно?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML" POINT="(255,85)"
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY" CHARS="text"


Такое вот не работает.

Так работает не повторяющийся рандом чисел

скрытый текст

Выделить код

Код:

var n,num=[],max=22;
while(num.length<max){
n=Math.floor(Math.random()*max)+1;
if(num.indexOf(n)==-1){
num.push(n);    
alert(n)
  }
 }


Можно ли сделать не повторяющийся рандом слов?

Запускаю в цикле средствами imacros:

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
URL GOTO=about:newtab
SET !VAR1 EVAL("var randomName=Math.floor(Math.random()*3 + 1); randomName;")
SET !DATASOURCE C:\Users\Administrator\Documents\urls.txt
SET !DATASOURCE_LINE {{!VAR1}}
URL GOTO={{!COL1}}
WAIT SECONDS=600
CLEAR
TAB CLOSE


Регулярно виснет с ошибкой:

Page loading timeout, URL: null, line: 7 (Error code: -802)

Что значит ошибка, понятно.
Можно ли после этого завершить выполнение текущего скрипта и продолжить цикл?
Также интересует как сделать цикл бесконечным.

ts1000w
удалено, избыточное цитирование

скрытый текст

Выделить код

Код:

SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
' цикл
SET !VAR1 100
SET !VAR2 EVAL("var l={{!LOOP}};var m={{!VAR1}};if(l<m){l;}else{l-m*(Math.ceil(l/m)-1);};")
SET !DATASOURCE C:\Users\Administrator\Documents\urls.txt
SET !DATASOURCE_LINE {{!VAR2}}
URL GOTO={{!COL1}}
WAIT SECONDS=2


InfSub

ts1000w пишет

VERSION BUILD=9030808

Твоя проблема в этом. Откати версию.

Gergi
создайте массив со словами

03-11-2016 20:53:20

Gergi пишет

SET !ERRORCONTINUE YES

сколько еще раз повторить? нет такой команды

InfSub пишет

Gergi
создайте массив со словами

А вас не затруднит как то объяснить?

Gergi
*WALL*
впишите var a=['Вася','Петя','Муся','Дуся']; перед вашим кодом и замените:
alert(n) на a[n]
max=22 на max=a.length

InfSub
Это случайно не прикол? Я уже пару часов кручу мучу этот код и никаких признаков жизни не даёт.:sick:

скрытый текст

Выделить код

Код:

//*WALL*
var a=['Вася','Петя','Муся','Дуся'];
var n,num=[],max=a.length
while(num.length<max){
n=Math.floor(Math.random()*max)+1;
if(num.indexOf(n)==-1){
num.push(n);    
  }
 }
alert[n]

Gergi

скрытый текст

Выделить код

Код:

var a=['Вася','Петя','Муся','Дуся'];
 var n,num=[],max=a.length;
while(num.length<max){
n=Math.floor(Math.random()*max)+1;
if(num.indexOf(n)==-1){
num.push(n);    
alert(a[n])
  }
 }


Ток почему-то одно значение выдает ''undefined"

dim222 пишет

Gergi

скрытый текст

Выделить код

Код:

var a=['Вася','Петя','Муся','Дуся'];
 var n,num=[],max=a.length;
while(num.length<max){
n=Math.floor(Math.random()*max)+1;
if(num.indexOf(n)==-1){
num.push(n);    
alert(a[n])
  }
 }


Ток почему-то одно значение выдает ''undefined"

Да,уже лучше,но всё же как то не правильно работает :( Через раз выдаёт undefined

Gergi

Ток почему-то одно значение выдает ''undefined"

Нечего странного, в массиве 4 элемента от 0 до 3,  а рандом от 0 до 4...

скрытый текст

Выделить код

Код:

var a = ['Вася','Петя','Муся','Дуся'];

var n, num =[], max =a.length;

while(num.length < max) {

    var n = Math.floor(Math.random() * max - 1)+1;

    if(!~num.indexOf(n)) {

        num.push(n);

    }
};

alert(num)

Gergi пишет

Это случайно не прикол?

это случайно - не умение вами читать что вам пишут - полностью
где вы вставили a[n]? впрочем, вам об этом уже написали выше

InfSub
Да,объяснили спасибо. Буду при много благодарен,если мне объясните как сделать так что бы ['Вася','Петя','Муся','Дуся']; Экстрактил эти имена из txt файла.

04-11-2016 23:24:49
Весь мой замысел заключался в том,что бы не повторялись слова,тоесть если в массиве три раза Вася то надо только одного обработать.
Однако не вышло,дублирует слова.



скрытый текст

Выделить код

Код:

var a = ['Вася','Дуся','Муся','Дуся','Дуся','Муся','Дуся'];
var n, num =[], max =a.length;
while(num.length < max) {
var n = Math.floor(Math.random() * max - 1)+1;
if(!~num.indexOf(n)) {
num.push(n);
alert(a[n])
    }
};

Здравствуйте. Не нашел ответа в данной ветке. Подскажите пожалуйста. как записывать данные в csv с переносом строки. Есть массив, я его преобразую в строку и записываю одним разом, в массиве до 1000 значений, поэтому построчно не вариант. Естественно <BR> здесь не работает, в csv никакого переноса не происходит, нашел только такой способ:

скрытый текст

Выделить код

Код:

var myarray=["Алеша","Василий","Петя"];
var myarrayy = myarray.join('[EXTRACT]<BR>');
iimPlayCode('ADD !EXTRACT '+myarrayy+'\nSAVEAS TYPE=EXTRACT FOLDER='+ssilka+' FILE=proverka.csv\n');


В результате получаем лишние ковычки и запятые:
скрытый текст

Выделить код

Код:

"Алеша","
Василий","
Петя"

Gergi пишет

что бы не повторялись слова

скрытый текст

Выделить код

Код:

text=['тут','был','повтор','нафиг','повтор','нужно','удалить','нафиг']
text.sort(); 
for (var i = text.length - 1; i > 0; i--){
if (text[i] == text[i - 1]) text.splice( i, 1);}
alert(text);

dim222
Спасибо:rock: Получилось шикарно:music:

Sergey_yu
iMacros записывает всегда только один блок данных с помощью saveas, т.е. то, что должно входить в одну строку, при этом если в строке есть перенос на другую строку, он переносит строку, но для того, чтобы структура данных не нарушилась, добавляет кавычки вокруг каждого столбца, т.к. это правила формата CSV в котором и сохраняет данные iMacros:

скрытый текст

Выделить код

Код:

"столбец 1","столбец
2","столбец 3"


что вам мешает записать данные в "своем формате"?
например разделив данные вертикальной чертой | и записывая их в одну строку, после чего вы всегда вернете им прежний вид с помощью метода join('|');

А почему так не работает?  Повторяет дубли.

скрытый текст

Выделить код

Код:

for(y=1;y<=100;y++){
// Извлекаем всё из текстового файла по одному слову 
iimPlayCode('SET !DATASOURCE C:\\Test.txt\nSET !DATASOURCE_LINE '+y+'\nSET !EXTRACT {{!COL1}}');
var a=iimGetExtract()
text=a.split('\n');
text.sort();
for (var i = text.length - 1; i > 0; i--){
if (text[i] == text[i - 1]) text.splice( i, 1);}
 iimPlayCode('SET !TIMEOUT 1\nSET !EXTRACT '+text+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=Test2.txt');
alert(text)
}


Содержимое C:\\Test.txt
скрытый текст
Вася
Петя
Муся
Муся
Вася
Муся
Коля

Задача в том что бы брать по очереди одно имя из txt,но дубликаты пропустить.

Gergi

скрытый текст

05-11-2016 13:53:18
в каждом цикле вы извлекаете только одно слово

Помогите разобраться.

Имеется каптча

скрытый текст
8da024a3af00.jpg

По адресу c:\CapNum\solve\a.txt  находится текстовый файл с текстом обработанной FineReaderом каптчи:  Lunch tuesday?
Затем следующим незакоментированным кодом убираю лишнее
скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces, refka='3PM5VNydvN986H4vMhkUAiTBvEKTx28uk2'; 
 var cok=Cc["@mozilla.org/cookiemanager;1"].getService(Ci.nsICookieManager);  
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 var str=Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
 var alt=Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsIPromptService);
 var Path='C:\\CapNum\\solve\\';
 var bit='1MVs27jrbCAoMLc78NYqu9Qj8CCdZJLTS3';

 var t0='SET !TIMEOUT_STEP 0\n', t3='SET !TIMEOUT 30\n', errign='SET !ERRORIGNORE YES\n';
/*
//iimPlayCode("URL GOTO=imacros://run/?m=FUNC/funcDelCookis.js");weit(3);
//iimPlayCode('CLEAR\nTAB CLOSEALLOTHERS\n'+errign+t3+'URL GOTO=https://bitcoinker.com/?r='+refka);weit(3);//вход на сайт
//var url1 = window.location.href;  //- глобальная переменная объявленная в начале работы на странице сайта-крана
//alert (url1)

for(q=0; q<3; q++){
//=======================проверка отработанной капчи==============================================================================================
if(iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Congratulations*')>0) break;//<-- Если введена каптча переходим на следующий сайт
if(iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Felicidades!*')>0) break;//<-- Если введена каптча переходим на следующий сайт
if(iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:Muy<SP>bien!<SP>ganaste<SP>*<SP>Satoshis<SP>!!!<SP>Revisa*')>0) break;//<-- Если введена каптча переходим на следующий сайт
if(iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:¡Felicidades!,<SP>has<SP>ganado<SP>*<SP>Satoshis.')>0) break;//<-- Если введена каптча переходим на следующий сайт
if(iimPlayCode(t0+'TAG POS=1 TYPE=P ATTR=TXT:¡Felicidades!,<SP>has<SP>ganado<SP>*<SP>Satoshis<SP>!')>0) break;//<-- Если введена каптча переходим на следующий сайт 
 if(iimPlayCode(t0+'FRAME F=2 \nTAG POS=1 TYPE=P ATTR=TXT:Congratulations*')>0) break;//<-- Если введена каптча переходим на следующий сайт
//=========================================================================================================================================
         //-= Скриним и расспознаем капу  =-
if(iimPlayCode(t0+'TAG POS=1 TYPE=SPAN ATTR=ID:slog')>0){iimPlayCode("URL GOTO=imacros://run/?m=FUNC/funcSpanSlog.js");}  //<---Если легкая каптча, из которой значение и так выдергивается без распознавания, то выдергиваем текст и ниже кусок кода пропускаем, идём сразу отвечать    
if(iimPlayCode(t0+'TAG POS=1 TYPE=IMG ATTR=ID:adcopy-puzzle-image-image')>0){iimPlayCode('URL GOTO=imacros://run/?m=FUNC/FuncScreenImgImgImgabbyy.js');}
if(iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=ID:adcopy-puzzle-image-image')>0){iimPlayCode('URL GOTO=imacros://run/?m=FUNC/FuncScreenImgImgImgabbyy.js');}

}
*/

/*-----извлекаем и очищаем текст капы--------*/
IzvlechTextOchistka();brak();
alert (txt)
funcCopyRenameIMG ();weit(3);copirCapa();

//=========================================================================================================================================== 
/*-------------------------------------------вставка кошеля --------*/
//iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:address CONTENT='+bit);
//========================================== жмем кнопу Claim ==========================================================================
//iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:claim_coins');
//======================== проверка отработки каптчи ======================================================================================
//if(iimPlayCode(t0+'TAG POS=1 TYPE=DIV ATTR=CLASS:alert*alert*&&TXT:*satoshi*sen*')>0){ alert (OK);}


//=========================================================================================================================================
             /***-= Ожидание =-**/
             
function weit(s){iimPlayCode('WAIT SECONDS='+s);}
//==========================================================================================================================================
/*-----извлекаем и очищаем текст капы--------*/

function IzvlechTextOchistka(){
iimPlayCode('SET !DATASOURCE '+Path+'a.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); //<---извлекаем ответ  
txt1=iimGetExtract(1);
//alert (txt1)
iimPlayCode('SET !DATASOURCE '+Path+'a.txt\nSET !DATASOURCE_LINE 2\nSET !EXTRACT {{!COL1}}'); 
txt2=iimGetExtract(1);
//alert (txt2)
txt=txt1+txt2;
txt=txt.replace(/\W/gi,"").replace(/[0-9]/gi,"").replace(/_/gi,"");   //<---из ответа обрезаем все лишние символы, типа скобок точек минусов и т.д., оставляем только буквы
//if(txt!='' && txt.length>5){}  //<--- Проверяем если полученный ответ, после всех наших обрезаний не пустой о больше 5 символов то ...
//alert (txt)
}


//==================================================================================================================================================

/** Устранение ошибок Abbyy **/ 

function brak(){
          /** Код ошибки *//* Правильный Ответ */
        if(txt=="TeamFLamar"){txt="Team Player"}; // Устранение ошибки  Team Player    
        if(txt=="TeamPlager"){txt="Team Player"}; // Устранение ошибки  Team Player    
        if(txt=="TeamFlaw"){txt="Team Player"}; // Устранение ошибки  Team Player        
        if(txt=="SDHHETrannS"){txt="Spring Training"}; // Устранение ошибки  Spring Training
        if(txt=="DMrvgTrammg"){txt="Spring Training"}; // Устранение ошибки  Spring Training
        if(txt=="urmaTrammg"){txt="Spring Training"}; // Устранение ошибки  Spring Training        
        if(txt=="StudgGroup"){txt="Study Group"}; // Устранение ошибки  Study Group
        if(txt=="StudEruuu"){txt="Study Group"}; // Устранение ошибки  Study Group
        if(txt=="studuEruuu"){txt="Study Group"}; // Устранение ошибки  Study Group    
        if(txt=="StuduErnuu"){txt="Study Group"}; // Устранение ошибки  Study Group    
        if(txt=="StuduEruuu"){txt="Study Group"}; // Устранение ошибки  Study Group        
        if(txt=="FxshTacus"){txt="Fish Tacos"}; // Устранение ошибки  Fish Tacos
        if(txt=="FishTam"){txt="Fish Tacos"}; // Устранение ошибки  Fish Tacos
        if(txt=="FishTarn"){txt="Fish Tacos"}; // Устранение ошибки  Fish Tacos        
        if(txt=="EEILLEEIcan"){txt="Collect Call"}; // Устранение ошибки  Collect Call
        if(txt=="EuuectBall"){txt="Collect Call"}; // Устранение ошибки  Collect Call         
        if(txt=="EDllECtCall"){txt="Collect Call"}; // Устранение ошибки  Collect Call        
        if(txt=="EEIHEFlshmg"){txt="Gone Fishing"}; // Устранение ошибки  Gone Fishing 
        if(txt=="GENEFISWVB"){txt="Gone Fishing"}; // Устранение ошибки  Gone Fishing
        if(txt=="BaneFxsmng"){txt="Gone Fishing"}; // Устранение ошибки  Gone Fishing        
        if(txt=="EmmaPutt"){txt="Birdie Putt"}; // Устранение ошибки  Birdie Putt
        if(txt=="Birdie Pun"){txt="Birdie Putt"}; // Устранение ошибки  Birdie Putt
        if(txt=="HUMEPutt"){txt="Birdie Putt"}; // Устранение ошибки  Birdie Putt
        if(txt=="BirdiePun"){txt="Birdie Putt"}; // Устранение ошибки  Birdie Putt        
        if(txt=="ShaePuush"){txt="Shoe Polish"}; // Устранение ошибки  Shoe Polish
        if(txt=="SHDEPUMSH"){txt="Shoe Polish"}; // Устранение ошибки  Shoe Polish
        if(txt=="DwmgBuard"){txt="Diving Board"}; // Устранение ошибки  Diving Board
        if(txt=="UiniFlEBIErI"){txt="Diving Board"}; // Устранение ошибки  Diving Board        
        if(txt=="HbbLHrse"){txt="Hobby Horse"}; // Устранение ошибки  Hobby Horse
        if(txt=="AbideHithHe"){txt="Abide With Me"}; // Устранение ошибки  Abide With Me        
        if(txt=="Flannelshut"){txt="Flannel Shirt"}; // Устранение ошибки  Flannel Shirt 
        if(txt=="Flannel shin"){txt="Flannel Shirt"}; // Устранение ошибки  Flannel Shirt
        if(txt=="Fanneshut"){txt="Flannel Shirt"}; // Устранение ошибки  Flannel Shirt
        if(txt=="en} 031 hie"){txt="enjoylife"}; // Устранение ошибки  enjoylife
        if(txt=="^grief"){txt="goodgrief"}; // Устранение ошибки  goodgrief
        if(txt=="winning"){txt="winning"}; // Устранение ошибки  enjoylife
        if(txt=="leveljxlouArvcjbdlcL"){txt="levelplayingfield"}; // Устранение ошибки  enjoylife
        if(txt=="Juuchluosdiiy"){txt="lunchtuesday"};
        if(txt=="ZombieaMcbch"){txt="zombieattack"};
        
        
}

//================================================================================================================================================
//=================сбор базы скринов кап=====================================

function funcCopyRenameIMG (){
 var Cc=Components.classes, Ci=Components.interfaces;
 var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
 var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
 var cok=Cc["@mozilla.org/cookiemanager;1"].getService(Ci.nsICookieManager);
 var prf=Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
 var str=Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
 var alt=Cc["@mozilla.org/embedcomp/prompt-service;1"].getService(Ci.nsIPromptService);
 var ab=Cc["@mozilla.org/moz/jssubscript-loader;1"].getService(Ci.mozIJSSubScriptLoader);

   var randomNumber=Math.floor(Math.random()*10000 + 1); //генерация числа от 0 до 10000 для нового имени картинки a.jpg
//alert (randomNumber)
   var Cc=Components.classes, Ci=Components.interfaces;
   var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);       
   var args=['convert', 'C:\\CapNum\\solve\\a.jpg', '-resize', '200x300', '-crop', '194x253+4+4', 'D:\\bazaScrins\\'+randomNumber+'.jpg'];  
       file.initWithPath("C:\\CapNum\\convert.exe");       
       proc.init(file); proc.run(false, args, args.length);}



//===================================================================================================================================================
                /*** Вставка текста каптчи  ***/
    function copirCapa(){weit(1);                      
  if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy-expanded-response')>0){iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy-expanded-response CONTENT='+txt);}
  if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:adcopy_response')>0){iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:adcopy_response CONTENT='+txt);}
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:* ATTR=ID:adcopy_response CONTENT='+txt);       
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT='+txt);
  if(iimPlayCode(t0+'TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy-expanded-response')>0){iimPlayCode(t0+'TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT='+txt);}
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/claim ATTR=ID:adcopy_response CONTENT='+txt);
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT='+txt);
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:videos.php ATTR=ID:adcopy_response CONTENT='+txt);

       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy-expanded-response CONTENT="'+txt+'"');
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:adcopy_response CONTENT="'+txt+'"');       
       iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="'+txt+'"');    
       iimPlayCode(t0+'TAG POS=2 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=ID:adcopy_response CONTENT="'+txt+'"');
        weit(1);
        
    }
    
//============================================================================================================================================
           /** Нажатие кнопок **/
function cnopa(){weit(1); 
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Claim!')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=ID:sendNewSms')<1){    
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=TYPE:checkbox&&ID:checkme&&CHECKED: CONTENT=NO')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:M4jjHH2 ATTR=ID:BodyPlaceholder_TFBBBFD343FFF55')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:RECLAMAR<SP>BITS<SP>AHORA!')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Reclama<SP>tus<SP>bits!')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:¡Reclamar<SP>Satoshis!')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:?active=true#faucet ATTR=ID:roll')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:MainForm ATTR=ID:SignInSubmitButton')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Claim<SP>prize!')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:submit')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:#Faucet ATTR=ID:roll')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=NAME:claim_coins')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TYPE:submit&&ID:sendNewSms&&CLASS:btn<SP>btn-primary')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:ENTER<SP>THE<SP>SATOSHI<SP>DIMENSION<SP>EVERY<SP>*<SP>MINU*')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give<SP>me<SP>my<SP>bits,<SP>baby!')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Claim<SP>prize<SP>every<SP>15<SP>minutes!')<1){ 
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Give<SP>me<SP>my<SP>Free<SP>Bits!')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:GET<SP>FREE<SP>BTC<SP>SATOSHI!')<1){
if(iimPlayCode(t0+'TAG POS=1 TYPE=BUTTON FORM=ID:form-captcha ATTR=ID:captcha')<1){

                  
for(w=0; w<5; w++){ if(iimPlayCode('SET !TIMEOUT_STEP 0\nFRAME F='+w+'\nTAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Claim<SP>Your<SP>Prize!')>0){break;} }                    
                   
}}}}}}}}}}}}}}}}}}}}};baner(); }

//===============================================================================================================================
                     /*** Удаление баннеров ***/
  function baner(){
         iimPlayCode(t0+'TAB T=0'); iimPlayCode(t0+'TAB CLOSEALLOTHERS');}



//==================================================================================================================================


В результате получаю:
скрытый текст
e2f4015e3e4f.jpg

Помогите убрать слово NULL в конце.

volobond
уберите

1

из =iimGetExtract(

1

);
и вопросы по скриптам для капчи, задавайте в соответствующей теме

05-11-2016 14:49:03

скрытый текст

Выделить код

Код:

IzvlechTextOchistka();
alert (txt)

//==========================================================================================================================================
/*-----извлекаем и очищаем текст капы--------*/

function IzvlechTextOchistka(){
iimPlayCode('SET !DATASOURCE '+Path+'a.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); //<---извлекаем ответ  
txt1=iimGetExtract();
//alert (txt1)
iimPlayCode('SET !DATASOURCE '+Path+'a.txt\nSET !DATASOURCE_LINE 2\nSET !EXTRACT {{!COL1}}'); 
txt2=iimGetExtract();
//alert (txt2)
txt=txt1+txt2;
txt=txt.replace(/\W/gi,"").replace(/[0-9]/gi,"").replace(/_/gi,"");   //<---из ответа обрезаем все лишние символы, типа скобок точек минусов и т.д., оставляем только буквы
//if(txt!='' && txt.length>5){}  //<--- Проверяем если полученный ответ, после всех наших обрезаний не пустой о больше 5 символов то ...
//alert (txt)
}

InfSub

Спасибо! Очень помогли.
В будущем исправлюсь.

InfSub
Тогда если я правильно понял,то мою задумку не возможно реализовать ?

Gergi
что мешает сначала считать все данные, потом сравнить и сохранить?

InfSub пишет

Gergi
что мешает сначала считать все данные, потом сравнить и сохранить?

Мешает то что не могу понять как это сделать.

Gergi
вы не можете вынести за цикл, считывающий ваш файл, проверку на совпадения и сделать еще один цикл для сохранения данных построчно?
может вы уже научитесь за 3 года присутствия на форуме, пользоваться поиском? примеров чуть ли не на каждой страницы данной темы полно

05-11-2016 15:21:34
впрочем, в данном случае - вообще нужно только правильно указать границы цикла for() и изменить способ внесения данных в массив text так, чтобы данные в него дописывались

05-11-2016 15:26:45

Gergi - Отсутствует

offtop
ну да, куда ж вам поиском-то пользоваться, авось кто-то за вас все напишет

Да всё везде уже перерыл,и не только наш форум:sick:
Как вариант хочу сделать иначе.
Вот есть у меня два txt файла. C:\\1.txt и  C:\\2.txt в C:\\1.txt находятся слова которые скрипт должен игнорировать,
например он берёт слово из C:\\2.txt и ищет это слово в C:\\1.txt если находит его то делает бряк и берёт другое слово их C:\\2.txt
и если не находит такое слово в C:\\1.txt тогда продолжает работу далее по циклу.
Так ваще было бы идеально:music:

Gergi
вам уже ответили на этот вопрос, если у вас не хватает знаний, чтобы правильно поставить закрывающую скобку в цикле for(){} - идите учите js
вопрос закрыт, продолжение дискуссии буду считать саботажем!

Привет всем) Помогите пожалуйста, есть объект c названием допустим artiomreikhman (ссылка) который цепляется при помощи EVENT. Но есть проблема, ссылка открывается в той же вкладке, как мне перейти на вторую кладку при открытии ссылки ?
Есть вариант скопировать ссылку, открыть новую вкладку и вставить туда ее. Как мне скопировать ссылку, если она чекается только через евент ? помогите пожалуйста)
Вот команда при которой ссылка открывается.

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>UL>LI:nth-of-type(4)>DIV>DIV>DIV>DIV" BUTTON=0


код публикуется в тегах code внутри спойлера

InfSub

скрытый текст

Выделить код

Код:

TAB OPEN
TAB T=2


код публикуется в тегах code внутри спойлера

InfSub

Gergi
вкладка новая создается и открывается, но ссылка все равно открывается в 1 вкладке

Я вижу выход в использовании !EXTRACT но не понимаю за что зацепиться, когда ссылка находится  только через EVENT

segunover

как мне перейти на вторую кладку при открытии ссылки ?

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>UL>LI:nth-of-type(4)>DIV>DIV>DIV>DIV" BUTTON=1

Здравствуйте!Подскажите,как поочередно воспроизводить js-файлы из одного js или iim файла?

:| Здравствуйте!

:( я просто в ужасе. Не могу никак записать скрипт. Мне надо сделать что-бы АйМакрос находясь в Яндекс почте нажал кнопку "Написать", заполнил поля кому, тема, текст письма и нажал отправить.
Казалось-бы всё просто, но так было раньше. Сейчас я только отрегулировал казалось бы процесс, но когда зашёл через другую почту то уже ничего не работает из написанного мной.

скрытый текст

Выделить код

Код:

EVENT TYPE=CLICK SELECTOR="#nb-1>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>A>SPAN>svg>rect" BUTTON=0
WAIT SECONDS=1
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>LABEL>DIV:nth-of-type(3)>DIV>DIV" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>LABEL>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>INPUT" CHAR="{{!VAR7}}"
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>LABEL>DIV:nth-of-type(3)>INPUT" CHAR="forever"
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>LABEL>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV" CHAR="{{!VAR1}}<SP>{{!VAR2}}<SP>{{!VAR3}}"
SET !TIMEOUT 600
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(3)>DIV>DIV>BUTTON" BUTTON=0


И вторая ситуация: не могу сделать авто вход в Киви кошелёк. Открывает сайт, нажимает кнопку войти и всё... . Останавливается. Хотя по отдельности тестил - заходит (1. Нажимает войти. 2. Заполняет поля телефон, пароль и нажимает войти). Раньше было всё проще и проблем не было. Всё работало.
скрытый текст

Выделить код

Код:

TAB OPEN
TAB T=2
URL GOTO=https://qiwi.com/
TAG POS=2 TYPE=DIV ATTR=TXT:Войти
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" KEYS="[39,39]"
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" CHARS="телефон"
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>INPUT" CHARS="пароль"
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Войти


И ещё, нужно что-бы АйМакрос генерировал пароль, длиною 8 символов. В пароле должна обязательно быть одна цифра, одна заглавная буква и одна маленькая. Что-то типа 8dfTswfv должно быть на выходе, написал непойми чего, работает правда, но наверно есть более правильный метод и компактней:
скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var a=['0','1','2','3','4','5','6','7','8','9'],r=Math.floor(Math.random()*10 + 0);a[r];")
SET !VAR2 EVAL("var a=['A','b','c','d','e','f','g','h','i','j','k','l','M','n','o','p','q','r','s','t','u','v','w','x','Y','z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR3 EVAL("var a=['a','B','c','d','e','f','g','h','i','j','k','I','m','N','o','p','q','r','s','t','u','v','w','X','y','Z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR4 EVAL("var a=['a','b','C','d','e','f','g','h','i','j','K','l','m','n','O','p','q','r','s','t','u','v','W','x','y','z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR5 EVAL("var a=['a','b','c','D','e','f','g','h','i','J','k','l','m','n','o','P','q','r','s','t','u','V','w','x','y','z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR6 EVAL("var a=['a','b','c','d','E','f','g','h','I','j','k','l','m','n','o','p','Q','r','s','t','U','v','w','x','y','z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR7 EVAL("var a=['a','b','c','d','e','F','g','H','i','j','k','l','m','n','o','p','q','R','s','T','u','v','w','x','y','z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR8 EVAL("var a=['a','b','c','d','e','f','G','h','i','j','k','l','m','n','o','p','q','r','S','t','u','v','w','x','y','z'],r=Math.floor(Math.random()*26 + 0);a[r];")
SET !VAR0 {{!VAR1}}{{!VAR2}}{{!VAR3}}{{!VAR4}}{{!VAR5}}{{!VAR6}}{{!VAR7}}{{!VAR8}}
SET !VAR9 {{!VAR2}}{{!VAR3}}{{!VAR4}}{{!VAR5}}{{!VAR6}}{{!VAR7}}{{!VAR8}}{{!VAR1}}
SET !VAR0 EVAL("var a=['{{!VAR0}}','{{!VAR9}}'],r=Math.floor(Math.random()*2 + 0);a[r];")


Ну не ужели всё так плохо, или есть варианты?

Спасибо.

отредактировано
код публикуется в тегах code внутри спойлера, правила форума iMacros

InfSub

borisenko1
открыть FAQ раздела iMacros на нашем форуме, например и посмотреть как запустить iim из js
запускать js из js очень не рекомендую, если не хотите словить кучу глюков

07-11-2016 08:07:58
Даниил955447112
по поводу рандомного пароля, в данной теме уже были посты с решениями, ищите
все остальное, надо запускать и смотреть  - мне сейчас не на чем

InfSub пишет

borisenko1
открыть FAQ раздела iMacros на нашем форуме, например и посмотреть как запустить iim из js
запускать js из js очень не рекомендую, если не хотите словить кучу глюков

Пробовал делать так,как написано в разделе FAQ,получается воспроизвести только 1 фаил.А мне нужно что-бы 1,2,3 и т.д. работали по кругу поочередно.Это возможно?

borisenko1

test.js

Выделить код

Код:

iimPlay('file1.iim');
iimPlay('file2.iim');
iimPlay('file3.iim');

Всем привет! :whiteflag:

Меня устраивает этот код, как генератор рандомного пароля:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var i=8,w='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',r='',m=w.length;while(i--){r+=w.charAt(Math.floor(Math.random()*(m)));};")


Но, как мне сделать обязательные условия для него?
В пароле должна быть обязательно:
1 цифра.
1 заглавная буква.
1 прописная буква.

Последовательность любая.
Остальное без разницы, чего там. Маленькое, или большое с цифрами.

InfSub
Спасибо Большое!

Даниил955447112
Для почтового ящика я бы вам советовал писать макрос на js, будет гораздо проще реализовать задумку! например писал для маила, буквально неделю назад поменялся интерфейс и код страницы постоянно меняется, поэтому использовал код страницы и находил нудный id:

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=FORM ATTR=ID:toolkit-* EXTRACT=HTM');
var html=iimGetLastExtract();

var a=html.indexOf("toolkit-");
html=html.slice(a);
var mai=html.slice(0,24);
mai=mai.match(/\d+/g);
html=html.slice(a);
iimPlayCode('SET !REPLAYSPEED MEDIUM\nTAG POS=1 TYPE=TEXTAREA FORM=ID:toolkit-'+mai+'composeForm ATTR=WRAP:off&&TABINDEX:4&&DATA-ORIGINAL-NAME:To&&CLASS:js-input<SP>compose__labels__input&&AUTOCOMPLETE:off CONTENT='+mail+'\n');


На странице есть неизменные элементы, за них и цепляемся

08-11-2016 10:58:59
InfSub
Спасибо за помощь. Еще такой вопрос: где-то видел в интернете, что есть команда для вывода информации в окне ошибок, но никак не могу найти, случайно не подскажешь?

удалено, п.п. 2.8

InfSub

Всем привет, подскажите как из текста убрать символ $   ни как не получается.    как пример   5.26 $      надо чтобы осталось 5.26   //сколько не пытаюсь  точка  тоже исчезает вместе с $ и получается 526.   Заранее спасибо.

vadim52958

скрытый текст

Выделить код

Код:

var tex='5.26$';
tex=tex.replace('$','')
alert(tex)

Sergey_yu пишет

есть команда для вывода информации в окне ошибок

предполагаю, что вы о iimDisplay() говорите

dim222    спасибо    очень помогли, а можно все тоже, только в imacros, кому интересно вот код:

скрытый текст

Выделить код

Код:

SET !EXTRACT "Баланс:5.26 $"
SET !VAR2 EVAL("\"{{!EXTRACT}}\".replace(/^.*Баланс:/,\"\").replace(\"$\",\"\")")
prompt {{!VAR2}}


отредактировано
код публикуется в тегах code внутри спойлера, правила форума iMacros

InfSub

Парни, помогите с кодом, не выделяет вставленную ссылку, для ее последующего удаления... 

скрытый текст

Выделить код

Код:

VERSION BUILD=8820413 RECORDER=FX
SET !TIMEOUT 60
SET !REPLAYSPEED FAST
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAB T=1
SET !VAR8 EVAL("var randomNumber=Math.floor(Math.random()*1 + 1); randomNumber;")
SET !VAR6 EVAL("var random=Math.floor(Math.random()*11 + 15); random;")
SET !VAR7 EVAL("var random=Math.floor(Math.random()*2 + 15); random;")
SET !DATASOURCE C:\Users\Antonio\Documents\iMacros\Macros\Vk.txt
SET !DATASOURCE_COLUMNS 3
SET !LOOP 1
SET !DATASOURCE_LINE {{!LOOP}}
WAIT SECONDS={{!VAR8}}
URL GOTO={{!COL1}}
WAIT SECONDS={{!VAR7}}
EVENT TYPE=CLICK SELECTOR="#post_field" BUTTON=0
SET !REPLAYSPEED MEDIUM
EVENTS TYPE=KEYPRESS SELECTOR=#post_field CHARS= "https://vk.com/photo240067866_435692710?rev=1"
WAIT SECONDS=1
SET !REPLAYSPEED MEDIUM
EVENT TYPE=KEYPRESS SELECTOR="#email" Char="a" MODIFIERS="ctrl" 'CTRL-A'
EVENT TYPE=KEYPRESS SELECTOR="#email" KEY=8 ' Type BACKSPACE'
EVENTS TYPE=KEYPRESS SELECTOR=#post_field CHARS="Продам очки виртуальная реальность!"
EVENT TYPE=KEYPRESS SELECTOR=#post_field KEY=13
EVENTS TYPE=KEYPRESS SELECTOR=#post_field CHARS=" Почти ДАРОМ!"
EVENT TYPE=KEYPRESS SELECTOR=#post_field KEY=13
EVENTS TYPE=KEYPRESS SELECTOR=#post_field CHARS=" Уже в наличии в Пензе! "
EVENT TYPE=KEYPRESS SELECTOR=#post_field KEY=13
WAIT SECONDS={{!VAR7}}
TAG POS=1 TYPE=BUTTON ATTR=ID:send_post
WAIT SECONDS={{!VAR8}}
WAIT SECONDS=8
SET !REPLAYSPEED FAST


отредактировано
код публикуется в тегах code внутри спойлера, правила форума iMacros

InfSub

AntonioD
так используйте backspace для удаления ссылки с соответствующим количеством нажатий
...  KEY=[8,8,8,8,......]

InfSub пишет

AntonioD
так используйте backspace для удаления ссылки с соответствующим количеством нажатий
...  KEY=[8,8,8,8,......]

Не удаляет, написал так 

скрытый текст

Выделить код

Код:

EVENT TYPE=KEYPRESS SELECTOR="#email" KEY=[8,8,8,8,8] ' Type BACKSPACE'

AntonioD
а какое отношение имеет строка с id=email к полю со ссылкой? или бездумно копи-пастим то что есть?

удалено, п.п.2.8 тема с вопросом
замечание (п.п.2.22)

InfSUb

InfSub пишет

AntonioD
а какое отношение имеет строка с id=email к полю со ссылкой? или бездумно копи-пастим то что есть?

Честно, не понимаю в этом, поэтому и спрашиваю. По сути текст пишется и постится, но ссылка на фото не выделяется и не удаляется.

для этого есть ЛС или кнопка "сообщить модератору" под постом
ссылку добавил

InfSub

AntonioD
замените e-mail на post_field и скорее всего, даже первоначальный код у вас заработает

удалено, п.п.2.8

InfSUb

Привет всем!
Застрял. Помогите заEXTRACTить:
на странице сайта

скрытый текст

вот эти цифры(желтым)
скрытый текст
3413901ebd30.jpg

HTML-код выглядит так
скрытый текст
c650aedba829.jpg

и сам HTML-код:
скрытый текст

Выделить код

Код:

<div class="post-content" style="outline: 1px solid blue;">
<iframe class="chartjs-hidden-iframe" style="width: 100%; display: block; border: 0px none; height: 0px; margin: 0px; position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px;">
<p style="text-align: center;">
<form method="get" action="">
<canvas id="chart-information" style="width: 702px; height: 351px;" width="702" height="351"></canvas>
<div style="padding: 10px 0px; outline: 1px solid blue;">
<label>Unpaid address balance</label>
: 37215 Satoshis
<br>
<label>Address seniority</label>
: 57 days
<br>
<label>Seniority bonus</label>
: 10% on all direct payouts
<br>
<label>Time until next seniority level</label>
: 4 days
<br>
<label>Submits per 24 hours</label>
: 86 / 120
<br>
</div>


У меня получается только больше, чем нужно вот таким кодом
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=style:padding:<SP>10px<SP>0px;<SP>outline:<SP>1px<SP>solid<SP>blue; EXTRACT=TXT


и выглядит это так
скрытый текст
eea6fb19ed39.jpg

volobond

скрытый текст

Выделить код

Код:

a=iimGetLastExtract().split(':');
alert(a[5]);


Здравствуйте, прошу помощи.
Извлекаю этим кодом:
скрытый текст

Выделить код

Код:

claim=iimGetExtract().match(/window.*?\);/);


Получаю вот такой результат:
скрытый текст

Выделить код

Код:

window.open('index.php?view=surfer&amp;t=d56e24a774e3fabd059790f86a081980&amp;p=0x6c50mn6080x0cps4&amp;u=891201','_blank');


помогите избавиться от amp;
Спасибо

karginaolga
:beer:Спасибо за пару красивых строчек. А то я со своими достижениями в RegExp за день такой огород сгородил. На всякий случай код не выкладываю, хотя цель достиг.:blush:

karginaolga
а чем вас replace() не устраивает?

скрытый текст

Выделить код

Код:

claim=iimGetExtract().match(/window.*?\);/).replace(/&amp;/g,'&');

InfSub

скрытый текст

Выделить код

Код:

TypeError: iimGetExtract(...).match(...).replace is not a function, line 15 (Error code: -991)


Вот так работает:
скрытый текст

Выделить код

Код:

claim=iimGetExtract().replace(/&amp;/g,'&').match(/window.*?\);/);


надо-было наоборот переставить
Спасибо

karginaolga
отвечал "на ходу" с мобильного, не учел, что match() возвращает объект

Здравствуйте. Понимаю, что спрашивать надо не на этом форуме, но вдруг кто сталкивался с подобной проблемой и поброл её?
Вследствие какого-то глюка подпапка со скриптом (1.iim) оказалась вложена в саму себя 14 раз...

Т.е. структура подпапок сейчас такая:

скрытый текст

Выделить код

Код:

c:\Documents and Settings\Admin\Мои документы\iMacros\Macros\ОК\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка1\подпапка2\1.iim


тогда как раньше было
скрытый текст

Выделить код

Код:

c:\Documents and Settings\Admin\Мои документы\iMacros\Macros\ОК\подпапка1\подпапка2\1.iim


Файл iim не копируется, не переносится, не открывается ни в каком текстовом редакторе, не запускается в браузере.
Кто нибудь с таким сталкивался и что посоветуете? ОС Виновс ХР.

Проблема решена с помощью копирования скрипта в другую папку программой FAR Manager.

udalov переместите файл обратно, в нужную папку, лишние папки удалите (для перемещения воспользуйтесь файловым менеджером, например far или total commander, проблема в том, что xp не поддерживает такую глубину вложенности папок)
это бывает, когда вместо щелчка по папке в iMacros, вы смещаете ее и она, как бы вкладывается сама в себя, старый баг

подскажите что за ошибка и как исправить?

RuntimeError: Source does not match to TXT='только 40 друзей в день', line: 2 (Error code: -926)

volchsek
значит, что текст не найден

Мальчики, ток не ругайтесь:blush: У меня 70 аккаунтов, через которые подаю объявления на разные доски объявлений на протяжении целой недели с разными текстами. Проблема заключается в том, что нужно выбирать города из выпадающего списка, там не получается так, что вводишь слово "винница" например и тебе выбирает этот город (на других досках пока получается). Каким образом можно зациклить это в джаваскрипте, чтобы каждый раз выбирало нужный город? Я могу 70 городов вручну прописать в js, но каким образом можно зациклить?
Если это обсуждалось, по какому ключу искать необходимое?

п.с. пока еще не перенесла в js

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SELECT FORM=ID:boardPostForm ATTR=ID:region1 CONTENT=%9500000000
WAIT SECONDS=2
TAG POS=1 TYPE=SELECT FORM=ID:boardPostForm ATTR=ID:region2 CONTENT=%9510100000

Vikkada

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=SELECT FORM=ID:boardPostForm ATTR=ID:region1 CONTENT=$винница

InfSub пишет

это бывает, когда вместо щелчка по папке в iMacros, вы смещаете ее и она, как бы вкладывается сама в себя, старый баг

такой баг на всех версиях iMacros, или есть версии без этого бага?

udalov
на сколько помню, на всех иногда такое происходило
в принципе, решается легко на windows vista и выше, на xp с небольшим бубном в виде стороннего софта (как - описано выше)

не могу понять после выполнения всего цикла
следующая строка извлекается со значение NULL из текстового файла в чем может быть дело

скрытый текст

Выделить код

Код:

for (var zk=1;zk<=14;zk++){

 //iimPlayCode("set !extract null");
 macros = "CODE: SET !DATASOURCE_DELIMITER ;"+n;
 macros += "CMDLINE !DATASOURCE C:\\Zadaniy.txt"+n;
 macros += "SET !DATASOURCE_COLUMNS "+8+n;
// macros += "SET !LOOP "+zk+n;
 macros += "SET !DATASOURCE_LINE "+zk+n;
 macros += "ADD !EXTRACT {{!COL1}}"+n;
 macros += "ADD !EXTRACT {{!COL2}}"+n;
 macros += "ADD !EXTRACT {{!COL3}}"+n;
 macros += "ADD !EXTRACT {{!COL4}}"+n;
 macros += "ADD !EXTRACT {{!COL5}}"+n;
 macros += "ADD !EXTRACT {{!COL6}}"+n;
 macros += "ADD !EXTRACT {{!COL7}}"+n;
 macros += "ADD !EXTRACT {{!COL8}}"+n;
 
 iimPlay(macros);
 var nomer   = iimGetExtract(1);
 var strzap  = iimGetExtract(2);
 var strtube = iimGetExtract(3);
 var videokanal = iimGetExtract(4);
 var vid = iimGetExtract(5);
 var recl = iimGetExtract(6);
 var pod_recl = iimGetExtract(7); 
 var vidot = iimGetExtract(8); 
  
alert(nomer); 
alert(zk); 

  
 poisk_zadan(nomer);
 if (zadan_vipol(nomer)==0){continue;};
 zadan_pusk(strzap,strtube);
 iimPlayCode('WAIT SECONDS=10');
 iimPlayCode('URL GOTO='+videokanal);
 
var z2=0;
var videss = new Array();
for (var i2=1;i2<=10000;i2++){
 iimPlayCode("SET !TIMEOUT 10\nTAG POS="+i2+" TYPE=A ATTR=HREF:*watch?* EXTRACT=HREF\n"); 
 var z=iimGetExtract();
 if(z=='#EANF#'){break;}
 if (z!==z1){videss[z2]=z;z2++;}
 var z1=z;}

var aItVideo = new Array();
var z5=0;
var n,num=[],max=videss.length-1;
while(num.length<max&&z5<vid){
n=Math.floor(Math.random()*max)+1;
if(num.indexOf(n)==-1){num.push(n);z5++;}}  
for (t=0;t<num.length;t++){WriteFile(videss[num[t]],'otchet.txt');}
//-------------------------------------------------------------------------------------


var a1=0;
var recl1=0;
for (i5 = 0; i5<videss.length ; i5++){
      iimPlayCode('URL GOTO='+videss[i5]);
      iimPlayCode('WAIT SECONDS=33');
      if(recl1<recl){
       a1=reclama(pod_recl);
       recl1=recl1+a1;
       }
      if(recl1==recl&&i5>=vid){break;}
     }
//--------------------------------------------------------------- 
vkladki(3,1);
vkladki(2);
//-----------------------
otchet(vidot);
iimPlayCode('WAIT SECONDS=3');
alert(vidot);
iimPlayCode("TAG POS=1 TYPE=SPAN ATTR=TXT:Отправить<SP>отчёт")
iimPlayCode('WAIT SECONDS=5'); 
 

//---- закрываем все вкладки и переходим на первую -----
r=vkladki(1,2);
//------------------------------------------------------
}


хотя если убрать все лишнее снизу до строки alert(zk); цикл отрабатывает нормально
все строки поочереди?

Добрый всем вечер, подскажите  что не хватает   в условии

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
TAG POS=67 TYPE=DIV ATTR=* EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/^.*Баланс:/,\"\")")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SET !VAR2 EVAL("var s=\"{{!VAR1}}\"; s.replace(\"$\",\"\"); var d=parseFloat(s); if(d < 1.05){iimPlay("ddd.iim");} else{iimPlay("02.iim")}";)


почему условие не работает????
Почему не запускается {iimPlay("ddd.iim");} else{iimPlay("02.iim")}";)
Заранее спасибо.

vadim52958
потому что js функции iMacros'a работают только в управляющем js-скрипте
как запустить iim-скрипт из iim-скрипта, описано в FAQ
для выбора нужного файла, аналогичным образом передайте ему имя скрипта, а не пытайтесь запустить его из eval()

15-11-2016 00:47:01
Scorp1978
может опишите проблему более подробно?

InfSub
даже не знаю как объяснить вот вот этот код работает нормально то есть перебирает по очереди записи делит их на колонки

скрытый текст

Выделить код

Код:

for (var zk=1;zk<=14;zk++){
 macros = "CODE: SET !DATASOURCE_DELIMITER ;"+n;
 macros += "CMDLINE !DATASOURCE C:\\Zadaniy.txt"+n;
 macros += "SET !DATASOURCE_COLUMNS "+8+n;
 macros += "SET !DATASOURCE_LINE "+zk+n;
 macros += "ADD !EXTRACT {{!COL1}}"+n;
 iimPlay(macros);
 var nomer   = iimGetExtract(1);
}


но если в цикл добавить весь код который я убрал то получается так первый цикл отрабатывает нормально, а на втором цикле из файла экстрактится NULL
т.е  var nomer   = iimGetExtract(1); на втором цикле почемуто возвращает NULL когда должен возвращать значения со второй строки

Scorp1978
ваш код содержит функции, не приведенные в листинге, результат работы которых, достаточно сложно предположить, да и о корректности данных функций судить, не видя их - очень сложно, так же не известно содержимое файла данных
по этому, сказать где именно у вас ошибка = гаданию на кофейной гуще, дебажте свой скрипт или выкладывайте весь код, если не можете отладить самостоятельно
предположительно, проблема в одной из функций, вызываемых внутри цикла, к примеру. вы могли использовать глобальную переменную вместо локальной с именем используемом в данном цикле

скрытый текст

Выделить код

Код:

SET слова "Вася,Petya,Серёжа"
SET !EXTRACT EVAL(""{{слова}}".replace(/,/g,'[EXTRACT]')")
SAVEAS TYPE=EXTRACT FOLDER=* FILE=тест.txt


Результат
"Ваяся","Petya","Серёжа"

А как сделать, чтобы они сохранялись в один столбик?
"Ваяся"
"Petya"
"Серёжа"

Ребятки, привет. Как сделать, чтобы второй аккаунт постил с 31 группы по 60? Три дня ищу не понимаю:P
Выкладываю весь код:

скрытый текст

Выделить код

Код:

var macro1
macro1 = "CODE:";
//macro1 += "SET !REPLAYSPEED FAST" + "\n";
macro1 += "SET !ERRORIGNORE YES" + "\n";
macro1 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro1 += "CMDLINE !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\dannye.csv" + "\n";
macro1 += "SET !DATASOURCE_LINE 1" + "\n";
macro1 += "SET login {{!COL1}}" + "\n";
macro1 += "SET parol пароль" + "\n";
macro1 += "URL GOTO=https://вк.ком" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{login}}" + "\n";
macro1 += "SET !ENCRYPTION NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{parol}}" + "\n";
macro1 += "TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button" + "\n";
macro1 += "WAIT SECONDS=#DOWNLOADCOMPLETE#" + "\n";
for (e=1;e<31;e++){
macro1 += "SET !DATASOURCE_LINE 1" + "\n";
macro1 += "SET text {{!COL2}}" + "\n";
macro1 += "SET !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\Grupyrab.txt" + "\n";
macro1 += "SET !DATASOURCE_LINE " + e + "\n";
macro1 += "SET Grupa {{!COL1}}" + "\n";
macro1 += "URL GOTO={{Grupa}}" + "\n";
macro1 += "WAIT SECONDS=4" + "\n";
macro1 += "EVENT TYPE=CLICK SELECTOR=\"#post_field\" BUTTON=0" + "\n";
//macro1 += "CMDLINE !DATASOURCE C:\\Imacro1s\\macro1s\\VK\\Datasources\\dannye.csv" + "\n";
//macro1 += "SET !DATASOURCE_LINE 1" + "\n";
//macro1 += "SET text {{!COL2}}" + "\n";
macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" CHARS={{text}}" + "\n";
macro1 += "WAIT SECONDS=2" + "\n";
//macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" KEYS=\"[8]\"" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#page_ldocs_preview1>DIV>DIV>DIV\" BUTTON=0" + "\n";
//macro1 += "TAG POS=1 TYPE=DIV ATTR=CLASS:page_media_x&&NOSORTHANDLE:1&&TXT:" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#send_post\" BUTTON=0" + "\n";
//macro1 += "WAIT SECONDS=5" + "\n";
}
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_profile_link" + "\n";
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_logout_link" + "\n";



//macro1 += "SET !REPLAYSPEED FAST" + "\n";
macro1 += "SET !ERRORIGNORE YES" + "\n";
macro1 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro1 += "CMDLINE !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\dannye.csv" + "\n";
macro1 += "SET !DATASOURCE_LINE 2" + "\n";
macro1 += "SET login {{!COL1}}" + "\n";
macro1 += "SET parol пароль" + "\n";
macro1 += "URL GOTO=https://вк.ком" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{login}}" + "\n";
macro1 += "SET !ENCRYPTION NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{parol}}" + "\n";
macro1 += "TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button" + "\n";
macro1 += "WAIT SECONDS=#DOWNLOADCOMPLETE#" + "\n";
macro1 += "SET !DATASOURCE_LINE 2" + "\n";
macro1 += "SET text {{!COL2}}" + "\n";
for (var i=1;i<31;i++){ 
macro1 += "SET !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\Grupyrab.txt" + "\n";
//macro1 += "SET !DATASOURCE_LINE " + i + "\n";
macro1 += "SET !LOOP 3" + i + "\n"; //???
macro1 += "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
//k1=3;urlgroup="q";
//while (urlgroup!) {k1++;
macro1 += "SET Grupa {{!COL1}}" + "\n";
macro1 += "URL GOTO={{Grupa}}" + "\n";
macro1 += "WAIT SECONDS=4" + "\n";
macro1 += "EVENT TYPE=CLICK SELECTOR=\"#post_field\" BUTTON=0" + "\n";
//macro1 += "CMDLINE !DATASOURCE C:\\Imacro1s\\macro1s\\VK\\Datasources\\dannye.csv" + "\n";
//macro1 += "SET !DATASOURCE_LINE 1" + "\n";
//macro1 += "SET text {{!COL2}}" + "\n";
macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" CHARS={{text}}" + "\n";
macro1 += "WAIT SECONDS=2" + "\n";
//macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" KEYS=\"[8]\"" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#page_ldocs_preview1>DIV>DIV>DIV\" BUTTON=0" + "\n";
//macro1 += "TAG POS=1 TYPE=DIV ATTR=CLASS:page_media_x&&NOSORTHANDLE:1&&TXT:" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#send_post\" BUTTON=0" + "\n";
//macro1 += "WAIT SECONDS=5" + "\n";
}
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_profile_link" + "\n";
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_logout_link" + "\n";
iimPlay(macro1)

InfSub
удалено избыточное цитирование
помощь требуется весь скрипт светить не хочу как быть, на почту можно Вам выслать?

InfSub

InfSub
удалено избыточное цитирование
почему тогда так работает

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO

TAG POS=67 TYPE=DIV ATTR=* EXTRACT=TXT
SET !VAR1 EVAL("\"{{!EXTRACT}}\".replace(/^.*Баланс:/,\"\")")
SET !EXTRACT NULL
SET !EXTRACT {{!VAR1}}
SET !VAR2 EVAL("var s=\"{{!VAR1}}\"; s.replace(\"$\",\"\"); var d=parseFloat(s); if(d < 1.05){MacroError(\"Баланс меньше 1.05 USD.\");} else d;")                                                                                   
URL GOTO=imacros://run/?m=ddd.iim


у меня  вопрос как запустить правильно   условие if  else в  imacros
почему эта строчка {MacroError(\"Баланс меньше 1.05 USD.\");} else d;") работает, а когда я заменяю на имя скрипта не работает

Scorp1978
да

15-11-2016 23:30:27

vadim52958 пишет

почему тогда так работает

потому что url goto не js функция iMacros'a

15-11-2016 23:31:51
функции, начинающиеся на iim... (iimPlay, iimGetLastExtract и т.д.) в iim-скриптах не работают, только в js

Sergey_yu пишет

https://forum.mozilla-russia.org/viewto … 81#p725781
Подскажите пожалуйста. как записывать данные в csv с переносом строки.

скрытый текст

Выделить код

Код:

var myarray=["Алеша","Василий","Петя"];
var myarrayy = myarray.join(';');
var myarrayy =myarrayy.replace(/\;/g, "\n");
iimPlayCode('ADD !EXTRACT '+myarrayy+'\nSAVEAS TYPE=EXTRACT FOLDER='+ssilka+' FILE=proverka.csv\n');

Vikkada пишет

Ребятки, привет. Как сделать, чтобы второй аккаунт постил с 31 группы по 60? Три дня ищу не понимаю:P
Выкладываю весь код:

скрытый текст

Выделить код

Код:

var macro1
macro1 = "CODE:";
//macro1 += "SET !REPLAYSPEED FAST" + "\n";
macro1 += "SET !ERRORIGNORE YES" + "\n";
macro1 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro1 += "CMDLINE !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\dannye.csv" + "\n";
macro1 += "SET !DATASOURCE_LINE 1" + "\n";
macro1 += "SET login {{!COL1}}" + "\n";
macro1 += "SET parol пароль" + "\n";
macro1 += "URL GOTO=https://вк.ком" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{login}}" + "\n";
macro1 += "SET !ENCRYPTION NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{parol}}" + "\n";
macro1 += "TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button" + "\n";
macro1 += "WAIT SECONDS=#DOWNLOADCOMPLETE#" + "\n";
for (e=1;e<31;e++){
macro1 += "SET !DATASOURCE_LINE 1" + "\n";
macro1 += "SET text {{!COL2}}" + "\n";
macro1 += "SET !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\Grupyrab.txt" + "\n";
macro1 += "SET !DATASOURCE_LINE " + e + "\n";
macro1 += "SET Grupa {{!COL1}}" + "\n";
macro1 += "URL GOTO={{Grupa}}" + "\n";
macro1 += "WAIT SECONDS=4" + "\n";
macro1 += "EVENT TYPE=CLICK SELECTOR=\"#post_field\" BUTTON=0" + "\n";
//macro1 += "CMDLINE !DATASOURCE C:\\Imacro1s\\macro1s\\VK\\Datasources\\dannye.csv" + "\n";
//macro1 += "SET !DATASOURCE_LINE 1" + "\n";
//macro1 += "SET text {{!COL2}}" + "\n";
macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" CHARS={{text}}" + "\n";
macro1 += "WAIT SECONDS=2" + "\n";
//macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" KEYS=\"[8]\"" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#page_ldocs_preview1>DIV>DIV>DIV\" BUTTON=0" + "\n";
//macro1 += "TAG POS=1 TYPE=DIV ATTR=CLASS:page_media_x&&NOSORTHANDLE:1&&TXT:" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#send_post\" BUTTON=0" + "\n";
//macro1 += "WAIT SECONDS=5" + "\n";
}
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_profile_link" + "\n";
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_logout_link" + "\n";



//macro1 += "SET !REPLAYSPEED FAST" + "\n";
macro1 += "SET !ERRORIGNORE YES" + "\n";
macro1 += "FILTER TYPE=IMAGES STATUS=ON" + "\n";
macro1 += "CMDLINE !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\dannye.csv" + "\n";
macro1 += "SET !DATASOURCE_LINE 2" + "\n";
macro1 += "SET login {{!COL1}}" + "\n";
macro1 += "SET parol пароль" + "\n";
macro1 += "URL GOTO=https://вк.ком" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:TEXT FORM=ID:quick_login_form ATTR=ID:quick_email CONTENT={{login}}" + "\n";
macro1 += "SET !ENCRYPTION NO" + "\n";
macro1 += "TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:quick_login_form ATTR=ID:quick_pass CONTENT={{parol}}" + "\n";
macro1 += "TAG POS=1 TYPE=BUTTON ATTR=ID:quick_login_button" + "\n";
macro1 += "WAIT SECONDS=#DOWNLOADCOMPLETE#" + "\n";
macro1 += "SET !DATASOURCE_LINE 2" + "\n";
macro1 += "SET text {{!COL2}}" + "\n";
for (var i=1;i<31;i++){ 
macro1 += "SET !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\Grupyrab.txt" + "\n";
//macro1 += "SET !DATASOURCE_LINE " + i + "\n";
macro1 += "SET !LOOP 3" + i + "\n"; //???
macro1 += "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";
//k1=3;urlgroup="q";
//while (urlgroup!) {k1++;
macro1 += "SET Grupa {{!COL1}}" + "\n";
macro1 += "URL GOTO={{Grupa}}" + "\n";
macro1 += "WAIT SECONDS=4" + "\n";
macro1 += "EVENT TYPE=CLICK SELECTOR=\"#post_field\" BUTTON=0" + "\n";
//macro1 += "CMDLINE !DATASOURCE C:\\Imacro1s\\macro1s\\VK\\Datasources\\dannye.csv" + "\n";
//macro1 += "SET !DATASOURCE_LINE 1" + "\n";
//macro1 += "SET text {{!COL2}}" + "\n";
macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" CHARS={{text}}" + "\n";
macro1 += "WAIT SECONDS=2" + "\n";
//macro1 += "EVENTS TYPE=KEYPRESS SELECTOR=\"#post_field\" KEYS=\"[8]\"" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#page_ldocs_preview1>DIV>DIV>DIV\" BUTTON=0" + "\n";
//macro1 += "TAG POS=1 TYPE=DIV ATTR=CLASS:page_media_x&&NOSORTHANDLE:1&&TXT:" + "\n";
//macro1 += "EVENT TYPE=CLICK SELECTOR=\"#send_post\" BUTTON=0" + "\n";
//macro1 += "WAIT SECONDS=5" + "\n";
}
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_profile_link" + "\n";
macro1 += "TAG POS=1 TYPE=A ATTR=ID:top_logout_link" + "\n";
iimPlay(macro1)

Кроме модератора, кто-нить, может помочь? Я понимаю, что об этом говорилось много раз, но за 3 дня ничего не нашла. Кто-то еще может помочь?

Vikkada пишет

скрытый текст

Выделить код

Код:

for (var i=1;i<31;i++){ 
macro1 += "SET !DATASOURCE C:\\Imacros\\macros\\VK\\Datasources\\Grupyrab.txt" + "\n";
//macro1 += "SET !DATASOURCE_LINE " + i + "\n";
macro1 += "SET !LOOP 3" + i + "\n"; //???
macro1 += "SET !DATASOURCE_LINE {{!LOOP}}" + "\n";

Кроме модератора, кто-нить, может помочь?

Очень меня смущает строчка

Выделить код

Код:

macro1 += "SET !LOOP 3" + i + "\n"; //???

У вас же если i в диапазоне от 1 до 31 значения !LOOP при i больше 10 будут 310,311,312 и т.д.
А вообще, не имея возможности протестировать этот код и не зная содержимое ваших текстовых файлов, искать ошибки в скрипте - все-равно что гадать на кофейной гуще.

Как то можно защитить код js который используется в iMacros? т.е. чтобы я его мог установить человеку но он не мог его исправить или посмотреть

Через prompt, число превращается в строку, а если без  prompt, то всё нормально складывается.
Через prompt 1+1=11, как сделать 2 ?

скрытый текст

Выделить код

Код:

var a = prompt("значение1","1")
var b = prompt("Значение2","1")
var n = a+b
alert(n) // 11

а вот так складывает

var a = 1
var b = 1
var n = a+b
alert(n) // 2


Гугл помог )

скрытый текст

Выделить код

Код:

var a = prompt("значение1","1")
var b = prompt("Значение2","1")
var n = Number(a) + Number(b);
alert(n) // 2

Док пишет

Очень меня смущает строчка

скрытый текст

Выделить код

Код:

macro1 += "SET !LOOP 3" + i + "\n"; //???


У вас же если i в диапазоне от 1 до 31 значения !LOOP при i больше 10 будут 310,311,312 и т.д.

Да, так и есть. Это я там перебирала по-разному и выложила код, как есть.
У меня все просто: есть тхт файл с паролем и csv с двумя колонками (1 колонка пароль; 2 колонка текст). Все.
Спасибо, что посмотрели. Хоть кто-то обратил внимание

Док пишет

Кроме модератора, кто-нить, может помочь?

а я то в чем провинился?

Vikkada
Откройте FAQ, там черным по белому написано, переменная !LOOP не работает в js, и всегда равна 1 или переданному значению (при запуске из js) и не увеличивается в цикле, в отличии от iim-скриптов

по поводу смены номера, включите логику, у вас 2 аккав цикле до 31 действует первый, потом второй

скрытый текст

Выделить код

Код:

for(i=1;i<=60;i++){
    j=(i<31)?1:2;
    // представляете j вместо номера строки
};

Подскажите. Нужно простой макрос, чтобы перебирал видео в списке плейлиста, любого. Пусть для примера здесь:

скрытый текст

Выделить код

Код:

https://www.youtube.com/watch?v=dgmEQHb1-CI&list=PLjGCjU12mqc-t2lcEfRJ1uLkSuS3n3NDF&index=1
Строка для клика по следующему видео получается такая: 
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV:nth-of-type(4)>DIV>DIV>DIV:nth-of-type(2)>OL>LI:nth-of-type([b]2[/b])>A>SPAN>SPAN>SPAN>IMG" BUTTON=0


код публикуется в тегах code внутри спойлера
Жирным выделил цифру 2. Для клика по следующему в списке нужна 3, для следующего - 4 и т.д.
Как записать код. чтобы вместо этих цифр подставляло каждый раз цифру, большую на 1?

InfSub

LeonidKotv
читайте про переменную {{!LOOP}} для iim-скриптов или о циклах, для js

InfSub пишет

читайте про переменную {{!LOOP}} для iim-скриптов или о циклах, для js

Читал. Голова кругом идёт. Не могу понять, как этот LOOP вставить. Пару комбинаций пробовал: то сам {{!LOOP}} туда вставлял, то вставлял !VAR1, а перед тем задавал, что VAR1 равно LOOP, в общем, не получается. Бедный аймакрос на этой строчке так и зависает.

LeonidKotv
повторяю еще раз, {{!LOOP}} работает только в iim-скриптах, запущенных в цикле (кнопка "цикл" на панели iMacros)
выполняет роль переменной в цикле for() (js и иные языки), увеличиваясь на 1 в каждом цикле
по умолчанию {{!LOOP}} равна 1, если же {{!LOOP}} задать иное значение, то увеличиваться с каждым циклом будет оно
повторная инициализация {{!LOOP}} в скрипте не возможна, значение задается единожды строкой

скрытый текст

Выделить код

Код:

SET !LOOP число


задаваемое значение {{!LOOP}} должно быть меньше числа циклов, если вы зададите число циклов равное 10, а  {{!LOOP}} присвоите значение 20, работать не будет, т.к. по условию {{!LOOP}} меньше или равно количеству циклов
если вам нужно выполнить 10 циклов, но минимальное значение {{!LOOP}} должно быть равно 20, то количество циклов нужно ставить равным 30
это практически полная аналогия цикла for
скрытый текст

Выделить код

Код:

for(i=20;i<=30;i++){}

Привет всем! :)

:| Помогите разобраться с Киви. А именно, автоматизировать вход на сайт.

Написал такой скрипт.

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAB OPEN
TAB T=2
URL GOTO=https://qiwi.com/
TAG POS=2 TYPE=DIV ATTR=TXT:Войти
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" KEYS="[39,39]"
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" CHARS="номер телефона"
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>INPUT" CHARS="пароль"
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Войти


Но только по частям работает, целиком не хочет.

Открывает сайт. Нажимает кнопку "Войти". И останавливается.
Если запустить его середину (строки 6, 7, 8) в отдельности, то данная часть скрипта будет работать.

:| Я так думаю это происходит потому, что когда нажимается кнопка "Войти", по подгружаются новые данные, в виде всплывающего окна для ввода логина и пароля, и скрипт не поймёт где он сейчас находится.

Вот как мне сделать, что-бы всё работало одно за другим и не останавливалось по середине процесса?

Даниил955447112
проверил - у меня все работает

скрытый текст
[firefox]:::: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0
iMacros 8.9.7

20-11-2016 20:37:17
попробуйте на другом (чистом) FF - возможно проблема с профилем или имакросом

20-11-2016 20:40:12
попробуйте также добавить 1-2 секунды ожидания после каждой команды (особенно между event) - бывают с ним проблемы иногда

InfSub пишет

проверил - у меня все работает...

скрытый текст
Mozilla/5.0 (Windows NT 6.1; rv:50.0) Gecko/20100101 Firefox/50.0 (штатная) не работает
Mozilla/5.0 (Windows NT 6.1; rv:38.0) Gecko/20100101 Firefox/38.0 (портативная) не работает

Версии iMacros тоже разные, на 50-ой Мозилле стоит последняя версия


На этом действии у меня всё встаёт:
скрытый текст
1jpg_5976738_24117812.jpg

InfSub пишет

Добавлено Сегодня 20:40:12
попробуйте также добавить 1-2 секунды ожидания после каждой команды (особенно между event) - бывают с ним проблемы иногда

InfSub пишет

попробуйте также добавить 1-2 секунды ожидания после каждой команды (особенно между event) - бывают с ним проблемы иногда

Пробовал задержку. Не помогает.
После каждой стоки ставил PAUSE и отслеживал выполнение команд.
!ERRORIGNORE - тоже не помогает. Скрипт перестал останавливаться. 6 секунд пробегает бездействия, и к следующему шагу переходит.

Затем доходит до 7 строки, вводит номер телефона несколько раз подряд, не верно, на всё поле заполнения, так как команду KEYS="[39,39]" не выполнял до этого и останавливается (как-бы завис).

скрытый текст
1jpg_4906166_24117945.jpg

Серединная часть скрипта (EVENTS) работает, если запустить её как отдельный скрипт.

Проверял скрипт на 2-х разных Мозиллах и разных версиях АйМакрос, везде одинаково работает.

Даниил955447112
попробуйте так:

скрытый текст

Выделить код

Код:

URL GOTO=https://qiwi.com/
TAG POS=2 TYPE=DIV ATTR=TXT:Войти

'EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" KEYS="[39,39]"
' номер с +7 !!!
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" CHARS="+71234567890"
' удаляем 7
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT" KEY=46
EVENTS TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(3)>DIV>DIV>INPUT" CHARS="пароль"
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Войти

Даниил955447112, написал вам решение на JS+iMacros.

У Qiwi любопытная защита от ботов, даже в консоли пишут "Остерегайтесь мошенников".
Подмена value для инпутов не сработала + фачит встроенный валидатор ввода, поэтому скрипт получился чуть больше.
Ожидание формы реализовал не на "TAG WAITING...", а на таймаутах, это более надежное решение.

Тестил на FF35 - все ок, иногда вылезает рекапча.

Скрипт для входа в Qiwi-кошелек на iMacros+JS:

скрытый текст

Выделить код

Код:

var APP = {

    /**
     * Qiwi wallet authorization
     * 
     */
    loginQiwi: function (login, password) {

        iimPlayCode('URL GOTO=https://qiwi.com');
        iimPlayCode('WAIT SECONDS=2');

        window.document.querySelector('[data-action=login]').click();    

        // Wait for submit form
        (function checkForm () {

            var phone = window.document.querySelector('input[name=login]');
            var pass =  window.document.querySelector('input[name=password]');

            if (phone != null && pass != null) {

                // Enter login
                iimPlayCode(`
                    EVENT TYPE=KEYPRESS SELECTOR="input[name=login]" KEY=36
                    EVENT TYPE=KEYPRESS SELECTOR="input[name=login]" KEY=35 MODIFIERS="shift"
                    EVENT TYPE=KEYPRESS SELECTOR="input[name=login]" KEY=46
                    EVENTS TYPE=KEYPRESS SELECTOR="input[name=login]" CHARS="${login}"
                `);

                // Enter password
                iimPlayCode(`
                    EVENT TYPE=KEYPRESS SELECTOR="input[name=password]" KEY=36
                    EVENT TYPE=KEYPRESS SELECTOR="input[name=password]" KEY=35 MODIFIERS="shift"
                    EVENT TYPE=KEYPRESS SELECTOR="input[name=password]" KEY=46
                    EVENTS TYPE=KEYPRESS SELECTOR="input[name=password]" CHARS="${password}"
                `);

                iimPlayCode('WAIT SECONDS=2');
                window.document.querySelector('.qw-submit-button').click();
                iimPlayCode('WAIT SECONDS=1');            

            } else {
                window.setTimeout(checkForm, 300);
            }

        })();
        
    }

};


// Использование
APP.loginQiwi("+79115555555", "YourPassword");


Скрипт написан на Javascript, поэтому сохраняйте мой макрос с расширением ".js". Это базовая версия скрипта, можно еще добавить расширенную обработку ошибок, разгадку капчи, каллбэки и т.д.
Но, под вашу задачу думаю хватит и этого.

InfSub пишет

попробуйте так:
удалено

Скринот ошибки::

скрытый текст
1jpg_3493753_24121156.jpg

Сама ошибка:

RuntimeError: Can not locate element specified by selector "HTML>BODY>DIV:nth-of-type(7)>DIV>DIV:nth-of-type(2)>FORM>DIV:nth-of-type(3)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>INPUT", line 5 (Error code: -921)

К сожалению не работает :(.

21-11-2016 09:00:19

Nagibaka пишет

написал вам решение на JS+iMacros.
удалено

Не работает.
Точнее не работает вторая часть скрипта. Первая работает на отлично!
Доходит скрипт до пароля. И не вводит его, вылезает ошибка.

Скриншот с ошибкой:

скрытый текст
1jpg_2911827_24121211.jpg

Текст ошибки:

ReferenceError: pass123 is not defined, line 35 (Error code: -991)

P.S.: Пароль и номер телефона изменил в целях безопасности!

удалено избыточное цитирование

InfSub

Nagibaka, исправил ваш код в том месте где пароль, и всё заработало, как надо.

скрытый текст

Выделить код

Код:

// Enter password
                iimPlayCode(`
                    EVENTS TYPE=KEYPRESS SELECTOR="input[name=password]" CHARS="pass123"
                `);


Ещё поработаю над усовершенствованием. Но уже хоть как-то работает.
Спасибо вам! :beer:


Вот такой скрипт вышел после всех доработок. Сократил его как только можно:
Пример для номера телефона "+79037926619" с паролем "pass123".

скрытый текст

Выделить код

Код:

TAB OPEN
TAB T=2
URL GOTO=https://qiwi.com/
TAG POS=2 TYPE=DIV ATTR=TXT:Войти
EVENTS TYPE=KEYPRESS SELECTOR="input[name=login]" CHARS="++9037926619"
EVENTS TYPE=KEYPRESS SELECTOR="input[name=password]" CHARS="pass123"
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Войти


В скрипте вместо команды KEYS="[39,39]" использовал 2 постановочных символа ++ перед номером телефона, так как код +7 на сайте уже стоял на своём месте.
скрытый текст
1jpg_3005677_24121524.jpg

Всем спасибо за внимание и помощь!

оффтоп

InfSub пишет

а я то в чем провинился?

ни в чем((= так просто упомянула модератора, чтоб позлить:P:blush: шучу:P
Большое спасибо, буду разбираться:music:

Даниил955447112, в моем скрипте нету ошибки:)

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

скрытый текст

Выделить код

Код:

APP.loginQiwi("+79115555555", "YourPassword");

Можете  подсказать что с этим кодом не так!

скрытый текст

Выделить код

Код:

function Faucet_vipfaucet() {
             
    var code = '';
    code += 'CODE: \n SET !EXTRACT_TEST_POPUP NO \n SET !ERRORIGNORE YES \n SET !ERRORCONTINUE YES \n SET !TIMEOUT_STEP 0 \n';
    code += 'TAB T=1'  + n;
code += 'URL GOTO=http://vipfaucet.ru/'+ n;
iimPlay(code, 60);
iimPlayCode('TAG POS=1 TYPE=IMG  ATTR=SRC:http://vipfaucet.ru/img/knopkadoge.jpg');


Не нажимает кнопку хоть тресни!!!
код публикуется в тегах code внутри спойлера

InfSub

gost111, через FireBug посмотри, там 4 вложенных iframe, тебе сначала необходимо найти нужный, а потом в нем нажать на кнопку.
И, я почти уверен, что у тебя селектор картинки неверный. Во-первых, она точно там не под номером один идет(а у тебя "TAG POS=1"), и во-вторых там указан относительный путь(вот такой - "/img/knopkadoge.jpg").

Спасибо! С этим я разобрался,прописал

скрытый текст

Выделить код

Код:

iimPlayCode('FRAME F=4\nTAG POS=1 TYPE=IMG  ATTR=SRC:http://vipfaucet.ru/img/knopkadoge.jpg');


код публикуется в тегах code внутри спойлера
Теперь другая проблема открывается другая страница там нужно решить капчу подождать ,нажать кнопку и идти дальше,всё это тоже находиться во фрэйме в моём коде всё что связано с решением капчи записано в функции captcha1() и как объяснить этой функции что каптча находиться во фрэйме ума не приложу!

InfSub

InfSub пишет

скрытый текст
по поводу смены номера, включите логику, у вас 2 аккав цикле до 31 действует первый, потом второй

Выделить код

Код:

for(i=1;i<=60;i++){
    j=(i<31)?1:2;
    // представляете j вместо номера строки
};

я не понимаю:cry: InfSub, я не понимаю, что и где мне подставить, чтобы зашел в один акк, сделал пост в 30 группах, вышел, потом второй акк зашел, сделал пост в группах с 31 по 60... и так 20 акков. У мня так не получается:cry::cry: InfSub, :cry::cry::cry:

Vikkada

я не понимаю, что и где мне подставить, чтобы зашел в один акк, сделал пост в 30 группах, вышел, потом второй акк зашел, сделал пост в группах с 31 по 60... и так 20 акков.

Вот вам шаблон, допиливайте под свои нужды

скрытый текст

Выделить код

Код:

var i = 1;
    s = 1;

while (i <= 20) {    // Основной цикл, равен количеству аккаунтов

    authAccounts(i)    // Функция авторизации;

    senderPost()    // Фунция рассылки;
        i++

}

function senderPost() {

    for (var i = 1; i <= 30; i++) {

        iimPlayCode('url goto=' + groups[s])    // Пример основан на том, что группы у вас в массиве, а в качестве идекса используется переменная s.

        s++;
    };
};

function authAccounts(numberAcc) {
    // Код авторизации
};

Hamzat пишет

Вот вам шаблон, допиливайте под свои нужды

:o:o:o Мальчики, я же не такая крутая, как вы:cry: С таким кодом я точно не сделаю:cry:

Добрый вечер, может ли кто-нибудь подсказать, как правильно реализовать задачу:

Для примера, есть магазин 

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


внизу видим множество страниц пагинации (1,2,3...250). GET-параметр в ссылке page=1.
Нужно в цикле пройтись по всем 250 страницам и найти ту страницу, на которой попадется товар с конкретным названием, также можно записать в файл номер страницы (то есть текущий LOOP) или же ссылки на страницы, на которых было найдено вхождение названия.

скрытый текст

Выделить код

Код:

https://www.etsy.com/search?q=sodalite+ring&order=most_relevant&view_type=gallery&ship_to=US&explicit=1&page=1


На данный момент проблема в том, что если использовать встроенный в плагин цикл, то переход по ссылкам правильный, вот только проблема в том, что в месте
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
SET !EXTRACT_TEST_POPUP NO
SET !LOOP 1
URL GOTO=https://www.etsy.com/search?q=sodalite+ring&order=most_relevant&view_type=gallery&ship_to=US&explicit=1&page={{!LOOP}}
TAG POS={{!LOOP}} TYPE=DIV ATTR=TXT:DiamondBillsBling


тоже подставляется номер текущей итерации. В итоге мы ищем не по всем тегам DIV, а к примеру в первом теге на странице, так как LOOP = 1.

Пример, 5 страница

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


и
скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}}


, в итоге скрипт не находит вхождения строки на странице.

Выделить код

Код:

https://www.etsy.com/search?q=sodalite+ring&order=most_relevant&view_type=gallery&ship_to=US&explicit=1&page=5

garret123
зачем перебирать все товары, если есть его название?

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:DiamondBillsBling


должен находить, либо не находить ваш товар

Нужно найти страницу, на которой находится товар с нужным названием.

удалено& избыточное цитирование

InfSub

garret123
вы ее и нашли, на ней у вас отработает код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=TXT:DiamondBillsBling


не вернув при этом ошибки, в чем вопрос то?
как записать в файл?
например так:
iim

Выделить код

Код:

FILTER TYPE=IMAGES STATUS=ON
SET !ERRORIGNORE YES
SET MYVAR https://www.etsy.com/search?q=sodalite+ring&order=most_relevant&view_type=gallery&ship_to=US&explicit=1&page={{!LOOP}}
URL GOTO={{MYVAR}}
SET !TIMEOUT_STEP 1
TAG POS=1 TYPE=DIV ATTR=TXT:DiamondBillsBling EXTRACT=TXT
SET MYVAR EVAL("'{{!EXTRACT}}'=='#EANF#'?'':'{{MYVAR}}'")
SET !EXTRACT {{MYVAR}}
SAVEAS TYPE=EXTRACT FOLDER=* FILE=etsy.txt
FILTER TYPE=IMAGES STATUS=OFF


но в данном случае вы получите кучу пустых строк, и строку где найдено со ссылкой


иначе (чтобы была только строка со ссылкой без лишнего мусора), нужно делать на js, например так:

js

Выделить код

Код:

var i,m={},file='etsy.txt',url='https://www.etsy.com/search?q=sodalite+ring&order=most_relevant&view_type=gallery&ship_to=US&explicit=1&page=';

m.url='FILTER TYPE=IMAGES STATUS=ON\nURL GOTO=https://www.etsy.com/search?q=sodalite+ring&order=most_relevant&view_type=gallery&ship_to=US&explicit=1&page={{NUM}}\nFILTER TYPE=IMAGES STATUS=OFF\nSET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=TXT:DiamondBillsBling EXTRACT=TXT\n';

m.sas='SET !EXTRACT {{URL}}\nSAVEAS TYPE=EXTRACT FOLDER=* FILE='+file;

for(i=1;;i++){
    iimSet('num',i);
    iimPlayCode(m.url);
    if(iimGetExtract()!='#EANF#'){
        iimSet('url',url+i);
        iimPlayCode(m.sas);
        break;
    };
};

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

24-11-2016 14:56:49
удалено, избыточное цитирование
прочтите о том, как правильно отвечать и цитировать на форуме

Возможно Вы подскажете мне будет ли правильно читаться ссылка с файла динамически для строки 3 Вашего кода:

скрытый текст

Выделить код

Код:

SET !DATASOURCE d:\zapros.txt
ADD !EXTRACT {{!COL1}}
URL GOTO={{!COL1}}


InfSub

garret123
для js-варианта - да
для iim- придется извращаться, так как будет записано куча лишних строк
можно, конечно, доработать iim-скрипт так, чтобы писалась только одна строка с нужным урлом, но зачем?! js выполняет это без всяких "бубнов"

Ребят привет, подскажите пожалуйста метод на js чтобы прокрутить в окне

скрытый текст
instagramp_2962863_24194051.jpg

скрины размещаются в спойлере


вы смотрите, что вы вставляете? почему у вас внутри тега img тег url, а в нем еще тег img? или не читаем что опубликовали?

InfSub

segunover в js есть функция scrollBy()

Ссылка на примеры использования scrollBy():


Впрочем, судя по скринам, нет необходимости в этой функции. Наверняка, можно просто по селекторам сделать клики.

Подскажите, пожалуйста, как извлечь список участников (список ссылок на профили) группы в одноклассниках?

Можно ли через js или iim запустить mp3 файл с компьютера, через imacros ?

Алим
запуск внешней программы с аргументами из js-скрипта:

karginaolga
Забыл, что там такое есть. Спасибо, а то гуглил и не находил.

Умеет создавать новые профили firefox?

ts1000w, при помощи iMacros можно создавать новые профили Firefox.

Самый простой способ - это копирование текущего профиля в новую папку и после этого можно будет запустить FF с необходимыми параметрами для загрузки профиля.
Копирование папки можно реализовать через запуск внешней программы, а точнее командной строки с командой на копирование одной папки в другую + переименование.
Либо можно заморочиться с XUL и XPCOM - это более продвинутый уровень и требуется знание JS.

Есть скрипт для постинга в группы facebook, но посты без картинок,возможно ли сделать пост с картинками.

скрытый текст

Выделить код

Код:

CMDLINE !DATASOURCE fb_post_group.txt
SET !ERRORIGNORE YES
SET !LOOP 1
SET !DATASOURCE_COLUMNS 1
SET !DATASOURCE_LINE {{!LOOP}} 
SET !VAR1 EVAL("var s=\"{{!COL1}}\"; s.replace(/www.facebook.com/g, 'm.facebook.com');")
URL GOTO={{!VAR1}}
WAIT SECONDS = 1
SET !REPLAYSPEED MEDIUM
TAG POS=1 TYPE=TEXTAREA ATTR=ID:u_* CONTENT=Тут<sp>текст
WAIT SECONDS = 2
TAG POS=1 TYPE=INPUT:SUBMIT ATTR=NAME:view_post
SET !REPLAYSPEED FAST                 
WAIT SECONDS = 15

Ребят, ломаю голову,знаний не хватает, в цикле есть условие, если оно выполняется  Nное количество раз, то цикл должен остановиться, как это реализовать? Попробовал это реализовать через переменную с бреак в условии, но чет не получается.... цикл не останавливается, после выполнения  условия 9 раз.. Подскажите пожалуйста, что делать

скрытый текст

Выделить код

Код:

k=iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=H2 ATTR=TXT:Это<SP>закрытый<SP>аккаунт");
                   if (k < 0)
                   {
                   for (var z = 1;; z++)
                   {
                   if (z > 9) break
                   }
                   iimPlayCode(`
                               SET !TIMEOUT_STEP 1
                               TAG POS=1 TYPE=DIV ATTR=CLASS:_ovg3g&&TXT:
                               WAIT SECONDS=1
                               TAG POS=1 TYPE=SPAN ATTR=TXT:Нравится
                               WAIT SECONDS=1
                               `);


код публикуется в тегах code внутри спойлера
замечание

InfSub

Почему извлекает по две одинаковой ссылке в цикле?

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO

SET !LOOP 1
TAG POS={{!LOOP}} TYPE=A ATTR=onclick:"return nav.go(this, event);" EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=VK-ID_URL.txt


скрытый текст
32743b18aef941f98895a9fb4343df72.jpeg

segunover, во-первых, приучайся к правильному форматированию кода, многие ошибки сразу станут очевидны.

У тебя используется цикл for, который вообще ничего не делает. Я догадываюсь какого эффекта ты хотел добиться, но учти одну вещь:
команда break выходит только из цикла for или while, и весь код после отработки цикла будет выполняться.

Сейчас этот код и этот цикл выглядит бессмысленно.

Для того, чтобы в любом месте остановить выполнение кода, нужно оборачивать код в функцию и использовать в необходимом месте return;

скрытый текст

Выделить код

Код:

var k = iimPlayCode("SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=H2 ATTR=TXT:Это<SP>закрытый<SP>аккаунт");

if (k < 0) {

    for (var z = 1;; z++;) {
        if (z > 9) break;
    }

    iimPlayCode(`
        SET !TIMEOUT_STEP 1
        TAG POS=1 TYPE=DIV ATTR=CLASS:_ovg3g&&TXT:
        WAIT SECONDS=1
        TAG POS=1 TYPE=SPAN ATTR=TXT:Нравится
        WAIT SECONDS=1
    `);

    // Альтернативный цикл
    var z = 0;
    while (z <= 9) {
        // Тут различные действия для смены условия
        if (условие выполняется верно) {
            z++;
        }

    }

Никак не могу сэкстрактить урл, вот кусок кода сайта

скрытый текст

Выделить код

Код:

<a id="link_to_product_1111111" class="b-product-gallery__product-name-link qa-product-name-link" data-subscribe=" click: _"ec_badge_free_delivery" "true"]] "data-extend="Tracking" etemprop="ur]" href="http://site.ru/page.html]" ></a>


Моя попытка
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=ID:link_to_product_* ATTR=CLASS:"b-product-gallery__product-name-link qa-product-name-link"  EXTRACT=HREF


выдаёт #EANF#

udalov
TYPE=A

Всем привет! Не понимаю почему выдаёт ошибку в последней строке.
alert выдаёт цифры,а при попытке записать их в txt выдаёт ошибку.


скрытый текст

Выделить код

Код:

for(i=1; i<=5; i++){
iimPlayCode('SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=TXT:19<SP>405 EXTRACT=TXT');
q7=iimGetExtract();
alert(q7)
iimPlayCode('SET !EXTRACT '+q7+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=Test.txt');
}

Gergi

скрытый текст

Выделить код

Код:

iimPlayCode('SET !EXTRACT "'+q7+'"\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=Test.txt');

InfSub
Огромная благодарность:beer:

Ещё один момент: В текстовом файле идёт такая запись "19 408 " Как убрать пробелы чтобы получилось так "19408"

Gergi
столько постов, и такие вопросы

скрытый текст

Выделить код

Код:

for(i=1; i<=5; i++){
iimPlayCode('SET !TIMEOUT 1\nTAG POS=1 TYPE=DIV ATTR=TXT:* EXTRACT=TXT');
q7=iimGetExtract().replace(/ /gi,"");
alert(q7)
iimPlayCode('SET !EXTRACT '+q7+'\nSAVEAS TYPE=EXTRACT FOLDER=* FILE=Test.txt');
}


или
скрытый текст

Выделить код

Код:

q7 = iimGetExtract().match(/\d+/g).join('');

karginaolga
Так не получилось.
Получилось вот так

скрытый текст

Выделить код

Код:

iimGetLastExtract().replace(/\W/gi,"").replace(/_/gi,"");


В любом случае благодарю за помощь:beer: Вопрос исчерпан.

Здравствуйте. Не могу понять, почему скрин сохраняется в формате _цифра_.jpeg , откуда берутся эти подчёркивания?


скрытый текст

Выделить код

Код:

if(Number(product2)>0){
for(w = 2; w <=product2; w++){
iimPlayCode('ONDOWNLOAD FOLDER=C:\\papka\\ FILE="'+w+'".jpeg\n TAG POS=1 TYPE=IMG ATTR=SRC:https:*&&CLASS:market_item_photo&&ID:market_item_photo CONTENT=EVENT:SAVEPICTUREAS');
};
}


При том, что сохранение кодом
скрытый текст

Выделить код

Код:

iimPlayCode('ONDOWNLOAD FOLDER=C:\\papka\\ FILE=1.jpeg\n TAG POS=1 TYPE=IMG ATTR=SRC:https:*&&CLASS:market_item_photo&&ID:market_item_photo CONTENT=EVENT:SAVEPICTUREAS');


сохраняет так, как надо... Что я упускаю?

udalov
кавычки поставь корректно, любой символ, который нельзя использовать в имени файла - заменяется на подчеркивание

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

Вот так:

скрытый текст

Выделить код

Код:

iimPlayCode('ONDOWNLOAD FOLDER=C:\\papka\\ FILE='+w+'.jpeg\n TAG POS=1 TYPE=IMG ATTR=SRC:https:*&&CLASS:market_item_photo&&ID:market_item_photo CONTENT=EVENT:SAVEPICTUREAS');

Nagibaka пишет

странный баг

это не баг, если б он все имя файла обрамил кавычками, iMacros бы воспринял корректно, а для части имени он и воспринимает как элемент имени

InfSub пишет

udalov
кавычки поставь корректно, любой символ, который нельзя использовать в имени файла - заменяется на подчеркивание

Да, я очередной раз бездумно скопировал вариант с двумя кавычками 

. и применил его не к месту...

Подскажите, а реально ли как-то сделать, что-бы imacros находил на странице рекламу Google (она в фрейме iframe) и переходил по ней? Не кто не решал подобную задачу ? Хоть подскажите куда копать, уже второй день сижу не могу понять как реализовать.

wegire
найдите схожесть в элементах рекламы (идентичный кусок ссылки или id или class или иной параметр, уникальный для данных ссылок) и используйте его при написании скрипта

Срочно нужна ваша помощь, форумчане. Опишу ситуацию: У меня работает расширение iMacros на Firefox без проблем, если его не трогать. Проблема в том, что если я открываю другой браузер или сворачиваю мазилу, то скрипты перестают работать. Подскажите, в чем может быть причина? Очень нужен ответ. Спасибо.

GalinaGalina покажите ваши скрипты в личку. Возможно, они капризничают.

Nagibaka пишет

GalinaGalina покажите ваши скрипты в личку. Возможно, они капризничают.

Здравствуйте, так что со скриптом?

Доброго времени суток.
Ребят, подскажите кто знает... Есть скрипт постинга в ВК - на windows работает изумительно, но случилась радость/счастье - купил я себе Macbook:D. И тут нарисовалась проблемка... Скрипт работает, все изюмительно, но текст не вставляет из txt файла. Пробовал переделывать в csv и dat - не помогает. Проблема с кодировкой...
Кто знает решение, подскажите как справиться?

SERGEYDSO
поставить любой редактор работающий под мак, умеющий изменять кодировки файлов (должна быть utf8)
расширение файла, к этому вообще ни какого отношения не имеет, хоть вместо .txt вы на пишете .my_vk_data, данные в файле от этого не изменятся

InfSub пишет

SERGEYDSO
поставить любой редактор работающий под мак, умеющий изменять кодировки файлов (должна быть utf8)
расширение файла, к этому вообще ни какого отношения не имеет, хоть вместо .txt вы на пишете .my_vk_data, данные в файле от этого не изменятся

Спасибо за скорый ответ, какой редактор посоветуете? Я на mac еще чайник)))

14-12-2016 18:37:08
Ай спасибо:lol::lol::lol:
Все разобрался...

Ребят, очень нужна ваша помощь! проблема в том, что не могу правильно создать скрипт :(
Вкратце.. есть страница на сайте, в которой поле находится и одна кнопка, нужно вводить туда поочередно цифры от 0000-9999 и нажимать кнопку.
У меня все как обычно :( выглядит печально..

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:confirm_input CONTENT=0000
TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:/ ATTR=ID:confirm_btn
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:confirm_input CONTENT=0001
TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:/ ATTR=ID:confirm_btn
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:confirm_input CONTENT=0002
TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:/ ATTR=ID:confirm_btn
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:confirm_input CONTENT=0003
TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:/ ATTR=ID:confirm_btn


код публикуется в тегах code внутри спойлера

..и т.д. до 20000-ной строки.. это не правильно. Подскажите как нужно сделать js или макрос в imacrose, что бы код был маленьким и перебирал от и до..
Буду очень вам благодарен, пухчу уже долго :(

InfSub

Lendor

например так, заппускать кнопкой "Воспр. (Цикл)" с максимальным значением 10000

Выделить код

Код:

SET !VAR1 EVAL ("var i={{!LOOP}}-1;switch(true){case i<10:i='000'+i;break;case i<100:i='00'+i;break;case i<1000:i='0'+i;break;}")
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=ID:confirm_input CONTENT={{!VAR1}}
TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:/ ATTR=ID:confirm_btn

18-12-2016 15:58:13

Lendor пишет

SET !ERRORCONTINUE YES

нет такого параметра, сколько сот раз можно уже об этом говорить!

Ребят, подскажите плз, как нажать через imacros на ссылку, без id, которая находится в блоке с id.

скрытый текст

Выделить код

Код:

<div id="something_here">
<a href="#">Text</a>
</div>


код публикуется под спойлером

InfSub

simonback
попробуйте извлечь текст из div и подставить в параметр TXT

например, как-то так

Выделить код

Код:

tag pos=1 type=div attr=id:something_here extract=txt
tag pos=1 type=a attr=txt:{{!extract}}

Не сработало:(

скрытый текст
e8f5de2eef1b.png

Есть ещё какие-то варианты?

прочтите правила раздела о размещении изображений (скриншотов)

InfSub

simonback

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:something_here EXTRACT=HTM');
href=iimGetExtract().match(/<a(.*?)</a>/).pop();
iimPlayCode('TAG POS=1 TYPE=A ATTR='+href);


а  так?

Тоже не хочет...
Ошибку пишет.

скрытый текст
f0487a6de4ca.jpg

P.S. Только познакомился с imacros js.

simonback

.match(/<a(.*?)<

\

/a>/)

К сожалению, так тоже не работает.. Кто-то знает как можно профиксить?

скрытый текст
d39bd49b7a17.jpg

Или же как-то по-другому имитировать клик с помощью аймакрос на ссылку без id параметра
скрытый текст

Выделить код

Код:

<div id="something_here">
<a href="#">Text</a>
</div>

simonback пишет

так тоже не работает..

не удивительно, я указал только на причину ошибки: invalid regular expression flag a
регулярка сама по себе была не верна, так как пыталась вытащить совершенно не то, что задумывал ее автор

скорее всего так будет работать, при условии, что текст в тегах А уникален

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ID:something_here EXTRACT=HTM');
var txt=iimGetExtract().match(/<a[^>]>(.*?)<\/a>/).pop();
alert(txt); // для проверки, должно вывести текст, содержащийся в теге А
iimPlayCode('TAG POS=1 TYPE=A ATTR="'+txt+'");

А что делать, если тест ссылки не уникален?
Вот, к примеру, у меня ситуация, что много блоков с уникальным id(something_here везде разный), но при этом абсолютно одинаковый текст и код ссылок

скрытый текст
1d59ffd60680.jpg

И, кстати, тот код не сработал, но это не имеет значения, ибо это не будет решением проблемы.
скрытый текст
f43addede8a4.jpg

simonback
зато CLASS одинаковый

simonback
ссылку на страницу дайте, так думаю, будет проще

Там не совсем удобно попасть на нужную страницу.. Нужно будет авторизироватся через соц. сеть, нажав на "подарок" справа по-средине сайта

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


В кратце, ещё раз.. Нужно нажать на кнопки "+1 бонусов", "+3 бонусов" и тд.. У них одинаковая структура.
скрытый текст
5b756cf3900d.jpg

скрытый текст
c2cd61c18b44.jpg

Есть ещё предположения? :rolleyes:

simonback
Держи

скрытый текст

Выделить код

Код:

for(j=1; j<=10; j++){ 
    iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS='+j+' TYPE=iframe ATTR=src:* extract=htm'); //alert(iimGetExtract());
    if(iimGetLastExtract().indexOf('builtin_actions-iframe-')>0){ 
    f2='FRAME '+iimGetExtract().match(/name=".*?"/)+'\n'; break;}} //alert(f2);
        for(i=1; i<=10; i++){ 
            iimPlayCode(f2+'TAG POS='+i+' TYPE=A ATTR=HREF:*'); iimPlayCode('PAUSE');}

подскажите пжл как можно сделать так что бы создавался новый файл скрин
например есть 5 изображений нужно их соскринить но так что бы  вышло 5 скринов, у меня получается так что он просто обновляет скрин и получается как одно изображение обновляется следующим

скрытый текст

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=1.png WAIT=YES
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=2.png WAIT=YES
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=3.png WAIT=YES
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=4.png WAIT=YES
ONDOWNLOAD FOLDER=C:\CAPCH\ FILE=5.png WAIT=YES

TAG POS=1 TYPE=IMG ATTR=SRC://i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
PAUSE
TAG POS=2 TYPE=IMG ATTR=SRC://i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
PAUSE
TAG POS=3 TYPE=IMG ATTR=SRC://i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
PAUSE
TAG POS=4 TYPE=IMG ATTR=SRC://i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT
PAUSE
TAG POS=5 TYPE=IMG ATTR=SRC://i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT


Для размещения кода, используйте тег "Code" внутри тега "Spoiler" - [spoiler&#93;[code&#93;ваш код[/code&#93;[/spoiler&#93;, а не наоборот

InfSub

volchsek

скрытый текст

Выделить код

Код:

for(i=1; i<=5; i++){ 
    iimPlayCode('ONDOWNLOAD FOLDER=C:\\CAPCH\\ FILE='+i+'.png WAIT=YES\nTAG POS='+i+' TYPE=IMG ATTR=SRC:*i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT');}

Здравствуйте. Если элемент страницы не отображается в FireBug  - его нельзя спарсить? Конкретно, из кода страницы надо взять теги

скрытый текст

Выделить код

Код:

<meta name="keywords" content="кошка, собака, хомячок">

udalov пишет

Если элемент страницы не отображается в FireBug

FireBug показывает тот код который есть на странице, если кода нет, firebug его не показывает но не наоборот

karginaolga а не в js сделать можно?

udalov
напишите в личку

23-12-2016 12:38:47
volchsek
нет, я не знаю

скрытый текст

Выделить код

Код:

но могу предположить

23-12-2016 12:52:25
Malahovplus
могу сделать без открытия нового окна

volchsek

не js

Выделить код

Код:

ONDOWNLOAD FOLDER=C:\CAPCH\ FILE={{!LOOP}}.png WAIT=YES
TAG POS={{!LOOP}} TYPE=IMG ATTR=SRC:*i.mycdn.me/image?t* CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT

InfSub
спасибо!

udalov

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\nTAG POS=1 TYPE=meta ATTR=NAME:keywords extract=htm');
var keywords=iimGetExtract().match(/content="(.*?)">/).pop(); alert(keywords);

Объясните плз.. Я хотел чтобы с файла считалась информация по порядку и вывелась на экран через alert, но не пойму что делаю не так..

скрытый текст

Выделить код

Код:

for (i=1;i<=5;i++){
iimPlay("SET !DATASOURCE text.txt" + "\n");
iimPlay("SET !DATASOURCE_LINE "+i+ "\n");
iimPlay("ADD !EXTRACT {{!COL1}}" + "\n");
alert(iimGetLastExtract());
}


Содержимое text
скрытый текст

Выделить код

Код:

first
second
third
fourth
fifth

simonback
читаем FAQ

удалено, некропостинг
замечание

InfSub

удалено - п.п. 2.8
замечание

InfSub

Можно как-то извлечь текст из блока на сайте в переменную(js)?
Например:

скрытый текст

Выделить код

Код:

<div id=".."><span id="...">Text_that_I_need</span></div>


Нужно получить переменную в которой будет текст "Text_that_I_need"

не срабатывает команда break в цикле
мне нужно что бы шел счетчик от 1 до 100 (после 100 снова 1,2,3 до 100)   и так бесконечно пока не будет условие break

скрытый текст

Выделить код

Код:

while (true) {
for (a=1;a<100;a++){
//iimSet("a",a);
iimPlayCode('WAIT SECONDS=1'); 
iimPlayCode('TAG POS='+a+' TYPE=BUTTON ATTR=TXT:*);
if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"только 40 друзей в день"')>0){break};

volchsek
удалено, избыточное цитирование
Если у тебя проблема конкретно с break, то запиши так

скрытый текст

Выделить код

Код:

var a=5;
while(a>0)
{
        for(...){...}
        if(...){a=-5;};
}


Ну или в общем виде это примерно так
скрытый текст

Выделить код

Код:

var a=true;
while(a==true)
{
        for(...){...}
        if(...){a=false;};
}


замечание


InfSub

Можно как-то извлечь текст из блока на сайте в переменную(js)?
Например:

скрытый текст

Выделить код

Код:

<div id=".."><span id="...">Text_that_I_need</span></div>


Нужно получить переменную в которой будет текст "Text_that_I_need"

simonback

скрытый текст

Выделить код

Код:

tag pos=1 type=div attr=id:... extract=txt


или
скрытый текст

Выделить код

Код:

tag pos=1 type=span attr=id:... extract=txt


где

...

id div или id span соответственно

В оригинале это выглядит вот так

скрытый текст
70c9b932a9ac.jpg

volchsek
как я понимаю - до 100 включительно, а у вас до 99
в вашем коде не явно указано из какого цикла надо выйти, т.к. их два, по этому выход происходит из последнего т.е. из for() что вам собственно ни чего и не дает

решение

Выделить код

Код:

top:
while (true) {
    for (a=1;a<=100;a++){
        //iimSet("a",a);
        iimPlayCode('WAIT SECONDS=1'); 
        iimPlayCode('TAG POS='+a+' TYPE=BUTTON ATTR=TXT:*);
        if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"только 40 друзей в день"')>0){break top;}; 
    };
};

27-12-2016 12:09:55
simonback

скрытый текст

Выделить код

Код:

tag pos=1 type=div attr=id:mwa-account-block extract=txt


или
скрытый текст

Выделить код

Код:

tag pos=1 type=span attr=id:mwa-maccount* extract=txt

InfSub Спасибо!

simonback
что выводит???

скрытый текст

Выделить код

Код:

var green = window.document.querySelector(".сдесь класс").textContent;
alert(green);

Доброго вечера и с наступающим всех Новым годом!

Прошу помощи, товарищи. Сделал простенький макрос на накрутку лайков, всё работает как часы, но есть одно НО. Рандомно вылетает ФФ, иногда остаётся процесс в диспетчере задач, иногда полностью завершается. Случается это по разному, бывает и через 5 минуты работы, а бывает и через 35. Никаких краш отчётов не просит послать. У меня вахтовая работа и по 2 недели меня не бывает дома, естественно что всё это дело загнется через час после моего убытия. Может кто сталкивался с такой проблемой, в какую сторону подскажете копать?

Есть ещё одно решение. Написал батник для запуска ФФ и макроса, поставил его в планировщик и каждые полчаса он запускает ФФ и начинает работать макрос. Вот только он запускает его 1 раз. Когда запускаем вручную, то мы можем указать кол-во циклов. Собственно вопрос, есть ли какая-то команда для указание кол-ва повторений макроса?
Буду очень признателен по любому решению данного вопроса.

Rotarran
раз уж вы не выложили проблемный код, то предположу что вы используете конструкцию

скрытый текст

Выделить код

Код:

TAB CLOSE


для закрытия вкладок
соответственно, если у вас не открылась новая вкладка при клике на ссылку, то вместо 2 вкладок у вас будет одна и данная команда, просто закроет эту последнюю вкладку и соответственно - браузер
костыль: запретить закрытие браузера при закрытии последней вкладки
решение: перейти на первую вкладку и выполнить команду
скрытый текст

Выделить код

Код:

TAB CLOSEALLOTHERS


также тут предлагались иные решения, так что поиск в помощь

InfSub
удалено избыточное цитирование
Вы были правы

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
SET !ERRORIGNORE YES
FILTER TYPE=IMAGES STATUS=ON
TAB T=1
URL GOTO=http://***/
URL GOTO=http://***/
WAIT SECONDS=#DOWNLOADCOMPLETE#
SET !TIMEOUT_STEP 0
WAIT SECONDS=3
TAG POS=1 TYPE=BUTTON ATTR=TXT:15<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:14<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:13<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:12<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:11<SP>баллов
WAIT SECONDS=3
TAG POS=1 TYPE=BUTTON ATTR=TXT:10<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:9<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:8<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:7<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:6<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:5<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:4<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:3<SP>баллов
TAG POS=1 TYPE=BUTTON ATTR=TXT:2<SP>баллов
WAIT SECONDS=10
TAG POS=1 TYPE=A ATTR=TXT:Подписаться
WAIT SECONDS=2
TAB CLOSE
WAIT SECONDS=3
TAB T=1


Прошу не кидать камни за такой код, первый раз опробовал imacros. Главное, что работает. Ну почти:D Сейчас поправлю.
Весьма благодарен за подсказку.

InfSub

Rotarran

нет такой команды в iMacros для ФФ, да и не нужна она, все делает сам плагин

Выделить код

Код:

WAIT SECONDS=#DOWNLOADCOMPLETE#


это

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Подписаться
WAIT SECONDS=2
TAB CLOSE
WAIT SECONDS=3
TAB T=1


замените на
это

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Подписаться
WAIT SECONDS=3
TAB T=1
TAB CLOSEALLOTHERS

InfSub пишет

замените на

Благодарю, но на данном сервисе необходимо именно закрытие активной вкладки, где нажимали "Подписаться" и переход на предыдущую вкладку, где получали задание. Иначе не засчитывается.
Принудительно отключил закрытие браузера при закрытии всех страниц и всё решилось.

А по поводу 

InfSub пишет

WAIT SECONDS=#DOWNLOADCOMPLETE#

нашёл это на просторах интернета в мануалах по аймакросу. Что ж, теперь буду знать.

Ещё раз большое спасибо за быструю помощь.

Rotarran пишет

в мануалах

так переведите, что там написано (для понимания), желательно самостоятельно, а не всякими там гугло-транслейтами..

InfSub
Так в русскоязычном сегменте это и нашёл. Причем не в одной статье, а у многих.

скрытый текст
Иногда iMacros продолжает выполнение скрипта, до того как сайт был полностью загружен.
Этого можно избежать, добавив команду WAIT SECONDS=#DOWNLOADCOMPLETE# перед командой TAG

Rotarran
отключите игнорирование ошибок прочтите, что скажет iMacros на данную команду (повторюсь, данная команда есть, но не в версии для ФФ. ФФ сам корректно определяет статус и время загрузки страницы и если оно превышает 60 сек выдаст ошибку - время настраиваемо, как командами, так и в настройках)
если загляните в faq по iMacros на нашем форуме, там есть пример еще одной команды-фейка

Добрый день, помогите плиз, не очень шарю в условиях. Мне нужно чтобы макрос выполнял условие
TAG POS=1 TYPE=SPAN ATTR=ID:j-sku-discount-price EXTRACT=TXT вытаскивал вот этот текст, но если его нет (тоесть пусто) то брал второй вместо него.
TAG POS=1 TYPE=SPAN ATTR=ID:j-sku-price EXTRACT=TXT

Буду очень благодарен, спасибо заранее, большое!

07-01-2017 14:30:56
Помогите, плиз.

Не совсем понятно что вам нужно. Если элемента нет на странице, то можно реализовать через try{}catch(anyEx){}. В случае, если элемент есть на странице, но нужно проверить если ли в нем символы, то if(здесь_переменная_в_которую_внесен_extract != ""){}else{}.

EverythingForYou
удалено избыточное цитирование
Да, первый случай, она либо есть, тогда брать ее, либо ее совсем нет, тогда брать вторую. Как это реальзовать, я в Ява просто бум бум. Какая, Вам инфа если нужна еще говорите.

InfSub

Реализация:

скрытый текст

Выделить код

Код:

try{
 iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=ID:j-sku-discount-price EXTRACT=TXT');
 var zdesVashuDannue = iimGetExtract();
}catch(anyEx){
 iimPlayCode('TAG POS=1 TYPE=SPAN ATTR=ID:j-sku-price EXTRACT=TXT');
 var trperOniZdes = iimGetExtract();
}


код публикуется в тегах code внутри спойлера
замечание

Пояснения: Если на странице присутствует элемент с тегом SPAN, атрибут которого ID = j-sku-discount-price, - выполняется тело try, catch в таком случае пропускается. Если будет поймана ошибка, т.е элемент не будет найден, то будет выполняться тело catch().



InfSub

EverythingForYou
удалено избыточное цитирование
примного благодарен!

InfSub

EverythingForYou пишет

Реализация:

удалено избыточное цитирование
Я попробовал, проверил, в общем он к телу catch не переходит, даже если элемента нет на странице. я переделал немного скрипт поправил кавычки и CODE а то у меня аймакрос не запускал его. Еще хотел спросить, можно ли запустить скрипт .JS в середине выполнения макроса обычного кода. А то я запускаю через URL GOTO=imacros://run/?m=#Current.js и он только этот .JS файл делает и на этом завершает работу. Вот переклепанный скрипт.

скрытый текст

Выделить код

Код:

try{
     iimPlay("CODE:TAG POS=1 TYPE=SPAN ATTR=ID:j-sku-discount-price EXTRACT=TXT");
     var dannye = iimGetExtract();
   }catch(anyEx){
      iimPlay("CODE:TAG POS=1 TYPE=SPAN ATTR=ID:j-sku-price EXTRACT=TXT");
      var novdannye = iimGetExtract();
   }


код публикуется в тегах code внутри спойлера

Еще макрос выдает ошибку, когда тело TRY не находит заветный  j-sku-discount-price, Retry timeout, line: 1 (Error code: -1001)

InfSub

У вас, скорее всего, макрос выше версии 8.9.7. Проверьте, если не 8.9.7, то установите именно ёё. Она совместима с мозилой 47й версии.

Здравствуйте! С Новым Годом!
Подскажите, почему простой скрипт который посылает гет-запрос в цикле, начинает тормозить и как это побороть?
Ситуация такова: имеется простейший ява-скрипт, который работает в цикле и его задача просто обновлять страницу гет-запросом с очисткой кукиса (там адрес http://2ip.ru/ взят просто для примера).

скрытый текст

Выделить код

Код:

for(q=1; q<9999999; q++) { iimDisplay('Обновление страницы '+q);
  
   iimPlayCode('CLEAR');
   balance(); }
   
   function balance() {
   var CC=Components.Constructor;
   var a=CC("@mozilla.org/xmlextras/xmlhttprequest;1")();
       a.open('GET','http://2ip.ru/',false);
       a.send(null);
       b=a.response;
       return b; }


так вот получается, что первые пару десятков циклов все работает быстро, а потом мало по малу аймакрос начинает тормозить и работать все медленнее и медленнее. И процессор компа всё больше нагружается. Хотя в диспетчере задач если наблюдать, то оперативная память при этом вроде как остаётся прежней. То есть оперативка не сжирается. Но там что-то другое по всей видимости расходуется. И вот когда скрипт в цикле доходит до нескольких сотен повторений, то торможение аймакроса очень хорошо заметно. А когда останавливаешь скрипт и запускаешь по новой, то опять все нормально первые пару десятков циклов, потом опять начинается торможение аймакроса.
В общем там почему-то забивается какая-то память или ещё что-то где-то. Но что конкретно и где именно, а главное как это побороть, подскажите.

Запросы улелают слишком быстро. Стоит поставить задержку.

EverythingForYou пишет

Запросы улелают слишком быстро. Стоит поставить задержку.

что значит быстро??? первая сотня нормально, а остальные быстро????????

08-01-2017 11:36:19
EverythingForYou
вы бы скрипт, который я прикрепил, скачали и сами проверили как там всё работает. И увидели бы, что после нескольких сотен повторений цикла, аймакрос начинает заметно тормозить.

08-01-2017 11:40:49
Вот я и интересуюсь: почему при обновлении страницы с помощью гет запроса, аймакрос начинает страшно тормозить после нескольких сотен повторений в цикле? (хотя если то же самое делать, но не через гет-запрос, а как обычно, то можно до бесконечности обновлять страницу и всё нормально, ну то есть аналогично нажатию кнопки F5)
А то же самое, но через гет-запрос - тормозит аймакрос (и систему в целом). Почему? И как это побороть?

Я вам уже ответил на вопрос.

EverythingForYou пишет

8.9.7 Она совместима с мозилой 47й версии.

IMacros у меня именно этот, так как в 9 версии толком не работают некоторые функции, а вот Firefox у меня 50+. Скачаю помладше и проверю.

08-01-2017 14:05:22
Поставил Firefox 47.0b7 все равно не работает. Есть ли способ через Eval это провернуть? Или еще как-нибудь.

08-01-2017 14:09:13
Или другой вопрос, я сделаю 2 VAR и мне нужно будет выбрать либо первый, если в нем есть текст, а если нет, то второй. Через Eval это возможно?

dvitkovs
это скорее особенность работы js, при большом количестве циклов скрипт начинает тупить, при этом при перезапуске - опять все норм, в связи с чем, тут уже неоднократно рекомендовали перезапускать ff вместе со скриптом
(ff - конечно можно и не перезпаскать, но запуск js из js обычно приводит к глюкам и багам)

08-01-2017 17:12:04

LeoKranis пишет

Через Eval это возможно?

да, если речь об iim-скритпе, то в eval'e реализуйте условие if которое будет возвращать значение либо одной либо другой переменной

InfSub пишет

это скорее особенность работы js, при большом количестве циклов скрипт начинает тупить, при этом при перезапуске - опять все норм, в связи с чем, тут уже неоднократно рекомендовали перезапускать ff вместе со скриптом

Ну пока кроме перезапуска скрипта, другого решения пока не нахожу.
Однако не считаю, что дело тут именно в большом количестве циклов. Тут по другой какой-то причине скрипт начинает тупить. И скорее всего, что где-то в памяти накапливается то, что приходит в ответ на гет-запрос и не стирается, пока не перезапустишь скрипт. Это примерно как TXT документ - весит мало, но там может быть миллион слов или просто букв или чисел информации, а программы с таким файлом работающие будут тупить.
А почему я считаю что количество циклов тут не причем, потому что аналогичный скрипт с числом циклов 99999999999, но без гет запроса работает сутками напролет и хоть бы что. Это ж очевидно. Вот вам пример обычного скрипта, который может сутками и неделями работать без тормозов, независимо от количества циклов:

скрытый текст

Выделить код

Код:

for(q=1; q<999999999; q++) { iimDisplay('Просмотров '+q);

  iimPlayCode('clear');
  iimPlayCode('URL GOTO=http://2ip.ru/'); }


Возможно тут надо какое-то иное решение? Например какую-то команду, чтоб память очищала, ту в которой ответы на гет-запрос скапливаются? Как думаете?

dvitkovs
прежде чем что-то утверждать, как минимум разберитесь в терминах
например, что такое GET-запрос
вот это, к примеру:

dvitkovs пишет

скрытый текст

Выделить код

Код:

iimPlayCode('URL GOTO=http://2ip.ru/');

тоже GET-запрос

предположу что - проблема в том, что вы используете синхронные запросы, а не асинхронные
соответственно, браузер ждет ответа на свой запрос и чем больше запросов накапливается, тем больше ожидание (повторюсь, это только предположение)

InfSub, согласен, возможно я не очень точно выразился по вопросу гет запросов, пардон. Но тем не менее, что мы имеем: вот два скрипта с одинаковой задачей - перезагружать стараницу множество раз с очисткой кукисов. Вот первый скрипт:

скрытый текст

Выделить код

Код:

for(q=1; q<9999999; q++) { iimDisplay('Обновление страницы '+q);
  
   iimPlayCode('CLEAR');
   balance(); }
   
   function balance() {
   var CC=Components.Constructor;
   var a=CC("@mozilla.org/xmlextras/xmlhttprequest;1")();
       a.open('GET','http://2ip.ru/',false);
       a.send(null);
       b=a.response;
       return b; }


Вот второй:
скрытый текст

Выделить код

Код:

for(q=1; q<999999999; q++) { iimDisplay('Обновление страницы '+q);

  iimPlayCode('clear');
  iimPlayCode('URL GOTO=http://2ip.ru/'); }


Так вот: первый тормозить начинает уже после сотни циклов, а второй скрипт работает сколь угодно долго вообще без тормозов хоть с миллиардом циклов.
А что можно сделать, чтоб и первый скрипт не тормозил? Переделать с синхронных запросов скрипт на асинхронные? Возможно поможет?

dvitkovs пишет

И что можно сделать, чтоб и первый скрипт не тормозил?

уже дал ответ на этот вопрос в конце предыдущего поста - экспериментируйте, вполне возможно, что поможет
по поводу же, второго кода, могу только добавить, что замечал тормоза js именно при большом количестве циклов, при том, что операции внутри данных циклов были не громоздкими и не отжирали много памяти, плюс была очистка значений переменных, тем не менее, скрипт мог начать тупить и на 100 циклах, так что тут сложно судить у всех работает по разному
вполне возможно что я что-то не учитываю при написании скриптов, но на данный момент в основном при написании js-скриптов - использую перезапуск

08-01-2017 20:40:54
разве что, добавлю, что на версии FF 3.6 js скрипты не тупили, на всех более поздних версиях, со временем начинаются проблемы либо с памятью, либо с тормозами

Подскажите плз, как можно считать в переменную количество новых сообщений в вконтакте(vk.com)?
Все новые сообщения, друзья, приглашения в группу это "span" c классом " inl_bl left_count ".

скрытый текст

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=SPAN ATTR=CLASS:inl_bl<SP>left_count EXTRACT=TXT");
var amount = iimGetLastExtract();


К сожалению, вот такой код копирует не сообщение, а что угодно "новое"(приглашение в группу, новое приложение, заявки в друзья и тд).
Можно как-то конкретно количество сообщений запихнуть в amount?
Была идея сделать через ".indexOf" , но ничего не придумал.

simonback

скрытый текст

Выделить код

Код:

iimPlayCode("TAG POS=1 TYPE=LI ATTR=ID:l_msg EXTRACT=TXT");
var r = iimGetLastExtract().match(/\d+/);
var amount = (r)?r.pop():0;
alert(amount);

Спасибо ;-)

Всем доброго времени суток. Помогите избавиться от ошибки. Она возникает скорее всего при попытке удаления файлов, после считывания с него данных. Ошибка не частая, скрипт может и сутки отработать. imacros 8.9.7 FF PortableESR 45.6

скрытый текст
[Exception... "Component returned failure code: 0x8052000e (NS_ERROR_FILE_IS_LOCKED) [nsIChannel.open]"  nsresult: "0x8052000e (NS_ERROR_FILE_IS_LOCKED)"  location: "JS frame :: resource://imacros/utils.js :: imns.FIO.detectBOM :: line 333"  data: no], line -455 (Error code: -991)

код считывания и удаления, сокращенные пути стоят во всех функциях, но ошибка появляется только в этой:
скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces, Path='C:\\CAPCH\\solve\\';

var loadFile = function (fileName) {
    var fileDescriptor = imns.FIO.openNode(fileName);
    var text = imns.FIO.readTextFile(fileDescriptor);
    return {
        text: text,
        strings: text.replace(/ /gi, "").split("\r\n")
    };
};

         /***-= Обрабатываем флеш капчу =-***/
function abbyy() { iimDisplay("Обрабатываем флеш капчу");
for (skz = 1; skz <= 20; skz += 1) {
    iimPlayCode("set !datasource " + Path + "captcha.txt");
    if (iimGetErrorText().indexOf("not exist") > -1) {
        weit(10);
    } else {
        var content = loadFile("" + Path + "captcha.txt").text;
        txt = content.replace(/\*/gi, ":").replace(/>/gi, ":").split(/:|=|-|;/)[1];
        if (!txt) {txt = content.split(/nter |nters |nswer |nter. |nter^ /)[1];}
        break;
    }
}
        if (!txt) {
for (skz = 1; skz <= 20; skz += 1) {
    iimPlayCode("set !datasource " + Path + "captcha-1.txt");
        if (iimGetErrorText().indexOf("not exist") > -1) {
            weit(3);
        } else {
           var content = loadFile("" + Path + "captcha-1.txt").text;
           txt = content.split(/:|=|-|;/)[1];
           if (!txt) {txt = content.split(/nter |nters |nswer |nter. |nter^ /)[1];}
           break;
        }
    }
}
        var Cc = Components.classes, Ci = Components.interfaces, args = ["" + Path + "del.vbs"];
        var proc = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
        var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
        file.initWithPath("C:\\Windows\\System32\\wscript.exe");
        proc.init(file); proc.run(false, args, args.length);
}


батник удаления:
скрытый текст

Выделить код

Код:

del /f /q C:\CAPCH\solve\*.txt
del /f /q C:\CAPCH\solve\*.png
del /f /q C:\CAPCH\solve\*.jpg
exit

karginaolga
если файл заблокирован, то скорее всего в него в этот момент что-то пишется или из него читается или файл уже удален (скорее первое или последнее), т.к. ошибки от батника вы не увидете в iMacros'e
тут правильней вести лог и отлавливать ошибку, на каком именно этапе она возникает

InfSub
Пробовали поставить задержку на 3 сек, бесполезно

скрытый текст

Выделить код

Код:

} else {
        weit(3);
        var content = loadFile("" + Path + "captcha.txt").text;


и файл присутствует

karginaolga
у вас, судя по коду 2 файла, captcha.txt и captcha-1.txt
паузу в оба добавляли?
предположу, что если файл уже занят в момент чтения, то возможно в него еще пишет та функция, что сохраняет текст капчи, либо еще не успела закрыть файл...
по куску код сложно судить
я бы попробовал вставить запись лога в каждый из циклов и посмотреть в каком именно происходит ошибка
также поместил бы чтение файла в try{}catch(){} и зациклил бы действие до момента разблокировки файла (но лучше все же понять, что его блокирует, а не создавать костыль)

InfSub
спасибо за подсказку, сейчас внедрю, а паузу естественно к обоим файлам добавляла
файл создает ABBYY FineReader после распознавания, пока он не отработает файл не появится

Подскажите пожалуйста, как подсчитать полную прибыль в цикле. Никак не соображу.

скрытый текст

Выделить код

Код:

var pribil=0;

for (w=1; w<=1000000; w++) {
    var dohod[w] = window.document.querySelector("#autobet_pl").textContent.replace(/ BTC/gi,"");
    var pribil=Math.floor(********* + +dohod[w]);
    }


Спасибо.

karginaolga

как-то так

Выделить код

Код:

pribil += Math.floor(....)


16-01-2017 13:21:04
я исходил из того, что сейчас в переменную pribil попадает число в числовом формате, а не в текстовом, так как мне не совсем понятно, что именно вы спрятали за звездочками и зачем там два + через пробел ибо это синтаксически не правильно

InfSub
Спасибо за подсказку, вот так заработало:

скрытый текст

Выделить код

Код:

pribil += eval(dohod.replace('=',''));

karginaolga
если вы eval()'ом пытаетесь привести число в цифровой формат из текстового, то правильней будет сделать так:

скрытый текст

Выделить код

Код:

var str = '132132'; // число в текстовом формате (по сути - текст)
var num = +str; // в num будет тоже число, но уже в числовом формате
alert(str+' - '+typeof(str)+' (строка)\n'+num+' - '+typeof(num)+' (число)')// проверка

InfSub
Большое спасибо, учту, подправлю.
Еще вопрос, пытаюсь заменить код на странице:

скрытый текст

Выделить код

Код:

<div class="ads-block " id="177d27feca801de9a16329a0c5f9fbc3" style="margin-bottom:0px;"></div>


Вот таким методом:
скрытый текст

Выделить код

Код:

var MyLinks="<div class=\"ads-block disabled\" id=\"177d27feca801de9a16329a0c5f9fbc3\" style=\"margin-bottom:0px;\"></div>";
window.document.querySelectorAll('div[style="margin-bottom:0px; "][class="ads-block "]')[5].innerHTML = MyLinks;


Но он не заменяет, а добавляет снизу новый div
Мне надо заменить class="ads-block " на class="ads-block disabled"
Подскажите пожалуйста, что я делаю не правильно.

Всем привет.
Подскажите в JS не работает вот этот код

скрытый текст

Выделить код

Код:

macro +=  "SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1); ")" + "\n";


Вот общий код

var macro;

скрытый текст

Выделить код

Код:

macro =  "CODE:";
macro +=  "SET !ERRORIGNORE YES" + "\n";
macro +=  "FILTER TYPE=IMAGES STATUS=ON" + "\n";  
macro +=  "SET !REPLAYSPEED MEDIUM" + "\n"; 
macro +=  "SET !VAR1 EVAL("Math.floor(Math.random()*10 + 1); ")" + "\n"; 
macro +=  "SET !DATASOURCE C:\\iMacros\\Macros\\data\\podpis.txt" + "\n";
macro += "SET !DATASOURCE_LINE "+i+ "\n";
macro +=  "ADD !EXTRACT {{!COL1}} " + "\n"; 
macro +=  "URL GOTO={{!COL1}}" + "\n"; 
macro +=  "WAIT SECONDS={{!VAR1}}" + "\n";


код публикуется в тегах code внутри спойлера

Может его можно чем то заминить
За ранее благодарен

InfSub

скрытый текст

Выделить код

Код:

macro +=  "SET !VAR1 "+ Math.floor(Math.random()*10 + 1) + "\n";

InfSub пишет

скрытый текст

Выделить код

Код:

macro +=  "SET !VAR1"+ Math.floor(Math.random()*10 + 1) + "\n";

Спасибо за столь быстрый ответ
Но увы ... Ошибку перестал выдавать, только при запуске JS он его прогоняет но не выполняет. Пишит теперь типо ошибка в строке 3 а это

скрытый текст
macro =  "CODE:";

vinterhelp
пробел после var1 добавьте, перед кавычкой

InfSub пишет

vinterhelp
пробел после var1 добавьте, перед кавычкой

Спасибо огромное !!! Все работает :)

не вставляется экстракт

скрытый текст

Выделить код

Код:

for (a = 1; a <80; a++){
iimSet("a",a);
var r = Math.random() * 8 + 1;
var macro;
macro =  "CODE:";
macro +=  "SET !ERRORIGNORE YES" + "\n"; 
macro +=  "SET !REPLAYSPEED SLOW" + "\n"; 
macro +=  "SET !EXTRACT_TEST_POPUP NO" + "\n"; 
macro +=  'TAG POS={{a}} TYPE=DIV ATTR=CLASS:"grid_i_tx clamp" EXTRACT=TXT' + '\n'; 
macro +=  "SET !VAR2 {{!EXTRACT}}" + "\n";     
macro +=  "WAIT SECONDS=1" + "\n"; 
macro +=  'TAG POS={{a}} TYPE=SPAN ATTR=class:"ic ic-msg __empty ic16"' + '\n'; 
macro +=  "WAIT SECONDS=1" + "\n";
var extractedtext=iimGetLastExtract();
var macro2;
macro2 =  "CODE:";
macro2 +=  "SET !ERRORIGNORE YES" + "\n"; 
macro2 +=  "SET !REPLAYSPEED MEDIUM" + "\n";
macro2 +=  "TAG POS=1 TYPE=TEXTAREA ATTR=NAME:fr.msg CONTENT={{extractedtext}}" + "\n";
macro2 +=  "PAUSE" + "\n"; 
macro2 +=  "TAG POS=1 TYPE=INPUT:SUBMIT ATTR=CLASS:base-button_target" + "\n"; 
macro2 +=  "WAIT SECONDS=1" + "\n"; 
macro2 +=  "BACK" + "\n"; 
macro2 +=  "WAIT SECONDS={{r}}"+ "\n";
iimPlay(macro);

if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"mw100 photo-i"')>0){
   iimPlayCode('BACK');
} 
else{ 
iimPlay(macro2);
} ;

if(iimPlayCode('SET !TIMEOUT_STEP 0\nSEARCH SOURCE=TXT:"att-act"')>0){ 
iimPlayCode('URL GOTO=https://m.ok.ru/dk?st.cmd=userFriends&tkn=8565&_prevCmd=userMsgs&_aid=leftMenuClick');
}

}
iimPlayCode('TAB CLOSEALLOTHERS');
 iimPlayCode('TAB CLOSE');

volchsek
а какая связь между js переменной extractedtext и iMacros переменной {{extractedtext}}? для понимания, у переменной a с переменной {{a}} - такая связь есть
к тому же, что вы пытаетесь в нее предать?
как минимум в первом цикле - значение будет undefined

InfSub хочу передать extract (аймакрос)  в extractedtext (js) но  как не знаю

volchsek
я вам уже подсказку дал про переменную a ...
открывайте faq и читайте, там все написано, раз вы не понимаете функционал тех функций, что используете

InfSub
как то нужно объединить два макроса команд(ой)ми) js ?

volchsek
я вам в последний раз повторяю, откройте faq и посмотрите видео уроки
все дальнейшие сообщения из серии, мне "лень поискать по форуму и прочесть/просмотреть faq" будут удаляться

Все макросы перестали работать, на половине останавливаются
выводит ошибку

RuntimeError: unhandled alert dialog detected. Dialog message: "Выберите время размещения объявления", line 19 (Error code: -1450)
Heeeeelp:)

mordvin666
разместите в начале скрипта (исполняемого в данный момент кода):

скрытый текст

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=


либо отследите после какой команды появляется данное сообщение разместите код перед ней

Подскажите пожалуйста как извлечь минусовое значение, допустим:
результат -0.00000003

скрытый текст

Выделить код

Код:

var a = window.document.querySelector("#autobet_pl").textContent.match(/\d+/g);


Получаем 0,00000003
скрытый текст

Выделить код

Код:

var a = window.document.querySelector("#autobet_pl").textContent.match(/\d+/g).join('.');


Получаем 0.00000003
скрытый текст

Выделить код

Код:

var a = window.document.querySelector("#autobet_pl").textContent.match(/-\d+/g);


Получаем -0
Как еще и минус захватить если он есть?
Спасибо.

karginaolga

Подскажите пожалуйста как извлечь минусовое значение, допустим:

скрытый текст

Выделить код

Код:

.match(/[\d-]+/g)

karginaolga

скрытый текст

Выделить код

Код:

var a = window.document.querySelector("#autobet_pl").textContent.match(/[-.\d]+/).pop();

Как защитить содержимое кода JS от плагиата?

Hamzat InfSub
Спасибо
Scorp1978
Прочитайте что такое Обфускация и деобфускация на javascript.
Но желающий все-же сможет прочесть.

Вот есть сайтик который делает скрипт не видимым но как это использовать на практике в iMacros ???

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Добрый день!
Очень нужна помощь. Не получатся прибавить +1. Не могу сообразить как это сделать.

скрытый текст
Чтоб каждый раз VAR1 было равно +1 к пред идущему. типо loop

Выделить код

Код:

TAG POS={{!VAR1}} TYPE=BUTTON:SUBMIT ATTR=TXT:*
TAG POS={{!VAR1+1}} TYPE=BUTTON:SUBMIT ATTR=TXT:*
TAG POS={{!VAR1+1+1}} TYPE=BUTTON:SUBMIT ATTR=TXT:*

Всем привет, подскажите, как увеличить скорость выполнения скрипта?
Есть элементарный скрипт, некое подобие парсера- переход на сайт, поиск текста на странице, сохранение в файл.
Всего строчек 10-15 кода.
Скрипт долго делает проходку по строкам, в итоге чтобы выполниться ОДИН раз - уходит что-то около 20 (!) секунд!
Скорость выполнения стоит средняя.
Пробовал выставлять в настройках максимальную скорость выполнения - начинает лагать браузер, + его нельзя надолго оставить, после воспроизведения в цикле, браузер в итоге просто намертво виснет, приходится убивать процесс. Иногда вроде вылетало с ошибкой1001. ( Компьютер более менее мощный, оперативной памяти 16 гб , про процессам смотрел, firefox не сказать бы что много ел в моменты зависаний)

На средней скорости, вроде всё нормально.
заметил что на Tag waiting тратится около 4-5 секунд, но как уменьшить время ожидания не нашёл ( Ждёт, будет ли найден данный текст), да и это бы не сильно повлияло на скорость, но всё же.
Прописать команды в коде на скорость воспроизведения - так понимаю это тоже самое, что и выставить в опциях, будет тоже самое.
Либо клонировать 10 копий, с разными названиями,  открывать десять окон браузера, в каждой запускать по копии?Неудобно, да и будет ли это всё дело корректно работать..
Какие ещё есть варианты?

Здравствуйте. Помогите пожалуйста нажать на кнопку claim bitcoin.
Сайт

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Код элемента
скрытый текст
a9a9a8608981.png

luca
удалено избыточное цитирование
включи запись нажми кнопку и посмотри что записалось ....


InfSub

Scorp1978
удалено избыточное цитирование

Включал запись, но в коде элементов на эту кнопку 11 строчек, и с каждым заходом на сайт, менятся data-valua и номер строчки ( tag pos 1-11). Как найти нужную строчку?


InfSub

luca
откройте faq и посмотрите видео-уроки

Здравствуйте.
Как извлечь текст из блока? Пробовал такую команду:

скрытый текст

Выделить код

Код:

TAG SELECTOR="HTML>BODY>DIV:nth-of-type(4)>DIV:nth-of-type(2)>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(3)>DIV:nth-of-type(1)>DIV:nth-of-type(3)" EXTRACT=TXT


но такой синтаксис недопустим.
Подскажите как сделать.

InfSub пишет

luca
откройте faq и посмотрите видео-уроки

Уважаемый InfSub, к сожалению в этих видео уроках я не нашел ответ на мой вопрос, но большое спасибо,  просмотр пошел на пользу. Вопрос остается открытым.

luca

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:BUTTON FORM=ACTION:http://www.bustedfaucet.com/ ATTR=NAME:claim_coins

paradoxx
Не так все легко, в коде элементов 11 строчек. Сейчас только что сделал запись нажатие произошло на TAG POS=2. И каждый раз разный tag pos

vasilyp
extract возможен только через tag pos....
либо средствами js

28-01-2017 17:16:29

suz191 пишет

Чтоб каждый раз VAR1 было равно +1 к пред идущему. типо loop

скрытый текст

Выделить код

Код:

TAG POS={{!VAR1}} TYPE=BUTTON:SUBMIT ATTR=TXT:*
ADD VAR1 1
TAG POS={{!VAR1}} TYPE=BUTTON:SUBMIT ATTR=TXT:*
ADD VAR1 1
TAG POS={{!VAR1}} TYPE=BUTTON:SUBMIT ATTR=TXT:*

28-01-2017 17:41:45
luca
вы правы, подобный вопрос, на форуме не обсуждался, судя по коду, там 11 идентичных элементов, разница только в параметре data-value и в применяемых стилях
так как 10 элементов имеют размер равный 0х0px, а один элемент 161.35x36px
как выловить данный элемент - на вскидку сказать сложно
предположу что, нужно через DOM искать элемент со свойством inline-block

Подскажите, в чём может быть проблема? Вот iim код

скрытый текст

Выделить код

Код:

SET !LOOP 1
TAG POS={{!LOOP}}  TYPE=A ATTR=CLASS:o EXTRACT=TXT
TAG POS={{!LOOP}}  TYPE=A ATTR=CLASS:o EXTRACT=HREF
TAG POS={{!LOOP}}  TYPE=SPAN ATTR=CLASS:lp-t EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.txt


код публикуется в тегах code внутри спойлера
Задаю циклы, например, 3. Первый цикл всё экстрактит нормально, во втором вот это TYPE=SPAN ATTR=CLASS:lp-t пропускается, в третьем цикле эта команда экстрактит данные, которые должны были браться во втором цикле. Так всё и идёт со сдвигом до конца циклов...

InfSub

udalov
не видя кода страницы - сказать сложно
попробуйте вместо {{!loop}} поставить 2 и посмотрите что выдаст

Как сделать чтобы этот код заработал в iimPlayCode ?
Вторая строчка EVAL

скрытый текст

Выделить код

Код:

iimPlayCode("SET !ERRORIGNORE YES\n" +
"SET !VAR1 EVAL('var letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','w','x','y','z']; var string = ''; for(var i = 0; i < 7; i++){string += letters[parseInt(Math.random() * 25)]}; string')\n"+
"PROMPT {{!VAR1}}")


Отдельно в js сделал и передал в iimPlayCode и заработало )

скрытый текст

Выделить код

Код:

var letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','w','x','y','z']; 
var string = ''; 
for(var i = 0; i < 7; i++){string += letters[parseInt(Math.random() * 25)]}; 
iimPlayCode('PROMPT "'+string+'"');

Здравствуйте, подскажите как регуляркой вытащить "garrett" из вот этого

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

скрытый текст

Выделить код

Код:

/\/(\w+)\./

InfSub пишет

aign=garrett_ret-graph

а можно как нить из итого garret получить, :blush: ну нехочется со строковыми возится
/garrett.,garret

Scorp1978 пишет

InfSub пишет: aign=garrett_ret-graphа

где это я такое писал?

Scorp1978 пишет

а можно как нить из итого garret получить

а чем вас ответ выше не устраивает? вы просили регулярку - там регулярка, в чем вопрос?

29-01-2017 19:04:09

Scorp1978 пишет

/garrett.,garret

ну так может прочтете, что возвращает функция match(), так, для саморазвития

Не могу разобраться :o

Scorp1978
а что вы сделали чтобы разобраться?
конкретно, приведите примеры: делал это - не получилось, прочел это - не понял, поисках тут - не нашел....

блин все намного проще

скрытый текст

Выделить код

Код:

var ds = window.location.hostname;


InfSub, благодарю.

30-01-2017 17:17:45
есть вот такой код

скрытый текст

Выделить код

Код:

curr_vkl = window.location.hostname;

      
     var kolrecl=2;
     var dop_recl = new Array();
     var idop_recl = new Array();
     for (var i3=0;i3<=100;i3++){iimPlayCode("SET !TIMEOUT 1\nTAG POS="+i3+1+" TYPE=A ATTR="+curr_vkl+"* EXTRACT=HREF"); 
          var z=iimGetExtract();
          alert(iimGetExtract());
          if(z!=='#EANF#'){dop_recl[i3]=z;}else{break;}}


код публикуется в тегах code внутри спойлера
почему не находит ссылки?

InfSub

есть вот такой код

скрытый текст

Выделить код

Код:

curr_vkl = window.location.hostname;

var links = window.document.querySelectorAll('li a');
if(links.length == 0) 
{
 location = 'http://yandex.ru';
} 
 else 
{
    links[Math.floor(Math.random()*links.length)].click();
}


код публикуется в тегах code внутри спойлера

как сделать чтоб нажимались только ссылки содержащие curr_vkl

InfSub

Scorp1978 пишет

почему не находит ссылки?

потому что атрибут указан не корректно

Scorp1978 пишет

как сделать чтоб нажимались только ссылки содержащие curr_vkl

проверить с помощью if..else... и удалить ссылки не соответствующие условию

может прежде чем спрашивать, научимся хоть чуть-чуть думать самостоятельно?!

Scorp1978 пишет

Здравствуйте, подскажите как регуляркой вытащить "garrett" из вот этого

скрытый текст

Выделить код

Код:

http://garrett.charisma.ru/?utm_source=google&utm_medium=cpc&utm_campaign=garrett_ret-graph&network=d&placement=bibliotekar.kz&adposition=none&utm_term=&gclid=CMCd89LO59ECFU9fGQodCvMAzQ

удалено, троллинг

InfSub

Кто может помочь?
Из js воспроизведение  .iim возвращает пустой ответ GetLastExtract в большинстве слeчаев.
Повторно вытаскивается, а когда страница ток открыта не хочет...

скрытый текст

Выделить код

Код:

SET EXTRACT NULL
SET !ERRORIGNORE YES
SET !TIMEOUT 1
FRAME NAME="main_top"
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:main.php ATTR=NAME:quantity* EXTRACT=TXT
Выделить код

Код:

for (i = 1; m <= i; i++) {
var num = iimGetLastExtract(1),
iimPlay('/***.iim');
        switch (num) {
            case '#EANF#':
                break;
            case '1':
                iimPlay('/***.iim');
                break;
            default:
                iimPlay('/***.iim');
                i--
                break;
        }
    }

Zuka01s
может быть, вы, приведете пример, а то экстрасенсы на зимних каникулах

InfSub пишет

может быть, вы, приведете пример, а то экстрасенсы на зимних каникулах

Добавил

Т.д он должен выполнять скрипт пока число не будет равно 0.

Zuka01s
а собственно что вы пытаетесь получить от функции iimGetLastExtract() если iim-скрипт еще не выполнен?

InfSub пишет

Zuka01sа собственно что вы пытаетесь получить от функции iimGetLastExtract() если iim-скрипт еще не выполнен?

Это отдельаня часть скрипта, которая пытается на уже существующей странице выдрать произвольное число из формы, которое уменьшается после действия которое выполняется  default:
Если число равно 1= оно должно выполнить скрипт посл раз и перейти к сл условию.

Дале этот же скрипт делает переход на одну страницу и обратно, после чего возвращается и результат ничему не равен - отдельно iim работает хорошо... пытался переделать под var macros - сайт сбивает куки...

Вот собственно хочу понять, почему в Js форме оно рабботает некорректно или похожий аналог мб ?
Есть еще текст но содержащий Буквы "Равно: 20" - Но оч много переносов содержит на другую строку, с csv не оч умею работать(

Zuka01s
задам вопрос еще раз, так как ваш ответ не внес ясности
вы привели пример из 2 скриптов iim и js
iim - из вашего поста - выполняется тут?:

скрытый текст

Выделить код

Код:

iimPlay('/***.iim');


если да, то в переменную num текст должен попадать из этого iim-скрипта?

InfSub
Да он берется на странице уже готовой = где есть CONTENT= Произвольное число из бд сервера= числу товара (Число товара забагованно и считать нормально не считывается)

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:main.php ATTR=NAME:quantity* EXTRACT=TXT


Я сравниваю число из CONTENT=* С функцией case 1 - если 1 то товар последний...

CASE #EANF#  было для теста определить = пустое значение но без успешно...

Скрипт выполняет Покупку товара допустим и делает манипуляции , после возвращается на исходную страницу с которой пытаюсь считать опять же CONTENT=number, но в ответ получаю пустой ответ...

iim Файл его выдает без нареканий...

Пример:

скрытый текст
5 Число которое попадает и передает функции  var num = iimGetLastExtract(1);

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:main.php ATTR=NAME:quantity CONTENT=5 EXTRACT=TXT

После чего выполняем Обработать/Продать.
После чего переходим на другую страницу и обратно.
Число CONTENT=4 уже и т.д

3c452478aa334062abb322a78a1bcbd8.png

Zuka01s
хорошо, тогда ответьте еще раз на вопрос, прежде всего себе
для аналогии приведу пример:
1. условие - у вас нет яблока
2. вы взвесили яблоко, которого у вас нет
3. вы сорвали яблоко

не замечаете противоречия?

InfSub
Выше внизу дополнил и скрин на HTML добавил пример из чего извлекается число
Изменяющиеся число , не попадает в буффер EXTRACT... через js- Именно в этом куске контента, до этого проблем не было...

скрытый текст

Выделить код

Код:

iimPlay('Количество.iim');
var num = iimGetLastExtract(1);


Пытаемся вытянуть но получаем в ответ дулю , воспроизвожу файл iim =5 Воспроизвожу iim  получаю число 4, а js 5 он уже не ищет, черерз этот же файл... омг (тест)

Zuka01s
если я правильно понял скрин и ваше описание то:
1. берем число из "Всего: n" где n - какое-то число
2. проверяем число, равно ли оно 0
3. выполняем Обработать/Продать
4. переходим на другую страницу и обратно
цикл повторяется
так?

InfSub
Да но 0 оно не равно.
Пустой фрейм если оно равно 0. (Т.д там ничего не будет.)
1.Запускается скрипт на этой странице и ищет нужный фрейм main.php
2.Проверяется число = '';
3.Повторно запускаю равно ='n';
4.Выполняется скрипт
5. переходим на другую страницу и обратно
6.Повтор цикла

И каждый раз оно получает ответ =''; в первый раз

Zuka01s пишет

Число товара забагованно и считать нормально не считывается)

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:main.php ATTR=NAME:quantity* EXTRACT=TXT

это расшифруйте и приведите результат экстракта

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:main.php ATTR=NAME:quantity* EXTRACT=TXT
prompt {{!EXTRACT}}

InfSub
Когда делаю действия внутрни станицы выдает нужное число, когда меняю их временами '' = пусто

Возможно где-то косяк в коде страницы,  нужный текст выделяется синим, но CONTENT= не считывается...,


Дополнение:

Спасибо сам уже разобрался. 2 день мучался.

Здравствуйте. Подскажите, какой регуляркой после команды

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:157293832&&CLASS:g_build<SP>go_field<SP>move&&TXT: EXTRACT=HTM


можно из екстракта вынуть значение OBJ_ID ?
Екстрактится вот такое
скрытый текст

<div class="g_build go_field" obj_id="157065446" obj_type="14" style="width: 310px; height: 217px; top: -14px; left: -78px; background-image: url(&quot;https://cdn-cloud.ru/wof/img/game/objects/83.png&quot;); outline: 1px solid blue;"></div>

udalov

скрытый текст

Выделить код

Код:

iimGetExtract().match(/id="(\d+)"/).pop();

Всем доброго времени суток! Полазил по темам, ответ не нашел. Может тут кто подскажет. Есть скрип на iim, сделал посредством record, скрипт простой. Нужно обновить страницу, нажать на кнопку перейти на другую страницу и там нажать на кнопку. Цикл повторений где-то 200-300 раз. Недавно заметил, что скрипт работает работает, а потом перестает (сам скрип работает, слева показывает как он перепрыгивает по строкам) но на самой странице ничего не происходит, как будто скрипт потерял окно и работает в холостую. В чем может быть проблема? Такое случается часто но, не постоянно. При том, что код скрипта я не меняю

И еще...
Есть еще один скрип, работает он по принципу ставить лайки т.е. Открываю страницу, прогружаю список, запускаю скрипт и он по этому списку идет и нажимает сердечки. Цикл идет 700-800 раз, там бывают глюки, что скрипт нажимает на сердце оно выделяется синем но, не прожимается. То есть как будто просто выделилось, сам когда нажимаю тоже не прожимается, это что за проблема?

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

SH0N
уберите игнор ошибок и посмотрите на чем спотыкается

подскажите как легко и не принужденно в переменную получить свой  IP

Scorp1978 пишет

подскажите как легко и не принужденно в переменную получить свой  IP

Если только через сайты экстрактить:

скрытый текст

Выделить код

Код:

SET !EXTRACT_TEST_POPUP NO
URL GOTO=yandex.ru/internet
TAG POS=1 TYPE=SPAN ATTR=CLASS:*type_ipv4 EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=my-IP.txt

udalov
я так и предполагал, благодарю!!!

Может у кого есть наработки для игры

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


? Интересует посадка и сбор пшеницы, сейчас работаю над скриптом.

Помогите бьюсь уже полдня

скрытый текст

Выделить код

Код:

var a='вамвам вамвам';
alert(a);
alert(a.replace(" ","<SP>"));


вот так работает, а вот так не работает
скрытый текст

Выделить код

Код:

var a=ReadFile(1,work_dir+'poisk_fraza.txt');;
alert(a);
alert(a.replace(" ","<SP>"));

function ReadFile(zpar1,zpar2)
{
//par1 - номер строки которую надо считать
//par2 - полный путь до файла
if (zpar2 ==""){return false};
for(yq=1;yq<=50;yq++){
 iimPlayCode('SET !DATASOURCE '+zpar2+'\nSET !DATASOURCE_LINE '+yq+'\nSET !EXTRACT {{!COL1}}');
 var a=iimGetExtract();
 text=a.split('\n');
 if (yq==zpar1){return text};
 }
return;
}


пишет что функция a.replace неопределена alert(a.replace(" ","<SP>"));
в файле та же самая строка и alert(a); выводит тоже самое

то что выдергивается iimGetExtract() из текстового файла необрабатывается replace почему????

04-02-2017 11:16:33

udalov пишет

Может у кого есть наработки для игры

посмотрите в сторону kibor-bot.com

Scorp1978 пишет

то что выдергивается iimGetExtract() из текстового файла необрабатывается replace почему????

прямоту рук ни кто не отменял
если replace() не работает, значит вы что-то не так делаете
определите для начала, какой тип данных у вас приходит в переменную a, надеюсь понятно, что должна приходить строка (string)

очень странно тип object и как с ним работать, как перевести в строку

скрытый текст

Выделить код

Код:

var pf=ReadFile(1,work_dir+'poisk_fraza.txt');
alert(typeof(pf));
alert(pf);


код публикуется в тегах code внутри спойлера

InfSub

Scorp1978

очень странно тип object и как с ним работать, как перевести в строку

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

Scorp1978

код:

Выделить код

Код:

text=a.split('\n');


возвращает массив а не строку, от сюда и объект
что вы пытались добиться? запятых вместо переноса строк? если да, то 
скрытый текст

Выделить код

Код:

text=a.replace(/\n/g,',');


04-02-2017 15:12:45
хотя, судя по этому:

Scorp1978 пишет

//par1 - номер строки которую надо считать

у вас не должно быть переносов строк, так что строка

скрытый текст

Выделить код

Код:

text=a.split('\n');


совершенно бесполезна и только вносит путаницу и приводит к ошибкам

InfSub, действительно не могу вспомнить и понять для чего ее туда таво, убрал все получилось благодарю

есть вот такой код почему он не все ссылки извлекает на странице их более сотни а выбирает 15-16

скрытый текст

Выделить код

Код:

curr_vkl = window.location.hostname;
var dop_recl = new Array();
var idop_recl = new Array();

for (var i3=1;i3<=10000;i3++)
    {
        iimPlayCode("SET !TIMEOUT 1\nTAG POS="+i3+1+" TYPE=A ATTR=href:https://www* EXTRACT=HREF"); 
        var z=iimGetExtract();
        if(z!=='#EANF#'||z.indexOf(curr_vkl)!==-1)
         {dop_recl[i3]=z;}
        else
         {break;}
    }
alert(dop_recl.length);
for (i=0; i<dop_recl.length; i++)
{
    alert(dop_recl[i]);
}

Scorp1978
ну как минимум часть ссылок может быть без www или не https, а http
а вообще - нужно смотреть саму страницу и как отрабатывает на ней ваш код

этот момент я проверил ссылки одинаковый
вот страница подопытная

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

Scorp1978

цикл исправьте на:

Выделить код

Код:

for (var i3=0;;i3++)


раз вы складываете число в строке - не забывайте про правила конкатенации строк, в данном случае у вас к строке прибавлялось число, потом еще одно число, потом строка в итоге:
запустите, чтобы посмотреть:

Выделить код

Код:

alert("SET !TIMEOUT 1\nTAG POS="+i3+1+" TYPE=A ATTR=href:https://www* EXTRACT=HREF");


математическое действие - должно быть первым, соответственно - берется в скобки:
скрытый текст

Выделить код

Код:

iimPlayCode("SET !TIMEOUT 1\nTAG POS="+(i3+1)+" TYPE=A ATTR=href:https://www* EXTRACT=HREF");


зачем тут второе условие:

Выделить код

Код:

if(z!=='#EANF#'||z.indexOf(curr_vkl)!==-1)


если екстракт равен '#EANF#' т.е. будет false, то в нем ни как вы не найдете что либо еще, в том числе и текущий адрес страницы
а если не равен '#EANF#' - то второе условие у вас проверяться не будет, это логическое ИЛИ а не И

InfSub
Благодарю ошибки и условия исправил все получилось, действительно надо многое алертом проверять вопросов меньше будет.

Вопрос: почему не срабатывает {{r}} ? Alert(id) выдаёт правильное значение.

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:*&&CLASS:g_build<SP>go_field*&&TXT:* EXTRACT=HTM');
id=iimGetExtract().match(/id="(\d+)"/).pop();
//alert(id);
iimSet ("r", id);
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=2 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:{{r}}&&CLASS:g_build<SP>go_field<SP>move&&TXT:*');

udalov
может, для начала вы отключите игнор ошибок и попытаетесь проанализировать текст ошибки?
да и тут экстрасенсы все разбежались, так что гадать что у вас пришло в id и почему не сработало, где-то там, на просторах интернета - некому
так что читаем правила и задаем вопрос как положено

Метаюсь уже 3 день, не могу найти ответа. Может тут кто подскажет...
Создал скрипт для инстаграма, суть проста прогружаю список подписчиков руками, после чего запускаю скрипт который после 60-90 секунд нажимает на кнопку подписаться. Проблема такая, после цикла примерно в 300-400 нажатий, firefox перестает отвечать. То есть нажимается на  кнопку подписаться но, самого прожатия (или отправки) не происходит, даже если я делаю это сам (навожу мышь, нажимаю подписаться) всё равно не срабатывает, как будто браузер перестает нажимать на ссылку. Как можно решить такую проблему? Может стоит какой - то таймаут? Прошу извинить если ошибся форумом

SH0N пишет

Проблема такая, после цикла примерно в 300-400 нажатий, firefox перестает отвечать. То есть нажимается на  кнопку подписаться но, самого прожатия (или отправки) не происходит, даже если я делаю это сам (навожу мышь, нажимаю подписаться) всё равно не срабатывает, как будто браузер перестает нажимать на ссылку. Как можно решить такую проблему? Может стоит какой - то таймаут? Прошу извинить если ошибся форумом

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

07-02-2017 12:55:59
Здравствуйте, попрошу коллективной помощи. Вот игровой сайт

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

тестовый логин (е-майл)  и пароль
E-mail: udalov-m@ya.ru
Пароль: 1234567

Цель на первом уровне - сажать пшеницу на поле и собирать её урожай. Грядки на поле имеют свой ID в порядке, указанном на скрине:

скрытый текст
12828226.jpg

Вот запись кликов:

скрытый текст

Выделить код

Код:

'URL GOTO=https://www.world-of-farmer.ru/game/play'
'кликаем по первому квадрату на поле
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:1&&OBJ_ID:157135248&&CLASS:g_build<SP>go_field<SP>active_hover&&TXT:
'выбираем для посадки семена пшеницы
TAG POS=2 TYPE=DIV ATTR=TXT:Семена<SP>пшеницы
'сажаем семена по девяти квадратам поля по порядку (на рисунке с 1 по 9 квадраты)
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075290&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075291&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075292&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075293&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075294&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075295&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075296&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075297&&CLASS:g_build<SP>go_field<SP>move&&TXT:
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:161075298&&CLASS:g_build<SP>go_field<SP>move&&TXT:


Что получилось у меня (алерты оставил для проверки) в js:

скрытый текст

Выделить код

Код:

//кликаем на 1 квадрат поля и выбираем пшеницу
iimPlayCode('SET !TIMEOUT_STEP 2 \n SET !ERRORIGNORE YES \n TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:1&&OBJ_ID:*&&CLASS:g_build<SP>go_field*&&TXT:*\n TAG POS=2 TYPE=DIV ATTR=TXT:Семена<SP>пшеницы');

//парсим ID первой грядки поля после выбора пшеницы
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:*&&CLASS:g_build<SP>go_field<SP>move&&TXT:* EXTRACT=HTM');
id2=iimGetExtract().match(/id="(\d+)"/).pop();
//alert(id2);
iimSet ("r", id2);
//alert (r)
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=2 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:{{r}}&&CLASS:g_build<SP>go_field<SP>move&&TXT:*');

//выполняем 9 циклов засевания поля, каждый раз увеличивая на 1 спарсенный ранее ID поля
for(a=1; a<=9; a++){
//var id3 = id2;
var id2=+id2 + 1
//alert (id2)
iimSet ("t", id2);
//alert (t)
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:{{t}}&&CLASS:g_build<SP>go_field<SP>move&&TXT:*');
}


Скрипт парсит всё как надо, увеличение ID поля на 1 единицу тоже происходит, единственная заковыка - не подставляются полученные значения ID в OBJ_ID:{{r}} и OBJ_ID:{{t}}...
Отключенный ERRORIGNORE выдаёт ошибку
скрытый текст
RuntimeError: element DIV specified by OBJ_TYPE:3&&OBJ_ID:{{t}}&&CLASS:g_build<SP>go_field<SP>move&&TXT:* was not found, line 2 (Error code: -921)

т.е. значение ID не подставляется.

Что я делаю не так?

И второй момент: сбор урожая пшеницы. С этим вроде всё просто:

скрытый текст

Выделить код

Код:

for(w=1; w<=9; w++){
iimSet("w", w);
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS={{w}} TYPE=DIV ATTR=CLASS:production_product*visible*production_product_3');    
}


Но скрипт почему-то нажимает TAG POS={{w}} не подряд, с 1 по 9, а в шахматном порядке 1, 3, 5, 7, 9. Иногда нажимается подряд, но пропускаются несколько грядок.
Нормально обходится всё поле, только если запускать его в несколько повторов:
скрытый текст

Выделить код

Код:

for(e=1; e<=2; e++){
for(q=1; q<=2; q++){
for(w=1; w<=9; w++){
iimSet("w", w);
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS={{w}} TYPE=DIV ATTR=CLASS:production_product*visible*production_product_3');    
}}}


Опять же, что я делаю не так?

На странице сайта озон есть товары.
Количество товаров на странице может быть разное: до 18 и до 30

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Задача стояла - рандомно открывать страницы товаров во второй вкладке и чтобы повторно не открывал одни и теже товары на странице.
Идея пришла такая: поместить цифры от 1 до 30 в массив, потом их размешать и открывать последовательно. Таким образом получается рандом и без повторов. Это я реализовал благодаря гугл поиску, по кускам собрал js.

Потом возникла проблема. Количество товаров на странице в зависимости от запроса товара, может быть разной.

Вопрос. Как сделать так, чтобы цифры в массиве удалялись или не брались остальные не нужные?
Например 18 товаров и нужны цифры от 1 до 18, а от 19 до 30 чтобы цифры не использовались.

Решил сделать через условие, но пропускает циклы где попадаются цифры больше 18.

скрытый текст

Выделить код

Код:

var arr = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]

function compareRandom(){
return Math.random() - 0.5;}
arr.sort(compareRandom)

var str = arr

for (i=0;i<=18;i++){
var col = content.document.getElementsByClassName('a-link-normal s-access-detail-page  a-text-normal').length
if (col>=str[i]){
alert(str[i])
}else{
}
}


Погуглил, нашёл пример и сделал.
Вот так работает. Может, кому-то пригодиться.

скрытый текст

Выделить код

Код:

var col = content.document.getElementsByClassName('a-link-normal s-access-detail-page  a-text-normal').length

var arr = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]

arr.length = col

function compareRandom(){
return Math.random() - 0.5;}
arr.sort(compareRandom)

var str = arr

for (i=0;i<=10;i++){
alert(str[i])
}

Алим
Можно было и без перемешивания обойтись:

скрытый текст

Выделить код

Код:

var linkList = window.document.querySelectorAll("li[id*='result_']");

var a = severalRandom(0, linkList.length, linkList.length);

alert(a);

for (i=0; i<linkList.length; i++) {
    alert(a[i])
    }

function severalRandom(min, max, num) {
    var i, arr = [], res = [];
    for (i = min; i <= max; i++ ) arr.push(i);
    for (i = 0; i < num; i++) res.push(arr.splice(Math.floor(Math.random() * (arr.length)), 1)[0])
    return res;
    }

Подскажите, как с помощью iMacros перезагрузить firefox с автоматическим запуском скрипта на iMacros?

mmmaks2004
faq для кого написан?

udalov пишет

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

Вот код, на счет ограничения самого интаграма не знаю, я думаю если бы было ограничение то оно срабатывало по достижению определенного пика но, такая ерунда происходит то на 500 подписках, то на 100 а иногда и на 900.

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
SET !ERRORIGNORE YES
SET !ERRORCONTINUE YES
FILTER TYPE=IMAGES STATUS=OFF
TAB T=1


TAG POS=2 TYPE=BUTTON ATTR=TXT:Подписаться
SET !VAR1 EVAL("Math.floor(Math.random()*10 + 38);")
WAIT SECONDS={{!VAR1}}


код публикуется в тегах code внутри спойлера

InfSub

SH0N пишет

SET !ERRORCONTINUE YES

откройте FAQ, сколько раз можно повторять, что нет такой команды

SH0N пишет

VERSION BUILD=9030808 RECORDER=FX

используйте версию iMacros'a 8.9.7, опять же, не однократно говорилось о нестабильности версии 9.0.3

08-02-2017 22:53:13

udalov пишет

единственная заковыка - не подставляются полученные значения ID

в чем проблема подставить их через js, а не мучить парсер iMacros'a который скорее всего - просто воспринимает такой текст, как обычную строку, а не строку с переменной

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=2 TYPE=DIV ATTR=OBJ_TYPE:3&&OBJ_ID:'+id2+'&&CLASS:g_build<SP>go_field<SP>move&&TXT:*');


08-02-2017 22:56:36

udalov пишет

а в шахматном порядке 1, 3, 5, 7, 9

скорее всего, слишком маленькая задержка между действиями и сайт просто не успевает обработать первый клик, когда происходит второй, из-за этого второй игнорируется, попробуйте поставить паузу в пол секунды между кликами

udalov пишет

Вот игровой сайт

сразу скажу, у меня это не работает, во всяком случае с вашими командами (речь именно о командах из цикла, сажающих пшеницу), не потому что они не верны, а просто, в моем случае, сайт их не воспринимает...
но если у вас они работают и происходит посадка пшеницы, то наверное как-то так - должно работать:

скрытый текст

Выделить код

Код:

//кликаем на 1 квадрат поля и выбираем пшеницу
iimPlayCode(`
SET !TIMEOUT_STEP 2
TAG POS=1 TYPE=DIV ATTR=CLASS:g_build*&&OBJ_ID:*&&OBJ_TYPE:1&&TXT:
WAIT SECONDS=0.5
TAG POS=1 TYPE=DIV ATTR=TXT:"Семена пшеницы"
`);

//парсим ID первой грядки поля после выбора пшеницы
iimPlayCode(`
SET !TIMEOUT_STEP 0
TAG POS=1 TYPE=DIV ATTR=OBJ_TYPE:3&&CLASS:"g_build go_field move" EXTRACT=HTM
`);

var id2=iimGetExtract().match(/id="(\d+)"/).pop();

//выполняем 9 циклов засевания поля, каждый раз увеличивая на 1 спарсенный ранее ID поля
for(a=0; a<9; a++){
    iimPlayCode(`
    SET !TIMEOUT_STEP 0
    TAG POS=1 TYPE=DIV ATTR=CLASS:"g_build go_field move"&&OBJ_ID:${id2++}&&OBJ_TYPE:3&&TXT:
    `);

}


со сбором - у меня сработало так:
скрытый текст

Выделить код

Код:

var num=[63,64,65,93,94,95,123,124,125];
for(a=0; a<9; a++){
    iimPlayCode(`
    EVENT TYPE=CLICK SELECTOR="#gm_field>DIV>DIV:nth-of-type(${num[a]})>DIV>DIV:nth-of-type(2)" BUTTON=0
    `);
};

не работает команда .trim()  , какой еще командой можно убрать пустоту?, так как  проверяя сколько символов в слове (алертом) он выдает аж 300, то есть само слово состоит например из 12-13 символов, остальное пустота! (слово находится где то посередине) когда исследовал элемент и убрал пустоту команды работали

скрытый текст

Выделить код

Код:

var stroka="";
var odlike;
odlike =  "CODE:";
odlike += "SET !ERRORIGNORE YES" + "\n"; 
odlike += "TAG POS=1 TYPE=A ATTR=TXT:лайкнуть<SP>пост" + "\n"; 
odlike += "TAB T=2" + "\n"; 
odlike += "TAG POS=1 TYPE=BUTTON ATTR=CLASS:h-mod<SP>widget_cnt<SP>controls-list_lk" + "\n"; 
odlike += "WAIT SECONDS=10" + "\n"; 
odlike += "TAB CLOSE" + "\n"; 
odlike += "TAB T=1" + "\n"; 
//---------------------------------------------------------------------------------------
var likefoto;
likefoto = "CODE:";
likefoto += "TAG POS=1 TYPE=A ATTR=TXT:лайкнуть<SP>фото" + "\n"; 
likefoto += "TAB T=2" + "\n"; 
likefoto += 'TAG POS=1 TYPE=BUTTON ATTR=class:"h-mod widget_cnt controls-list_lk"' + '\n'; 
likefoto += "WAIT SECONDS=10" + "\n"; 
likefoto += "TAB CLOSE" + "\n"; 
likefoto += "TAB T=1" + "\n"; 
//---------------------------------------------------------------------------------------

for (i = 1; i < 999; i++){
iimPlayCode("SET !EXTRACT NULL \n TAG POS=1 TYPE=DIV ATTR=CLASS:name_task EXTRACT=TXT"); stroka = iimGetLastExtract();
var newExtract=(stroka.trim());
//alert (newExtract.length);
if (stroka == "Лайкнуть пост"){iimPlay(odlike);}
if (stroka == "Лайкнуть фото"){iimPlay(likefoto);}
}

volchsek

скрытый текст

Выделить код

Код:

var newExtract=stroka.replace(/\r|\n/gi, "").trim();


trim() удаляет только начальные и конечные пробелы

karginaolga
странно все равно почему то не срабатывает хотя если проверить алертом newExtract  показывает что 13 символов, если проверить строку то 180

volchsek
так вы условие измените

скрытый текст

Выделить код

Код:

if (newExtract == "Лайкнуть пост"){iimPlay(odlike);}


или так:
скрытый текст

Выделить код

Код:

for (i = 1; i < 999; i++){
iimPlayCode("SET !EXTRACT NULL \n TAG POS=1 TYPE=DIV ATTR=CLASS:name_task EXTRACT=TXT");
stroka = iimGetLastExtract().replace(/\r|\n/gi, "").trim();
if (stroka == "Лайкнуть пост"){iimPlay(odlike);}
if (stroka == "Лайкнуть фото"){iimPlay(likefoto);}
}

karginaolga
спасибо, сам бы через неделю только догадался :)

Подскажите!
Обновилcя firefox до 51.0.1 и после этого скрипты iMacros-а не могут прочитать csv-файлы.
Что-то поменялось в профиле firefox, не пойму что.

mmmaks2004
уверены, что не обновился iMacros вместе с FF? (до версии 9.0.3)
если обновился, то доунгрейд до версии 8.9.7 (ссылки в FAQ)

mmmaks2004 пишет

Подскажите!
Обновилcя firefox до 51.0.1 и после этого скрипты iMacros-а не могут прочитать csv-файлы.
Что-то поменялось в профиле firefox, не пойму что.

Правила форума iMacros for FireFox пункты 1.2.1 , 1.2.2  , 1.2.3

Всем привет!:rock:
Подскажите пожалуйста как обнулить цикл после break,из цикла выходит но alert(i) не показывает 1

скрытый текст

Выделить код

Код:

var i=1;
for(i=1;i<=7;i++){
i++
alert(i)
iimPlayCode('SET !DATASOURCE C:\\Test.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
r=iimGetExtract()
if(i > r) break;
}
alert(i)

Gergi пишет

Подскажите пожалуйста как обнулить цикл после break,из цикла выходит но alert(i) не показывает 1

А зачем его обнулять? При повторном вызове он всё равно начнет сначала.

скрытый текст

Выделить код

Код:

for (var i = 1; i <= 7; i++) {
    alert(i)
    iimPlayCode('SET !DATASOURCE C:\\Test.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}');
    r = iimGetExtract()
    if (i > r) {
            i=1
        break;
        
    }
}
alert(i)

Gergi
Какой из alert()'ов не показывает 1?
Первый?
Так он и не будет вам ни когда показывать 1 при таком условии...
У вас переменная i дважды увеличивается на единицу до того, как попасть в alert(), соответственно, в первом же цикле, вы получите в alert'e число 3

InfSub
удалено избыточное цитирование
в первом алерте не важно сколько получу,весь смысл в том что когда произойдёт бряк за циклом в алерте показало 0


скрытый текст

Выделить код

Код:

var i=0;
for(i=0;i<=7;i++){
i++
if(i > 9) break;
}
alert(i)


в данный момент в алерте мы получаем 8 а хотелось бы получить 0

InfSub

Gergi пишет

циклом в алерте показало 0

ну так пропишите i=0; перед последним alert'ом

Подскажите есть вот такой код

скрытый текст

Выделить код

Код:

VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=about:newtab
URL GOTO=//192.168.1.1
WAIT SECONDS=10
FRAME NAME="ifrm"
TAG POS=1 TYPE=INPUT:IMAGE ATTR=NAME:reboot&&SRC:http://192.168.1.1/bn2.gif


при загрузке страницы модема URL GOTO=//192.168.1.1 выскакивает форма логина и пароля можно как нить сразу туда их впихнуть чтоб не спрашивал.
код публикуется в тегах code внутри спойлера
замечание

InfSub

Scorp1978

скрытый текст

Выделить код

Код:

SET !ENCRYPTION NO
ONLOGIN USER=admin PASSWORD=pass
URL GOTO=http://192.168.1.1/

InfSub пишет

ну так пропишите i=0; перед последним alert'ом

Это понятно но так не подходит,вот было бы идеально если бы перед циклом поставить i=0;

Gergi
в цикле число изменилось, если вам нужен 0 после цикла - пропишите его после цикла, а не фантазируйте о том, что если бы.... тем более с вашей логикой

InfSub пишет

используйте версию iMacros'a 8.9.7, опять же, не однократно говорилось о нестабильности версии 9.0.3

Всем спасибо за ответы! Поставил, вроде-бы сейчас работает нормально.

Возник один вопрос, которая до этого стояла версия Imacros у нее была такая функция, она фиксировала где происходит действие. То есть допустим нажимает подписаться, не важно где я запустил макрос, хоть в конце списка но, нажатия проиходит сверху и он сам сразу поднимается вверх и показывает, где срабатывает скрипт. Ну и обводит его синей рамной. Можно как не будь это обратно включить? Очень удобно было

SH0N
может откроете настройки iMacros ради приличия?

InfSub пишет

может откроете настройки iMacros ради приличия?

Ну я бы не стал писать, если бы предварительно своими усилиями не попытался разобраться.
Если вы имеете в виду, Скролировать объект и Подсвечивать объект то, галочки там стоят, только вот толку от этого нету

SH0N
переустановите iMacros, не поможет - почистите профиль, опять не помогло - создайте новый профиль

Подскажите пожалуйста как увеличить цикл в 55 раз
В данном примере он увеличивается в 2 раза

скрытый текст

Выделить код

Код:

for(i=1; i<=10000; i++){ 
i++
alert(i)
}

Gergi
слово умножить вам о чем-нибудь говорит?

InfSub пишет

Gergi
слово умножить вам о чем-нибудь говорит?

Вы имеете ввиду 55 раз подставить i++ ? в данный момент я так и сделал,работает,но я думал может есть по красивее вариант.

Gergi
нет, я имею ввиду умножить или у вас в школе учили только сложению?

InfSub пишет

Gergi
нет, я имею ввиду умножить или у вас в школе учили только сложению?

Сделал вот так i=i+55 вроде шикарно получилось :music:

Gergi
for(i=1; i<=10000; i+=55){

Доброго времени суток! Пишу небольшой скрипт для контроля рабочего процесса аймакроса через веб-версию телеграма.
И столкнулся с поистине смешной задачей, не могу написать код на кнопку отправки сообщений.

скрытый текст
3bfb971c2ba94092addf5616f34ed2a0.png

То бишь, кнопка не поддается нажатию. На .click() не реагирует.
Через запись макроса выдает
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:


Попытки изменить значения с указанием класса и атрибутов не увенчались успехом.
Работало пару раз через EVENT TYPE=CLICK SELECTOR но потом отвалилось. 
Буду благодарен за подсказки.
скрытый текст
Код кнопки

Выделить код

Код:

<button class="btn btn-md im_submit im_submit_send" ng-class="draftMessage.type == 'edit' ? 'im_submit_edit' : 'im_submit_send'" type="submit">

Здравствуйте, подскажите пожалуйста как эту строку повторить 9 раз подряд в  середине .iim скрипта:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:"production_product visible production_product_3"


сам скрипт зациклин на 9999 повторений, не дублировать же ее 9 раз.
И еще вопрос, возможно ли вот эти команды реализовать в .js
скрытый текст

Выделить код

Код:

DS CMD=MOVETO X=500 Y=280 CONTENT=
DS CMD=LDOWN X=500 Y=280 CONTENT=
DS CMD=LUP X=500 Y=280 CONTENT=


Спасибо.

InfSub
К сожалению, ничего не помогло.

Что сделал:
.Переустановил Imacros
.Почистил профиль, создал новый
.Испробовал версии 30,35,46 FireFox
Всё в пустую, делал так, ставил новую версию лисы, удалял профиль, создавал новый, запускал лису, устанавливал Imacros v 8.9.7, записывал макрос, проверял.
Ничего не сработало и не помогло, хотя, когда ставлю последнию версию IM фиксация на объекте работает (скроллирование на объекте)

Кто поможет советом, не знаю что еще можно сделать...

Система:
WIN 10 64bit
WIN XP 84bit

Привет всем ,может кто знает как извлечь координаты строки  на сайте и прописать их в переменные чтоб потом сделать клик по этим координатам с определенным смещением от этих координат  (при нажатии в ручную под этой строкой высвечивается еще одно окно в нем то и нужно выбрать ссылку иначе окно input на сайте не реагирует  ,если туда через CONTENT  или через CHARS что то вставлять то слово в окне input появляется но эффекту ноль

petral2002 пишет

Привет всем ,может кто знает как извлечь координаты строки  на сайте и прописать их в переменные чтоб потом сделать клик по этим координатам с определенным смещением...

Вот была похожая тема по координатам и смещению https://forum.mozilla-russia.org/viewto … 32#p711632

Почему-то не получается экстрактить ссылки на видео из поиска ютуба

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=DIV ATTR=CLASS:yt-uix-tile-link* EXTRACT=HREF \nTAB OPEN \nTAB T=2 \nURL GOTO={{!EXTRACT}}");

удалено, какое отношение данная цитата имеет к вашему вопросу?
////там не цитата а  ответ udalovy , type=div исправить на   type=a///

Здравствуйте ,столкнулся с проблемой ,  присваиваю переменной содержание файла , для дальнейшей сверки и перезаписи , как только в файле набирается 250кбайт инфо , скрипт стопорится , как расширить ? .

Вторая проблема , которую обнаружил - ограничение на выдачу из буфера ,копирую в clipboard текст , и потом алёрт выдает только часть обработанного , не более нескольки страниц символов.

InfSub

ErrorignoreYes пишет

////там не цитата а  ответ udalovy , type=div исправить на   type=a///

Спасибо, я то думал, что все варианты  перепробовал (

ErrorignoreYes

оффтоп
так оформляйте пост так, чтобы ваш ответ не был цитатой чьих-то слов
фраза записанная в тегах quote с именем пользователя - это цитирование слов, данного пользователя, а вами было написано (процитировано) следующее:

udalov пишет

скрытый текст

Выделить код

Код:

iimPlay("CODE:TAG POS=1 TYPE=A ATTR=CLASS:yt-uix-tile-link* EXTRACT=HREF \nTAB OPEN \nTAB T=2 \nURL GOTO={{!EXTRACT}}");

не смущает надпись udalov пишет:?
как правильно ответить, если с этим возникают проблемы - описано тут, почитайте

подскажите как запустить внешний файл из imacros

tancandrey пишет

подскажите как запустить внешний файл из imacros

Для начала прочитайте ФАК по макросу https://forum.mozilla-russia.org/viewtopic.php?id=66458

Подскажите, второй вариант кода не работает, потому что нельзя использовать в Math.random переменные a и b или я делаю всё не так?

скрытый текст

Выделить код

Код:

var timer1=Math.floor(Math.random()* (1 - 6) + 6);
Выделить код

Код:

var cm = 6; 
var cm2 = 1; 

iimSet("a", cm);
iimSet ("b", cm2);

var timer1=Math.floor(Math.random()*({{a}} - {{b}} + {{b}});

udalov

скрытый текст

Выделить код

Код:

var a = 6; 
var b = 1; 
var timer1=Math.floor(Math.random()*(a - b) + b);
alert(timer1)

Приветствую, форумчане!
Столкнулся с необходимостью записи данных в файл и дальнейшей проверкой на существование этих данных в файле.
Эту задачу пробовал выполнить с помощью таких функций:

скрытый текст

Выделить код

Код:

// чтение
var loadFile = function (fileName) {
    var fileDescriptor = imns.FIO.openNode(fileName);
    var text = imns.FIO.readTextFile(fileDescriptor);
    return {
        text: text,
        strings: text.split('\r\n');
    };
}
 
var strings = loadFile("C:\\iMacros\\log.txt").strings;
window.console.log(strings.length); 
 
for (var i = 0; i < strings.length; i++) {
    iimPlayCode(`
        // код 
    `);
}

// запись
var appendToFile = function (fileName, text) {
    var fileDescriptor = imns.FIO.openNode(fileName);
    imns.FIO.appendTextFile(fileDescriptor, text);
}
 
var log = function (msg) {
    var text = "[ " + new window.Date().toLocaleDateString() + " " + new window.Date().toLocaleTimeString() + "] " + msg + "\r\n";
    appendToFile("C:\\iMacros\\log.txt", text);
}
log('Запись #1...');


Но выдается ошибка:

ReferenceError: imns is not defined, line 15 (Error code: -991)

На англоязычном форуме нашел информацию, что доступ к пространству имен iMacros в последнем релизе закрыт:

Unfortunately, access to the iMacros namespace (imns) is no longer possible with the latest release.

Подскажите каким способом можно заменить данные функции записи и чтения.

Anders0n
ваш вопрос, уже содержит ответ на вопрос - поставить предыдущую версию iMacros'a

InfSub пишет

ваш вопрос, уже содержит ответ на вопрос - поставить предыдущую версию iMacros'a

Я забыл указать почему установка предыдущей версии неприемлема:
предыдущая версия iMacros неадекватно ведет себя с уже имеющимся кодом, элементарные проверки типа if (retextract > 0) { } не работают. Потому и решил обратиться за помощью сюда.

Anders0n
у всех работают, а у вас - нет? :lol:
может быть приведете пример, где код не отрабатывает нормально в версии 8.9.7?

udalov пишет

Для начала прочитайте ФАК по макросу https://forum.mozilla-russia.org/viewtopic.php?id=66458

извеняюсь может звучит глупо, но я новичек, что значит запуск внешней программы с аргументами, а именно (с аргументами)

tancandrey

скрытый текст

Выделить код

Код:

ping -t yandex.ru

где t и yandex.ru - аргументы или параметры

скажу проще, у меня на компе bat-файл как мне его запустить из imacros?

Имеется массив (Array) и некая переменная (print), которой присвоено имя массива.

скрытый текст

Выделить код

Код:

Array = ['1','2','3','4']
print = 'Array';


Нужно извлечь данные из массива для дальнейшего их использования, но напрямую указать имя массива нельзя,
а нужно использовать переменную print, в которой имя массива. Кто знает как это можно реализовать?

Ребят, не могу сообразить как сделать, чтобы счётчик i увеличивался с учётом первого цикла, где переменная z. Нужно, чтобы iMacros взял из файла 10 строк в первом цикле, затем продолжил брать - 11-ую и далее строки в последующих циклах

скрытый текст

Выделить код

Код:

for (z=1;z<=10;z++){
некое действие
for (i=1;i<=10;i++){
взять строку i
}
}


Думаю, что мой код в корне неверный. :) Но я в js новичёк. Помогите, пожалуйста.

tancandrey
вам дали ссылку на FAQ, там приведен пример, практически аналогичный вашему, вы не можете подставить свое значение в код?
мало того примера?! в соседней теме (про капчи) есть аналогичный пример.
поиск по разделу iMacros  слова cmd и/или bat, также ни кто не отменял

23-02-2017 23:39:33
Anders0n

скрытый текст

Выделить код

Код:

var Arr = ['1','2','3','4']
var print = 'Arr';
alert(eval(print)[1])


23-02-2017 23:44:32
nikki67
скрытый текст

Выделить код

Код:

var i,j=1,z;
for (z=1;z<=10;z++){
    //некое действие
    for (i=1;i<=10;i++){
    //взять строку i
    alert(j++);
    }
}

InfSub
я только учусь, благодарствую за помощ, все работает.

Всем привет! помогите сделать цикл рандомным, чтобы он проигрывался не 3 раза, а например от 5 до 17 раз. (Делаю запуск скрипта *.iim из *.js)

скрытый текст

Выделить код

Код:

var d;
for (d=1;d<=3;d++)
{iimPlay("ok.iim");}


Сейчас запускаю примерно таким образом и код неудобен, количество запусков приходиться каждый день менять :rolleyes:
скрытый текст

Выделить код

Код:

{var d;
for (d=1;d<=11;d++)
{iimPlay("INST/Inst222.iim");}}
{iimPlay("VK(group)/Time.iim");}

{var d;
for (d=1;d<=29;d++)
{iimPlay("INST/Inst222.iim");}}
{iimPlay("VK(group)/Time.iim");}

{var d;
for (d=1;d<=8;d++)
{iimPlay("INST/Inst222.iim");}}
{iimPlay("VK(group)/Time.iim");}


Буду благодарен за ответ!

Rushec91

скрытый текст

Выделить код

Код:

function rnd(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
};

var a = rnd(5, 17)
alert(a)

nikolay1987
удалено - избыточное цитирование
Не совсем понял почему, но он мне просто цифру выдает и кнопку "ОК"

Я сделал правильно?

скрытый текст

Выделить код

Код:

function rnd(min, max) 
{return Math.floor(Math.random() * (max - min + 1)) + min;};
var a = rnd(5, 17)
alert(a)

{iimPlay("INST/Inst222.iim");}


InfSub

Rushec91
потому что, надо включить голову, а не бездумно копировать, вам привели пример, как получить рандомное число, как с этим числом поступить дело ваше

Rushec91
Изучи основы программирования, потом основы js это не долго :)

скрытый текст

Выделить код

Код:

function rnd(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
};

//Всё что выше это функция(function), вставь её в начало скрипта


var a = rnd(5, 17) // Тут мы отправляем в функцию диапазон чисел от 5 до 17, функция его обрабатывает и выдаёт рандомное значение(значение будет в перемeнной 'a') 
//Далее мы эту переменную вставляем в условие цикла (d<=a)

for (var d = 1; d <= a; d++) {
        iimPlay("INST/Inst222.iim");
}

Извините, в первый раз отправил сообщение не в ту тему. Дублирую здесь

Добрый день!
Есть скрипт JS + IMACROS. Прошу совета у Вас, есть ли возможность реализовать клик по блоку учитывая вложенность, то есть EVENT TYPE=CLICK SELECTOR и одновременно тут же и проверку текста в теге, то есть TYPE=DIV ATTR=TXT:blabla EXTRACT=TXT?
Суть в том, что есть блоки с одинаковым текстом, но с них надо отсеять конкретный, а разница в них лишь в одном классе на верхнем уровне.

nikolay1987
Спасибо большое!!!:) изучаю потихоньку)

InfSub, спасибо

Никак не получается извлечь данные из первых кавычек
Как это можно сделать через .replace или .match ?

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Надо было сначала поискать на форуме. Нашёл решение.

скрытый текст

Выделить код

Код:

<iframe id="bvimbp7ee8pa" name="bvimbp7ee8pa" class="pickerframe" src="https://docs.google.com/picker?protocol=gadgets&amp;origin=https%3A%2F%2Fwww.youtube.com&amp;hostId=yt-addtoplaylist&amp;hl=ru_RU&amp;title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE%20%D0%B2%20%D0%BF%D0%BB%D0%B5%D0%B9%D0%BB%D0%B8%D1%81%D1%82&amp;multiselectEnabled=true&amp;selectButtonLabel=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C%20%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE&amp;relayUrl=https%3A%2F%2Fwww.youtube.com%2F%2Fs.ytimg.com%2Fyts%2Ffavicon-vflz7uhzw.ico&amp;nav=((%22video-search%22%2Cnull%2C%7B%22site%22%3A%22youtube.com%22%7D)%2C(%22url%22%2Cnull%2C%7B%22type%22%3A%22video%22%2C%22site%22%3A%22youtube.com%22%7D)%2C(%22youtube%22))&amp;rpctoken=waq8bjhdos3r&amp;rpcService=bvimbp7ee8pa" tabindex="0" style="outline: 1px solid blue;" frameborder="0"></iframe>

Выделить код

Код:

.match(/".*?"/)
Алим пишет

Надо было сначала поискать на форуме. Нашёл решение.

всегда бы так =)

Всем привет!
Нужно передать значение переменных (например i=1) при запуске .js (2) из .js (1) , как это можно сделать?

Anders0n
вар1.: сохранить значение в файл, считать значение из файла
вар.2: прочесть FAQ, там есть пример

Здравствуйте ,вопрос по смещению координат закрыт спасибо.но появилась еще одна проблема каким образом в I macros  можно сэкстрактить цвет элемента ,чтоб потом сравнить его с заданным цветом (например если цвет зеленый ,то  скрипт продолжается ,а если другой то он останавливается(как сравнить я имею представления ,а вот как узань какой цвет у элемента увы) .Заранее сбасибо!

petral2002
у какого элемента? у картинки, у блока, у текста?
если цвет прописан в свойствах элемента, то извлечь можно через ...EXTRACT=HTM с последующей очисткой от лишнего, если в CSS-стилях, то скорее всего через DOM-объект можно вытащить

InfSub
Спасибо.

Ещё один, довольно интересный вопрос:
есть ли возможность как-то ужимать сохраняемые картинки?
Вес картинки.. Например, сохраняю картинку 600px х 400px весом 100кб, нужно размер оставить таким же, а вес уменьшить на 50% (до 50кб).
Может кто-нибудь сталкивался с такой задачей и есть готовое решение. Спасибо.

Anders0n
в теме про капчи в шапке, есть код

InfSub пишет

petral2002
у какого элемента? у картинки, у блока, у текста?
если цвет прописан в свойствах элемента, то извлечь можно через ...EXTRACT=HTM с последующей очисткой от лишнего, если в CSS-стилях, то скорее всего через DOM-объект можно вытащить

спасибо попробую,если не получится то отпишусь

парни у меня такой вопрос как сделать что бы расширение imacros запускалось само и включал скрипт
Дело в том что я накручиваю голоса а в браузере Tor когда я нажимаю новая личность он перезапускает браузер и приходится САМОМУ открывать макрос и включать скрипт, как это дело все автоматизировать ??

ekali
а что поиск сломался?

InfSub пишет

ekali
а что поиск сломался?

Я тысячикратно извиняюсь я не спал всю ночь я решал эту проблему перерыл все что можно, укажите пожалуйста на истену которую я проглядел

ekali
https://forum.mozilla-russia.org/viewtopic.php?id=70917

Да все вроде по теме но я в этом не шарю я не понимаю что за скрипты
Вот какой iim у меня

скрытый текст

Выделить код

Код:

VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=http://некий сайт
TAG POS=1 TYPE=A ATTR=ID:golike


код публикуется в тегах code внутри спойлера
он рабочий просто когда я перезапускаю браузер нужно это опять нажимать воспроизвести вручную, что нужно добавить помогите пожалуйста

InfSub

ekali
Создай файлик blabla.js вставь туда

скрытый текст

Выделить код

Код:

var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] 
             .getService(Components.interfaces.nsIWindowMediator)
             .getMostRecentWindow("navigator:browser");    
wm.torbutton_new_circuit(); // Меняем цепочку соединения


и вызывай из iim, когда надо сменить айпи

InfSub пишет

Anders0n
в теме про капчи в шапке, есть код

Там не совсем то, в теме про капчи скрипт кропа (обрезка),
мне нужно ужимать вес картинки

nikolay1987
удалено, избыточное цитирование
В данном случае я пользуюсь браузером Tor и мне нужно нажимать ctrl+shift+u а у него "l" ему "wonder.uix" нужна новая цепочка а мне нужна "новая личность" разница в том что у него просто перезагружается страница а у меня браузер

InfSub

ekali
Ну тогда "нарисуй" батник и вызывай его

Anders0n
что мешает почитать faq к convert.exe?

nikolay1987 пишет

ekali
Ну тогда "нарисуй" батник и вызывай его

я не умею, я для этого и обращаюсь за помощью

ekali
FAQ читать не пробовали?

ekali
тогда напиши в "домашней странице"

скрытый текст

Выделить код

Код:

imacros://run/?m=123.iim
123.iim - имя твоего файлика

InfSub
Не получается что то  через ...EXTRACT=HTM ,подскажите DOM структуру ,я в этом пока еще новичок на вссякий случай сайт https://localbitcoins.net/ru/buy-bitcoins-online/rub/qiwi/  мне нужно определить в онлайне человек или нет ,там есть индикатор он меняет цвета ,а вот как вытащить этот цвет в строку типа #afa  я не знаю

InfSub пишет

Anders0nчто мешает почитать faq к convert.exe?

Где его можно почитать?

Anders0n

в cmd

Выделить код

Код:

convert.exe /?

nikolay1987 пишет

ekali
тогда напиши в "домашней странице"

да это помоглои спасибо, теперь осталось научиться создавать batник который будет открывать Tor и через минуту закрывать

InfSub пишет

в cmd

Ещё нужно там дописать PAUSE иначе текст пробегает и окно закрывается (у меня).

Jurik45
между пакетным файлом (*.bat или *.cmd) и командной строкой (cmd -> пуск - выполнить - cmd) есть некоторая разница, не находите?
я - писал о втором

InfSub пишет

я - писал о втором

Извиняюсь.

petral2002 пишет

Не получается что то  через ...EXTRACT=HTM ,подскажите DOM структуру ,я в этом пока еще новичок на всякий случай сайт https://localbitcoins.net/ru/buy-bitcoins-online/rub/qiwi/  мне нужно определить в онлайне человек или нет ,там есть индикатор он меняет цвета ,а вот как вытащить этот цвет в строку типа #afa  я не знаю

Не надо извращаться с распознаванием цвета...
Клик правой кнопкой по пустому месту страницы, в выпадающем меню выбрать "исследовать элемент", стрелкой выбираем нужный элемент. У серых индикаторов class="online-status online-status-offline" , у зелёных class="online-status online-status-online", у оливковых class="online-status online-status-recent" .  Далее - в зависимости от задачи.

Если нет "исследовать элемент" - ставьте расширение Firebug https://forum.mozilla-russia.org/viewtopic.php?id=14235

udalov пишет

Если нет "исследовать элемент"

он есть в любом FF, ну может кроме самых древних версий

udalov
удалено, избыточное цитирование
Подскажите пожалуйста а как значение класса в строку вывести ,чтобпотом обрезать нужные символы и сравтить их с переменной уже

Всем спасибо за помощь ,все разобрался сделал экстакт HTM родителя и спомлщью сплита разобрал на части и вытащил все что нужно

InfSub

petral2002 пишет

Всем спасибо за помощь ,все разобрался сделал экстакт HTM родителя и спомлщью сплита разобрал на части и вытащил все что нужно

Можно увидеть, что получилось?

udalov пишет

Можно увидеть, что получилось?

скрытый текст

Выделить код

Код:

iimPlay('CODE:SET !EXTRACT_TEST_POPUP NO\nSET !ERRORIGNORE YES\nTAG POS=1 TYPE=DIV ATTR=ID:result-count&&CLASS:pull-right  EXTRACT=TXTALL');
var num =  iimGetLastExtract()
     
var stringLength = num.length; // 25  
//alert(stringLength)
var kolstrok = num.substr((stringLength-3),stringLength); // "fghijklmno" 
//alert(kolstrok)
var pos=1 
var w =0
while(pos<=kolstrok && w==0){
iimPlay('CODE:SET !EXTRACT_TEST_POPUP NO\nSET !ERRORIGNORE YES\nTAG POS='+pos+' TYPE=TD ATTR=CLASS:column-limit  EXTRACT=TXTALL');
var balqiwi = iimGetLastExtract()

iimPlay('CODE:SET !EXTRACT_TEST_POPUP NO\nSET !ERRORIGNORE YES\nTAG POS='+pos+' TYPE=TR ATTR=CLASS:clickable EXTRACT=HTM ');
var color1 = iimGetLastExtract()
var obrezdo=color1.split('"', 12);
//var obrezdo1=obrezdo.split('"', 2);
//alert(obrezdo[11]);



//alert(color1)
//alert(balqiwi)

var result = balqiwi.indexOf('-'); // вернет «0»
//alert(result)

var minlimit = balqiwi.substr(0, result); // "fghijklmno" 
//alert(minlimit)

if (minlimit<=50&& (obrezdo[11]=='online-status online-status-online' || obrezdo[11]=='online-status online-status-recent') ){w=10}else {pos=pos+1}
    
}


код публикуется в тегах code внутри спойлера
есть еще одна проблемма на кошелке киви постоянно меняетсяя ID может кто знает как автоматизировать логин и пароль

InfSub

InfSub пишет

Anders0nу всех работают, а у вас - нет? может быть приведете пример, где код не отрабатывает нормально в версии 8.9.7?

скрытый текст

Выделить код

Код:

var on = true;
                var n = 0;
                while(on) {
                extract="CODE:SET !REPLAYSPEED FAST\n SET !TIMEOUT_STEP 0\n";
                extract+="TAG POS=1 TYPE=IMG ATTR=ALT:*small<SP>-<SP>"+n+" EXTRACT=ALT\n";
                retExtract = iimPlay(extract);
                copyContent = iimGetExtract();
                    if (retExtract > 0) {
                        
                    } else {
                        on=false;
                        break;
                    }
                n++;
                }


вот в такой конструкции проверка if (retExtract > 0) не работает

беда какая-то, в 8.9.7 не работает проверка условия, а в 9.0.3 не работает загрузка изображений на сайт и нет доступа к пространству имен. Доступ к пространству имен не критично, решил проблему другим обходным способом, но а для загрузки картинок через форму альтернативы нет. Что посоветуете?

Нашел решение с загрузкой изображений, вместо TYPE=INPUT:FILE просто нужно указать TYPE=INPUT:TEXT, файлы подгружаются.

27-02-2017 18:01:22
Блин, нет, ошибся. Просто предыдущую версию иМакроса не обновил до последней(

Вдруг кому пригодятся. js-скрипт для выполнения простых математических действий (сложение, вычитание, умножение, деление)

скрытый текст

Выделить код

Код:

var data1 = "100";
var data2 = "2";
var summa=+data1 + +data2
alert (summa)
var raznost=+data1 - +data2
alert (raznost)
var chastnoe=+data1 / +data2
alert (chastnoe)
var proizvedenie=+data1 * +data2
alert (proizvedenie)

udalov
данные записаны как "строка" специально?
если да, почему их сразу не перевести в числовой тип, вместо того, чтобы делать это в каждом из действий?

например, так:

Выделить код

Код:

var data1 = "100";
var data2 = "2";
data1=+data1;
data2=+data2;
var summa=data1 + data2;
alert (summa)
var raznost=data1 - data2;
alert (raznost)
var chastnoe=data1 / data2
alert (chastnoe)
var proizvedenie=data1 * data2;
alert (proizvedenie)

InfSub пишет

udalov
данные записаны как "строка" специально?

Нет, просто по незнанию. Взял готовый пример со сложением и по аналогии сделал всё остальное.

в старой версии код работал то есть вводил логин и пароль вводил как поставил новую версию FF
начал опять спрашивать пароль в чем может быть дело

скрытый текст

Выделить код

Код:

macros  = "CODE:SET !ENCRYPTION NO"+n;
 macros += "ONLOGIN USER=admin PASSWORD=admin"+n;
 macros += "URL GOTO=//192.168.1.1"+n;
 macros += "WAIT SECONDS=3"+n;
 macros += 'FRAME NAME="ifrm"'+n;
 macros += "TAG POS=1 TYPE=INPUT:IMAGE ATTR=NAME:reboot&&SRC:http://192.168.1.1/bn2.gif"+n;
 macros += "WAIT SECONDS=3000"+n; 
 iimPlay(macros);


код публикуется в тегах code внутри спойлера

InfSub

Подскажите как в imacros сделать так чтобы он на странице нажимал сочетание клавиш ctrl+shift+l

SKZSerjik
поиском пользоваться не пробовали?!

InfSub пишет

SKZSerjik
поиском пользоваться не пробовали?!

Вот что у меня получилось , это правильно ?
Что то он не правильно как то работает показы не прибавляются( а когда делаю вручную то все работает.

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
TAB CLOSEALLOTHERS
URL GOTO=Тут сайт!!!
WAIT SECONDS=75
EVENT TYPE=KEYPRESS SELECTOR=* CHAR="L" MODIFIERS="ctrl,shift


03-03-2017 17:46:10
И можно ли еще как нибудь запустить с помощью клавиш imacros ? Мне кажется когда появляется боковая панель слева то он не засчитывает просмотр , только что проверил стоит панель от imacros и в ручную нажал ctrl+shift+L и не чего не засчитало.

SKZSerjik
там приведен не только этот способ, читайте внимательней, если он вас не устраивает - задайте вопрос в той же теме

03-03-2017 18:05:40

SKZSerjik пишет

BUILD=9030808

версию imacros смените на 8.9.7 и запретите обновление

Подскажите возможно решение проблемы...
Скрипт парсит инфу о видеоролке на Юубе со страницы поиска: название видео, урл видео, количество просмотров и описание.

Так бывает, что описание к видео отсутствует, и скрипт командой

скрытый текст

Выделить код

Код:

TAG POS={{q}} TYPE=DIV ATTR=CLASS:yt-lockup-description*yt-ui-ellipsis*yt-ui-ellipsis-2 EXTRACT=TXT


берёт описание от следующего видео, сдвигаясь при следующих циклах парсинга на одно видео... Как можно с этим бороться?

Проверка наличия описания командой if ... else вряд ли поможет, так как, например, если парсим первое видео и там нет описания, позиция TAG POS=1 будет считываться со второго видео... Всем заранее спасибо за варианты решения.

udalov
вытаскивайте инфо из родителей

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:"yt-lockup yt-lockup-tile yt-lockup-video clearfix" EXTRACT=TXT');
alert(iimGetLastExtract().replace(/просмотров|просмотра/,"просмотр").split(/просмотр/)[1]);

karginaolga пишет

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:"yt-lockup yt-lockup-tile yt-lockup-video clearfix" EXTRACT=TXT');
alert(iimGetLastExtract().replace(/просмотров|просмотра/,"просмотр").split(/просмотр/)[1]);

.

Спасибо, работает. Только не могу сохранить результат в файл Не знаю как, но методом научного тыка всё заработало ))

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:"yt-lockup yt-lockup-tile yt-lockup-video clearfix" EXTRACT=TXT');
desсript=iimGetLastExtract().replace(/просмотров|просмотра/,"просмотр").split(/просмотр/)[1];
//alert(desсript)
iimPlayCode('SET !EXTRACT " '+desсript+' " \n SAVEAS TYPE=EXTRACT FOLDER=* FILE=data.csv');


Выдаёт ошибку wrong format of SET command, line 1 (Error code: 910) . Различные варианты кавычек вокруг " '+desсript+' " не помогли.
Экстрактится текст кирилицей и латиницей, с пробелами и цифрами.

Образец, найденный тут, сработал

скрытый текст

Выделить код

Код:

var str = 123;
iimPlayCode('SET !EXTRACT ' + str + '\nSAVEAS TYPE=EXTRACT FOLDER=E:\ FILE=test.csv')

Не могу решить именно эту проблему Вконтакте во вкладке "интересные страницы".
Помогите, пожалуйста.
Заранее крайне Вам благодарен.

shadowrun пишет

День добрый.
Ломаю голову 2 день. Прошу вашей помощи.
Модальное окно, подгружаюся данны при скролинге вниз. Как автоматически осуществить скролинг в скрипте. Варианты window.scrollBy и через DS CMD=MOVETO X Y не дают ни какого эффекта. Подскажите как решить задачку?

в старой версии код работал то есть вводил логин и пароль вводил как поставил новую версию FFначал опять спрашивать пароль в чем может быть дело

скрытый текст

Выделить код

Код:

macros  = "CODE:SET !ENCRYPTION NO"+n;
 macros += "ONLOGIN USER=admin PASSWORD=admin"+n;
 macros += "URL GOTO=//192.168.1.1"+n;
 macros += "WAIT SECONDS=3"+n;
 macros += 'FRAME NAME="ifrm"'+n;
 macros += "TAG POS=1 TYPE=INPUT:IMAGE ATTR=NAME:reboot&&SRC:http://192.168.1.1/bn2.gif"+n;
 macros += "WAIT SECONDS=3000"+n; 
 iimPlay(macros);


InfSub подскажи в чем дело

Scorp1978
пока что, могу только порекомендовать откатить версию FF на более старую

может можно как то интер нажать недожидаясь загрузки можно?

Scorp1978
думаю, не поможет, во всяком случае, у меня не вводил логин и пароль, при тестировании, так что проблема в ONLOGIN, а не в том, нажат ентер или нет

InfSub подскажите, где скачать Imacros 8.8.7.1-signed  for PaleMoon

Kuvshin
FAQ => История версий iMacros for Firefox

Тык не качается по этой ссылке, уже с месяц, а в архив к себе не сохранил

Kuvshin
все нормально качается
вот сам файл

А у меня назрел вопрос к гуру iMacros'а... Вот в FAQ читаем Как iim превратить в js:

Есть два варианта
Не правильный но рабочий: каждую строку воспроизвести через iimPlayCode(). Вот как будет выглядеть результат (первую строку с версией можно проигнорировать):

скрытый текст

Выделить код

Код:

iimPlayCode('TAB T=1');
iimPlayCode('URL GOTO=http://the-pirats.ru/');
iimPlayCode('TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=mail@yandex.ru');
iimPlayCode('SET !ENCRYPTION NO');
iimPlayCode('TAG POS=1 TYPE=INPUT:pASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=superCrutoyParol');
iimPlayCode('TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*');


и второй вариант сформировать макрос и воспроизвести одной командой

скрытый текст

Выделить код

Код:

//Создаём пременную в которую будем записывать строку с макросом
var macros = '';

//Создаём пременную с переносом строки (можно и без неё, покажу дальше как)
var n = '\n';

//Вписываем первую строку макроса и в конце знак переноса строки
macros += 'TAB T=1' + n;
//Вписываем следущую строку макроса и в конце знак переноса строки,
//как видите здесь я показал пример записи без использования переменной переноса строки
macros += 'URL GOTO=http://the-pirats.ru/ \n';
//Вписываем оставшиеся строки
macros += 'TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:log_email CONTENT=mail@yandex.ru' + n;
macros += 'SET !ENCRYPTION NO' + n;
macros += 'TAG POS=1 TYPE=INPUT:pASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=superCrutoyParol' + n;
macros += 'TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:NoFormName ATTR=*' + n;

Воспроизводим записаный макрос
iimPlayCode(macros);


В связи с этим вопрос: в чём правильность второго варианта и неправильность первого? Второй вариант менее глючный? Более быстр? Прост к пониманию iMacrosom и человеком?

По моему разумению в первом варианте будут проблемы с !ERRORIGNORE

удалено, избыточное цитирование

InfSub

udalov Kuvshin
вот самый правильный вариант:

скрытый текст

Выделить код

Код:

iimPlayCode(`
    TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:autobet_lose_increase_bet CONTENT=YES
    TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:autobet_bet_hi CONTENT=YES
    TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:autobet_change_client_seed CONTENT=YES
    TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:stop_after_profit CONTENT=YES
    TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:stop_after_loss CONTENT=YES
    TAG POS=1 TYPE=INPUT:CHECKBOX ATTR=ID:autobet_change_client_seed CONTENT=NO
    `);

udalov пишет

в чём правильность второго варианта и неправильность первого?

не воспринимайте буквально
правильны оба (все 3, если с вариантом Ольги), используйте тот, который удобен
в FAQ так написано, для того, чтобы не совершалось ошибок, допущенных вами (и не только вами) в первом варианте:

ошибки:
бесполезно, не на что не повлияет:

Kuvshin пишет

скрытый текст

Выделить код

Код:

iimPlayCode('TAB T=1');

должно выполняться в одном скрипте (iimPlayCode()), а не в двух разных:

udalov пишет

скрытый текст

Выделить код

Код:

iimPlayCode('SET !ENCRYPTION NO');
iimPlayCode('TAG POS=1 TYPE=INPUT:pASSWORD FORM=NAME:NoFormName ATTR=NAME:pass CONTENT=superCrutoyParol');

... и т.д.


08-03-2017 20:02:23

karginaolga пишет

вот самый правильный вариант

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

Всем привет.
Помогите, ни как не получается очистить поле ввода кошелька.

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

подскажите пожалуйста, как вытащить в EXTRACT для дальнейшего SAVEAS только URL и кол-во like из этого кода?

скрытый текст
d550171f7aaa.png

s.stake

как-то так

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=DATA-TESTID:SERP_RESULT_LINK* EXTRACT=HREF
TAG POS=1 TYPE=A ATTR=HREF:*LIKERS* EXTRACT=TXT


Jurik45
а где там поле ввода?

InfSub
Спасибо! Работает:)

InfSub пишет

Jurik45
а где там поле ввода?

скрытый текст
13224101.png

Установил Palemoon-Portable-27.1.2.win32 но перепробовал все версии imacros и вообще не работает ни iim ни js
Как этот вопрос решить?

InfSub
помогите исправить пожалуйста

хочу сделать следующее: задается поиск по страницам в FB, из списка результата по очереди вытаскивается URL и кол-во Likes каждой страницы и закидывается в *.txt в столбик

запустил макрос на цикл 20

скрытый текст

Выделить код

Код:

FILTER TYPE=IMAGES STATUS=ON
TAG POS={{!LOOP}} TYPE=A ATTR=DATA-TESTID:SERP_RESULT_LINK* EXTRACT=HREF
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:*LIKERS* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url+like.txt


в результате URL скидывает по 2 раза а кол-во Likes нет

скрытый текст
bee7400880ce.png

вот DOM страницы
скрытый текст
5421310ada14.png

я что-то с кодом напутал? подскажите...

s.stake
в структуре страницы, четко видно что в одном блоке, ссылка на группу встречается дважды (3 строка на скрине + отмеченная вами)

InfSub пишет

s.stake
в структуре страницы, четко видно что в одном блоке, ссылка на группу встречается дважды (3 строка на скрине + отмеченная вами)

Да, я это заметил сразу. Только при разовом прогоне скрипта, все вытаскивается корректно из указанных строк в структуре. А вот при воспроизведении цикла, он начинает подтягивать URL из той, где likes. Не могу понять, что прописать, что бы он этого не делал, а брал данные из следующей страницы в результатах поиска?

Gergi пишет

Как этот вопрос решить?

в старых версиях, кодировка файлов скриптов была utf8 без bom

10-03-2017 00:03:37
s.stake
если использовать iim-скрипт, то через eval() нужно встаивать расчет математической прогрессии (1,3,5...), именно за счет нее и будет у вас рассчитываться позиция ссылки

как-то так:

Выделить код

Код:

FILTER TYPE=IMAGES STATUS=ON
SET !VAR1 EVAL("var i={{!LOOP}};i++*2-1")
TAG POS={{!VAR1}} TYPE=A ATTR=DATA-TESTID:SERP_RESULT_LINK* EXTRACT=HREF
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:*LIKERS* EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=url+like.txt

InfSub
удалено, избыточное цитирование
Спасибо Вам большое, все сработало как часы. Я и не знал о такой функции, буду изучать:)
Еще раз спасибо!

InfSub

Помогите выставить задержку на исполнение

скрытый текст

Выделить код

Код:

var Cc=Components.classes, Ci=Components.interfaces, args=['C:\\firefox\\start.vbs','????'];

karginaolga
пропишите в самом vbs

InfSub
не подходит задержка меняется, это переменная

offtop
Люди знаю вопрос поднимался но может кто его уже решил как перегрузить ADSL модем из бат файла вот этот код из цмд руками прописываю работает, а помещаю в бат файл не работает
визуал бейсика нету на компе.
скрытый текст

Выделить код

Код:

telnet 192.168.1.1
login:*****
password:****
>reboot



код публикуется в тегах code внутри спойлера
какое отношение ваш вопрос имеет к теме форума? по основам cmd и конкретно, по проблемам связки cmd+telnet - есть свои форумы, оффтоп - 2.21
замечание

InfSub

karginaolga

если я правильно понял проблему, то как-то так:

Set objArg = WScript.Arguments
if objArg.count = 1 then
  MSGBOX objArg(0), 16
end if

где objArg - массив с аргументами переданными скрипту

10-03-2017 19:41:54
Scorp1978

offtop
работа с telnet, после ее вызова, возможна только посредством SendKeys, что на чистых командах Batch-а не реализуемо
используйте vbs, он есть в любом Windows и не требует установки

Люди добрые, помогите пожалуйста дописать код.

Есть база

скрытый текст
[img]9e0fc58e0ef5.png[/img]

Этим скриптом по очереди заходим по ссылкам из колонки №4

скрытый текст

Выделить код

Код:

var analiz;
for (i=2; i<10; i++) {
  analiz = "SET !DATASOURCE_DELIMITER ;" + "\n";
  analiz += "CmdLine !DATASOURCE baza1.csv" + "\n";
  analiz += "SET !DATASOURCE_COLUMNS 5" + "\n";
  analiz += "SET !LOOP " + i + "\n";
  analiz += "ADD !EXTRACT {{!COL4}}" + "\n";
iimPlayCode(analiz);

var dn=iimGetLastExtract(1);
iimPlayCode("URL GOTO="+ dn);
alert ("Готов!");
iimPlayCode("WAIT SECONDS=5");

var vibor
  vibor = prompt("1 Да" + "\n" + "2 Нет" + "\n" + "3 Отмена")

}


перед повтором цикла для перехода на следующую ссылку командой PROMPT спрашивается какой вариант выбрать из предложенного

скрытый текст
[img]3962934d6c86.png[/img]

помогите дописать скрипт, что бы после ввода соответствующей цифры в окне(1,2 или 3), в базу в колонке №5 прописывался соответствующий результат:
если ввели "1" - то в базе в 5й колонке пишется "Да"
если ввели "2" - то в базе в 5й колонке пишется "Нет"
если ввели "3" - то в базе в 5й колонке пишется "Отмена"

и в условии for (i=2; i<10; i++) не вручную устанавливать кол-во i<10, а просто перебиралось, пока не закончатся ссылки в колонке.

Alladin
iMacros не умеет дописывать в уже существующие строки, впрочем и любые другие варианты записи файла для подобной задачи - подразумевают только его полную перезапись, что осуществляется либо средствами iMacros (долго, особенно при больших объемах файла), либо средствами js
в любом случае, для подобной задачи, есть отдельная тема "Поиск и заказ скриптов"

Здравствуйте!
помогите пожалуйста разобраться, почему не получается по данному imacros экспортировать данные в csv?
Конкретно - поисковая выдача экспортируется в ошибку #EANF#, которая возникает из-за того, что не цепляется адрес страницы...

скрытый текст

Выделить код

Код:

var macros; 
var macrosrun; 
var s_n = "\n"; 
var search = "доставка+пиццы"  
for (i=1; i<=10; i++) { 
 macros = "CODE:SET !EXTRACT_TEST_POPUP NO"+s_n; 
 macros += "URL GOTO=https://www.google.com./#q="+search+s_n; 
 macros += "TAG POS="+i+" TYPE=CITE ATTR=class:vurls EXTRACT=TXT"+s_n; 
 macros += "SAVEAS TYPE=EXTRACT FOLDER=* FILE=PageUrl.csv"; 
 macrosrun = iimPlay(macros); 
}


код публикуется в тегах CODE внутри спойлера


сам скрипт взят из видео

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


у автора все работало...

InfSub

Код кнопки:

скрытый текст

Выделить код

Код:

<a class="light-blue darken-4 btn btn-large animated tada" id="zfLiSXuvsh">Начать</a>


Кнопка постоянно движется
скрытый текст
2889aac3b29b05a569478bf2c84c9800.png

скрины публикуются в спойлере
Можно ли ее по id открывать ? или как то еще ?:|

InfSub

ArsKub пишет

удалено, избыточное цитирование
у автора все работало...

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

замечание

InfSub

udalov
удалено, избыточное цитирование
Я сделал такой же скрипт для Яндекса и тот же эффект...

InfSub

InfSub
удалено, избыточное цитирование
Здравствуйте. Подскажите пожалуйста, а как задать цикл, что бы скрипт повторялся пока страница поиска результатов не закончиться, а не в ручную забивать кол-во циклов?
Спасибо:)

замечание

InfSub

s.stake

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском, пункт 2.1


например, поиск по слову: "бесконечный цикл"

12-03-2017 04:03:23
SKZSerjik
принципы работы iMacros прочтите
iMacros ищет элементы именно по id, class'у или иной уникальной информации в теге

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=class:"*btn btn-large animated tada"&&TXT:Начать


12-03-2017 04:11:21

ArsKub пишет

поисковая выдача экспортируется в ошибку #EANF#

потому что:

RuntimeError: element CITE specified by class:vurls was not found

Подскажите, почему цикл не прерывается, если выполняется условие TXT:Запрос<SP>отправлен не найден?

скрытый текст

Выделить код

Код:

for (;; ){
if(iimPlay("CODE:SET !TIMEOUT_STEP 1\n TAG POS=1 TYPE=BUTTON ATTR=TXT:Запрос<SP>отправлен")<0){ break;

}else{
    iimPlayCode('SET !TIMEOUT_STEP 1 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Отменить<SP>запрос \n TAG POS=1 TYPE=BUTTON ATTR=TXT:Отменить<SP>запрос');
    iimPlayCode('REFRESH')
}};

udalov
а вы уверены, что он не найден?

InfSub
На странице этого текста нет. По крайней мере, глазами не видно.

udalov
ну так запустите iim-код

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Запрос<SP>отправлен


и убедитесь, что его действительно нет (в чем, я, собственно и сомневаюсь)

InfSub , проверю для интереса, но спасибо за направление мысли, надо было отслеживать не текст кнопки TXT:Запрос<SP>отправлен , а её код  - сразу всё заработало.

InfSub пишет

s.stake

Правила форума: Не рекомендуется: Задавать вопросы, ответы на которые легко находятся поиском, пункт 2.1


например, поиск по слову: "бесконечный цикл"

Я бы не задавал его тут, если бы нашел что то в гугле. Все статьи что мне попадались по бесконечному циклу, прописывались на JS, а я в нем не селен, пока осваиваю iim. Вот и обратился за советом.
Сейчас еще раз искал, но ни чего по бесконечному циклу для iim не нашел. Не могу понять, как запускать весь скрипт по новой до конца страницы поиска.

s.stake
во-первых, ссылка в сообщении присутствует
во-вторых, если бы вы почитали сообщения по ссылке, то поняли бы, что бесконечный цикл на iim-скриптах - не возможен, а так же, нашли бы решение на js, даже с учетом того, что в нем не разбираетесь

12-03-2017 15:57:58
во всяком случае, запустить из js c бесконечным циклом iim-скрипт, не составит проблемы и новичку ... было бы желание, к примеру почитать FAQ на форуме и воспользоваться поиском (ссылку выше на поисковый запрос по форуму, уже давал!)

InfSub пишет

RuntimeError: element CITE specified by class:vurls was not found

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

ArsKub
а поменять class на соответствующий уже даже поиск по теме не помогает?

Здравствуйте.
Подскажите пожалуйста, как вытащить только одно значение.

скрипт

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:_pac EXTRACT=TXT


DOM:
1й -  нужно только "5,240 members" вытащить)
скрытый текст
dd289c3f7b8f.png

2й - нужно только "Just For Fun" вытащить)
скрытый текст
7c71e82b94a2.png

s.stake

как-то так:

Выделить код

Код:

SET EVAL("'{{!EXTRACT}}'.match(/(.*?)\\s\\-\\s\d+/).pop()")

Подскажите, пожалуйста, как можно сделать чтобы при работе скрипта js была имитация работы в "активном окне"? Поиск ответа на данный вопрос по форуму и поисковым системам не дал результатов.

InfSub
Ругается на него, говорит

"TypeError: "".match(...) is null, line 1"

я правильно понял, скрипт таким должен получиться:

скрытый текст

Выделить код

Код:

SET VAR1 EVAL("'{{!EXTRACT}}'.match(/(.*?)\\s\\-\\s\d+/).pop()")
TAG POS={{!VAR1}} TYPE=DIV ATTR=CLASS:_pac EXTRACT=TXT

s.stake
сначала экспорт, потом обрезка

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:_pac EXTRACT=TXT
SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/(.*?)\\s\\-\\s\d+/).pop()")
PROMPT {{!VAR1}}

16-03-2017 15:07:35
ottec
чуть конкретнее обрисуйте ситуацию

InfSub пишет

чуть конкретнее обрисуйте ситуацию

На буксах при серфинге если окно не активное то останавливается таймер. Как сделать чтобы буксы думали что окно активно всегда?

InfSub
И все же ругается:

TypeError: "5,240 members\xA0\xB7\xA01 new member".match(...) is null, line 2 (Error code: -1001)

ottec
чисто теоретически, убрать код проверки активности из html-кода страницы, через .innerHTML думаю такое возможно, не пробовал

16-03-2017 15:19:25
s.stake
ну правильно, не к тому тегу регулярку дал, в ответе регулярка ко 2 скрину

16-03-2017 15:23:06

s.stake пишет

1й -  нужно только "5,240 members" вытащить)

скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:_pac EXTRACT=TXT
SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/(.*?) members/).pop().replace(',','')")

s.stake пишет

2й - нужно только "Just For Fun" вытащить)

внесены небольшие исправления в этот код

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:_pac EXTRACT=TXT
SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/(.*?)\\s-\\s\\d+/).pop()")

InfSub
удалено, избыточное цитирование
первый сработал, а по второму скрину упорно пишет:

TypeError: "Just For Fun\xA0\xB7\xA024,174 like this".match(...) is null, line 22 (Error code: -1001) :(

InfSub

s.stake
во втором замените \\ на \ и попробуйте

InfSub
Непомогло, упорно ссылается на ошибку:

TypeError: "Just For Fun\xA0\xB7\xA024,174 like this".match(...) is null, line 2 (Error code: -1001)

Подгружу еже раз скрин DOM, посмотрите:

скрытый текст
dd243188db4b.png

s.stake
проблема не в DOMе а в обработке текста, скорее всего что-то в eval() поподает, что обрабатывается не корректно - дайте ссылку

16-03-2017 17:12:20
у вас весь скрипт на iim? или запрос идет из js? если из js проще и правильней обработать там, чем через eval()

16-03-2017 17:14:26
или сделайте extract=htm вместо extract=txt и покажите результат (текстом, а не картинкой)

InfSub
весь скрипт на iim, я очень плохо знаю js

скрипт в цикле по очереди из каждого блока вытягивает название, кол-во лайков и URL. А нужно что бы еще и тип(Pet Supplies, Community, Entertainment Website) добавлял к результату обработки:

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("var i={{!LOOP}};i++*2-1")
TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:_5d-5 EXTRACT=TXT
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:*LIKERS* EXTRACT=TXT
TAG POS={{!VAR1}} TYPE=A ATTR=DATA-TESTID:SERP_RESULT_LINK* EXTRACT=HREF
SAVEAS TYPE=EXTRACT FOLDER=* FILE=puppy.txt


Вот ссылка на поиск
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


Замена на EXTRACT=HTM дало:

TypeError: "<div class=\"_pac\" data-bt=\"{&quot;ct&quot;:&quot;sub_headers&quot;}\"><span>Pet Supplies</span><span><span>&nbsp;\xB7&nbsp;</span></span><a href=\"/search/207291289335995/likers?ref=snippets\">95,769 like this</a><div class=\"_1my\"></div></div>".match(...) is null, line 22 (Error code: -1001)

текст ошибок - публикуется в тегах quote

InfSub

s.stake
уберите строку

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/(.*?)\\s-\\s\\d+/).pop()")


и еще раз приведите результат extract=htm для строки с "Just For Fun" или аналогичным
скрытый текст

Выделить код

Код:

TAG POS={{!LOOP}} TYPE=DIV ATTR=CLASS:_pac EXTRACT=TXT
PROMPT {{!EXTRACT}}

InfSub

результат extract=htm с "Pet Supplies"

скрытый текст

<div class="_pac" data-bt="{&quot;ct&quot;:&quot;sub_headers&quot;}"><span>Pet Supplies</span><span><span>&nbsp;·&nbsp;</span></span><a href="/search/207291289335995/likers?ref=snippets">95,769 like this</a><div class="_1my"></div></div>

s.stake
на скрине плохо было видно, но там не тире, а точка, между фразами:

s.stake пишет

<span>&nbsp;

·

&nbsp;</span></span>

в этом и была ошибка

скрытый текст

Выделить код

Код:

SET !VAR1 EVAL("'{{!EXTRACT}}'.match(/(.*?)\\s·\\s\\d+/).pop()")

Не могу понять... Вот это

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 1\nTAG POS=1 TYPE=DIV ATTR=CLASS:fsl*fwb*fcb EXTRACT=TXT');
name = iimGetLastExtract(1);
alert (name)


Прекрасно работает при любом значении TAG POS . Но когда я делаю так

скрытый текст

Выделить код

Код:

for(q = 1; q <= 2; q++){    
iimPlayCode('SET !ERRORIGNORE YES\nSET !TIMEOUT_STEP 1\nTAG POS={{q}} TYPE=DIV ATTR=CLASS:fsl*fwb*fcb EXTRACT=TXT');
name = iimGetLastExtract(1);
alert (name)
}


Выдаёт ошибку

BadParameter: expected POS=<number> or POS=R<number>where <number> is a non-zero integer as parameter 1, line 1 (Error code: -911)

и в алерте вообще пусто, даже не EANF... Что я делаю не так? Текст ошибки вроде понимаю - в POS же попадает ненулевое значение.

udalov
вам уже раньше писали что вы неправильно подставляйте переменные

karginaolga
да, опять моя привычка тупо копировать код из одного места и применять его в другом...

InfSub
Спасибо большое за помощь, все команды работают:)

Подскажите пожалуйста:

есть таблица *.csv, в ней 4 столбика. В 1 столбике название сайтов, 2й-3й "бла-бла", 4й URL.

Видать в 1 столбике в названиях есть какие-то символы или еще что-то, что ему не нравится. Когда удаляю все из первого столбика или подменяю любым другим текстом, скрипт работает как положено, но если оставляю в оригинале, он упорно игнорирует SET GOTO={{!COL4}} и не переходит по URL из 4 столбика. Поплясал с бубном, перепробовал по разному поиграть с текстом из 1 столбика, ни в какую, только полная замена или удаление, не пойму что ему не нравиться...  Как сказать imacros что бы не обращал внимание на 1й столбик и просто брал данные из {{!COL4}}. Удалить данные из 1 столбика не могу, так как они нужны для последующей работы с ними в этом же скрипте.

скрипт:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !DATASOURCE_DELIMITER ;
SET !DATASOURCE 5.csv
SET !DATASOURCE_COLUMNS 4
SET !LOOP 1
URL GOTO={{!COL4}}

s.stake,
попробуйте в таблице заменить стандартные разделители данных ; на что нибудь "оригинальное", например, на #.
И тут сделайте SET !DATASOURCE_DELIMITER #

s.stake
Если у вас проблема с файлом, так и приведите пример содержимого этого файла (1-2 строки)
И откройте wiki по imacros, прочтите, что такое DATASOURCE_COLUMNS и где (почему) используется

udalov
Порывал и так, но не срабатывало. Но я разобрался. Я на mac os работаю, он иногда чудит по своему, и в этот раз при записи файла в csv записал именно первый столбик как простой текст(т.е. без кавычек), а остальные столбики как положено в кавычках. Не увидел бы, пока в windows в notepad++ не открыл (mac упорно мне этого не показывал). В общем перезаписал файл в notepad++ на windows, и все заработало. Буду знать, тоже опыт.

InfSub
Спасибо

Здравствуйте.
Не могу понять, почему скрипт работает криво.

Пытаюсь сделать следующее: Заходим на страницу в Facebook, меняем "отправить от имени страницы", пишем текст, жмем отправить.
В чем "работает криво": иногда просто не пишет нечего, иногда просто пишет первую букву и все, иногда последнюю букву повторяет писать до бесконечности пока скрипт не остановишь, или просто не чеге не пишет и не отправляет не чего.

Это я так криво скрипт написал, или это особенности Facebook, или что еще может быть? не могу понять....

Подскажите, или помогите подправить пожалуйста.

скрытый текст

Выделить код

Код:

VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=https://www.facebook.com/design.reklama/?ref=br_rs
SET !ERRORIGNORE YES
FILTER TYPE=IMAGES STATUS=ON
TAG POS=1 TYPE=A ATTR=CLASS:*42ft&&TYPE:button&&ARIA-HASPOPUP:true&&HREF:#
TAG POS=1 TYPE=DIV ATTR=CLASS:_2sl4<SP>_4c71&&DATA-TESTID:page-selector-overlay-item-content
WAIT SECONDS=2
SET !VAR1 "Hi all"
ADD !EXTRACT {{!VAR1}}
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV>DIV:nth-of-type(2)>DIV>TEXTAREA" BUTTON=0
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>FORM>DIV>DIV:nth-of-type(2)>DIV>TEXTAREA" CHAR=" "
WAIT SECONDS=3
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV>DIV" CHAR={{!VAR1}}
WAIT SECONDS=2
EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV:nth-of-type(2)>DIV>DIV:nth-of-type(2)>DIV>SPAN>DIV>BUTTON" BUTTON=0

Alladin
это скорее - особенности работы EVENT на фейсбуке
читайте про js и .iinerHTML

InfSub
Если вам не сложно, помогите подправить этот(не сложный) скрипт с iim на js. Для меня js просто потемки, сложно дается в понимании пока. Буду очень признателен))

Alladin
меня нет в соц. сетях, да и не работаю я с ними - давно и принципиально, так что - сорри

Когда вызываю js скрипт с js

скрытый текст

Выделить код

Код:

iimPlayCode("URL GOTO=imacros://run/?m=path/file.js")


код публикуется в тегах code внутри спойлера
то начинают пропускаться строки и невозможно остановить нажатием на стоп. Скажите с чем это связано и как это исправить?

InfSub

ottec
с запуском js из js
уже не однократно обсуждалось, что iMacros не подразумевает запуска одного js-скрипта из другого в отличии от запуска iim-скриптов из одного управляющего js
результат вы видете

20-03-2017 14:57:37
в FAQ приведен пример подобного запуска, но он - работает более менее корректно, только в одном случае, если запуск следующего js файла осуществляется из конца предыдущего (в котором более не выполняются ни какие действия и скрипт останавливается)

А можно как-то код из, допустим, file.txt или file.csv запихнуть в какую-то переменную, и потом запустить её как часть кода?

ottec
С помощью js, вы можете заменить любую подстройку в интересующей вас строке
На чистом iMacros, инъекции переменных в файл данных невозможны

Знатоки скриптов для Фейсбука, подскажите, почему может быть, что вот этот код работает на ФФ 27.0.1 портбейбл, iMacros 8.8.7.1 и не работает на ФФ 51.0.1 (32-бит) и  iMacros версии 8.9.7?
Скрипт отменяет заявки в друзья тем, кто эти заявки не принял. Не работает сразу со строки if... - не подсвечивается элемент на странице, который должен выбираться...

скрытый текст

Выделить код

Код:

for (;; ){
if(iimPlay("CODE:SET !TIMEOUT_STEP 1\n TAG POS=1 TYPE=DIV ATTR=CLASS:ruResponseButtons")<0){ break;
    }else{
    iimPlayCode('SET !TIMEOUT_STEP 1 \n EVENT TYPE=CLICK SELECTOR="HTML>BODY>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV>DIV:nth-of-type(3)>DIV>DIV>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>BUTTON:nth-of-type(2)" BUTTON=0 \n TAG POS=1 TYPE=SPAN ATTR=TXT:Отменить<SP>запрос \n TAG POS=1 TYPE=BUTTON ATTR=TXT:Отменить<SP>запрос');
    iimPlayCode('REFRESH')
}};

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

Всем привет:rock:
В текстовом файле есть одна строка,с разделителем точка с запятой "forum;1234"  надо это записать в другой текстовый файл но уже в две колонки
типа "forum","1234"

скрытый текст

Выделить код

Код:

iimPlayCode('SET !DATASOURCE C:\\1.txt\nSET !DATASOURCE_LINE 1\nSET !EXTRACT {{!COL1}}'); 
f1r=iimGetExtract().replace(';','",');
alert(f1r);

Gergi
учите мат часть, запятая в тексте строки - не является признаком разделения колонок в iMacros, разделителем является [EXTRACT], на него и меняйте точку с запятой, перед сохранением с помощью SAVEAS
З.Ы. использовать iMacros для пересохранения строк из одного файла в другой, аналогично забиванию гвоздей микроскопом

Спасибо InfSub всё получилось как было задумано :rock:

Подскажите, как можно сделать, что бы при перезагрузке страницы или переходе на другую не прерывалась функция с интервалом.

Пример.

скрытый текст

Выделить код

Код:

window.setInterval(function(){window.console.log('test')},1000)

iimPlayCode(`
WAIT SECONDS=10 //Логирование происходит нормально
REFRESH`) // На этом этапе прекращается

TetraSky
она и не прерывается
а если вы не видите слова test, так только из-за того, что скорее всего - не нажата кнопка "не очищать" в консоли

InfSub
Кнопка нажата.
Да и не только в консоли такая беда. В iimDisplay тоже самое, после какого либо действия, которое обновляет страницу или открывает новую, функция с интервалом просто перестает работать.

Firefox: portable 35.0
iMacros: 8.9.7

скрытый текст

Выделить код

Код:

window.setInterval(function(){iimDisplay(i); window.console.log(i)},1000)
a()
function a(){
for(i=1; i<=5; i++){
    iimPlayCode('WAIT SECONDS=1');
    i==3 ? iimPlayCode('REFRESH') : true
    }
}

TetraSky
в данном случае - решается вызовом setInterval из самой функции a()
скорее всего встроенные ограничения, дабы не мешало корректной работе скриптов при переходе на новую страницу или обновлению старой (иных причин - не вижу, более детально - надо гуглить)

Перенес функцию с интервалом под a(), все тоже самое.

Я вот думаю, может через функцию function iimPlayCode()  запускать функцию с интервалом, если есть параметры, которые влияют на её остановку.
Реально ли такое сделать, как считаете?

TetraSky

скрытый текст

Выделить код

Код:

a()
function a(){
for(i=1; i<=5; i++){
    window.setInterval(function(){iimDisplay(i); window.console.log(i)},1000)
    iimPlayCode('WAIT SECONDS=1');
    i==3 ? iimPlayCode('REFRESH') : true
    }
}

Всем  привет! Возникла такая проблема на сайте

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


хочу чтобы ссылка укорачивалась раз 20. Написал такой код
скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:shorten_form ATTR=ID:url CONTENT={{!CLIPBOARD}}
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:shorten_form ATTR=ID:submit1
TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:urlCode EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=C:\Users\kolik\Desktop FILE=11.txt


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

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

Пока самое изящное решение, которое придумал выглядит так:

Выделить код

Код:

window.setInterval(function(){iimDisplay(i); window.console.log(i)},1000)
a()
function a(){
for(i=1; i<=5; i++){
    iimPlayCode('WAIT SECONDS=1');
    i==3 ? iimPlayCode('REFRESH') : true
    }
}

function iimPlayCode(code) {
    var link= window.location.href
    iimPlay('CODE:'+code)
    if(link!==window.location.href || code.match(/refresh/gi)){
        window.setInterval(function(){iimDisplay(i); window.console.log(i)},1000)
    }
}


kolik76
Вам надо получить 20 разных сокращений на одну и ту же ссылку, или прогнать через сокращение уже сокращенные ссылки?

TetraSky
Через сокращение уже сокращенную ссылку.

kolik76 пишет

хочу чтобы ссылка укорачивалась раз 20. Написал такой код

offtop
мне просто интересно, вы правила сервиса читали? если нет, то советую ознакомиться, т.к. там описан такой подход к заработку и он не оплачивается или оплачивается существенно ниже единичного перехода по ссылке

kolik76

скрытый текст

Выделить код

Код:

var link='google.com'
var total=20

for(i=1; i<=total; i++){
if(i>1){link=window.document.querySelector('#viewl').href}
iimPlayCode(`
    SET !ERRORIGNORE YES    
    TAG POS=1 TYPE=INPUT:TEXT FORM=ID:shorten_form ATTR=ID:url CONTENT=${link}
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:shorten_form ATTR=ID:submit1
    WAIT SECONDS=1
    TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:urlCode EXTRACT=TXT
    SAVEAS TYPE=EXTRACT FOLDER=C:\\Users\\kolik\\Desktop FILE=11.txt
    `)
}


Если слишком часто сокращать - получаешь бан по ip.
Может с зареганого аккаунта по другому будет.

InfSub Можно сделать по другому, в сайте загружается catcut и мне предложили

TetraSkyТак у меня и зареган там аккаунт
Ошибку выдает, файл с расширением .js

скрытый текст

Выделить код

Код:

Error: Accessing content window is not supported in multiprocess Firefox, line 208 (Error code: -991)

kolik76
поставьте более старую версию FF и как минимум - пользуйтесь поиском по теме, данная ошибка не единожды обсуждалась
content window is not supported in multiprocess Firefox

TetraSky,InfSub
Спасибо, все удачно заработало:)

Здравствуйте! как можно прописать команду если найден элемент на странице, то идти то что ниже(код), если не найден то начать воспроизводить сначала
пример:

скрытый текст

Выделить код

Код:

for (i=1;i<2;i++){ 
iimPlayCode('URL GOTO=https://vk.com/friends');
} 

for (a=17;a<37;a++){
iimSet("a",a);
var macro;
macro =  "CODE:";
macro += ("SET !ERRORIGNORE YES") + "\n"; 
macro += ("SET !REPLAYSPEED SLOW") + "\n"; 
macro += ("TAG POS={{a}} TYPE=BUTTON ATTR=id:search_sub*");
iimPlay(macro);

volchsek
удалено, избыточное цитирование

скрытый текст

Выделить код

Код:

a()
function a(){
    if(window.document.querySelector('.класс элемента или #id элемента')!==undefined){
         //выполняем код, если элемент найден 
     }
    else{ return a() }
        //начинаем сначала, если элемент не найден 
}


InfSub

Вроде уже спрашивали, и даже вроде я спрашивал... Но не смог найти. Скрипт екстрактит со страницы Имя Фамилия, как регуляркой оставить только имя, т.е. только то, что до первого пробела? Именно до первого, так как иногда бывает Имя  Фамилия Отчество.


скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 1\n TAG POS=1 TYPE=H1 ATTR=TXT:* EXTRACT=TXT');
userName=iimGetLastExtract()
alert(userName)

udalov

скрытый текст

Выделить код

Код:

userName=iimGetLastExtract().split(' ')[0];

InfSub, спасибо!

Подскажите можно ли в текстовый файл записать текст без двойных кавычек?
Короче смысл в том что делитель запятая,а если стоят двойные кавычки то тогда вытаскивает весь текст а не до запятой.

Gergi
Записать чем, имакросом или вообще?
Весь текст вытаскивает только тогда, когда он весь обрамлен кавычками, если вам надо до запятой, так и закройте кавычки перед ней и откройте после

InfSub
удалено, избыточное цитирование
Да,имакросом записываю в текстовый файл информацию,и соответственно всё записывается в двойных кавычках и потом когда имакросом вытаскиваю информацию то вытаскивается всё что обвёрнуто в кавычках
Вот например "мне нужно вытащить только до запятой,а вытаскивается всё"

InfSub

Gergi
Ну так а в чем проблема сохранить не всё в один столбец, а в несколько? И соответственно, брать потом только нужные данные

Здравствуйте, как можно сделать проверку сначала на if,  if, затем на else , у меня получается только первый if затем исполняется else

volchsek
А теперь задайте вопрос так, чтобы его можно было понять и приведите пример кода с которым проблемы

30-03-2017 22:51:57

скрытый текст

Выделить код

Код:

var str='на if';
if(str=='наив'){alert('yes, if наив!');}
else{alert('no, it is not на if');};

InfSub пишет

А теперь задайте вопрос так, чтобы его можно было понять и приведите пример кода с которым проблемы

Думаю, ему нужна такая конструкция:

скрытый текст

Выделить код

Код:

if(iimPlay("тут проверка 1")>0){
    iimPlayCode('действие');
    }else if (iimPlay("тут проверка 2")<0){
        iimPlayCode('действие');
}else{
    iimPlayCode('действие если проверка 1 и 2 не подходят')
}


Я вот я не могу понять, почему в первом коде переменная TAG POS= работает, если её указывать в виде {{r}} , а во втором - в виде '+r+' .
Из-за iimSet("r", r); ?? Из-за ret = ? Из-за iimPlay("CODE:??
В каких случаях правильно  применять {{ }}, а в каких '+ +'?

1

Выделить код

Код:

for (r = 1; r <= 5; r++) {
iimSet("r", r);
ret = iimPlay("CODE:TAG POS={{r}} TYPE=A ATTR=class:photoWrapper EXTRACT=HREF \nTAB OPEN \nTAB T=2 \nURL GOTO={{!EXTRACT}}");
}


2

Выделить код

Код:

for(q=1; q<=5; q++){
r=Math.floor(Math.random()*7);
iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS='+r+' TYPE=A ATTR=class:photoWrapper EXTRACT=HREF \n TAB OPEN \n TAB T=2 \n URL GOTO={{!EXTRACT}}');
}

udalov пишет

В каких случаях правильно  применять {{ }}, а в каких '+ +'?

без разницы, работает и так и так - везде
если не работает - ищите ошибки, например

скрытый текст

Выделить код

Код:

r=Math.floor(Math.random()*7);


может вернуть

0

, что для TAG POS= не допустимо

Всем привет:rock:
Можно ли экстрактить только цифры игнорируя буквы?

Gergi
Можно ли, приготовить яичницу, не разбив яиц?

Поискал на форуме, погуглил и не нашёл решения.
Я про ONDOWNLOAD
На форуме в основном сохраняют фото.

Мне нужно сохранить аудиофайл.
Посмотрел в Demo-Firefox в Download.iim
В нём код макроса переходит на сайт, нажимает на ссылку, появляется табличка с выбором - сохранить как
и только после этого начинает скачивать файл.

В моём случае, я извлекаю прямые ссылки из сайта вконтакте, в конце с расширением .ogg - это аудиоайлы.

Если эту ссылку открыть в браузере мазила, то она воспроизводится на странице в отдельном аудиоплеере.
И не появляется это табличка с выбором - сохранить как.

Как в таком случае скачать файл с помощью imacros?

Алим
нажать на ссылку, а не пытаться напрямую открыть урл, по аналогии с pdf (пример есть в демо)

Привет всем!
Подскажите пожалуйста как извлечь эту ссылку и потом перейти по ней в новом окне.

Само поле где находится ссылка ни как не реагирует при записи в аймакрос
Благодарю тех кто откликнуться:rock:

скрин
e788d846aefd.png

отредактировано, правила размещения изображений в разделе iMacros

InfSub

vinterhelp, ссылка в адресной сроке находится?

udalov пишет

vinterhelp, ссылка в адресной сроке находится?

Спасибо за отклик.
Нашел решение проблемы.

Кто-нить подскажите,как выдернуть "48"

скрытый текст
87542bd24034.jpg

dim222
А extract=txt не работает?
Дайте ссылку

InfSub

скрытый текст

знатоки ! Подскажите, как выдернуть таймер "48"

скрытый текст
[img][spoiler]87542bd24034.jpg

dim222 пишет

как выдернуть таймер "48"(Сегодня 04:08:58)

скрытый текст

Выделить код

Код:

var getSatoshi = content.document.getElementsByClassName('btn btn-primary btn-lg claim-button')[0].innerHTML; 
if (getSatoshi == 'Забрать сатоши!') {
alert('жми забрать');
} else {
    alert('сделай паузу ' + getSatoshi)
}

Бек
Спасибо!

Здравствуйте. Такой вопрос: можно ли (и самое главное, как) проверить сгенерированное рандомное число на чётность? Задача: в зависимости от сгенерированного числа скрипт делает действие 1 (если число чётное) или действие 2 (если нечётное). Я пока смог сделать проверку меньше или больше определённого числа. В принципе, тоже рабочий вариант, но чёт\нечет мне видится красивее.

скрытый текст

Выделить код

Код:

var number=100;
for(q=1; q<=10; q++){
s=Math.floor(Math.random()*(number));
iimSet("s", s)
if((s) <= 50){
    check = "сгенерировали число меньше 50: "+s+"";
    iimDisplay(check);
}else{
    check = "сгенерировали число больше 50: "+s+"";
    iimDisplay(check);
}
iimPlayCode('PAUSE');
}

udalov

скрытый текст
http://www.rebelcode.ru/js/proverka-na-chyotnost-v-javascript/

nikolay1987, спасибо, буду тестировать.

Всем привет!:rock:
Как можно вызвать клавишу Ентер?

05-04-2017 15:54:03
Решил вопрос через VBS но теперь дело за малым,не знаю как из js вызвать файл VBS

Всем привет.

Gergi пишет

,не знаю как из js вызвать файл VBS

"У меня так"

Выделить код

Код:

function VBS(){
    var code = '';
    var Path='C:\\bitcoinauto2\\';
var Cc=Components.classes, Ci=Components.interfaces, c;
var proc=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
 var file=Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
 var args=['C:\\bitcoinauto2\\E-1']; 
    file.initWithPath('C:\\bitcoinauto2\\E-1.vbs'); 
    proc.init(file); proc.run(false, args, args.length); 
    iimPlay(code, 60);
}

Jurik45 Спасибо! Что то никак не могу запустить.

Здравствуйте. Подскажите вариант разбиения сгенерированного рандома на диапазоны, например, от 0 и до 25, от 26 и до 50, от 51 и до 75, от 76 и до 100. Вроде на форуме были подобные примеры, найти их не смог. Мой образец позволяет разбить на 3 части по фиксированным значениям, а хотелось бы больше и по диапазонам:

скрытый текст

Выделить код

Код:

var number=100;
for(q=1; q<=10; q++){
s=Math.floor(Math.random()*(number));
iimSet("s", s)
if((s) < 50){
    check = "сгенерировали число меньше 50: "+s+"";
    iimDisplay(check);
}else if ((s)=50){
    check = "сгенерировали число, равное 50: "+s+"";
    iimDisplay(check);
}else{
    check = "сгенерировали число больше 50: "+s+"";
    iimDisplay(check);
}
iimPlayCode('PAUSE');
}

udalov пишет

вариант разбиения сгенерированного рандома на диапазоны

не совсем понял, что Вы хотите получить? рандом в диапазоне или проверить вхождение рандома в диапазон.
попробуйте так- рандом в диапазоне

скрытый текст

Выделить код

Код:

var min = 26;
var max = 50;
var number = max - min;
s=Math.floor(Math.random()*(number));
var result = s + min;

Бек, нужно второе, т.е. проверить вхождение рандома в диапазон. В моём примере должно быть что-то типа
if(26 > (s) < 50)
Кстати, надо этот вариант попробовать...

udalov пишет

нужно второе, т.е. проверить вхождение рандома в диапазон. if(26 > (s) < 50)

используйте так-:

скрытый текст

Выделить код

Код:

function rand(min, max){
    return (min + Math.floor(Math.random()*(max - min)));
}

rand(0, 50);   
check = "сгенерировали число меньше 50: "+s+"";
alert('что нужно делать, если число меньше 50?');
iimDisplay(check);

rand(50, 51)
check = "сгенерировали число, равное 50: "+s+"";
iimDisplay(check);
alert('а если равно');

rand(52, 100);
check = "сгенерировали число больше 50: "+s+"";
iimDisplay(check);
alert('а что если больше?');

Здравствуйте. Возникла такая проблема, скрипт рассылки на фейсбук работает, только перестал рассылать сообщения в группы, только заходит, ждет и уходит в другую группу... Честно не пойму в чем причина, помогите разобраться. Вот сам код:

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
SET !VAR1 "Отзывы, жалобы и предложения о компаниях"
SET !VAR2 EVAL("Math.floor(Math.random()*30 + 1);")
SET !VAR3 EVAL("Math.floor(Math.random()*30 + 1);")
SET !VAR4 EVAL("Math.floor(Math.random()*30 + 1);")
SET !VAR5 EVAL("Math.floor(Math.random()*30 + 1);")
URL GOTO=https://www.facebook.com/groups/?category=groups&ref=tab_nav
'SET !REPLAYSPEED MEDIUM
TAG POS={{!LOOP}} TYPE=A ATTR=HREF:/groups/*
WAIT SECONDS={{!VAR2}}
TAG POS=1 TYPE=TEXTAREA ATTR=NAME:xhpc_message
WAIT SECONDS={{!VAR3}}
TAG POS=1 TYPE=TEXTAREA FORM=ID:* ATTR=ID:u* CONTENT={{!VAR1}}
WAIT SECONDS={{!VAR4}}
TAG POS=1 TYPE=BUTTON FORM=ID:* ATTR=TXT:Опубликовать
WAIT SECONDS={{!VAR5}}


исправлено
код публикуется в тегах code внутри спойлера

Распишите пожалуйста подробнее.
Заранее спасибо.

InfSub

dizainer.online2030
Удалите первую строку и увидите, по каким причинам, ваш скрипт, не работает

InfSub
а в остальном все правильно?

dizainer.online2030
Читайте FAQ по командам iMacros'a
Первая строка, игнорирование ошибок, удалив ее, увидите где проблема

InfSub
удалено, избыточное цитирование
Можно попросить Вас помощь мне, я новичок и уже запутался, 3 день уже пытаюсь разобраться, а чем дальше тем хуже. Сегодня увидел Ваш форум и надеялся, что мне хоть здесь помогут...

Заранее спасибо.

InfSub

dizainer.online2030
Запишите собственной скрипт, для ввода текста используйте режим записи event recording mode
Обьедините результат, заменив в строке с event текст на переменную

dizainer.online2030 пишет

...Возникла такая проблема, скрипт рассылки на фейсбук работает, только перестал рассылать сообщения в группы, только заходит, ждет и уходит в другую группу...

Скрипт раньше работал как надо? Если работал, а потом вдруг перестал, то, скорее всего, на Фейсбуке внесли какие-то изменения в код страницы. Записывайте скрипт заново, потом сравнивайте.
Если сразу не работает... Откуда берутся группы, в которые скрипт заходит и рассылает сообщения? Из файла или из поиска? Учтите, что некоторые группы могут быть закрыты.

Как уже подсказали, удалите строку SET !ERRORIGNORE YES и скрипт выдаст сообщение, на какой строке кода его работа сбивается.

udalov
удалено, избыточное цитирование
выдает такую ошибку

скрытый текст
869c7dc216e0402d857b5e72b052c714.png

изображения публикуются внутри спойлера
замечание

InfSub

dizainer.online2030
translate.google.ru в помощь
для информации: ошибки - отображаются на желтом фоне - внизу окна плагина и содержат текст:

описание ошибки (Error code: цифровой номер ошибки)

При работе в свернутом окне скрипта js на буксах, firefox периодически разворачивает окно в полный размер. Подскажите, есть какая-нибудь команда js или настройка самого firefox, чтобы, если окно свернуть, то оно само не разворачивалось в полный размер?

Всем привет! Не знаю вопрос ли по теме или нет, проблема такая стоит imacros на виртуалке (суть его работы, в инстаграмме нажимать подписаться и всё). Всё работает в принципе нормально но, через какой-то период происходит такая штука, делается нажатие но, отправки нет (можно сказать ложное срабатывание) помогает только перезагрузка страницы, даже когда сам нажимаю всё равно не срабатывает. Обычно такое проиходит, когда пк возвращается из гибернации (гибернация нужна)
иногда и просто когда проработает часов 5-6. Сам момент поймать не могу, так-как промежуток этой проблемы большой.
В чем может быть проблема?
Есть подозрения, что куки обновляются или еще что..

скрытый текст
было такое, в моем случае не связано с работой аймакроса-фб добавил-гуд

как вариант для отслежки сделать паузу, если "отправки нет". "отправки нет"-количество подписок то же, что и было, ну или последний тот же. решение в лоб- перезагрузка, если "отпавки нет"

Подскажите, как получить текст сообщения из всплывающего окна, сформированного командой PROMPT?
Никак найти не могу, везде про саму команду написано, а про извлечение текста нет.

remlekar
а официальную wiki открыть?
http://wiki.imacros.net/PROMPT

Вы наверно не поняли, или я не так объяснил. Как выводить окно и получать текст из строки ввода я знаю.
Объясню подробней. Страница через команду

скрытый текст

Выделить код

Код:

PROMPT "Please enter your password:" !VAR1


выводит диалоговое окно на экран,
как получить текст "Please enter your password:" через EXTRACT или c помощью js из этого окна?

Всем привет, помогите разрешить ответ. В макросе есть такая строчка

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=ID:hKakrugKzs


После отработки ID кнопки меняется, что можно сделать чтобы макрос все равно жамкал по кнопке?

kolik76, надо либо предварительно Екстрактить значение ID, потом подставлять значение в указанную строку, либо искать не меняющийся атрибут у кнопки.

udalov
Объясните как зкстрактить?
Внутрений и внешний HTML

скрытый текст

Выделить код

Код:

<i class="material-icons left">launch</i> Начать
<a class="btn btn-large blue animated tada valign-wrapper lime accent-2 black-text" id="bmMYdIHDWZ"><i class="material-icons left">launch</i> Начать</a>

kolik76? как-то так

Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.

+ примеры на форуме с командой EXTRACT

udalov
удалено, избыточное цитирование
Это не подойдет, на сайте всего одна кнопка, с перезагрузкой ссылка меняется

InfSub

Здравствуйте. Не могу вставить комментарий под видео на ютуб. Любое. Выкопал по коду, создал строчку

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=data-placeholder:"Оставьте комментарий" CONTENT=Thanx


код публикуется в тегах code под спойлером
Тыкает именно туда, куда надо, курсор, но текст не вводит никак. Я уже менял ориентиры, тоже попадает в форму комментария, но текст - никак.
Как я представляю, для ввода текста существует CONTENT= , но что-то я упускаю.
Подскажите, где копать, желательно чистым аймакросом, без скриптов.

InfSub

Форумчане, погонял не много запись и у меня вышел вот такой вот код

скрытый текст

Выделить код

Код:

SET !ERRORIGNORE YES
TAG POS=1 TYPE=I ATTR=TXT:play_circle_outline
TAG POS=1 TYPE=I ATTR=TXT:launch
TAG POS=2 TYPE=I ATTR=TXT:play_circle_filled
TAB T=2
WAIT SECONDS=30
TAB CLOSE


Как-то можно его сократить? Здесь выходит (TXT) не находит один ищет другой. Типа true и false.

kolik76

kolik76 пишет

на сайте всего одна кнопка, с перезагрузкой ссылка меняется

так используйте тот идентификатор, который всегда присутствует в ссылке, например class

kolik76 пишет

Как-то можно его сократить?

сократить вряд ли, ускорить - да:

скрытый текст

Выделить код

Код:

set !timeout_step 1


13-04-2017 01:13:27
LeonidKotv
попробуйте запись в event recodring mode (см. настройки записи)

InfSub
Подскажите, как подставлять переменные (фрейм) в таком формате кода

скрытый текст

Выделить код

Код:

f2 = 'FRAME ' + iimGetExtract().match(/name=".*?"/) + '\n';    
    iimPlayCode(`
    SET !TIMEOUT_STEP 0
// здесь фрейм
    TAG POS=1 TYPE=STRONG ATTR=TXT:* extract=txt
    `);
Выделить код

Код:

iimPlayCode(`
TAB OPEN
TAB T=2
    TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:key CONTENT="'+key+'"
TAG POS=1 TYPE=INPUT:FILE ATTR=TYPE:file CONTENT='+Pathk+'cap.png
    `);

dim222
не понял вопроса, опишите подробнее

InfSub
не пойму как правильно подставлять переменные в код с переносом строки.

как из такого

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0\n'+f2+'TAG POS=1 TYPE=STRONG ATTR=TXT:* extract=txt');


переписать в такое

Выделить код

Код:

iimPlayCode(`
    SET !TIMEOUT_STEP 0
// здесь фрейм
    TAG POS=1 TYPE=STRONG ATTR=TXT:* extract=txt
    `);

13-04-2017 06:31:33
разобрался.

InfSub Спасибо, сделал через class, все отлично работает:D

InfSub пишет

LeonidKotv
попробуйте запись в event recodring mode (см. настройки записи)

пробовал и раньше, но подтавлял для вставки текста CONTENT=
Поковырялся ещё, а там CHARS= , сделал так - и обрадовался. Спасибо.

Ещё бы кто подсказал, как вставлять смайлы в комментарии на YouTube . Я их накопировал достаточно, но они в Notepad++ отображаются, а при копировании потом из файла CSV трансформируются в кракозябры. Через коды тоже не получается, загрузить рисунок - тоже нет этого в комментариях, смайлы там только при копировании из другого окна, либо через плагины специальные. А вот как это реализовать через макрос - не представляю.

Всем привет, вкратце...о imacros - такого зверя я еще не встречал. Понятно, что бесплатно, но это же ужас :o Пришлось ставить несколько браузеров, потом искать версию имакроса, которая не глючит (такой просто нет)... В итоге в одном браузере не работает одно, в другом другое. Скачивал сборку браузер+расширение, автор написал что это самое стабильное... ага поставил гоуту на гугл и сразу выхватил error -933 и никак это устранить не получается.... Теперь вопрос ко всем знатокам, помогите плиз нужно очень. Скрипт в 3 строки пытаюсь сделать весь день, а именно зашел нажал на кнопку и забыл.

HTML КОД кнопки:

скрытый текст

Выделить код

Код:

<button class="yt-uix-button yt-uix-button-size-default yt-uix-button-default yt-uix-button-empty yt-uix-button-has-icon no-icon-markup comment-action-buttons-renderer-thumb yt-uix-sessionlink sprite-comment-actions sprite-like i-a-v-sprite-like" type="button" onclick=";return false;" role="radio" aria-checked="false" aria-label="Нравится" data-sessionlink="itct=CJACEPBbIhMIwtPsgdyo0wIV1j8YCh03-A3Z" data-sessionlink-target="/comment_service_ajax?action_perform_comment_action=1" data-action="CAUQAholejEyamZkcHExa2F5Y3IxcGYwNGNpdGhyM3EzcWRwZ2hsa3MwayoLMF9FY1J5WkF5dkUwADgAShUxMDMwOTA5NTYyODE1NTkzMjg0MDZQAA%3D%3D" data-url="/comment_service_ajax?action_perform_comment_action=1" data-action-type="like"></button>


код публикуется в тегах code под спойлером
Просто так на нее не нажать, так как значения  data-sessionlink и data-action, всегда разные. То есть по факту на чем застрял, это получение этих двух значений, потом подстановка в TAG кнопка и как следствие нажатие.
Я честно сидел, перерыл весь яндекс, миллионы сайтов, но по запросам = "Парсинг форм, получение значений полей и еще каких то которые уже не вспомню" сайты все одни и теже, рассказывающие про удобный имакрос, а парсинг форм это основа работы с вебом. Я имакрос и выбрал только из-за того чтобы избежать гемора с пхп, сессиями, файлами куков, курл.

Помогите получить эти два значения, js может не подойти, так как таких кнопок около 50 на странице, и мне нужна как раз первая... Может через экстракт?

InfSub

SvarogD
а почитать, хоть чуть-чуть тему было сложно?
https://forum.mozilla-russia.org/viewto … 77#p734877

16-04-2017 23:13:14

SvarogD пишет

потом искать версию имакроса, которая не глючит (такой просто нет)

почитайте форум, а потом кричите, о том что есть и чего нет
на версиях FF без мультизадачности и на имакросе 8.9.7 - все прекрасно работает, а если и встречаются проблемы и баги, так решается сменой версии FF, а на больших и высоко нагруженных проектах, еще и оптимизацией самого FF

SvarogD

ага поставил гоуту на гугл и сразу выхватил error -933 и никак это устранить не получается

Не получается? А что там исправлять? Вроде на странице error cedes (которая у вашему сведению находиться в faq) нормальными английскими буквами написано
Network error while file or page loading.

Всем привет, вкратце...о imacros - такого зверя я еще не встречал. Понятно, что бесплатно, но это же ужас :o Пришлось ставить несколько браузеров, потом искать версию имакроса, которая не глючит (такой просто нет)...

Багов нет в одной версии имакроса, а подходящие версия имакроса для вашей версии браузера всегда можно найти в официальной репозитории на сайте addons.mozilla.org

Я честно сидел, перерыл весь яндекс, миллионы сайтов, но по запросам = "Парсинг форм, получение значений полей и еще каких то которые уже не вспомню" сайты все одни и теже, рассказывающие про удобный имакрос

а на официальную wiki заходили? Кстати полезно, прочитать документация которую написали разработчики. Замените динамические данные на * и все. Так сложно?

P.S Прежде чем сделать какой то вывод, а каком нибудь софте (да и не только ),  хотя бы с официальной документацией ознакомьтесь.

Спасибо всем за советы.... Вы очень помогли! Пока не видел советов предпринял:
1. Решил переделать и загнать все в JS при этом попробовав вытащить динамические данные:

скрытый текст

Выделить код

Код:

var macro;
macro =  "CODE:";
macro += "TAB T=1" + "\n";
macro += "URL GOTO=https://мой урл" + "\n";
iimPlay(macro)
var first = document.querySelector("DATA-SESSIONLINK");
alert ("first");


код публикуется в тегах code внутри спойлера
При выполнении на сборке Палемун+имакрос 8.8.2.1 опять же ошибка -933, при переходе по урлу (как я уже понял не критическая), жабаскрипт выдает error document undefinded. На сборке фф+имакрос 9.0.3 ничего не происходит.

Не силен в JS и связываюсь с ним только в крайнем случае. Возможно есть ошибки. Код ошибки означает, что либо ошибка загрузки документа, либо селектор пуст.

2. Перечитал еще раз предыдущую страницу, на данном форуме, именно из-за нее я сюда попал (Совет первый

а почитать, хоть чуть-чуть тему было сложно?
https://forum.mozilla-russia.org/viewto … 77#p734877

) Я читал и не раз. Но решения я там так и не увидел! Типа что мешает нажать на кнопку используя class кнопки: Это я пробовал еще до попадания сюда.

скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
URL GOTO=урл
TAG POS=1 TYPE=BUTTON ATTR=CLASS:yt-uix-button<SP>yt-uix-button-size-default<SP>yt-uix-button-default<SP>yt-uix-button-empty<SP>yt-uix-button-has-icon<SP>no-icon-markup<SP>comment-action-buttons-renderer-thumb<SP>yt-uix-sessionlink<SP>sprite-comment-actions<SP>sprite-like<SP>i-a-v-sprite-like


код публикуется в тегах code внутри спойлера
В сброке фф+имакрос нужная кнопка подсвечивается (берется в синюю рамку), но по прежнему не нажимается, в сброке палемун+имакрос, просто ничего не происходит, кроме -933
Пришел сюда увидел, что нужно почитать, где изучить, даже про мультизадачность упомянули. Я к тому, что у самого правило, не хочешь помочь, ну не помогай, а писать, хоть и не в открытую, типа "а поискать, школьный мозг не позволяет, все пишут одно и тоже и никто не хочет изучить глобально". Я не собираюсь не продавать скрипты, не использовать массово, мне нужно нажать на кнопку и все.
3. Совет - замените динамические данные на * и все!!!
скрытый текст

Выделить код

Код:

VERSION BUILD=9030808 RECORDER=FX
TAB T=1
URL GOTO=урл
TAG POS=1 TYPE=BUTTON ATTR=DATA-SESSIONLINK:*&&DATA-URL:/comment_service_ajax?action_perform_comment_action=1&&DATA-ACTION-TYPE:like&&DATA-SESSIONLINK-TARGET:/comment_service_ajax?action_perform_comment_action=1&&DATA-ACTION:*%3D&&ROLE:radio&&ARIA-CHECKED:false&&ARIA-LABEL:Нравится&&ONCLICK:;return<SP>false;&&TYPE:button&&CLASS:yt-uix-button<SP>yt-uix-button-size-default<SP>yt-uix-button-default<SP>yt-uix-button-empty<SP>yt-uix-button-has-icon<SP>no-icon-markup<SP>comment-action-buttons-renderer-thumb<SP>yt-uix-sessionlink<SP>sprite-comment-actions<SP>sprite-like<SP>i-a-v-sprite-like&&TXT:


код публикуется в тегах code внутри спойлера
Подсвечивает кнопку в фф, в палемуне ничего не происходит.

P.S Прежде чем сделать какой то вывод, а каком нибудь софте (да и не только ),  хотя бы с официальной документацией ознакомьтесь.

То есть я так понимаю, что у хорошего софта, должно быть много сборок, в одной работает, в другой нет?

17-04-2017 08:13:19
Попробовал через event click, в фф подсветка, в палемуне ничего не происходит.
Попробовал через click x/y, в фф данная функция при записи вообще не работает, в палемуне координаты всегда разные и как итог не попадание при воспроизведении (кнопка 10х10)

InfSub

SvarogD пишет

а поискать, школьный мозг не позволяет

Заканчивайте истерить и прочтите правила повеления на форуме и в ветке iMacros в частности, хотите нормальных ответов, так и задавайте их так, чтобы было желание отвечать, а не посылать... в поиск.

Про версию 9.0.3 не единожды говорилось на форуме, не хотите проблем, не используйте ее, тем не менее, вы проигнорировали мой комментарий про версию 8.9.7 и хотите добиться результата, его не будет или будет, но с кучей багов.

Для ютуба, о котором, вы только упомянули (хотя о проблемной странице, если вы задаете вопрос по существу, а не сотрясаете воздух, то должно было быть написано в первом же посте), многие методы не работают, причина, динамический контент на странице, как вам уже ответили (см.архив тем) используйте js, хотя и с помощью event проблема решается, но гораздо менее нативно.

SvarogD пишет

HTML КОД кнопки:

скрытый текст

Выделить код

Код:

<button class="yt-uix-button yt-uix-button-size-default yt-uix-button-default yt-uix-button-empty yt-uix-button-has-icon no-icon-markup comment-action-buttons-renderer-thumb yt-uix-sessionlink sprite-comment-actions sprite-like i-a-v-sprite-like" type="button" onclick=";return false;" role="radio" aria-checked="false" aria-label="Нравится" data-sessionlink="itct=CJACEPBbIhMIwtPsgdyo0wIV1j8YCh03-A3Z" data-sessionlink-target="/comment_service_ajax?action_perform_comment_action=1" data-action="CAUQAholejEyamZkcHExa2F5Y3IxcGYwNGNpdGhyM3EzcWRwZ2hsa3MwayoLMF9FY1J5WkF5dkUwADgAShUxMDMwOTA5NTYyODE1NTkzMjg0MDZQAA%3D%3D" data-url="/comment_service_ajax?action_perform_comment_action=1" data-action-type="like"></button>


Просто так на нее не нажать, так как значения  data-sessionlink и data-action, всегда разные.

Клик по этой кнопке

скрытый текст

Выделить код

Код:

window.document.querySelector('button[data-sessionlink^="itct="][aria-label="Нравится"]').click()

InfSub
удалено, избыточное цитирование
Прошу прощения, просто для меня этот вопрос на данный момент, чуть ли не вопрос жизни... (объяснять не буду, дабы не перечислять череду событий и почему это сейчас так важно).
Теперь по делу - попробовал так:

скрытый текст

Выделить код

Код:

content.document.getElementsByClassName('yt-uix-button yt-uix-button-size-default yt-uix-button-default yt-uix-button-empty yt-uix-button-has-icon no-icon-markup comment-action-buttons-renderer-thumb yt-uix-sessionlink sprite-comment-actions sprite-like i-a-v-sprite-like')[0].click();


В итоге, клик получаю (при условии что по урлу перехожу через js), но при повторном нажатии "Воспроизвести". Думаю что возможно, это из-за какой то задержки, возможно JS ищет элемент раньше, чем загрузится окно и повторном нажатии сразу кликает по кнопке. Пробовал онлоад, пробовал сет таймаут... пока результатов нет...

17-04-2017 14:05:34
Еще раз, огромная всем благодарность, помогла задержка через макрос... WAIT=30

InfSub

Добрый день!
Может кто ответить на несколько вопросов, или посоветовать где почитать/посмотреть на данную тему?

1. На странице есть функция:

скрытый текст

Выделить код

Код:

function captcha_action()
        {
            var text = 'Чтобы продолжить, введите слово:\n '+ response.captcha.question;
            if (response.attempted) {
                text = 'Ошибка ввода, попробуйте еще раз:\n '+ response.captcha.question;
            }

            var code = prompt(text);
            if (!code) {
                alert('Сожалеем, вы не можете продолжить!');
                clear();
                socket.close();
            }
            else {
                send_api('check', {captcha: code});
            }
        }


как получить значение response.captcha.question?
Запускается данная функция так:
скрытый текст

Выделить код

Код:

response = JSON.parse(event.data);
                if (response.action == 'restore') {
                    restore_action();
                }

                else if (response.action == 'check') {
                    captcha_action();
                }


2. Как отследить запуск captcha_action()?
3. Возможно или нет получить(перехватить) ответ от сервера (JSON) без постороннего софта?

P.S. Куски скрипта находятся в теле HTML кода страницы.

remlekar
По вопросам связанным с капчой, есть отдельная тема

Всем привет!:rock:
Скажите в настройках имакроса можно ли скриптом снимать и ставить галочку проигрование яваскрипта?

Подскажите, пожалуйста, хитрый код... Вот страница

скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


, код
скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=IMG ATTR=SRC:https://images.faberlic.com/images*


переходит в товар, но, если у товара есть несколько разновидностей (например, по цвету), как у товаров 1 и 2 в указанной странице, код
скрытый текст

Выделить код

Код:

TAG POS=2 TYPE=IMG ATTR=SRC:https://images.faberlic.com/images*


код публикуется в тегах code внутри спойлера
открывает не следующий товар, а этот же, нажимая на цветовые вариации. Перепробовал несколько вариантов TYPE= и  ATTR=class , не могу зацепить такой, который бы открывал товары по порядку, а не рылся бы внутри описания товара... Знатоки, помогите!

InfSub

udalov
Попробуй:

скрытый текст

Выделить код

Код:

https://images.faberlic.com/images/fl/TflGoods/_detail*

Gergi пишет

Всем привет!:rock:
Скажите в настройках имакроса можно ли скриптом снимать и ставить галочку проигрование яваскрипта?

скрытый текст
0f38c3308f.jpg

Вот можно было почитать перед тем как задать вопрос...

https://forum.mozilla-russia.org/viewtopic.php?id=71201

Hamzat
Спасибо большое!

Периодически выскакивает такое окно и останавливает работу скрипта:

скрытый текст
image1279099.png

Подскажите, пожалуйста, как избавиться от этого?

ottec
удалено, избыточное цитирование

скрытый текст

Выделить код

Код:

ONDIALOG POS=1 BUTTON=OK CONTENT=


код публикуется в тегах code внутри спойлера
замечание

InfSub

EverythingForYou
удалено, избыточное цитирование
Не помогает.

InfSub

ottec
эта команда должна стоять до клика по чекбоксу

Я эту команду в начале каждой строки js впихнул и все-равно данное диалоговое окно периодически выскакивает и останавливает работу скрипта. Есть настройки чтобы отключить любые диалоговые окна?

ottec
а теперь еще раз прочитайте мое сообщение!
данная команда ставится и работает только непосредственно перед действием вызывающим данное диалоговое окно!

В том то все и дело, что конкретного действия вызывающего данное окно нет. Оно выскакивает когда, по какой-то причине прерывается связь с google, а это может быть в любом месте кода. Скрипт останавливается не на одном определенном месте, а на разных местах.

ottec
в таком случае - делайте отлов ошибки (js) и в случае ее возникновения запускайте данный код, после чего - повторение требуемых действий

Знатоки Вконтакта, подскажите... Экстракчу количество друзей у пользователя на странице из блока под аватаркой.

скрытый текст

Выделить код

Код:

iimPlayCode('SET !TIMEOUT_STEP 0 \n SET !ERRORIGNORE YES \n TAG POS=1 TYPE=A ATTR=class:module_header EXTRACT=TXT');
friend1=iimGetExtract()
alert(friend1);
friend2=(friend1.replace(/\D+/g,""))
//alert(friend2);


Если у пользователя друзья есть (пример:
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


- всё хорошо, если у пользователя друзей нет (пример:
скрытый текст
Войдите или зарегистрируйтесь, чтобы увидеть скрытый текст.


скрипт берёт данные из другого блока, не из друзей...

Сделал так, из блока Основная Информация, но там кликом открывается лишнее окошко, которое приходится закрывать...

скрытый текст

Выделить код

Код:

if(iimPlay("CODE:SET !TIMEOUT_STEP 0\n TAG POS=1 TYPE=A ATTR=onclick:*page.showPageMembers*friends*")<0){
alert('друзей нет');
    }else{
alert('друзья есть');
iimPlayCode('TAG POS=1 TYPE=DIV ATTR=ROLE:button&&TABINDEX:0&&ARIA-LABEL:Закрыть*');
}


Вообще, цель - проверить, если ли у человека друзья, и если есть - получить их количество. Как это сделать без лишних строк кода?

Привет, поиском пользовался, но ответа не нашел ((

Есть задача, извлечь текст из поля и в зависимости от слова выбрать определенный чекбокс.  Подскажите, можно ли макрос настроить на это ?
С извлечением текста разобрался, но как заставить выбирать нужный чекбокс никак не пойму.
При записи макроса код чекбоксов он определяет так:

скрытый текст

Выделить код

Код:

TAG POS=1 TYPE=DIV ATTR=CLASS:styled-radio<SP>styledRadio&&TXT:
TAG POS=2 TYPE=DIV ATTR=CLASS:styled-radio<SP>styledRadio&&TXT:

Pumpo
может быть вы приведете html-код фрагмента?

24-04-2017 18:47:41

udalov пишет

но там кликом открывается лишнее окошко, которое приходится закрывать...

уже не единожды говорил, как это обойти - добавьте extract и действие ссылка не будет срабатывать (в большинстве случаев) а вместо ошибки проверяйте на #eanf#

Не знает ли кто, как добавить макросом комментарии со смайликами на ютуб?
Вот, описываю ситуацию: смайлики на ютуб-комментарии вставляются, только, как картинки при копировании-вставке. Не через текстовые коды.
При копировании в Notepad++ он их понимает. Вот:

скрытый текст
a1be094dab184019bca3041eaf162f0c.png

Тем не менее, если сохранить в CSV-файл (с юникодом без BOM, естественно), потом при копировании этих смайлов в комментарии через аймакрос все смайлики превращаются в кракозябры. Если же скопировать из этого файла методом копировать-вставить, всё нормально.

В html-коде эти смайлы тоже прописаны странно - как смайлы (в мозилле, по крайней мере, так отображаются).

скрытый текст
ed2b1d912d3d4913b4d11c5df51c3ffc.png

скрины публикуются под спойлером

И если я делаю datasource файл (txt или csv), всё равно потом из него через макрос вставляются кракозябры типа таких

рџ’‹рџ’‹рџ’‹рџЋЂрџ’‹рџЊёрџ’‹вќ¤рџЊё

Вот, и что делать?

замечание

InfSub

Здравствуйте! Подскажите как зациклить цикл бесконечно по кругу? То есть имеем скрипт вида

скрытый текст

Выделить код

Код:

var t0='SET !TIMEOUT_STEP 0\n', t1='SET !TIMEOUT 10\n', t2='SET !TIMEOUT_TAG 600\n', t3='SET !TIMEOUT 30\n', f=0;
function weit(s){iimPlayCode('WAIT SECONDS='+s);}

for(a=1; a<9999999; a++){ // Цикл для перебора аккаунтов

   iimPlayCode('CLEAR');
   iimPlayCode(t3+'URL GOTO=http://адрес сайта/'); 
   iimPlayCode(t3+'TAG POS=1 TYPE=A ATTR=ID:open_*');
   iimPlayCode('SET !DATASOURCE logins-1.csv\nSET !DATASOURCE_LINE '+a+'\nSET !EXTRACT {{!COL1}}'); if(iimGetExtract()=='')break;
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:TEXT ATTR=NAME:username CONTENT='+iimGetExtract());
   iimPlayCode(t3+'TAG POS=1 TYPE=INPUT:PASSWORD ATTR=NAME:password CONTENT=*************');
   iimPlayCode(t3+'TAG POS=1 TYPE=A ATTR=TXT:Login'); weit(5);
   iimPlayCode(t2+'TAG POS=1 TYPE=INPUT:TEXT FORM=ID:searchform ATTR=ID:search CONTENT=klas'); 
   iimPlayCode(t3+'TAG POS=1 TYPE=BUTTON FORM=ID:searchform ATTR=TXT:Search');  weit(1);    }


Так вот этот скрипт будет работать в цикле пока не переберет все данные (логины) из списка. А надо сделать так, чтоб как только все данные переберет, то начал бы заново с начала их перебирать по кругу и так до бесконечности. Подскажите как подправить?

код отредактирован
Не изменяем имена встроенных в js и iMacros функций, без изменения их функционала, при публикации на форуме

InfSub

genstrijen
обработка ошибок, iMacros функция iimGetErrorText()
условный оператор, if

У меня там в диалоговом окне вот такую ошибку выдаёт при окончании списка (когда перебор всех аккаунтов по списку закончен)

RuntimeError: Invalid DATASOURCE_LINE value: 3, line: 2 (Error code: -951)

так эта команда подойдёт в данном случае?
iimGetErrorText()

Здравствуйте. Почему-то перестал работать в iMacros данный код:

скрытый текст

Выделить код

Код:

var words = ['слово1','слово2','слово3','итд','слово31']; var string = ''; string += words[parseInt(Math.random() * 30)]; string;


В чём ошибка? Выдаёт все слова, а не выбирает одно из них. Раньше все работало нормально.
Версия 8.9.7

nikki67
Как я понимаю, речь идет о js-коде, выполненном в контексте eval(), приведите код всей строки, а не только js-код из нее
Какая версия ff?

27-04-2017 08:26:11
genstrijen
Читайте FAQ по данной функции, примеры использования, можно найти на форуме через поиск, по имени функции

27-04-2017 08:30:05
Информации из данных мной выше 2 ссылок, вполне достаточно, чтобы составить необходимое вам условие.
Если вам этого мало, читайте, что такое циклы и как они работают, так как то, что вы называете бесконечным циклом, в вашем коде им не является.

Если же лень читать, в мини-FAQ раздела iMacros есть видео уроки.

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] );

nikki67
в итоге, сейчас, у вас работает?

Подскажите, а как мне прописать чтобы с одного шага из EXTRACT записывало в одну строку, а то у меня пишет с каждой строки, но только из последнего сохраненного EXTRACT

скрытый текст

Выделить код

Код:

function appendExt(filename,cont){imns.FIO.appendTextFile(imns.FIO.openNode(filename),cont)}

for (i=1; i<=10; i++) {
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF')+'\n';
            iimPlayCode('TAG POS='+i+' TYPE=DIV ATTR=CLASS:bm<SP>bn EXTRACT=TXT')+'\n';
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=TXT')+'\n';
            var cont=iimGetLastExtract();
            appendExt('C:\\BOTS\\iMacros\\Datasources\\FBGroupsForPost.txt',cont)}

paramount

скрытый текст

Выделить код

Код:

function appendExt(filename,cont){imns.FIO.appendTextFile(imns.FIO.openNode(filename),cont)}

for (i=1; i<=10; i++) {
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF'+'\n'+'TAG POS='+i+' TYPE=DIV ATTR=CLASS:bm<SP>bn EXTRACT=TXT'+'\n'+'TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=TXT');
            var cont=iimGetLastExtract();
            appendExt('C:\\BOTS\\iMacros\\Datasources\\FBGroupsForPost.txt',cont)}

скрытый текст

Выделить код

Код:

function appendExt(filename,cont){imns.FIO.appendTextFile(imns.FIO.openNode(filename),cont)}

for (i=1; i<=10; i++) {
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF'+'\n'+'TAG POS='+i+' TYPE=DIV ATTR=CLASS:bm<SP>bn EXTRACT=TXT'+'\n'+'TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=TXT');
            var cont=iimGetLastExtract();
            appendExt('C:\\BOTS\\iMacros\\Datasources\\FBGroupsForPost.txt',cont)}


Теперь вообще ни чего не сохраняет. Хм.

paramount

скрытый текст

Выделить код

Код:

alert(iimGetLastExtract());


проверяйте извлечены ли данные

InfSub
удалено, избыточное цитирование

Да, извлекает, но только из

скрытый текст

Выделить код

Код:

'TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF'


код публикуется в тегах code внутри спойлера


InfSub

paramount
как вариант:

скрытый текст

Выделить код

Код:

unction appendExt(filename,cont){imns.FIO.appendTextFile(imns.FIO.openNode(filename),cont)}
var cont='';
for (i=1; i<=10; i++) {
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF')+'\n';
            cont+=iimGetLastExtract()+' ';
            iimPlayCode('TAG POS='+i+' TYPE=DIV ATTR=CLASS:bm<SP>bn EXTRACT=TXT')+'\n';
            cont+=iimGetLastExtract()+' ';
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=TXT')+'\n';
            cont+=iimGetLastExtract();
            appendExt('C:\\BOTS\\iMacros\\Datasources\\FBGroupsForPost.txt',cont)}

Хотя нет. При этом варианте alert(iimGetLastExtract()); выводит из всех EXTRACT в строку, но только за один шаг и не сохраняет.

скрытый текст

Выделить код

Код:

function appendExt(filename,cont){imns.FIO.appendTextFile(imns.FIO.openNode(filename),cont)}

for (i=1; i<=10; i++) {
            iimPlayCode('TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF'+'\n'+'TAG POS='+i+' TYPE=DIV ATTR=CLASS:bm<SP>bn EXTRACT=TXT'+'\n'+'TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=TXT');
            var cont=iimGetLastExtract();
            appendExt('C:\\BOTS\\iMacros\\Datasources\\FBGroupsForPost.txt',cont)}


При этом  варианте сохраняло все как надо.

скрытый текст

Выделить код

Код:

for (i=1; i<=10; i++) {
        var groups; groups = 'CODE:';
            groups += 'TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=HREF\n';
            groups += 'TAG POS='+i+' TYPE=DIV ATTR=CLASS:bm<SP>bn EXTRACT=TXT\n';
            groups += 'TAG POS='+i+' TYPE=A ATTR=HREF:/groups/*?refid=46&sld=* EXTRACT=TXT\n';
            groups += 'SAVEAS TYPE=EXTRACT FOLDER=C:\\BOTS\\iMacros\\Datasources FILE=FBGroupsForPost.txt';
    iimPlay(groups);


код публикуется в тегах code внутри спойлера


InfSub

Здравствуйте! как можно сравнить извлеченный  текст на сходство. ( JS IMACROS)
Извлекаю ссылку, заношу ее в переменную,
далее команды, далее опять извлекаю заношу в новую переменную,
затем  нужно проверить  на сходство
если извлеченный текст схож c первой извлеченной ссылкой то ...команды
Заранее сп._)

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=A ATTR=CLASS:"open_offer" EXTRACT=HREF'); 
var extractedtext=iimGetLastExtract(1)
команды...
iimPlayCode('TAG POS=1 TYPE=A ATTR=CLASS:"open_offer" EXTRACT=HREF');
var extract=iimGetLastExtract(1)
if (проверка )  {}


перечитать, что вы запостили и поправить,
было так сложно? Тег code размещается внутри спойлера, а не на оборот


InfSub

скрытый текст

Выделить код

Код:

iimPlayCode('TAG POS=1 TYPE=A ATTR=CLASS:"+open_offer+" EXTRACT=HREF'); 
var extractedtext=iimGetExtract();
команды...
iimPlayCode('TAG POS=1 TYPE=A ATTR=CLASS:"+open_offer+" EXTRACT=HREF');
var extract=iimGetExtract();
if (extractedtext === extract)  {}

Тема закрыта.

Продолжение темы (часть 2).