Пример карточки
Нужно собрать фото, характеристики и описание.
Настройка полей делается во вкладке “Обработка” настроек парсера. В этой вкладке по умолчанию уже создан какой-то минимальный набор полей. Можно удалить какие-то поля, которые не нужны
В этой таблице вводятся теги HTML со страницы сайта, с помощью которых можно определить точное положение нужного текста в коде страницы сайта. Вводятся теги, ограничивающие нужный текст, а так же теги, которые ограничивают какой-то блок информации, из которого уже можно получить теги, ограничивающие нужный текст из этого блока. В таблице вводятся так же какие-то дополнительные настройки для каждого поля. Подробнее здесь: Парсер информации из карточек товаров
Код товара
Первое поле code - сюда записывается код товара с сайта, откуда парсится. Именно код, т.е. какой-то буквенно-цифровой идентификатор, который уникальный только для этого сайта и больше нигде не используется. Это не артикул производителя, который может быть одинаковый на разных сайтах и прайсах. Артикул записывается в поле article.
Если вы ссылки загружаете из какого-то прайса и в этом прайсе есть Код и загрузка происходит по коду, то не нужно парсером сохранять информацию в это поле, чтобы избежать проблем с дублированием товара
В примере код товара присутствует.
Нужно в браузере Chrome нажать на него правой кнопкой мыши и в появившемся меню выбрать “Просмотреть код”
Справа или снизу страницы откроется панель, в которой будет виден исходный код сайта в том месте, где мы кликнули при открытии меню.
Нужный нам код товара находится между выделенными тегами
т.е. в настройку поля можно скопировать то, что слева текста и то что справа. Для копирования в нужном месте нужно нажать правой кнопкой мыши и в открывшемся меню нажать на “Edit as HTML”
получим:
В настройках поля будет выглядеть так:
Такая настройка говорит парсеру, что нужно в качестве Кода вырезать со страницы текст, который находится между текстом <span class="value"> и </span>
Но нужно понимать, что текст <span class="value"> может встречаться на странице в разных местах, поэтому нужно проверить, чтобы он был уникальным. Для этого копируем этот текст и открываем код страницы целиком. Для этого в любом месте страницы нажимаем правой кнопкой мыши и в меню выбираем “Просмотр кода страницы”
Если такого пункта нет, то кликните чтобы открыть меню в другом месте страницы, свободном от картинок и других элементов.
Откроется вкладка с полным кодом страницы
Нажимаем Ctrl-F и вставляем текст для поиска
Бывает, не находит вообще текст, это значит, что в исходном коде страницы есть какие-то ошибки или неточности, лишние пробелы и т.п., которые браузер исправляет автоматически и в коде элемента вы видите исправленный текст, а в коде страницы - исходный, который отличается. В этом случае нужно скопировать значение товара, в примере это код и найти его в полном тексте страницы, и уже здесь смотреть, какие теги находятся рядом со значением. При этом важно убедиться, что это именно то место, по окружающему его тексту, так как тот же Код может выводиться в нескольких местах на странице, в том числе и “невидимых” для человека.
Если нашло только 1 вхождение текста, значит все ок, его можно использовать в настройке. Если нашло 2 или больше значений, как на скриншете выше, значит в настройке поля нужно еще ограничить блок, из которого будет вырезан нужный текст.
Для этого возвращаемся к коду элемента страницы и смотрим, можно ли выделить блок, содержащий поле Код.
В примере видно, что перед самим кодом есть несколько тегов, которые скорее всего относятся только к полю код, например, <div class="product-code"> или <span class="title">Код товара:</span>
Т.е. парсеру, чтобы правильно получить код товара, нужно сначала перейти к тегу <div class="product-code">, а уже потом вырезать текст между тегами <span class="value"> и </span>
Тег, куда нужно перейти, вводится в колонке “Ограничить блок слева”
Нажимайте кнопку “Сохранить” после ввода настроек
Чтобы Код товара сохранился не только в товаре в прайсе, а еще был виден и в результатах парсера, можно поставить 1 в колонке “Сохранить”.
В этом случае код, если он спарсится правильно, будет виден в результатах в колонке Значение 1:
Всего таким способом можно сохранить 5 каких-то значений разных полей, в зависимости от указанной в колонке “Сохранить” цифры.
Можно теперь перейти во вкладку “Выполнение / Результаты” и запустить тест для какой-нибудь ссылки, чтобы проверить, будет ли получена информация.
При первом выполнении появится такое сообщение, нужно нажать Ок.
Результаты можно посмотреть во вкладке Статус, для этого там нужно нажимать кнопку Обновить, пока у заданий не пропадут зеленые стрелки (т.е. пока оно не закончит выполнение).
когда завершено:
После этого можно перейти во вкладку Выполнение / Результаты и нажать Обновить там - если какую-то информацию сохраняли в Значение, то оно должно появиться.
Если значение не появилось, значит есть какие-то проблемы с настройкой поля. Посмотреть лог выполнения парсинга можно в папке Quad Solutions\SyncLog\qs_logs
В этой папке будут подпапки, в названии которого содержится ID парсера. В папке файлы логов - отсортируйте по дате и смотрите самые свежие. Информация о значениях, полученных парсером, находится в конце файла. Если значение найдено, вы увидите примерно такой текст
Если нет, то будет написано Not Found.
В этом же файле есть текст страницы, полученной парсером. Можно в нем поискать те теги, которые вы указали в настройках. Если теги не найдены, то как и в браузере, можно в тексте найти нужное значение и посмотреть, какие теги рядом с ним. Если нужное значение вообще не находит в тексте, то может быть 2 варианта:
1. Внутри значения присутствуют какие-то невидимые символы, например неразрывный пробел, либо какие-то теги, которые отделяют рубли от копеек, можно попробовать поискать только по части значения.
2. Информация на страницу подгружается каким-то дополнительным запросом, в этом случае вы не сможете настроить парсер.
Артикул
Поле article - сюда сохраняется артикул производителя. Если он есть на странице, то действия такие же как и с Кодом, если нет, то поле можно просто удалить.
Производитель
Поле manuf - сюда записывается производитель (бренд) товара.
В своем примере я не нашел на странице в явном виде выделенный Бренд, но если открыть исходный код страницы и поискать бренд, то можно увидеть, что он выводится в специальной разметке, которую делают на сайте в целях продвижения в поисковиках или для формирования каких-то других фидов.
Если какой-то нужный вам атрибут товара не виден на странице, то это не значит, что его нет. Попробуйте поискать его в исходном коде страницы. Как посмотреть исходный код - в описании поля Код.
Настройки получения бренда из примера:
Название товара
Поле title - в это поле загружается название товара.
Если вы ссылки загружаете из какого-то прайса и этот прайс загружается по Названию, то нужно перенастроить прайс на загрузку по Коду, если название товара в прайсе не совпадает с названием на сайте. Если в прайсе есть только название, то его нужно сохранять еще в какое-то дополнительное поле и загружать по этому дополнительному полю, так как если парсер поменяет название товара, то товар задублируется при загрузке прайса.
Так же в случае, если название товара нужно заменить на то, которое на сайте, то в настройках загрузки прайса нужно установить птичку “Записывать только не заполненные поля”
Поле Название загружается так же, как и другие поля.
В моем примере Название товара между такими тегами.
Тег get-product-title"> встречается на странице только 1 раз, поэтому не нужно ограничивать блок текста.
Цена и РРЦ товара
Поле price - в это поле записывается цена товара. Разделитель целой и дробной части программа понимает и точку и запятую. Важно, чтобы при парсинге внутри числа не было никакого текста. Текст можно убрать птичкой “Только цифры” - в этом случае программа оставляет в тексте только числа, точку и запятую.
Иногда дробная часть (копейки) отделяются от рублей какими-нибудь html-тегами - в этом случае их нужно заменить.
Например, цена после парсинга: 120<sup>99
Если программа отработает просто с птичкой “Только числа”, то у вас получится цена 12099, хотя 99 это копейки. Чтобы такого не произошло, нужно заменить <sup>на “точку”. Для этого поставьте курсор в ячейку “Замены” у нужного поля и нажмите появившуюся кнопку.
В замены добавьте такие значения:
В колонке N вводится номер по порядку, в котором происходит замена. Чем меньше число, тем первее работает замена. Число вводить обязательно.
Если вы парсите цену, то обязательно нужно указывать и поле валюты.
Поле валюты price_curr_id добавляется по умолчанию. В него записывается ИД валюты. По умолчанию устанавливается ИД основной валюты программы.
Если на сайте цены в другой валюте, то ИД можно посмотреть во вкладке Конфигурация.
Если с сайта кроме цены вам нужно получить еще РРЦ (рекомендованную цену) или использовать цену с сайта в качестве РРЦ, то загружать такую цену нужно в поле fixed_price и для него есть собственное поле валюты. Добавить поля можно этой кнопкой: