Перед тем как приступить, необходимо скачать и установить node.js.
Установить зависимости. Переходим в корень проекта и выполняем:
npm i
И использовать браузер Google Chrome.
Открываем свой профиль, переходим в свои треки и прокручиваем страницу в самый низ.
После этого открываем консоль браузера (F12) и копируем туда то, что находится в файле src/grabTracksVk.js. Нажимаем Enter.
В консоли появится список ваших треков.
Здесь нам нужно получить токен для того, чтобы можно было обращаться к API яндекс диска.
Делается это по ссылке:
https://yandex.ru/dev/disk/poligon
Там нажать кнопку "Получить OAuth токен".
Далее нужно пройти в файл src/grabTracksYandexDisk.js.
Там найти строчку const token = ''
И вставить полученный токен. Например:
const token = 'AgAAAAACbokuAADL45FDSww2d3SDSffddwAAAAA';
Если вы хотите получить только названия групп, следует найти рядом стоящую переменную onlyArtists
и поменять ей значение на true
.
После чего открыть консоль в корне проекта, и запустить выполнение скрипта командой node ./src/grabTracksYandexDisk.js
Результат появится в файле collection-yandex-disk.txt.
Идём в файл src/grabTracksFileSystem.js.
Ищем строку const rootPath = ''
Пишем нужный путь, это отправная точка для скрипта. Например:
const rootPath = 'D:/Music/Metal';
Рядом находятся ещё две переменные.
mask
нужна для фильтрации файлов по расширению. В массив следует передать необходимые значения.
Например:
const mask = ['.mp3', '.flac'];
onlyArtist
работает, как и в прошлый раз. То есть, если вы хотите получить только названия групп, следует поменять ей значение на true
.
После чего открыть консоль в корне проекта, и запустить выполнение скрипта командой node ./src/grabTracksFileSystem.js
Результат появится в файле collection-fs.txt.
Алгоритм действий такой:
-
Заходим открываем яндекс.музыку, далее "моя коллекция" -> плейлисты, плейлист "мне нравится" -> нажимаем на название (теоретически, любой другой тоже можно). должен открыться плейлист на всё окно.
-
Открываем консоль браузера, вставляем туда код из файла "src/grabTracksYandexMusic" и нажимаем Enter.
-
Ждём
Во время работы скрипта лучше ничего не делать.
Прервать выполнение всегда можно, перезагрузив страницу.
После завершения выполнения скрипта в консоли распечатается список треков.
- Открываем интересующий нас плейлист
- Копируем содержимое файла "src/grabTracksYandexMusicByApi"
- Открываем консоль браузера
- Вставляем код и нажимаем Enter
- Ждем
- Результат будет выведен в консоль и скопирован в буфер обмена если это поддерживает ваш браузер
Здесь алгоритм действий такой же как и в случае с Вконтакте.
Открываем наш плейлист, прокручиваем страницу в самый низ и выполняем в консоли бразуера код из файла src/grabTracksAppleMusic.js.
В консоли появится список ваших треков.
- Идём в ютуб музыку. Далее "Библиотека" -> "Плейлисты" -> "Понравившееся".
- Открываем консоль браузера, вставляем туда код из файла "src/grabTracksYoutubeMusic" и нажимаем Enter.
- В консоли появится список ваших треков.
Сперва нам нужно получить авторизационный токен.
Идём сюда:
https://developer.spotify.com/dashboard
Нажимаем на кнопку "Create an app", даём имя нашему приложению.
Заходим внутрь него.
Здесь нам нужно забрать Client ID и Client Secret.
Ищем в файле src/getSpotifyToken.js переменные client_id
и client_secret
. Вставляем значения соответственно.
Далее, нам нужно задать redirect_uri.
На странице нашего приложения нажимаем кнопку "Edit settings".
Находим там "Redirect URIs", пишем туда http://localhost:8888/callback
.
Нажимаем кнопку "Save" внизу.
Теперь мы готовы перенести наши треки!
Создаём файлик в корне проекта с именем tracks.txt, вставляем в него список треков, полученный ранее. Треки должны разделяться вертикальным пробелом между собой.
Например:
Slaughter To Prevail - Misery Sermon
Grim Christmas - Jingle Bells
Novembers Doom - Rain
Далее запускаем скрипт для получения токена.
node ./src/getSpotifyToken.js
Откроется браузер с окном авторизации Spotify. Нам нужно произвести логин и дать наше согласие на доступ.
После чего появятся две строчки:
access token: <значение токена>
и refresh token: <значение токена>
.
Нас интересует первый.
Копируем его значение, кликнув на него.
Далее идём в файлик src/addTracksToSpotify.js.
Находим там строку const accessToken = ''
.
И вставляем туда наш токен.
После чего запускаем скрипт командой:
node ./src/addTracksToSpotify.js
И ждём.
По завершению выполнения скрипта в вашем аккаунте появится новый плейлист с перенесёнными треками.
Также появится файлик spotify-tracks-no-found.txt, в котором будет список ненайденных в Spotify треков.
Если вы хотите добавить новых исполнителей, то алгоритм точно такой же, только скрипт другой (в коде тоже отличий мало).
Создаём файлик в корне проекта с именем artists.txt, вставляем в него список исполнителей.
Они должны разделяться вертикальным пробелом между собой.
Например:
Bob Dylan
Slaughter To Prevail
Novembers Doom
Далее всё то же самое, что и с треками, только файл нам нужен src/addArtistsToSpotify.js.
После вставки токена, просто запускаем скрипт командой: node ./src/addTracksToSpotify.js
В вашем аккаунте появятся новые исполнители.
Но если вдруг кого-то не нашлось, он будет помещён в файл spotify-artists-no-found.txt.