Полезная информация

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

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 09-09-2014 21:09:25

johnsx пишет

Иногда зависает выполнение скриптов (скрипты .js крутятся в разных окнах при помощи циклов с разным временем ожидания WAIT). Связано ли это со стабильностью работы imacros'а или же при они каким-то образом могут нарушать работу друг друга (например, совпадает время при начале отработки очередного цикла)?

это уже обсуждалось.
есть 2 варианта: одновременный запуск нескольких профилей файрфокса или запуск из под нескольких пользователей.
у меня на обычном 2-ядерном процессоре 10 профилей FF одновременно работают постоянно.
зависание случается 1 раз в день или даже в несколько дней и только в одном из 10 профилей.

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 05-09-2014 16:24:27

h4nn1 пишет

Ага а правда цсв не хочет сохранять с процентом перед числом...

тоже интересует данный вопрос, только не знак процента, а двойные кавычки - как правильно сохранять в csv, чтобы из этого: " csv не делал это: ""

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 02-09-2014 16:29:57

совершенно верно! речь шла о том, что уже не работает:

InfSub пишет

тот функционал, что в нем был не работает уже около года, из-за изменений в самом FF

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

вот в js есть такая функция, которая одной строкой создает локальную папку (только папку, без файлов внутри)?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 02-09-2014 16:14:35

для этих целей в библиотеке simple dom (для php) есть несколько удобных и очень простых функций - работает на денвере во всех нормальных браузерах и с локальными файлами и с файлами на web-сервере

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 02-09-2014 14:18:51

InfSub пишет

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

FF не только их прекрасно читает, но за пару секунд и полностью перезаписывает содержимое путем удаления и создания файла заново

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 01-09-2014 14:41:04

Вы спросили, как сделать, чтоб imacros вставлял в форму тег <br> как текст
и получили тег <br> как текст
логично :D
если вы изначально имели ввиду как вставить в форму перенос строки, тогда наверное вам вместо <br> нужно \n (или \\n если в коде потребуется экранировать обратный слэш)

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 01-09-2014 14:13:31

qweqwe1 пишет

Как сделать, чтоб imacros вставлял в форму тег <br> как текст?

попробуйте так (в imacros не проверял, но при создании джаваскриптом xml-прайса точно работает)
гугл может подсказать вам о спецсимволах html:
< это &lt;
> это &gt;

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 28-08-2014 17:07:18

спасибо, STEP работает как нужно.
InfSub, а как вы считаете, если установить SET !TIMEOUT_STEP 0, а при работе скрипта работают еще и другие программы и процессор загружен на 100 или почти 100%
возможно ли такое, что js-скрипт будет не всегда успевать выполнить команду и что-то пропустит из-за того, что таймаут 0
наверное лучше установить SET !TIMEOUT_STEP 1 секунду?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 28-08-2014 16:14:56

подскажите по оптимизации: запускаю один и тот же скрипт по очереди в 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 секунду?

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 18-06-2014 13:50:03

Как добавить комментарий к видео на 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=какой_нибудь_текст

тоже ошибки не выдает, но текст не вставляет.

для проверки делаю так:
[spoiler]TAG POS=1 TYPE

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 18-05-2014 14:05:39

pandabot пишет

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

реализовать это всё на JS с помощью if ... else  и while

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 19:04:07

InfSub
[spoiler]как решить:
макрос кликает по ссылке и в новой вкладке открывается страница, которая содержит в себе 2 фрейма:
FRAME NAME="1" и FRAME NAME="2"
в первом фрейме показывается реклама, во втором фрейме - таймер.
в настройках защиты FF стоит галочка "Предупреждать при попытке веб-сайтов усатновить дополнения".
иногда бывает, что рекламный сайт в первом фрейме хочет сохранить на компьютер свой файл или приложение и на экране появляется окно с предложением сохранить приложение или отказаться и с кнопками ОК и Отмена.
из-за этого iMacros приостанавливается и ждёт пока пользователь нажмёт одну из двух кнопок.

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

как запретить выполнение скриптов только для сайтов в первом фрейме: FRAME NAME="1"
или как з

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 18:20:05

согласен, что запутывание, но ведь yinfo раньше написал, что с iMcaros только знакомится, а в JS соображает :-) вот мне и показалось, что человек быстро разберётся с интеграцией кода iim в JS

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 17:56:25

да, убрал в .iim-файле всё лишнее и заработало.
а применять JS только когда iMacros не справится - это если только примитивный макрос писать из нескольких строк.
велосипед, о котором вы пишете взят из работающего скрипта, который ищет такой кусок в html-коде страницы, который iMacros не определит и из этого куска вырезает всё лишнее. пару страниц назад обсудили этот вопрос с функцией replace.
в JS удобно с циклами работать, а скорость выполнения .js почти не отличается от .iim

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 17:13:09

InfSub
так не работает.
запускаю в макросе ваш код:

TAG POS=1 TYPE=TITLE ATTR=TXT:* EXTRACT=TXT

и проверяю, что сохранилось в EXTRACT:

PROMPT {{!EXTRACT}}

получаю результат

__undefined__

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 14:46:43

вы в 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}}

а в примере, который

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 13:50:05

вместо "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> того сайта, над которым хотите издеваться

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 17-05-2014 01:22:08

как решить:
макрос кликает по ссылке и в новой вкладке открывается страница, которая содержит в себе 2 фрейма:
FRAME NAME="1" и FRAME NAME="2"
в первом фрейме показывается реклама, во втором фрейме - таймер.
в настройках защиты FF стоит галочка "Предупреждать при попытке веб-сайтов усатновить дополнения".
иногда бывает, что рекламный сайт в первом фрейме хочет сохранить на компьютер свой файл или приложение и на экране появляется окно с предложением сохранить приложение или отказаться и с кнопками ОК и Отмена.
из-за этого iMacros приостанавливается и ждёт пока пользователь нажмёт одну из двух кнопок.

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

как запретить выполнение скриптов только для сайтов в первом фрейме: FRAME NAME="1"
или как запретить выполнение jav

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 15-05-2014 15:39:26

yinfo пишет

-p Profile0 -no-remote

и так во всех открытых профилях FF: Profile0, Profile1, Profile2 и т.д., насколько хватит мощности компьютера  :-))

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 15-05-2014 14:01:48

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

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 13-05-2014 19:34:43

Новенький2014 пишет

СтеклоНужно:2Есть:3  -> нужно только название
Что и куда написать, чтобы удалить всё, начиная с Н и вправо

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

Выделить код

Код:

ресурс1 = iimGetLastExtract(1);
ресурс1 = ресурс1.toString().replace(/Нужно(.*)/,'');

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 22-04-2014 01:22:23

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("

iMacros » iMacros for Firefox - общие вопросы, обсуждение возможностей (Часть 1) » 19-04-2014 21:35:04

Здравствуйте.
подскажите, как решить небольшую задачу.
в 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}}


теперь в пере

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]