Перейти к основному содержимому

Уникализация результатов

Уникализация, дедупликация, удаление дублей, удаление повторов - все это подразумевает что нам не нужны повторяющиеся результаты. В A-Parser есть 2 метода уникализации, разберем подробно каждый.

Уникализация результатов по строке

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

подсказка

Включить уникальность по строке можно в Быстром задании:

Опция уникальность результатов по строке в Быстром задании

Или в Редакторе заданий:

Опция Уник по строке в Редакторе заданий

Уникализация по любому результату

Уникализация по любому результату позволяет делать уникализацию непосредственно на выбранном результате от конкретного парсера. Добавить данный тип уникализации можно в Редакторе заданий, кликнув на иконку с инструментом справа от парсера и нажав Добавить уникализацию:

Опция Добавить уникализацию в Редакторе заданий

Теперь можно выбрать на каком результате делать уникализацию и тип уникализации:

Тип уникализации в Редакторе заданий
примечание

Переключатель Глобально используется когда выбрано 2 или более парсера, она определяет делать общую уникализацию или по каждому парсеру отдельно.

Типы уникализации

ПараметрОписание
СтрокаУникализация по строке (сравнивается целиком вся строка результата)
ДоменУникализация по домену (сравнивается целиком домен, например www.domain.com и domain.com это разные домены)
Домен верхнего уровняУникализация по главному домену с учетом региональных, коммерческих, образовательных и прочих доменов (например domain.co.uk и domain2.co.uk это разные домены, а sub1.domain.com и sub2.domain.com - одинаковые)
Домен 2го уровняУникализация по домену 2ого уровня (сравниваются домены второго уровня, например www.domain.com, domain.com и user.subdomain.domain.com это все один домен)
ПутьУникализация по пути (сравниваются части ссылки до файла, например http://domain.com/path1/file.php и http://domain.com/path1/file2.php - одинаковые части ссылки до файла)
Без параметровУникализация по ссылке без параметров (сравниваются ссылки без параметров, например http://domain.com/file.php?page=1 и http://domain.com/file.php?page=2 - одинаковые ссылки)

Уникализация запросов

Уникализация запросов отправляет непосредственно на парсинг только уникальные запросы, ранее не отпаршенные в текущем задании. Основные варианты использования:

  • Если в исходных запросах есть дубликаты и их нежелательно парсить (двойная работа)
  • При использовании опции Парсить до уровня необходимо использование только уникальных запросов чтобы предотвратить разрастание и зацикливание запросов (например при использовании парсера HTML::LinkExtractorHTML::LinkExtractor)
примечание

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

Сохранение уникализации между заданиями

Существует возможность сохранять базу уникализации, для использования в будущих заданиях, что позволяет в новых заданиях сохранять только новые уникальные результаты (например ссылки при парсинге серпа в SE::GoogleSE::Google)

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

Тип уникализации в Редакторе заданий

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