Экспорт плейлиста Яндекс.Музыки?

Недавно я решил перейти на Spotify и я хочу перенести свою музыку из Я.Музыки туда. С сервисами по импорту я разобрался: soundiiz.com, playlist-converter.net. Я хочу узнать, как экспортировать плейлист "Мне нравится" в виде файла плейлиста с расширением .pls, .m3u или хотя бы в виде текстового файла, где построчно будут написаны композиции в виде "Исполнитель" - "Название композиции"
  • Вопрос задан
  • 17316 просмотров
Пригласить эксперта
Ответы на вопрос 4
@aleks007smol
Вот небольшой скрипт на PHP

<?php

// https://music.yandex.ru/users/{owner}/playlists/{kinds}
$uriRaw = 'https://music.yandex.ru/users/vadim.loxx/playlists/1073';
$uriRaw = explode('/', $uriRaw);

$owner = $uriRaw[4];
$kinds = $uriRaw[6];

$uri = 'https://music.yandex.ru/handlers/playlist.jsx?owner=' . $owner . '&kinds=' . $kinds;

$responseRaw = file_get_contents($uri);
$response = json_decode($responseRaw);

$playlistTitle = $response->playlist->title;
$tracks = $response->playlist->tracks;

file_exists($playlistTitle . '.txt') ? unlink($playlistTitle . '.txt') : null;

// Генерация с нумерацией или без нее
$flagNums = true;
$numSong = 1;

foreach ($tracks as $track) {

    $artistsNames = [];
    foreach ($track->artists as $artist) {
        $artistsNames[] = $artist->name;
    }

    $artistsNames = implode(', ', $artistsNames);

    $flagNums ? $fullTrack = $numSong++ . ') ' . $artistsNames . ' - ' . $track->title . PHP_EOL :
        $fullTrack = $artistsNames . ' - ' . $track->title . PHP_EOL;

    file_put_contents($playlistTitle . '.txt', $fullTrack, FILE_APPEND);
}

echo 'Done!';
echo '<br>';
echo '<a href="' . $playlistTitle . '.txt">Список песен</a>';
Ответ написан
ivanovaalina
@ivanovaalina
Здесь может помочь сервис https://musconv.com
Ответ написан
Комментировать
@Shiftuia
Java-программист
Использовал скрипт на php от aleks007smol
После пришлось быстро что-то изобразить на python, чтобы импортировать в spotify этот список

Коммиты и пул реквесты приветствуются
https://github.com/Shiftuia/spotify-liker
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы