Парсинг с помощью нейросетей: применять или нет?

Создание парсера — достаточно частая задача для разработки. Парсеры нужны бизнесу, чтобы собирать различные данные из открытых источников. Например, для отслеживания маркетинговых стратегий конкурентов: акций, цен, продуктов/услуг. С помощью парсера сбор данных происходит автоматически. Не нужно вручную отслеживать изменения или обрабатывать большие объемы информации, а, значит, не нужно тратить время и силы сотрудников на рутинный труд.

Пример

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

  • цены;
  • ассортимент;
  • состав товаров;
  • их тип, названия и вес.

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


С помощью нейросетей собирать и структурировать нужные данные будет быстрее? Или лучше использовать классический «программный» парсинг? Разберем оба варианта.

Парсинг 5-ти сайтов без использования искусственного интеллекта

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

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

Как можно использовать искусственный интеллект в этом случае

  1. Дать нейросети задание писать/редактировать классические парсеры при добавлении нового сайта в базу по конкурентам. Плюсы: нашли еще одного конкурента – отправили задачу нейросети, и она самостоятельно выполняет нужные действия. Не надо тратить время разработчика на создание парсера под каждый найденный сайт. Минусы: вариант невыгоден при небольшом количестве сайтов, с которых отслеживается информация. На корректировку работы нейросети таким образом, чтобы с каждым новым сайтом получать нужный результат, потребуется значительное время. И при небольшом количестве сайтов такая настройка действий искусственного интеллекта, скорее всего, не окупится.
  2. Использовать нейросеть как парсер – научить ее находить нужную информацию. ИИ может извлечь из текста данные, которые не получится отследить с помощью строго зафиксированных запросов. Он проанализирует упоминания, тексты с общим смыслом и т.п., даже если эта информация не тегирована.

Вывод: что и когда стоит использовать

Лучше обратиться к нейросетям, если:

— нужно анализировать большое количество исходников (десятки, сотни, тысячи);

— невозможно написать парсер, т.к. информация для сбора не структурирована в блоки или таблицы (например, отзывы, комментарии, посты в соцсетях);

— нет/недостаточно «тегированных» данных (прямых упоминаний, понятий, которые можно найти по тегам, ключам), но есть косвенные;

— есть возможность систематически корректировать и проверять систему для получения нужного результата.

Стоит использовать классический парсер без участия нейросетей, если:


— есть небольшое количество тегированных и хорошо структурированных исходников для анализа (создать ии-парсер затратнее, чем сделать шаблонную программу);

— при анализе нужно принимать во внимание дополнительные данные, которые часто меняются. Учесть их в постановке задач для ИИ, не обладая неограниченными ресурсами, будет сложно.


PS: нейросеть можно сравнить с junior специалистом. Если разработчик способен написать инструкцию, по которой начинающий работник будет качественно выполнять задание – значит, для ИИ это тоже реально сделать. Особенно оправданно настраивать такого junior специалиста на работу и нужный результат, если планируются внушительные объемы заданий.

Если же в процессе решения нужно учитывать много моментов или периодически/непериодически условия в задаче меняются, а времени на настройку работы нейросети немного – лучше использовать классические подходы.

(По мотивам беседы на YouTube)

Обсудить разработку парсера или другую задачу разработки:

Начать дискуссию