Pull to refresh

Comments 44

>3 — битрейт?
Длительность в секундах.
>> Хорошо. Список мы получили. Теперь надо его отпарсить и скачать каждую песню по отдельности. Я решил не заморачиваться, и просто использовал регулярные выражения

www.youtube.com/watch?v=zFYAR42_DFc#t=0m34s

А simplejson.loads для кого был сделан? :)

Сам лично пользуюсь плагином VkOpt для Chrome и DownloadMaster'ом (эта связка еще и с нормальными именами файлов сохраняет).
VkOpt и без DM сохраняет с нормальными именами ^^
Просто DM помогает весь плейлист из 100500 песен по 10 файлов одновременно с 8 потоками на файл качать. Разгоняется по-максимуму и от ручной рутины избавляет.

А VkOpt да, по-уму ребята написали.
Помнится мне я 2 года назад задался той же целью, но сделал все на php, в один поток, однако скрипт умел добавлять в очередь песни, которые не удалось выкачать (недоступен сервер с этой песней или еще чего), затем эта очередь еще пару раз обходилась (за эти проходы еще 60-70% из этих песен выкачивалось), затем скрипт пытался выкачать подобные песни (подобные оставшимся, определялось по продолжительности песни и расстоянию Левенштейна в названии), таким образом выкачивалось абсолютно все :) На тот момент было ~1200 песен в коллекции, качалось около 9 часов :)
Связываться с vk.api не хотелось

На сколько помню, даже если бы хотелось, не получилось бы.
Точнее, с помощью VK API можно только получать информацию и управлять аудиозаписями.
А за статью спасибо, давно хотел скачать все свои скопом.
Можно получать вполне себе конкретную ссылку на аудиозапись, а значит использовать API не просто можно, а нужно. Пруфлинк :)
Сорри за невнимательность.
API линки на аудио отдаёт, но по правилам, качать с помощью АПИ нельзя.
Там как-то красиво это сказали, мол блокировать будут все приложения, которые предоставляют возможность скачать.
Можно, для личных целей писал «выкачивалку».
Потому что изучать инструменты сложнее, чем что-то долбить при помощи молотка и отвертки.
И что же тут инструменты? По-моему, нелепо городить огород, когда есть интерфейс, предоставляющий всё в структурированном виде.
Автор просто латентный извращенец.
Для api надо ведь получать id приложения, а это значит привязывать свой номер и делать дополнительные действия, разве нет? Да и как заметили, не спортивно это)
Абсолютно также, только придется изменить POST запрос, и выбираемые из ответа параметры.
Жаль, в скомпилированном варианте нет возможности задать урл самому, чтобы выкачивать коллекции других пользователей.
черт, не подумал. Ну это очень просто сделать в исходнике)
в getAudio когда совершаем POST запрос, надо вместо id передавать id того пользователя, чью коллекцию Вы хотите скачать.
А я обычно через «Тестовое приложение» (https://vk.com/app35569) в execute использую этот код:

var audio = API.audio.get();
return audio@.url;

А дальше поиском/заменой превращаю JSON в обычный список ссылок, который загоняю в какой-нибудь Download Master (либо через wget). Ну а проименовать песни на основе ID3 тегов в любимой форме (некоторые любят в квадратных скобках имя альбома указывать) можно например программой Mp3tag (http://www.mp3tag.de/en/)
Велосипеды. Они такие велосипеды.
Расскажу свой. Получаем список песен через
saveform chrome extension и этот список выкачиваем wget'ом.
На все про все — 5 минут.
О, почти то же самое делал, тоже через SaveFrom, но не список файлов, а плейлист, т.к. файлы имеют бессмысленные имена. Потом маленьким скриптом в linqPad выкачивал и сохранял с правильным именем.
vkontakte.dj/ скачает всю вашу коллекцию, присвоит правильные имена и раскидает по папочкам. Спасибо пожалуйста…
И соберет и заботливо сохранит пароли пользователей :) Отличная программа! (для спамеров)
Заводишь фейк и используешь его, делов то…
Регистрируешь фейк на фейковый телефон, зерегистрированный на фейковый паспорт.
VKMusiс выкачивает в несколько потоков с нормальными именами и с любой заданной страницы.
Правда на этот софт иногда реагируют антивирусы.
Однажды попросили скачать аудио-коллекцию с Одноклассников для прослушивания в авто. На компьютере уже стоял перехватчик медиа трафика, работающий по принципу «Все что попадается — все качаю», но тыкать кнопку Далее около тысячи раз не хотелось, поэтому в консоли отладчика браузера задал нажимать требуемую кнопку с определенным интервалом, далее уже вопрос времени, при этом закачка шла многопоточно. Основной недостаток такого подхода это лишенные смысла имена получившихся файлов.
Есть еще реализация на node.js+coffeescript. Но с небольшими отличиями:
— воспользоваться может кто угодно, кто может поставить node.js, то есть не нужно копаться в коде
— сохраняет всю инфо в локально в sqlite, и прогресс скачивания тоже, если вдруг остановилась загрузка
— показывает прогресс загрузки и гипотизу для времени конца загрузки, в минутах
— в разы меньше по объему кода ,)
И еще, раскладывает всю музыку по исполнителям в папки и генерит файл плейлиста m3u, в том порядке, который был на vk.com.
Теперь все.
Поделюсь еще раз ссылкой (уже отвечал в QA) на более дружественное к пользователю приложение на С#.

На английской Windows 7 приложение из топика, если запустить run.bat выдает сообщения в неверной кодировке «Осталось скачать 0 Число нитей 0». Еще мне показалось, что качать в несколько потоков не очень получается, так как получается слишком много пропусков, похоже, что есть ограничения на скачивания, поэтому в своем приложении не стал делать многопоточность.

Не очень понятно назначение приложения в таком виде, если квалификации пользователя хватает, на то, чтобы задать remixsid, то гораздо быстрее расширением браузера он может получить список файлов и скормить его менеджеру закачек.
Это конечно интересно, но может я чего не понимаю: зачем скачивать с вк, если можно скачать с торрентов в lossless?
Затем, что это способ быстро слить вашу личную подборку в авто, например.
Либо коллекцию заинтересовавшего пользователя — в плеер, для поиска новых имён и стилей.
Далеко не всё и не всегда можно скачать с торрентов в lossless.
У меня, к сожалению, не было вашего упорства.
Поэтому, для личного использования, писал простой скрипт на JS, который получает все ссылки из HTML. На странице /audio, с недавних пор, имеется следующая структура: pastebin.com/MK184cCy

Как можно увидеть, все ссылки легко добываются из скрытых input'ов, а информация о треке достаётся из div'ов под ними. Минусы данного подхода очевидны, но лично для своего пользования этого хватило.
А как бы отбирать самые лучшие новости и вытаскивать с них хотя бы названия. Вот тут интересны те, которые за 450+
:)
UFO landed and left these words here
Зря не используете API.
У меня пару лет назад получилось сделать то же самое несколько десятков строк.
Подскажите, как обработать в коде Питона ошибку 201. Access denied: Access to users audio is denied
Она возникает, когда доступ к списку аудио юзера ограничен.
Only those users with full accounts are able to leave comments. Log in, please.