Parser данных из instagram

50 000 руб. за проект
09 ноября 2022, 23:43 • 4 отклика • 82 просмотра
Технические особенности:

Laravel 9
PHP 8.1
REST API
Эмулятор браузера не использовать

Всю разработку делаем модулем для Laravel, чтобы мы могли потом подключить это в своей стукртуре без проблем.

Задача:
Каждый пользователь нашей платформы будет иметь возможность подключения СВОЕГО аккаунта инстаграма для автоматического переноса данных к нам на платформу, т.е. переносится вся информация только с конкретного аккаунта. Перенос осуществляется посредствам автоматического запроса (вопрос его реализации к Вам) к аккаунту и появлении нового видео/фото. Всегда проводим проверку, загружалось ли подобное видео/фото ранее, возможно оно было удалено пользователем самостоятельно и данное видео мы НЕ загружаем повторно.

Скачивание проводится всегда в максимальном качестве видео/фото.

Предусмотреть возможность использования прокси серверов SOCKS, HTTP, HTTPS. Прокси используются на рандомно, а последовательно. Предусмотреть балансировку нагрузки на прокси сервер. Чтобы не получилось, что один качает 20 файлов, а другой 2 файла. Если вдруг прокси попал в БАН, или не может достучаться до серверов инстаграма – уведомление (пометка), т.е. всегда проверяем работоспособность сервера.

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

При загрузке видео файла – файлу присваиваем простой числовой ID. Фото грузим отдельно от видео.

Сразу обращаем внимание, что нужно предусмотреть возможно обхода блокировок со стороны инстаграма из-за количества запросов. Их может быть тысячи, а то и десятки тысяч.

В настройках парсера должны присутствовать варианты выбора:
Максимального качества видео
Количество запросов в минуту, которое мы делаем
Разграничения: парсить видео, парсить фото, парсить сторис или всё вместе. Чекбоксами в общем
Для сторис каждый пользователь отдельно указывает время хранения, до 7 дней, стандартно указываем 24 часа.

Командам просьба не обращаться!!!