Задача

Необходимо разработать механизм автоматического сбора данных с внешнего сайта (сайт отзывов). Как только там появляется новый отзыв о номере или услуге, данные должны поступать на сайт заказчика, работающий на Laravel.

Основные требования

  • Парсер должен запускаться автоматически при появлении новой публикации (например, по крону или вебхуку).
  • Собранные данные (текст отзыва, название номера, дата и т.д.) сохраняются в базу данных сайта заказчика.
  • Интеграция с существующей системой отзывов на Laravel (возможно через модель или API).
  • Необходимо избегать дублирования данных (проверка по ID отзыва или ссылке).
  • Желательно использовать библиотеки для парсинга (Goutte, Guzzle и т.п.) и формата данных - HTML или JSON.

Пример источника

Сторонний сервис с отзывами на отели/номера. Название его и контактные данные удалены по просьбе.

Технический стек

  • PHP / Laravel (версия актуальная)
  • Eloquent модели для хранения отзывов
  • Cron или Queue для автоматизации
  • Безопасность: обработка ошибок, логирование, защита от блокировок

Комментарий

В идеале парсер должен работать в фоне, не нагружая основной сайт. Исполнитель должен предоставить код, готовый к деплою, и описание настройки крона.

Доработка функционала акций и скидок в интернет-магазине на CMS OpenCart

Требуется доработать встроенный в код CMS OpenCart функционал акций и скидок. Необходимо исправить или улучшить работу опции применения промо-кода по умолчанию. Все изменения должны интегрироваться с существующей системой управления акциями в административной панели.