Добавить сортировку из Я.Маркета. [PARAM] анализ значений.

Тема в разделе "Решение различных задач по парсингу", создана пользователем subliman, 24 май 2017.

  1. subliman

    subliman New Member Пользователи

    Регистрация:
    6 май 2017
    Сообщения:
    13
    Город:
    ст-ца Калининская
    Приветствую, друзья )

    При парсинге моделей с Яндекс.Маркета появилась необходимость присвоить для каждой модели параметр «Сортировка». Дело в том, что когда мы открываем страницу категории товаров, на ней все модели отображаются в порядке сортировки «по популярности». Задача состоит в том, чтобы спарсить модели в нескольких вариантах сортировки, например, «по популярности» и «по новизне». В итоге, должен получиться список, в котором каждой модели будет присвоено значение сортировки. Модели в данном списке могут повторяться – это не принципиально. Важно именно присвоить параметр сортировки.

    Рассмотрим задачу на конкретном примере. У нас есть категория «Мобильные телефоны» с сортировкой «по популярности»:

    Ссылки недоступны для гостей

    И ссылка на эту же категорию, но уже с сортировкой «по новизне»:

    Ссылки недоступны для гостей

    Их отличие лишь в том, что для сортировки «по новизне» в конец ссылки добавляется параметр:

    how=ddate

    Ссылки отличаются и, надеюсь, этим можно будет успешно воспользоваться в дальнейшем )

    Парсинг каждой модели начинается со страницы ее подробных характеристик, например:

    Ссылки недоступны для гостей

    Подобные ссылки парсятся с помощью модуля «Сканер сайтов (сбор ссылок с сайта)» из исходных списков моделей, отсортированных «по популярности» и «по новизне» (примеры выше). Подходим к самому главному ) Все дело в том, что получив ссылки на модели мы отвязываемся от их источника, и порядок сортировки становится неизвестным. Теперь мы работаем непосредственно с карточкой товара, в которой о том, как этот товар был отсортирован, нет ни слова.

    Возникла идея, во время парсинга ссылок на модели, добавлять через [PARAM] источник, ведь источники отличаются, это мы уже выяснили. В итоге имеем ссылку вида:

    Ссылки недоступны для гостей

    Собственно, вопрос заключается в том, каким образом выделить отличие в ссылках-источниках, переданных через [PARAM], и на основании этого присвоить каждой модели значение параметра сортировки?

    Другими словами, имеем две ссылки на карточки моделей, ссылки содержат в [PARAM] источник:

    Ссылки недоступны для гостей

    Ссылки недоступны для гостей

    В первом случае модель отсортирована «по новизне», во втором «по популярности», отличие заключается в наличии в первом источнике «how=ddate». Как можно проанализировать источник и присвоить модели нужное значение?

    Возможно есть и другие варианты решения ) Буду рад новым идеям ) Спасибо!
     
  2. subliman

    subliman New Member Пользователи

    Регистрация:
    6 май 2017
    Сообщения:
    13
    Город:
    ст-ца Калининская
    Разобрался. Передаем [PARAM] в документ, дальше через [REPLACE] :)
     
    Root нравится это.

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