- PVSM.RU - https://www.pvsm.ru -
Не новость, что почти каждый пользователь любой социальной сети имеет приличный список аудиозаписей, который так жалко потерять. Было бы меньше беспокойства, если вы имеете доступ к своим любимым аудиозаписям оффлайн. Конечно, существует несколько расширений для браузеров и десктопных приложений, решающих данную проблему. На этой ноте я и пришел к желанию реализовать собственный «велосипед».
Первым делом нам необходимо авторизоваться в приложении и получить список аудиозаписей с URL'ами. Далее «сливаем» все к себе на жесткий диск.
Приступаем. Запускаем Microsoft Visual Studio и создаем новое приложение WPF. Не забываем указать версию платформы .NET Framework. Для использования библиотеки VkNet требуется .NET Framework 4.0. При помощи NuGet устанавливаем пакет «Vkontakte API for .NET».
Для того авторизоваться в приложении будем использовать следующую процедуру:
public void VkNet.VkApi.Authorize(int appId, string email, string password, Settings settings);
После успешной авторизации можем смело получать список аудиозаписей функцией:
public ReadOnlyCollection<Audio> VkNet.VkApi.Get(long uid, long? albumId = null, IEnumerable<long> aids = null, int? count = null, int? offset = null);
Для этого метода нам понадобится идентификатор пользователя, который провел авторизацию. Взять его можно в свойстве UserId.
На этом этапе возникает вопрос: «куда сохранять загруженные файлы?». Чтобы на первых парах не заморачиваться — воспользуемся переменной среды Windows. Для точки сбора нашей музыки идеально подойдет %USERPROFILE%, она хранит путь до домашней папки пользователя. Скачивать будем средствами WebClient:
public void WebClient.DownloadFileAsync(Uri address, string fileName);
С помощью VkNet можно написать достаточно хороший загрузчик музыки из vk.com. Это сэкономит кучу времени, особенно новичкам. Однако важно помнить, что использование сторонних библиотек вызывает сильную зависимость.
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/pesochnitsa/74902
Ссылки в тексте:
[1] документация Вконтакте API: http://vk.com/dev/standalone
[2] документация VkNet: https://vknet.github.io/vk/
Нажмите здесь для печати.