Парсеры и Скрейперы

Обход списка по номеру страницы почти всегда даёт неполный результат, и обнаруживается это поздно.

Обход списка по номеру страницы почти всегда даёт неполный результат, и обнаруживается это поздно.

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

Что помогает:

— обход по устойчивому ключу вместо смещения: «дай следующие после этого идентификатора»;
— сортировка по неизменяемому полю, а не по популярности или дате обновления;
— обход от старых записей к новым, если источник это позволяет;
— сохранение позиции, чтобы прерванный сбор продолжался, а не начинался заново;
— контрольная сверка: общее число записей до начала и после конца обхода.

Отдельная ловушка — ограничение глубины. Многие списки просто не отдают дальше определённой страницы. Обход упирается в стену, а внешне выглядит успешно завершённым. Спасает разбиение выборки фильтрами на несколько узких списков.
Этот пост опубликован в Telegram-канале Парсеры и Скрейперы. Подписаться можно по ссылке: @parsers_mkt_n1k_n1k.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.