Надстройка «Парсер сайтов» позволяет использовать переменные для временного сохранения значений, с целью использования этих значений в других настройках / действиях программы.
Переменная имеет имя и значение. Указывая имя переменной, мы можем записать в неё произвольное значение, либо считать ранее сохранённое значение.
Использование переменных сильно упрощает настройку сложных парсеров, позволяя более гибко манипулировать данными при обработке.
Область видимости переменных
Доступны 2 варианта: parser (применимы в любом разделе настроек / в любом действии парсера), и row (применимы только внутри одной выводимой / обрабатываемой строки)
Область видимости row практически не используется, оставлена в целях совместимости с прежними версиями
(всегда используйте только облась видимости parser, если есть возможность выбора)
Время жизни переменных (с момента записи значения в переменную)
для переменных уровня row - с момента начала вывода строки на лист, до перехода к выводу другой строки
для переменных уровня parser - до завершения работы парсера
Требования к имени переменной
Имя переменной не должно содержать в имени следующие символы:
- * (звёздочка)
- % (процент)
- ? (знак вопроса)
- # (решётка)
- ! (восклицательный знак)
Любые другие символы использовать можно (русские и английские буквы, пробелы, и вообще что угодно)
Подстановочные символы (*, ?, #) могут использоваться в действии «Очистить значение переменной» для очистки сразу нескольких переменных, поэтому для переменных, содержащих эти символы в названии, очистка переменных работать не будет (в остальном - проблем нет, т.е. эти символы использовать можно, просто нежелательно)
Символ % используется для обращения к переменной из параметров действий (запись вида %VarName%), поэтому его использование в имени переменной недопустимо.
Символ ! (восклицательный знак), начиная с версии программы 3.7.0 (май 2020 года), используется для переменных-словарей, когда в одной переменной сохранено несколько именованных значений (переменная имеет не текстовый тип, как «обычные» переменные, а тип Dictionary)
Доступ к переменным
Сохранение данных в переменные производится 4 способами:
- специальным действием Сохранить текущее значение в переменную
- указанием имени переменной в специальном параметре некоторых действий (например, таких как Задать новое значение, Поиск тегов, и др.)
- автоматическое сохранение парсером значений в специализированные переменные
- прописыванием значений переменных до запуска парсера в файле parser.ini
Обращение к переменным в настройках производится 2 способами:
- специальным действием Считать значение переменной
- указанием имени переменной в любом параметре любых действий, в виде %ИмяПеременной%
(добавляем символы % до и после названия переменной, чтобы программа поняла, что этот текст надо заменить значением переменной)
Типы переменных
По умолчанию, все переменные имеют общий / текстовый тип.
В такую переменную сохраняются любые данные, используемые парсеров (текст, HTML, числа, массивы значений).
Что записали в переменную, то потом из неё и считали.
Начиная с версии программы 3.7.0 (май 2020 года), поддерживается новый тип переменных: переменные-словари (тип Dictionary, - для тех, кто знаком с языком программирования VBA).
Dictionary — это словарь, позволяющий хранить пары вида Название - Значение (именованный массив). Названия (имена элементов внутри словаря) должны быть уникальными, — в словаре не может быть несколько отдельных записей с одинаковым названием.
Названия таких переменных-словарей имеют вид DicName! (название переменной завершается символом !), а обращение к отдельным записям (именованным элементам словаря) производится с использованием синтаксиса DicName!VarName (название переменной-словаря, потом восклицательный знак, потом имя элемента в словаре).
Более подробная инструкция с примерами использования переменных-словарей будет доступна позднее.










