mail mail
Нужен макрос для Excel?
Сделайте заказ прямо сейчас!
Ищете готовое решение?
Выбирайте и покупайте!
У вас есть интернет-магазин?
Настроим парсер под любой сайт!
Статья является инструкцией по надстройке Parser

Действие парсера «Взять цену товара v.2»

Действие "Взять цену товара v.2" (далее Действие) выполняет поиск стоимости товара на веб-странице.

При использовании действия нет никаких гарантий, что цена найдётся, а если найдётся - то правильно. Используйте данное действие на свой страх и риск!

Действие Параметр Значение
Взять цену товара v.2 HTML фильтры  
Удаляемые символы  
Исходное значение   Результат
http://www.mvideo.ru/products/elektricheskii-duhovoi-shkaf-bosch-serie-6-hba23b361r-20037296
 
25990

Исходным значением для Действия может выступать как полный код веб-страницы (или часть HTML-кода страницы), так и URL страницы, как в примере выше (в этом случае Действие сначала загрузит эту страницу).

Действие имеет два параметра:

  1. HTML фильтры. Так как на одной странице могут находиться цены сразу на несколько товаров (рекомендуемые товары, товар дня, просмотренные товары и т.д.), имеется возможность указать нужный тег для поиска цены внутри него.
    Синтаксис: с указанием тега, атрибута и его значения, например: span class=sales или с указанием только атрибута и его значения, например: itemprop=mainprice. Можно использовать несколько фильтров через символ &, например: id=Main&span class=new-price
  2. Удаляемые символы. Можно указать, какие символы нужно удалять перед определением цены (например , или .)

Алгоритм работы Действия:

Первым делом, производится попытка найти на странице тег <meta itemprop="price" content="..."> (однако в таких тегах может содержаться цена с количеством цифр после запятой больше двух, например "150,452783", в этом случае цена будет определена неправильно, и надо искать другой тег принудительно при помощи первого параметра или же пользоваться другими действиями).
Если этот тег не найден, - то ищется <ЛюбойТег itemprop="price">
Если и это не найдено, - ищется <ЛюбойТег class="*price*">

Если в результате работы Действия нужная цифра не найдена возвращается 0.

На некоторых страницах может браться цена до скидки - зачеркнутая цена. Если она выделяется тегами <s> или <strike> или же классом с буквами "old", то такая цена Действием должна игнорироваться. Во всех остальных случаях может быть взята цена до скидки. В этом случае надо до поиска цены удалять такие теги при помощи действия HTML: Поиск тегов с 4 параметром DeleteTags.