Плейлисты: Ссылка на трек с Яндекс Музыки (album 39097212). Как извлечь метаданные артиста через API Яндекс Музыки?

## Как извлечь метаданные артиста через API Яндекс Музыки

Яндекс Музыка предоставляет неофициальный (но широко используемый) API, доступ к которому можно получить через библиотеку **yandex-music-api** для Python. Рассмотрим, как извлечь метаданные артиста, зная идентификатор альбома — в данном случае `39097212`.

### Шаг 1. Установка библиотеки

bash
pip install yandex-music

### Шаг 2. Авторизация и получение данных об альбоме

python
from yandex_music import Client

# Авторизация по токену
client = Client(‘ВАШ_ТОКЕН’).init()

# Получаем информацию об альбоме
album_id = 39097212
album = client.albums_with_tracks(album_id)

print(‘Название альбома:’, album.title)
print(‘Год выпуска:’, album.year)
print(‘Жанр:’, album.genre)

# Извлекаем метаданные артиста
for artist in album.artists:
print(‘ID артиста:’, artist.id)
print(‘Имя артиста:’, artist.name)
print(‘Обложка:’, artist.cover.uri if artist.cover else ‘нет’)

### Шаг 3. Получение расширенных метаданных артиста

Если нужны подробные данные (биография, жанры, количество подписчиков), используйте метод `artists`:

python
artist_id = album.artists[0].id
artist_info = client.artists(artist_id)

for info in artist_info:
print(‘Имя:’, info.name)
print(‘Жанры:’, info.genres)
print(‘Рейтинг:’, info.ratings)
print(‘Ссылки:’, info.links)

### Шаг 4. Формирование строки CSV

Для сохранения метаданных в CSV-формат:

python
import csv

album = client.albums_with_tracks(39097212)
artist = album.artists[0]

row = [
album.id,
album.title,
album.year,
album.genre,
artist.id,
artist.name
]

with open(‘yandex_music_meta.csv’, ‘w’, newline=», encoding=’utf-8′) as f:
writer = csv.writer(f)
writer.writerow([‘album_id’, ‘album_title’, ‘year’, ‘genre’, ‘artist_id’, ‘artist_name’])
writer.writerow(row)

**Пример одной строки CSV для альбома 39097212:**

39097212,Название альбома,2023,pop,12345678,Имя Артиста

### Как получить токен Яндекс Музыки

Токен можно получить через OAuth Яндекса. Используйте `yandex_music.Client.from_credentials(login, password)` или авторизуйтесь через браузер и извлеките токен из cookies/localStorage Яндекс ID.

### Важные замечания

— API является неофициальным и может изменяться без предупреждения.
— Соблюдайте лимиты запросов, чтобы не получить бан по IP.
— Для коммерческого использования данных необходимо соглашение с Яндексом.
— Поле `cover.uri` возвращает шаблон URL — замените `%%` на нужный размер, например `400×400`.


Задайте вопрос нейросети

Не нашли ответ? Спросите ИИ — он подготовит развёрнутую статью.