Есть сайт с каталогом, информацию из которого мне нужно вытащить.

скрытый текст
Выбираю нужный мне перечень ссылок каталога с помощью фильтров сайта:

Выделить код

Код:

URL GOTO=http://site.com/reestr/xxx/?pd_type=1
TAG POS=1 TYPE=SELECT FORM=NAME:NoFormName ATTR=ID:inputAddress CONTENT=%783000
TAG POS=1 TYPE=LABEL FORM=NAME:NoFormName ATTR=TXT:Имеющие<SP>дома<SP>в<SP>управлении
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:searchHcnt CONTENT=YES
TAG POS=2 TYPE=SELECT ATTR=* CONTENT=%all
TAG POS=1 TYPE=BUTTON:SUBMIT FORM=NAME:NoFormName ATTR=TXT:Фильтр

Получаю верхнеуровневый список позиций каталога, по которым необходимо пройтись нажатием кнопки "Выбрать". Т.е. эту процедуру надо зациклить:

Выделить код

Код:

TAG POS=1 TYPE=BUTTON ATTR=TXT:Выбрать

Далее попадаем на еще один уровень каталога, прохождение по ссылкам которого уже бросает нас на страницы с необходимым контентом. Т.е. эту процедуру надо тоже зациклить:

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:*

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

Выделить код

Код:

TAG POS=1 TYPE=A ATTR=TXT:Информация<SP>общая
TAG POS=2 TYPE=DIV ATTR=CLASS:col-md-12 EXTRACT=TXT
TAG POS=1 TYPE=A ATTR=TXT:Подробное<SP>описание
TAG POS=2 TYPE=DIV ATTR=CLASS:col-md-12 EXTRACT=TXT

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

Выделить код

Код:

BACK 
BACK

Каким-то макаром повторить описанные шаги неопределенное кол-во раз...
Ну, и сохранить результаты

Выделить код

Код:

SAVEAS TYPE=EXTRACT FOLDER=* FILE=Extract_{{!NOW:ddmmyy_hhnnss}}.csv


Проблема в том, что у меня не получается сделать циклический парсинг, чтобы аймакрос прошелся по каждой категории, каждой подкатегории, и собрал нужную мне информацию. Пытался сделать через {{!LOOP}}, но указание данной команды дважды для разных строк скрипта приводит к неправильному для меня результату.
Подскажите нубу, пожалуйста.

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

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

Выделить код

Код:

VERSION BUILD=10.4.28.1074
SET !ERRORIGNORE YES
SET !EXTRACT_TEST_POPUP NO
URL GOTO=http://site.com/reestr/xx/?pd_type=1
TAG POS=1 TYPE=SELECT FORM=NAME:NoFormName ATTR=ID:inputAddress CONTENT=%783000
TAG POS=1 TYPE=LABEL FORM=NAME:NoFormName ATTR=TXT:J<SP>дома<SP>в<SP>управлении
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:NoFormName ATTR=NAME:searchHcnt CONTENT=YES
TAG POS=2 TYPE=SELECT ATTR=* CONTENT=%all
TAG POS=1 TYPE=BUTTON:SUBMIT FORM=NAME:NoFormName ATTR=TXT:Фильтр
WAIT SECONDS=3
TAG POS={{!LOOP}} TYPE=BUTTON ATTR=TXT:Выбрать
WAIT SECONDS=3
TAG POS={{!LOOP}} TYPE=A ATTR=TXT:Химки<SP>г,<SP>*
TAG POS=1 TYPE=A ATTR=TXT:Общая<SP>информация
TAG POS=2 TYPE=DIV ATTR=CLASS:col-md-12 EXTRACT=TXT
TAG POS=1 TYPE=A ATTR=TXT:Подробное<SP>описание
TAG POS=2 TYPE=DIV ATTR=CLASS:col-md-12 EXTRACT=TXT
BACK
BACK
BACK
BACK
SAVEAS TYPE=EXTRACT FOLDER=* FILE=result.txt


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

Andrey_Ulrich пишет

Пытался сделать через {{!LOOP}}, но указание данной команды дважды для разных строк скрипта приводит к неправильному для меня результату.

{{!LOOP}} всегда равно номеру цикла - т.е. тому номеру в который раз у вас повторяется скрипт (видно слева в окне имакроса)

Andrey_Ulrich пишет

VERSION BUILD=10.4.28.1074

скачайте версию 8.9.7 самая стабильная и нормальная версия
циклы делаются за счет js в 10 версии его нет
в FAQ есть ссылки на видео, смотрите - там основы расписаны достаточно подробно, в том числе и работа с js