Задать вопрос
Tim_1527
@Tim_1527
Горе программист

Как скачать аудиофайл с сайта?

Я думаю ни для кого не секрет что если в хроме зайти на страницу и открыть её код, то можно во вкладке "Network" скачивать данные которые подгружаются на страницу.
Часто пользуюсь этой возможностью чтобы скачивать музыку.
Так вот на некоторых сайтах аудиофайл разбивается на части, что не дает спокойно его спиратить, такая вот своеобразная защита.

Из сказанного выше следует вопрос. Как это все обойти?

Я не ищу готовых решений, буду благодарен если подскажете как называется такой метод подгрузки данных или поделитесь ссылками на нужные источники. Возможно подскажете библиотеки на python для решения этой задачи.

ps* я знаю что вроде как на сайте должен существовать файл в котором прописан алгоритм по которому фрагменты данных соединяются, или что-то в этом духе.
  • Вопрос задан
  • 1497 просмотров
Подписаться 4 Простой 3 комментария
Решения вопроса 1
@alekssamos
Программист любитель
буду благодарен если подскажете как называется такой метод подгрузки

https://ru.wikipedia.org/wiki/HLS
В основе работы лежит принцип разбиения цельного потока на небольшие фрагменты, последовательно скачиваемые по HTTP. Поток непрерывен и теоретически может быть бесконечным.

Вот так. Покажу на примере Firefox.
1. В консоле, в разделе "Сеть" фильтр запросов по подстроке ".m3u"
Скрин браузера
67e9359218d1a914669658.png

2. Нашь любимый ffmpeg выручает.
ffmpeg   -i   "https://example.com/fghjk.m3u8?hash=jyibwzhnmjn"      video.mp4

Скрин консоли
67e9365aeea22201093233.png

В итоге он скачает полноценный видео файл.
Я так делал, скачивал фильмы по 2, 3 и 11 часов, всё хорошо.

Но имейте в виду, что, например, из VK скачать музыку или с Кинопоиска скачать фильм так не получится, плейлисты шифруются ключами.
Подробнее здесь.
Подход часто меняется, может быть не актуально.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@elderl
yt-dlp. Если ваш сайт поддерживается, то скачивает и музыку.

Или искать список воспроизведения, например, M3U.
Ответ написан
Комментировать
@rPman
Универсально, пробуй искать имена чанков тут же во вкладке network (строчка поиск url, нажми справа иконку лупы, в новом поле поиска введи название файла чанка) или экспортируй всю сессию в json файл (сохранить все как har файл) и анализируй своими скриптами
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы