Парсер PriceLoader

Загрузите целую базу магазина, с описаниями, изображениями в интернет-магазин из прайс-листа вашего поставщика, либо прямо из файла Яндекс.Маркета (YML файла).

Парсер PriceLoader для Windows

PriceLoader – наш бесплатный экспериментальный парсер прайс-листов для Windows, с помощью которого можно загрузить базу магазина, с описаниями, изображениями в интернет-магазин из прайс-листа вашего поставщика, либо прямо из файла Яндекс.Маркета (YML файла).

PriceLoader создан в 2011 году для загрузки данных из файлов Excel и YML в PHPShop, не имеющий на тот момент функционала для такой загрузки в панели управления и отсутствия сторонних облачных сервисов с таким функционалом.

На текущий момент, функции загрузки файлов Excel и YML присутствуют в панели управления PHPShop и так же существуют сторонние облачные парсеры с мощным функционалом. Использование PriceLoader имеет смысл если файл импорта имеет очень большой размер и его обработка на стороне сервера невозможна из-за ограничений по памяти или нет возможности использовать сторонние облачные парсеры.

Установка PriceLoader на компьютер

1. Скачайте и запустите установщик setup.exe. Ссылка также доступна в админ панели магазина Справка – О программе – Утилиты EasyControl.

EasyControl является 32-битным приложением, рекомендуется устанавливать его в корневой диск C:\. Ярлыки на программы появятся на рабочем столе и в меню быстрого запуска в папке PHPShop. Запустите утилиту PriсeLoader:

YML файлы

Создание товаров из YML

Если вы работаете с рабочей базой, сделайте резервную копию базы, чтобы, в случае необходимости, вы смогли вернуть все обратно.

Через ссылку для Яндекс.Маркета YML, можно полностью скопировать товарную базу магазина вместе с изображениями, характеристиками, каталогами и описанием товарных позиций.

Допустим, мы хотим взять тестовую базу и протестировать работу PHPShop.

  1. Заходим на сайт Q-parser, регистрируемся, выбираем любой тестовый сайт для примера, например, https://q-parser.ru/parser/aeg-line.ru и получаем xml файл (yml):

В этом примере рассматривается YML файл, но в Q-parser можно выбрать сразу формат PHPShop, для загрузки через админпанель Импорт данных.

2. В админпанели магазина выполняем резервное копирование, и команду Очистка базы.

3. Открываем утилиту PriceLoader, в закладке Действия – Создавать, Записывать в локальный каталог для загрузки через админпанель (более стабильный и предсказуемый вариант загрузки).

В закладке Пути к данным выбираем наш xml файл, кодировку UTF-8. На компьютере предварительно создаем папку, куда будут сложены файлы выгрузки товарной базы в формате PHPShop. Указываем эту папку в поле Каталог результирующих файлов.

Если у вас файл с расширением YML и PriceLoader его не видит, просто сохраните себе на рабочий стол файл, переименуйте расширение в *.xml. При открытии выберите тип файлов xml:

В закладке Параметры - Настройка YML/RSS поставьте галку Создавать каталоги.

Чтобы перенести картинки, ставим галку Скачивать изображения по ссылке из тега <picture>.

4. Нажимаем кнопку Выполнить. Открываем папку и видим 3 файла и папку с картинками:

5. Загружаем полученные файлы в PHPShop.

Кодировка текста - если кодировка выбрана неверно, ваши данные загрузятся неверно.

  • по очереди tree.sql, затем upload.sql, в меню База - SQL запрос к базе - выбрать файл

  • затем характеристики characteristic.csv в меню База - Импорт данных - выбрать файл:

  • затем Картинки копируем через любой файловый менеджер на сервер в папку UsersFiles/Image:

Готово! 🎉 Проверяем на витрине магазина наполненные товары. Чтобы на витрине появились Фильтры, а в карточке товара Опции, зайдите в меню Товары - Характеристики и отметьте галочки:

Частные случаи YML:

Артикулы (ID) импортируемых из XML-файла товаров и/или каталогов совпадают с существующими на сайте. Нужно добавить товары из XML-файла к существующим

1. Если у вас 2 сайта с одинаковыми артикулами/каталогами

Тогда к артикулам импортируемых товаров будет добавлен префикс «NT», ID каталогов – «5». Например, в файле артикул «23», на сайте артикул будет записан как «NT23».

2. Если у вас есть уникальный тег в YML файле, вы можете указать его в Таблице соответствий для загрузки

В YML-файле артикулы указаны в теге article. Нужно заменить значения стандартного тега «ID» (по-умолчанию в нем указаны артикулы товаров) на article

По-умолчанию, выполняется обработка и сопоставление типовых тегов YML. Однако, можно настроить замену произвольных значений тегов XML-файла. В данном примере, в артикулы товаров на сайте будут импортированы вместо значений тега «ID» значения тега «Article».

Перевод описаний товаров на английский язык. В момент импорта нужно перевести описания каждого товара на английский язык

Показана настройка перевода описаний товаров с помощью сервиса «API Яндекс.Переводчик». Получить ключ можно нажав на ссылку на форме «API ключ».

XLS файлы

Сравнение файлов XLS

Прайс-листы формата XLS могут быть сравнены между собой и результат сравнения загружен в интернет-магазин PHPShop с заведением или обновлением товарных предложений

Условия:

  • Есть два прайса: актуальный (на текущую дату) и «вчерашний» (данные из которого импортированы на сайт)

  • Форматы файлов совпадают

  • Необходимо обновить на сайте только измененные данные в актуальном прайсе

Прайс, из которого уже были загружены данные:

Прайс, который необходимо сравнить с предыдущим. Отмечены изменения в файле, по сравнению с обработанным:

Указан файл для сравнения, определен диапазон строк сравнения в зависимости от выбранного режима результаты сравнения будут отличны.

Режим сравнения в «в 2-х файлах». Результатом буду отличия в обоих сравниваемых прайсах.

Режим сравнения «только в 1-м». Включены отличия первого файла от второго.

Режим сравнения «только в 2-м». Включены отличия второго файла от первого.

Добавление товаров из XLS файла

Прайс-лист формата XLS может быть загружен в интернет-магазин PHPShop, с заведением новых товарных предложений

Условия:

  • Товары на сайте отсутствуют

  • Изображения на сайте отсутствуют

  • Новые товары в XLS-файле

  • Ссылки на каталоги товаров отсутствуют – импорт в существующий на сайте каталог

Исходный файл

Каталог с файлами изображений. Имена файлов соответствуют артикулам товаров:

Импорт будем выполнять в существующий каталог сайта «Мебель кухонная». ID каталога на сайте можно увидеть в админ-панели

Указан режим создания новых товаров на сайте. Результат обработки входного файла (sql-файлы) и картинок будем записывать в локальный каталог для последующего импорта через админ-панель сайта. В процессе обработки выполняется сравнение артикулов существующих на сайте товаров с импортируемыми – при совпадении товар из файла пропускается.

Указание путей к импортируемым и выходным данным. Порядок поиска изображений в папке картинок:

  1. В указанном каталоге (без поиска по вложенным папкам) выполняется поиск изображений, именования файлов которых соответствуют заданному шаблону.

  2. Выполняется поиск каталогов, именования которых соответствуют заданному шаблону. В случае удачного поиска все файлы изображений, входящие в найденный каталог считаются принадлежащими текущему товару.

Установление соответствий полей в XLS-файле с реквизитами товаров на сайте. Столбец «Поле на сайте» - список стандартных полей в базе товаров сайта. Столбец «№ колонки» - номер колонки входного файла, где размещены данные для выбранного поля сайта. Столбец «Действие» - выбор из списка возможных действий с входными данными. По-умолчанию «Установить»:

Заполнение параметров импорта. Номер последней строки входного файла может не указываться – в этом случае загрузка выполняется до последней заполненной значениями строки. Код валюты должен совпадать с ISO валюты на сайте. При необходимости, можно выполнить перевод описаний товаров с помощью сервиса «API Яндекс.Переводчик».

Установка режима добавления изображений на сайт. В наименовании каталога для записи изображений не указываются зарезервированные для скрипта наименования: «Image»,«Images».

Обновление товаров из XLS файла

Прайс-лист формата XLS может быть загружен в интернет-магазин PHPShop, с обновлением существующих товарных предложений по артикулу или ID товара.

Условия использования

  • Товары на сайте есть. Артикулы товаров на сайте совпадают с артикулами в исходном файле

  • Изображения на сайте есть. Необходимо заменить/обновить изображения на сайте

  • Импортируемые товары в XLS-файле

  • Изображения в отдельной папке

  • Ссылки на каталоги товаров отсутствуют – импорт в существующий на сайте каталог

Исходный файл:

Каталог с файлами изображений. Имена файлов соответствуют артикулам товаров:

ID существующего каталога на сайте:

Режим создания новых товаров на сайте. Будут импортированы только найденные на сайте по артикулу (ID) товары:

Указание путей к импортируемым данным:

Установление соответствий полей в XLS-файле с реквизитами товаров на сайте:

  • Столбец «Поле на сайте» - список стандартных полей в базе товаров сайта.

  • Столбец «№ колонки» - номер колонки входного файла, где размещены данные для выбранного поля сайта.

  • Столбец «Действие» - выбор из списка возможных действий с входными данными. По-умолчанию «Установить».

Заполнение параметров импорта:

Установка режима обновления изображений на сайте. При этом выполняется очистка галереи изображений товаров на сайте и замена на импортируемые:

Частные случаи XLS

Названия и значения характеристик товаров указаны в импортируемом файле в отдельных колонках

Добавить строку в таблицу соответствий:

Задать имя дополнительного поля:

Указать разделители характеристик в файле:

Ссылки на каталоги товаров указаны в импортируемом файле в отдельной колонке. Указанные значения в файле совпадают с ID каталогов на сайте

В исходном файле есть поле с ID каталогов, совпадающее с ID каталогов на сайте.

Указание номера поля в импортируемом файле с ID каталогов:

В колонке «Артикул» исходного файла указаны коды товаров Коды товаров файла должны быть записаны на сайте как ID товаров

Поле с кодами товаров:

Указание условия загрузки кодов товаров как ID на сайте:

Артикулы (ID) импортируемых из файла товаров совпадают с существующими на сайте. Необходимо добавить товары из файла к существующим

К артикулам импортируемых товаров будет добавлен префикс «NK». Например, в файле артикул «23», на сайте артикул будет записан как «NK23». Если в исходном файле есть поле с ID каталогов – к указанным ID будет добавлен префикс каталога:

Необходимо заполнить дополнительное поле на сайте, отличное от стандартного

Значения для дополнительного поля на сайте:

Добавление новой строки в таблице соответствий выполняется из контекстного меню при клике правой кнопкой мыши по таблице. Наименование дополнительного поля для заполнения указывается вручную:

В XLS-файле есть внедренные картинки и/или поле с URL ссылками на изображения в интернет В XLS-файле есть внедренные картинки и/или поле с URL ссылками на изображения в интернет

Исходный файл с изображениями:

Указаны параметры импорта изображений.

Новые товары в XLS-файле В момент импорта необходимо к наименованию каждого товара добавить в конце слово “imported ”

Настройка использования макроса. Для этого в каталоге «plugin», размещенном в папке программы priceloader, создаем файл «Test.vbs», в таблице соответствий в столбце «Действие» выбираем значение «Вычислить», в столбце «Описание действия» - скрипт «Test.vbs». При этом содержимое файла «Test.vbs» может быть таким:

Set objArgs = WScript.Arguments
if objArgs.Count=0 then 
   WScript.Echo ""
else 
   WScript.Echo Trim(objArgs(0))+" (imported)"
end if

В момент импорта необходимо выполнить перевод описаний каждого товара на английский язык

Настройка перевода описаний товаров с помощью сервиса «API Яндекс.Переводчик». Получить ключ можно нажав на ссылку на форме «API ключ».

Работа с изображениями в Price Loader

Защитная картинка watermark

Условия:

  • Есть каталог с изображениями (например, для обновления существующих картинок на сайте)

  • Необходимо выполнить изменение размера изображений, наложить водяные знаки

Имя входного файла не указывается, заполняется только каталог с файлами изображений и папка для результатов обработки. Порядок поиска изображений в папке картинок:

  1. В указанном каталоге выполняется поиск изображений, именования файлов которых соответствуют заданному шаблону

  2. Выполняется поиск подкаталогов, именования которых соответствуют заданному шаблону. В случае удачного поиска все файлы изображений, входящие в найденный каталог считаются принадлежащими текущему товару. Шаблон поиска изображений задается на странице «Изображения»:

Включен режим конвертации файлов изображений:

Загрузка изображений из Google

Задача 👉выполнить поиск изображений в интернете и сохранить найденные изображения на диск.

Настройка конвертации файлов изображений:

Поиск изображений в интернет выполняется с использованием Google Custom Search API. Для работы с Google Custom Search API, нужно иметь учетную запись Google и получить значения API key и ID поисковой системы. Чтобы получить эти значения выполните следующие действия:

  1. Под учетной записью Google авторизуйтесь на сайте console.developers.google.com

  2. В меню Select a project выберите Create a project (создать новый проект), во всплывающем окне дайте произвольное имя новому проекту, согласитесь с условиями и нажмите кнопку Create.

3. После создания проекта, на странице Home-Dashboard (главная станица проекта) включите Google APIs, нажав на ссылку Enable and manage APIs в блоке синего цвета.

4. На странице Custom Search API выберите раздел Credentials. Далее по кнопке New credentials выберите значение API key. В окне Create a new key выберите Browser key, в окне Create browser API key введите имя для нового ключа и нажмите кнопку Create.

5. Перейдите на cse.google.com/cse/create/new и создайте свою поисковую систему.

Перейдите в новый интерфейс, введите любое свое Название, Поиск по всем интернете, Поиск изображений:

6. После создания поисковой системы, нужно внести дополнительные настройки и получить идентификатор. Нажмите на кнопку Панель управления, далее - на кнопку Идентификатор поисковой системы. Важно! Включите опцию Поиск изображений.

7. Введите полученные ID поисковой системы и API KEY в PriceLoader:

Параметры поиска изображений

Процесс получения ID и API key подробно описан в инструкции к утилите Price Loader.

Задача 👉в момент импорта данных из файла, выполнить поиск изображений в интернет и привязать их к товарам.

Активация поиска изображений в интернет с использованием Google Custom Search API:

Определение параметров поиска (по наименованию/описанию/артикулу товаров)

Чистка изображений

Условия:

  • Импорт выполняется в авто-режиме (с копированием файлов данных на ftp-сервер и выполнением автозагрузки товаров на сайт)

  • Перед импортом необходимо удалить все файлы изображений из папки «Image» ftp-сервера у несуществующих товаров (удаленных ранее)

По кнопке «Удалить картинки с сервера» будет выполнена очистка папки «Image» на ftp-сервере сайта. Кнопка «Удалить картинки с сервера» доступна только в режиме загрузки «Записывать на ftp-сервер и выполнять автозагрузку на сайт».

Архивирование

Для оптимизации трафика, необходимо архивировать файлы изображений с возможностью разбиения архива на тома с заданной размерностью

Настройка архивирования файлов изображений с указанием размера тома (при указании размера «0» разбиение на тома не выполняется). В режиме загрузки «Записывать на ftp-сервер и выполнять автозагрузку на сайт» после копирования архивированных файлов на ftp-сервер будет выполнено автоматически процедура разархивации на сервере.

Загрузка изображений по URL-ссылкам

Условия:

  • На сайте в качестве изображений указаны URL-ссылки на внешние ресурсы

  • Нужно заменить URL-ссылки на файлы изображений на сервере, скачав и выполнив конвертацию картинок внешнего ресурса

Указываем режим обновления существующих товаров и изображений:

Указываем путь к данным YML своего сайта:

Last updated