Shop::Wildberries::ProductsList: парсер списка товаров Wildberries | Документация | A-Parser - парсер для SEO, маркетинга, разработчиков и SaaS
Перейти к основному содержимому

Shop::Wildberries::ProductsList: парсер списка товаров Wildberries

img

Обзор парсера товаров Shop::Wildberries::ProductsList

Используя парсер товаров Wildberries, вы можете получать данные о товарах из результатов поиска по ключевому слову или из списка товаров конкретной категории или бренда. С его помощью можно собрать базу ссылок на товары, отслеживать динамику цен на товар, изменения количества отзывов или рейтинга, собрать картинки товаров или информацию о доступных цветах и размерах. Также отдельно собирается список рекламных обьявлений с указанием позиции каждого в органической выдаче. Парсер предоставляет возможность задавать сортировку результатов и указывать пункт выдачи.

Функционал A-Parser позволяет сохранять настройки парсинга для дальнейшего использования (пресеты), задавать расписание парсинга и многое другое. Вы можете использовать автоматическое размножение запросов, подстановку подзапросов из файлов, перебор цифро-буквенных комбинаций и списков для получения максимально возможного количества результатов.

Собираемые данные

img

  • Количество товаров
  • Название товара
  • Ссылка на товар
  • Картинка товара
  • Бренд
  • Цена и старая цена
  • Рейтинг и число отзывов
  • Размеры и/или цвета
  • Для рекламных обьявлений - позиция в списке товаров
  • Список ключей из "Еще ищут" и "Возможно вам понравится"

Варианты использования

  • Сбор ссылок на товары
  • Оценка популярности товаров
  • Отслеживание динамики цен и популярности товаров
  • Сбор массива изображений товаров
  • Определение позиций рекламных обьявлений

Примеры запросов

В качестве запросов можно использовать:

  • ссылки на список товаров бренда, например:
https://www.wildberries.ru/brands/kristiano-fashion
https://www.wildberries.ru/brands/s-a-s
  • ссылки на список товаров в категории, например:
https://www.wildberries.ru/catalog/elektronika/razvlecheniya-i-gadzhety/igrovye-konsoli/playstation
https://www.wildberries.ru/catalog/avtotovary/shiny-i-diski/shiny
  • ключевые слова, точно так же, как если бы вы их вводили прямо в форму поиска Wildberries, например:
xiaomi mi10
футболки и майки
магнитола

Подстановки запросов

При использовании в качестве запросов ключевых слов можно использовать встроенные макросы для разможения запросов, например если требуется получить больше результатов, чем предоставляет обычная поисковая выдача.

Например, для вышеперечисленных ключевых слов в формате запроса укажем перебор символов от a до zzzz, данный метод позволяет максимально ротировать поисковую выдачу и получать множество новых уникальных результатов:

$query {az:a:zzzz}

Данный макрос создаст 475254 дополнительных запросов на каждый исходный поисковый запрос, что в сумме даст 4 х 475254 = 1901016 поисковых запроса, цифра впечатляющая, но это совсем не проблема для A-Parser'а.

Варианты вывода результата

Вывод в csv

Вы можете использовать Шаблнизатор Template-Toolkit для вывода результата в csv, например мы можем записать в файл csv такие колонки: Сссылка на товар, Название товара, Цена, Старая цена, Рейтинг, Кол-во отзывов

Формат результата:

[% FOREACH item IN items; 
tools.CSVline(item.link, item.name, item.price, item.oldPrice, item.rating, item.reviews);
END %]

Приимер результата:

https://www.wildberries.ru/catalog/54067214/detail.aspx,"Шапка бини женская",703,1900,5,6
https://www.wildberries.ru/catalog/41415461/detail.aspx,"Шапка бини женская / бини с отворотом / Бини (beanie)",1487,1750,5,346
https://www.wildberries.ru/catalog/16782596/detail.aspx,"Шапка бини женская / бини с отворотом / Бини (beanie)",1487,1750,5,346
https://www.wildberries.ru/catalog/9468600/detail.aspx,"Шапка с шарфом / с перчатками / бини женская",2700,4500,5,137
https://www.wildberries.ru/catalog/4750212/detail.aspx,"Берет",765,1075,5,349
https://www.wildberries.ru/catalog/9793364/detail.aspx,"Берет с шарфом",3297,4710,5,307

Вывод бренда, названия и цены

Формат результата:

$items.format('$brand, $name, $price\n')

Пример результата:

Xiaomi, Смартфон Poco X3 Pro / 6.67'' / 2400x1080 / IPS / 8 ГБ / 256 ГБ / 5160 мА*ч, 23751
Realme, Смартфон realme 8 / 6.4'' / 2400x1080 / Super AMOLED / 6 ГБ / 128 ГБ / 5000 mAh, 19911
Apple, Смартфон iPhone 11 128GB / 6.1'' / 1792x828 / Liquid Retina HD / 128 ГБ, 54990
Apple, Смартфон iPhone 12 128GB / 6.1'' / 2532x1170 / OLED / 128 ГБ, 69990
Samsung, Смартфон Galaxy A32 / 6.4'' / 2400x1080 / Super AMOLED / 4 ГБ / 128 ГБ / 5000 мАч, 19791

Вывод c названиями переменных

Формат результата:

$items.format('Бренд: $brand, Название: $name, Цена: $price\n')

Пример результата:

Бренд: Samsung, Название: Смартфон Galaxy A32 / 6.4'' / 2400x1080 / Super AMOLED / 4 ГБ / 128 ГБ / 5000 мАч, Цена: 19791
Бренд: Realme, Название: Смартфон realme 8 / 6.4'' / 2400x1080 / Super AMOLED / 6 ГБ / 128 ГБ / 5000 mAh, Цена: 19911
Бренд: Honor, Название: Смартфон Honor 50 / 6.57'' / 2340x1080 / OLED / 6 ГБ / 128 ГБ / 4300 мА*ч, Цена: 31490
Бренд: Apple, Название: Смартфон iPhone 13 256GB / 6.1'' / 2532x1170 / OLED / 256 ГБ, Цена: 89990
Бренд: Xiaomi, Название: Смартфон 6.53'' / 1600x720 / 2 ГБ / 32 ГБ / 5000 мА*ч, Цена: 8990

Вывод c новой переменной

Выведем результат, с переменной discount, которая покажет процент скидки на товар

Формат результата:

[% USE Math;
FOREACH item IN p1.items;
discount = item.oldPrice ? (item.oldPrice - item.price) / item.oldPrice * 100 : 0;
tools.CSVline(item.name, item.price, Math.int(discount + 0.5) _ '%');
END %]

Пример результата:

"Смартфон Poco X3 Pro / 6.67'' / 2400x1080 / IPS / 8 ГБ / 256 ГБ / 5160 мА*ч",23751,12%
"Смартфон realme 8 / 6.4'' / 2400x1080 / Super AMOLED / 6 ГБ / 128 ГБ / 5000 mAh",19911,17%
"Смартфон iPhone 12 128GB / 6.1'' / 2532x1170 / OLED / 128 ГБ",69990,0%
"Смартфон Galaxy A32 / 6.4'' / 2400x1080 / Super AMOLED / 4 ГБ / 128 ГБ / 5000 мАч",19791,10%
"Смартфон galaxy a52 / 6.5'' / 1080x2400 / Super AMOLED / 8 ГБ / 256 ГБ / 4500 мА*ч",28691,18%

Сохранение в формате дампа SQL

Формат результата:

[% FOREACH item IN p1.items;
"INSERT INTO products VALUES('" _ item.name _ "', '"; item.link _ "', '"; item.price _ "', '"; item.brand _ "')\n";
END %]

Пример результата:

INSERT INTO products VALUES('Смартфон 6.53'' / 1600x720 / 2 ГБ / 32 ГБ / 5000 мА*ч', 'https://www.wildberries.ru/catalog/13615125/detail.aspx', '8990', 'Xiaomi')
INSERT INTO products VALUES('Смартфон galaxy a52 / 6.5'' / 1080x2400 / Super AMOLED / 4 ГБ / 128 ГБ / 4500 мА*ч', 'https://www.wildberries.ru/catalog/23155682/detail.aspx', '24291', 'Samsung')
INSERT INTO products VALUES('Смартфон 6.53'' / 1600x720 / 2 ГБ / 32 ГБ / 5000 мА*ч', 'https://www.wildberries.ru/catalog/13615126/detail.aspx', '8990', 'Xiaomi')

Дамп результатов в JSON

Формат результата:

[% data = {};
data.query = query;
data.items = [];
FOREACH item IN p1.items;
data.items.push({
link = item.link
name = item.name
price = item.price
});
END;
data.json %]
{
"query": "смартфон",
"items": [
{
"link": "https://www.wildberries.ru/catalog/27379808/detail.aspx",
"name": "Смартфон realme 8 / 6.4'' / 2400x1080 / Super AMOLED / 6 ГБ / 128 ГБ / 5000 mAh",
"price": 19911
},
{
"link": "https://www.wildberries.ru/catalog/16023994/detail.aspx",
"name": "Смартфон iPhone 11 128GB / 6.1'' / 1792x828 / Liquid Retina HD / 128 ГБ",
"price": 54990
},
{
"link": "https://www.wildberries.ru/catalog/15875669/detail.aspx",
"name": "Смартфон iPhone 12 128GB / 6.1'' / 2532x1170 / OLED / 128 ГБ",
"price": 69990
},
...
]
}

Вывод результата с датой парсинга

Выведем результат с проставлением дат парсинга

Формат результата:

[% USE d = date(format = '%Y %m %d %H:%M', locale = 'C');
FOREACH item IN p1.items;
tools.CSVline(d.format(), item.name, item.price, item.link);
END %]

Пример результата:

"2022 01 26 10:15","Смартфон 6.53'' / 1600x720 / 2 ГБ / 32 ГБ / 5000 мА*ч",8990,https://www.wildberries.ru/catalog/13615126/detail.aspx
"2022 01 26 10:15","Смартфон iPhone 13 128GB / 6.1'' / 2532x1170 / OLED / 128 ГБ",74390,https://www.wildberries.ru/catalog/40640907/detail.aspx
"2022 01 26 10:15","Смартфон Galaxy S21 256GB / 6.2'' / Dynamic AMOLED / 8 ГБ / 256 ГБ / 4000 мА*ч",64791,https://www.wildberries.ru/catalog/18592983/detail.aspx
"2022 01 26 10:15","Смартфон Galaxy M22 / 6.4'' / 720x1600 / Super AMOLED / 4 ГБ / 128 ГБ / 5000 мAh",17280,https://www.wildberries.ru/catalog/41501725/detail.aspx

Возможные настройки

ПараметрЗначение по умолчаниюОписание
Pages count5Количество страниц для парсинга
Sort byPopularityСортировка результатов
Address-Адрес пункта выдачи
Longitude-Долгота пункта выдачи
Latitude-Широта пункта выдачи
info

По-умолчанию Wildberries отображает результаты для Москвы. В парсере есть возможность задать пункт выдачи и список результатов будет привязан к конкретной локации. Чтобы это сделать, нужно переопределить 3 параметра: Address, Longitude и Latitude. Получить необходимые значения для этих параметров можно в браузере:

1. Выбираем нужный пункт выдачи, предварительно открыв Инструменты разработчика (в Chrome клавиша F12)

img

2. В Инструментах разработчика на вкладке Сеть ищем запрос saveprefereduserloc и в теле запроса видим нужные данные

img

3. Копируем их в точности в настройки парсера

img