Парсинг акционных цен (возможность задавать для границы парсинга два критерия)

Тема в разделе "Решение различных задач по парсингу", создана пользователем rezhisser, 13 дек 2014.

  1. rezhisser

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

    Регистрация:
    12 дек 2014
    Сообщения:
    22
    Доброго вечера!

    Есть такая задача:

    В списке парсинга есть товары с акционными ценами

    Если в товаре нет акционной цены, то код выглядит так

    HTML:
    <span class="text-price">Цена:</span>
                    250грн.                                      </div>
    Если в товаре есть акционная цена, то код выглядит так

    HTML:
      <span class="text-price">Цена:</span>
                    <span class="price-new">220грн.</span><span class="price-old">250грн.</span> 
                                          </div>
    Это все легко парсится в три колонки(цена обычная, цена обычная в акционном товаре, акционная цена)

    Но хотелось бы распарсить в две колонки (цена обычная, цена акционная)

    Может есть возможность задавать правила типа - если не нашел данные по одному критерию, то искать по второму.

    Т.е. возможность задавать для границы парсинга два критерия

    Или может можно по другому решить эту задачу?

    Примеры ссылок:

    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     
  2. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Ctrl+4 -> "если граница парсинга окажется пустой..." (в это поле вставлять макросы других границ парсинга: <CD_GRAN_1!> или <CD_GRAN_2!> или что вам нужно).

    Думаю, разберетесь, что и как (все логично). Если нет - спрашивайте, распишу.

    С уважением к вам, Сергей...
     
  3. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.442
    Адрес:
    Latvia
    как вариант цепляете каждую цену разной границей, в итоге у вас 3 границы.
    где надо вывести одну там просто граница, это понятно.
    а где надо вывести цену так если она есть, но в отсутствии вывести другую - значит используйте макрос [IFNIL2]<CD_GRAN_11!>[ELSE]<CD_GRAN_12!>[/IFNIL2]
     
  4. rezhisser

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

    Регистрация:
    12 дек 2014
    Сообщения:
    22
    Спасибо!

    Замечательная программа, замечательная!)
     

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