Как получить свою статистику из Яндекс.Музыки
Предыстория
У сервиса "Яндекс.Музыка" есть прекрасная страница "История". В ней показаны треки (до 2000), ранее воспроизведённые вами на всех устройствах под вашим аккаунтом. Для активного пользователя листать вручную и получать информацию, а уж тем более систематизировать в таком формате очень не удобно. А до аналитики и статистики иногда чешется мозг. Благодаря столь сильному зуду, я наткнулся на статью на Хабре.
Получаем информацию от Яндекс.Музыки
Для начала сбора статистики необходимо установить на свой компьютер Python 3.7 (ссылка на официальном сайте). Желательно сразу настроить переменную окружения PATH (чтобы в будущем не набирать лишних управляющих слов в командной строке).
После установки Python скачиваем архив с Гитхаба и распаковываем. Далее заходим в распакованную папку, запускаем командную строку SHIFT+ПКМ в пустом месте папки Открыть окно команд и вводим команду:
pip install -r requirements.txt
После завершения всех операций загрузки и установки запускаем скачивание данных с сервера командой
python downloader.py --login=login --password=password
где вместо =login вводим логин от аккаунта без домена и вместо =password вводим пароль.
В папке со скриптом должен появиться файл statistics.csv - это и есть наш архив треков!
Анализируем данные
В той же командной строке запускаем строку
ipython notebook
Открывается окно в браузере, где необходимо выбрать statistics.ipynb. Откроется новая вкладка, где необходимо нажать
Kernel -> Restart & Run All
Готово! Наслаждаемся полученными данными. На текущий момент доступны:
- Самые прослушиваемые исполнители;
- Самые прослушиваемые треки исполнителя;
- Самые прослушиваемые песни;
- Самые прослушиваемые альбомы;
- Самые прослушиваемые треки исполнителя;
- Самые прослушиваемые треки альбома;
- Самые прослушиваемые жанры;
- Распределение треков по году выпуска;
- Время, за которое были прослушаны треки.
Известные ошибки
В данный момент при обработке statistics.ipynb возможна ошибка
Error tokenizing data. C error: Expected 9 fields in line X, saw Y.
Скорее всего, название трека в строке X содержит символ кавычек ("). Найдите и отредактируйте эту строчку напрямую через Excel, NotePad++ или любой другой удобный редактор. Удачи в анализе ;)