Модуль парсера/граббера на движок DLE

15 000 руб. за проект
25 марта 2023, 19:12 • 2 отклика • 31 просмотр
1. Общее
Необходимо написать php-скрип для парсинга данных с сайта sensacine.com.
Скрипт должен быть выполнен в виде модуля для CMS DataLife Engine v.16.0 (далее DLE).
Как разрабатывать модули для DLE: https://dle-news.ru/extras/online/index.html?modul...

2. Требование к инстурментарию
- Скрипт должен быть написан на php. Минимально допустимая версия php - 7.4, максимально допустимая 8.2;
- Поддерживаемая версия DLE не менее 16-oй версии.

3. Требования к скрипту
- Скрипт должен быть выполнен в виде модуля для DLE;
- Скрипт должен иметь секцию настроек модуля в админ панели DLE;
- Скрипт должен иметь интерфейс для запуска парсинга данных. Сам интерфейс должен находится в секции модуля, внутри админ панели DLE.

4. Описание функционала

Как было сказанно выше, процесс сбора данных должен запскаться из админ панели DLE.
Для запуска, оператор обязательно должен указать год, за который будут собираться данные.
После чего парсер должен начать вычитывать список записей (фильмов) с поисковой страницы сайта источника.

Дальнейшее описание процесса приведенно в качестве примера:
- Оператор указал 2019 год и запустил парсинг.
- Скрипт шлет запрос по адресу https://www.sensacine.com/peliculas/todas-peliculas;
- Скрип парсит полученную страницу, забирая список доступных диапазонов по года из блока "Por año de producción";
- Скрипт выбирает подходящий для указанного года диапазон и шлет запрос по нему.
В нашем случае это https://www.sensacine.com/peliculas/todas-pelicula...
- Скрипт парсит полученный список фильмов, сверяясь с базой данных DLE напредмет, не добавлялся ли ранее пост для фильма из полученного списка%
- Если фильма ранее в базу не добавлялся, то скрипт заходит по ссылке на данный фильм, к примеру https://www.sensacine.com/peliculas/pelicula-232669/, и вытаскивая от туда следующие данные:
* Название фильма
* Режисер(ы)
* Автор(ы) сценария
* Список актеров
* Оригинальное название
* Год
* Продолжительность
* Жанр
* Дату выхода
* Описание (синопсис)
* Постер
* Горизонтальная картинка (backdrop)
* Категории
- Теперь необходимо найти трейлер для данного фильма. Для этого шлем на youtube запрос вида "[Название фильма] [год выпуска] latino trailer"
Для приведенного примера это будет https://www.youtube.com/results?search_query=VENGA...
Берем ссылку на первое видео из списка, т.к. с большой долей вероятности это и будет трейлер.
- Как только все данные получены, создаем DLE пост для фильма, сохраняя данные внутри поста в качестве его полей (как создаются и заполняются поля, так же можно найти например тут https://dle-news.ru/extras/online/index.html?modul...). Если какие-то данные собрать не удалось, то оставляем поле пустым.