Спарсить описания файлов драйверов с сайта производителя
1 500 руб. за проект
•
безналичный расчёт, электронные деньги
Нужно спарсить данные с сайта производителя оборудования используя инфраструктуру модуля на Yii2. Скелетон модуля с рабочим примером для AMD.
https://www.amd.com/en/support/
Интересуют все производители присутствующие на рынке. Сейчас в топе на выбор
https://www.asrock.com/support/index.asp
https://www.dell.com/support/home/ru/ru/rubsdt1...
https://support.hp.com/ru-ru/drivers
https://support.razer.com/
Задача
Нужно обойти весь каталог и собрать всю структуру до страницы конечного продукта и файлов к нему.
На выходе нужно иметь возможность ассоциации файлов по критериям:
- Тип оборудования
- Операционная система \ Разрядность ОС
- Серия
- Модель
Последовательность запросов на примере HP:
https://support.hp.com/ru-ru/products
https://support.hp.com/ru-ru/products/gaming
https://support.hp.com/ru-ru/products/gaming/omen-...
https://support.hp.com/ru-ru/product/omen-by-hp-mo...
https://support.hp.com/ru-ru/drivers/selfservice/o..
Модуль состоит из двух частей
Требования к парсеру
Подробное описание требований
https://www.amd.com/en/support/
Интересуют все производители присутствующие на рынке. Сейчас в топе на выбор
https://www.asrock.com/support/index.asp
https://www.dell.com/support/home/ru/ru/rubsdt1...
https://support.hp.com/ru-ru/drivers
https://support.razer.com/
Задача
Нужно обойти весь каталог и собрать всю структуру до страницы конечного продукта и файлов к нему.
На выходе нужно иметь возможность ассоциации файлов по критериям:
- Тип оборудования
- Операционная система \ Разрядность ОС
- Серия
- Модель
Последовательность запросов на примере HP:
https://support.hp.com/ru-ru/products
https://support.hp.com/ru-ru/products/gaming
https://support.hp.com/ru-ru/products/gaming/omen-...
https://support.hp.com/ru-ru/product/omen-by-hp-mo...
https://support.hp.com/ru-ru/drivers/selfservice/o..
Модуль состоит из двух частей
- Парсер и сохранение информации в БД
- Админка ассоциации данных
Требования к парсеру
- Консольные команды сущностей разделены, если это возможно. Категории, страницы продукта, список файлов - это три разные консольные команды
- Повторный запуск команды не приводит к удалению информации, а лишь обновляет её. Особенно это важно по хранению сущностей основного проекта
- Все данные получаемые от производителя кэшируется "как есть", это позволяет перенастраивать парсер без необходимости повторной закачки данных
- Чтобы парсинг данных можно было легко перенастраивать для разбора используется DOM модель документа
- Реализовать ассоциации сущностей: типы оборудования, операционные системы, типы файлов, серии продукта, продукты
- Типы оборудования и серии на выводе сводить к дереву
- php >= 7.2
- mariadb >= 10.2
- Yii > 2.15.0
- Тестовый рабочий код на примере парсера AMD
- Организация и подключение модуля Yii2
- Обертка для работы с DOM делающая работу с DOM удобнее: https://github.com/bezdelnique/parser-toolbox
- Все взаимодействие с источником данных вынесено в отдельный класс: helpers/Downloader.php
- Реализация массовых вставок в БД с сохранением данных при помощи класса EntitiyBulk
- В админке реализован ассоциатор для дерева категорий и остальных сущностей
Подробное описание требований
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.