Comments 46
Раньше был на хабре скрипт на питоне, который выкачивал весь свой плейлист, причем искал треки с максимальным качеством. Есть что-то подобное сейчас?
Сейчас, насколько я понимаю, он автоматически максимально доступное качество выдаёт.
Не держу его включенным постоянно, активирую по необходимости…
Так-то я торрентами пользуюсь, но когда нужно было скачать трек из вк, подумал, что было бы неплохо научиться делать это массово, да и друзья спрашивали, можно ли скачивать свою музыку сейчас, или нет.
Что если уже собрана коллекция в ВК?
Если кому-нибудь нужно разово скачать музыку или аудиофайл, то можно выловить прямую ссылку из http запросов, например, httpfox'ом для лисы
можно выловить прямую ссылку из http запросов, например, httpfox'ом для лисы
инспекторы с вкладкой Network есть из коробки в любом современном браузере
при наведении кнопочка появляется напротив каждого трека, битрейт и размер файла
А вам не страшно подключать такие штуки? С первым же обновлением расширения, туда может придти что-нибудь неподобающее. И хорошо если это всего-лишь какой-нибудь крипто-майнер или дополнительные блоки рекламы. Помню я как-то пытался посмотреть парочку из такого вот рода расширений (их не всегда пускают в store, так что они хостятся где-нибудь у себя), был сильно разочарован, ибо зло-обновлений ждать было не нужно, всё было уже в комплекте :)
Это расширение идет в комплекте с ЯБ, поэтому, если ему не доверять, то вообще ни одному нельзя доверять, что поставляет нам разработчик. Да и самому браузеру вместе с ОС нельзя доверять, если следовать этой логике, ибо каждый разработчик преследует свои цели, особенно разработчики бесплатных браузеров. В конечном счете, оно у меня всегда выключено и включаю лишь при необходимости.
Те, что хостятся у себя, я даже не рассматриваю.
Да и самому браузеру вместе с ОС нельзя доверять, если следовать этой логике,Браузерам уже давно многие не доверяют, держат их в какой-нибудь «песочнице» с поддельным окружением.
До поры до времени поможет. А потом ребята пойдут по стопам soundcloud и подобных проектов и начнут резать треки на 2-3 секунды блобы, обрабатывая их на лету ;)
конечно это будет чуть сложнее, но также один человек посидел вечер — разобрался — скинул на хабр и надо опять новый алгоритм придумывать/менять.
в корне проблему не решить. да и юзеры всегда или на другом сайте могут скачать или особо умные включат диктофон на компьютере и запишут :)
Насколько этот код легко можно будет извлечь изолированно от его framework-а тот ещё вопрос. Склейка, опять же, может быть весьма не тривиальной (например не весь blob используется, а только часть, reverse, xor и пр.). И можно менять это всё дело раз в час (например перед воспроизведением запрашивать хеш для распаковки фрагментов). Ну и т.д… Нафантазировать такую пургу, что мало кому захочется извращаться поддерживать это это, да ещё и обновляться при изменениях — несложно.
Другое дело, что тогда народ зайдёт с другой стороны. Например будет запускать браузерную вкладку и эмулировать в ней все необходимые клики а саму запись "снимать" на лету за счёт фейкового доступа к аудиокарте). Ой… Что-то меня понесло. Хотя если загуглить вопросы типа "how to detect selenium\phantom" то становится ясно, что тема не нова.
В общем если вопрос встанет ребром — то упороться можно будет на пятёрочку :) Самое меньшее — просто открыть network-tab в dev-tools-ах будет недостаточно )
Дык там же сплошные финалисты ACM работают. Тормозить не должно, это же будет постыдно, надо держать марку ;) Ещё небось напишут на asm.js или wasm. Может к тому времени и DRM какой подойдёт к релизу в браузерах.
Работать будет для любых сайтов и защититься практически невозможно, но для больших коллекций ждать придется долго.
Но на самом деле, можно сделать еще проще. Когда-то давно, была популярна качалка FlashGet. Она и сейчас есть, но старая версия была заточена под dialup модемы и там были очень полезные плюшки, которых нет в современных версиях. Например — пакетная закачка, там достаточно указать маску ссылки на первый файл и инкремент. Далее берем из вкладки браузера ссылку на первый кусок видео (которое разбито на 1000 кусков), смотрим, чем отличается ссылка на второй кусок. Часто бывает так, что имена файлов меняются просто инкрементом. Говорим FlashGet-у скачать файлы с 0001 по 1050 и он начинает пылесосить.
Я до сих пор его иногда использую, отключил проверку на обновление, чтобы он даже не думал об этих глупостях.
Все это, конечно, круто
Но смысла особого не видно. Разве нет кучи расширений для кучи браузеров или кучи подобных приложений в гугл плей? Очередной велосипед
Тащим музыку из ВК без публичного music API