Скрипт выгрузки товаров через пользоват. интерфейс
Требуется разработать скрипт для управления товарами на торговой площадке через пользовательский интерфейс.
В качестве источника данных будет использована выгрузка в формате xml/yml.
1.) Авторизация.
При авторизации на сайте используется капча. Для разпознавания капчи следует использовать специализированный сервис, например: rucaptcha.com или аналогичный сервис (по согласованию).
2.) Соответствие категорий. С сайта нужно получить список категорий для дальнейшего сопоставления с категориями выгружаемого товара.
3.) Заполнение карточки товара.
При добавлении/изменении товара на сайте должны быть заполнены следующие поля:
Категория
Название товара
Артикул товара => код
Цена
Цена со скидкой => при использовании скидок на товары
Тип оплаты товара =>
Доставка =>
Описание товара
Дополнительная информация =>
Остаток =>
Активен => признак публикации товара
4.)Добавление изображений. Добавление изображений осуществляется из списка товаров (есть возможность добавлять при создании). При обновлении товаров нужно обновлять только изменённые изображения. Список соответствий “товар - имя файла загружаемого изображения - имя файла изображения на мотоломе” (мотолом переименовывает изображения, новое имя файла парсить после выгрузки картинки). При обновлении товаров сравнивать этот список с источником (xml); удалять с сайта изображения, отсутствующие в источнике и добавлять новые.
5.)Идентификация товаров. Для идентификации товаров потребуется получить список соответствия ID=артикул (код). Список соответствий потребуется обновлять после каждой выгрузки/пересоздания товаров.
6.)Обновление товаров. Уже добавленные на сайт товары при обновлении могут быть изменены. Обновляются все поля карточки товара, кроме артикула.
7.)Удаление товаров. Снимаемые с публикации товары должны быть удалены с сайта, в т.ч. информация о соответствиях id и изображений.
8.)Лимит товаров. Администратором сайта задаётся заранее оговоренный лимит товаров, который нельзя превышать. Значение максимального количества отображаемых товаров потребуется задавать в настройках парсера обмена. Выбор выгружаемых товаров из списка должен происходить с учетом рейтинга, который задаётся в настройка парсера. В первую очередь выгружаются товары имеющие наибольший рейтинг.
9.)Спецпредложение “Пересоздание поваров”. На главной странице сайта есть блок “Последние поступления товаров”. В этот блок попадают последние созданные на сайте товары. Для добавления товаров в этот блок нам потребуется их удалять и создавать заново. Список товаров должен задаваться в настройках парсера обмена. Передобавление товаров должно производиться с интервалами. Интервал должен быть плавающим, например, в настройках можно указывать мин. и макс. значения, интервал выбирается рандомно из этого промежутка.
10.)Расписание и интервалы. Обмен должен запускаться в автоматическом режиме по расписанию (дни недели/время “с” и “до”), добавление и пересоздание товаров должно осуществляться с заданным интервалом. Время и интервал потребуется задавать в настройках парсера обмена отдельно для обновления и отдельно для пересоздания. Автоматический запуск предполагается настроить через планировщик задач на сервере (cron), с использованием сохраненных настроек.
11.)Для управления парсером обмена и его настройками потребуется разработать web интерфейс. В настройки нужно вывести:
Настройка расписания обновления товаров
Настройка расписания и интервала создания новых товаров (в т.ч. и пересоздания)
Максимальный лимит товаров (с учетом пересоздаваемых товаров)
Отбор товаров из выгрузки для пересоздания (сохранение значения “код”) список товаров, для экономии места, будет удобно отобразить в виде раскрывающегося дерева категорий
Список всех товаров из файла-источника (xml). (Уже имеющиеся на сайте товары, нужно отметить цветом шрифта или разнести в разные вкладки.)
Настройка заполнения пункта “доставка”
Настройка заполнения пункта “оплата”
Управление соответствием категорий
Проставление рейтинга товаров (может быть задан для всех товаров в категории или для отдельного товара).
Текст для дополнительного описания
Тоже самое, чуть подробнее https://docs.google.com/document/d/1mwTEQ7_wu0vrdSozXc5reSeU2DaZhs1A_E-gT7K2X6Y/edit?usp=sharing