1. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 2600+ и мы растем!
    Скрыть объявление

Улучшение Добавить условие остановки прохождения по пагинации

Тема в разделе "Отклоненные задачи", создана пользователем Reset, 2 май 2022.

  1. Reset

    Reset A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    28 фев 2019
    Сообщения:
    30
    Симпатии:
    42
    Второй или третий раз столкнулся с невозможностью остановки парсинга при прохождени по пагинации

    Пример https://www.baumer.com/de/en/produc.../products?q=:productPriority&more=true&page=0

    если страница не существует то отдается просто пустая страница

    Задача - пройти по пагинации и остановится, когда будет встречена пустая страница (то есть отсутствует какой то признак на странице, но при этом она успешно загружена)

    При этом
    1. Страница не содержит в себе ссылку на следующую страницу, поэтому Check Next Page не работает
    2. Если использовать Check Regex, то как только доходим до пустой страницы, парсер начинает пытаться загрузить ее снова, что в принципе решает задачу, но при больших попытках (а у меня стоит минимум 10 так как сайт под клаудом и может забанить) это тормозит процесс, ну и еще в неуспешные все упадет.

    Итого - можно ли добавить маркер аналогичный Check Next Page, (или даже галочку в него) просто увеличивал на 1 счетчик $pagenum при успешно загруженной странице.

    Пресет https://pastebin.com/Kte41MpP
     
  2. Support

    Support Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    16 мар 2012
    Сообщения:
    4.575
    Симпатии:
    2.172
    Такая задача решается сочетанием функций Use pages и Check next page:
    [​IMG]

    Также в каталоге есть схожий пример: https://a-parser.com/threads/1762/#post-5354

    P.S. В некоторых случаях это могло не работать из-за бага, но с версии 1.2.1497 он исправлен: https://a-parser.com/threads/7442/
     

Поделиться этой страницей