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

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

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

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

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

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

или в Редакторе заданий (Task Editor): опция уникальность результатов по строке в Редакторе заданий

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

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

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

примечание

Переключатель Глобально (Global) используется когда выбрано 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 - одинаковые ссылки)

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

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

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

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

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

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

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

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