Данный парсер применяется для того, чтобы собрать список товаров, или же в случае, когда с сайта нужно собирать только цены и наличие товаров. В этом случае парсеру не нужно заходить в каждую карточку товара, а достаточно собрать информацию из группы, на одной странице которой может отображаться сразу 20 или больше товаров, соответственно скорость сбора информации будет в разы выше. Пример страницы категории, на которой отображаются сразу несколько товаров:
Настройка парсера осуществляется во вкладке Настройки / Категории
Сначала нужно добавить список ссылок на категории, которые будут парситься. Это можно сделать как вручную Настройка групп товаров для парсинга , так и с помощью парсера ссылок на группы Парсер ссылок на группы товаров
Чтобы парсер выполнялся, в настройках парсера должна стоять такая птичка.
Выполняйте тесты, как описано в конце инструкции, чтобы убедиться, что результаты получены парсером правильно, прежде чем запускать парсер.
Настройки парсера
Перейдите во вкладку “Настройки”
1. Нужно указать блок, в котором находится список товаров, для этого указываются теги начала и конца блока
Пример:
Можно указать только “Начало блока товаров”, в этом случае вырезаться блок не будет, а парсер просто перейдет к нужному тегу и начнет парсинг от начала этого тега до конца страницы.
2. Указать блок в котором содержится 1 товар из группы
Будьте внимательны, часто первый товар в группе или последний может быть ограничен разными тегами
Не обязательно чтобы блок точно “вырезал” текст HTML связанный с одним товаром от начала до конца. Достаточно вырезать только ту часть, в которой есть нужная вам информация.
При этом нужно обязательно проверить, чтобы вырезался именно блок товара и эти теги не использовались где-то в другом месте.
Проверять можно путем подсчета количества текста, который вводим в настройку начала блока, на странице. Для этого исходный текст страницы можно вставить в программу Notepad++, открыть там поиск, ввести текст и нажать “Подсчитать”
В моем примере найдено 40 совпадений, при этом на странице отображается 40 товаров, значит все ок. Если бы совпадений было больше или меньше, то нужно было бы разбираться, почему так, и использовать другие теги.
Количество совпадений можно смотреть так же в браузере при поиске - количество найденных должно быть равно количеству товаров на странице, если вы хотите ограничить блок товара.
3. Указать проверку для блока текста страницы, полученного в качестве товара (не обязательно указывать). Бывают случаи, когда в группе на сайте могут в одних и тех же блоках отображаться не только товары, но и какие-нибудь рекламные предложения, в этом случае можно добавить проверку, что в полученном блоке именно товар.
Можно указать какой-то текст, который однозначно определяет что в блоке товар, например, код кнопки купить. Или наоборот, текст, при наличии которого в блоке будет означать, что это не товар.
4. Указать теги для получения Названия товара и ссылки на него. Здесь можно указать как просто теги для значений, так и сначала “вырезать” блок текста, а уже потом из него вырезать название и ссылку.
Блок нужно указывать в случае, если нельзя однозначно определить нужный элемент по его границам. Можно указать только “Блок от” - в этом случае парсер сначала перейдет к этому тегу, а затем вырежет текст для названия или ссылки.
Если ссылка в тексте страницы не полная, можно задать шаблон для получения полной ссылки
В шаблон вместо {URL} подставляется то, что получено парсером для значения поля ссылки.
5. Указать теги цены. Можно указать 2 тега цены. При этом сохраняется только одно значение в поле Цена. Теги для “Цена 2” проверяются только в случае, если не найдено значение по тегам для “Цена 1”. Это можно использовать в случаях, например, когда у товара есть акционная цена, то она выводится в других тегах. Теги акционной цены нужно задавать в “Цена 1” и если по ним ничего не найдет, то будет поиск обычной цены по тегам “Цена 2”.
Для цены так же нужно указать ID валюты, а так же заменить какой-то текст в полученном тексте цены. Заменять текст может понадобиться, когда в цене, например, есть копейки и они отделены не просто точкой или запятой, а каким-то html-кодом. Этот код нужно заменить на запятую.
ИД валюты можно посмотреть во вкладке Конфигурация.
6. Указать настройки наличия товара
Настройки наличия указываются в зависимости от присутствия того или иного текста в блоке товара. Как правило, наличие отображается в специальном поле на сайте, либо на кнопке “Купить”, когда ее текст меняется, например, на “Заказать”. Или же кнопки купить вообще может не быть.
Можно определить только 1 тип наличия, например “В наличии” - в этом случае, если не найден текст, определяющий, что товар в наличии, товар будет сохранен как “Нет в наличии”. Или наоборот, задать текст для “Нет в наличии”, в этом случае все остальные товары будут “В наличии”.
Настройки указываются в этом блоке
в виде: ИД типа наличия|текст поиска, т.е. ИД и текст поиска разделяются вертикальной чертой. ИД типа наличия можно посмотреть во вкладке Конфигурация.
Ид типа “Нет в наличии” всегда 2. В наличии - 1, Под заказ - 3.
При необходимости, можно так же сохранять текст наличия, если он отображается в группе. Например, срок доставки.
Теги указываются здесь:
7. Указать теги для полей Код и Бренд, при необходимости. Дополнительно к полям, указанным ранее, можно сохранить еще код и бренд товара, если они выводятся в блоке товара в категории.
Теги указываются по такому же принципу, как и теги для названия и ссылки.
Других полей из категории товаров сохранить нельзя. Если нужны другие поля, то после получения товаров из группы нужно дополнительно использовать парсер карточек товаров. Парсер информации из карточек товаров
Тестирование парсера
В ходе настройки можно проверять, какую информацию собирает парсер по тем тегам, которые вы указали. Для этого нужно ввести ссылку на какую-то группу товаров с сайта, по которой будет тестироваться и нажать кнопку “Тест”.
Будет отображена информация, которую получил парсер, либо какие-то ошибки:
Текст страницы, который вы видите в браузере, может отличаться от реального текста страницы, который возвращает сайт. Возвращаемый текст может видоизменяться при помощи Java Script, поэтому проверять и настраивать парсер нужно по реальному коду страницы.
При нажатии кнопки “Тест” текст страницы, который возвращает сайт-источник, сохраняется в файл Quad Solutions\crmpack\temp\all_page.html
Блок текста со всеми товарами сохраняется в файл Quad Solutions\crmpack\temp\all_prod_block.txt
Можно в этих файлах попробовать найти нужный вам текст и теги HTML вокруг этого текста, если введенные из браузера не работают.