yandex_music.track.track#

class yandex_music.track.track.Track(id: str | int, title: str | None = None, available: bool | None = None, artists: List[Artist] = None, albums: List[Album] = None, available_for_premium_users: bool | None = None, lyrics_available: bool | None = None, poetry_lover_matches: List[PoetryLoverMatch] = None, best: bool | None = None, real_id: str | int | None = None, og_image: str | None = None, type: str | None = None, cover_uri: str | None = None, major: Major | None = None, duration_ms: int | None = None, storage_dir: str | None = None, file_size: int | None = None, substituted: Track | None = None, matched_track: Track | None = None, normalization: Normalization | None = None, error: str | None = None, can_publish: bool | None = None, state: str | None = None, desired_visibility: str | None = None, filename: str | None = None, user_info: User | None = None, meta_data: MetaData | None = None, regions: List[str] | None = None, available_as_rbt: bool | None = None, content_warning: str | None = None, explicit: bool | None = None, preview_duration_ms: int | None = None, available_full_without_permission: bool | None = None, version: str | None = None, remember_position: bool | None = None, background_video_uri: str | None = None, short_description: str | None = None, is_suitable_for_children: bool | None = None, track_source: str | None = None, available_for_options: List[str] | None = None, r128: R128 | None = None, lyrics_info: LyricsInfo | None = None, track_sharing_flag: str | None = None, client: Client | None = None)#

Bases: YandexMusicObject

Класс, представляющий трек.

Note

Известные значения поля content_warning: explicit.

Известные значения поля type: music.

Известные значения поля track_sharing_flag: VIDEO_ALLOWED, COVER_ONLY.

Известные значения поля track_source: OWN, OWN_REPLACED_TO_UGC.

Известные значения поля available_for_options: bookmate.

Поля can_publish, state, desired_visibility, filename, user_info доступны только у треков что были загружены пользователем.

Обычно у подкастов поле remember_position == True, а у треков remember_position == False.

Полное описание можно получить используя Track.get_supplement().

id#

Уникальный идентификатор.

Type:

int | str

title#

Название.

Type:

str, optional

available#

Доступен ли для прослушивания.

Type:

bool, optional

artists#

Исполнители.

Type:

list из yandex_music.Artist, optional

albums#

Альбомы.

Type:

list из yandex_music.Album, optional

available_for_premium_users#

Доступен ли для пользователей с подпиской.

Type:

bool, optional

lyrics_available#

Доступен ли текст песни.

Type:

bool, optional

poetry_lover_matches#

Список слов TODO.

Type:

list из yandex_music.PoetryLoverMatch, optional

best#

Лучшей ли трек TODO.

Type:

bool, optional

real_id#

TODO.

Type:

int | str, optional

og_image#

Ссылка на превью Open Graph.

Type:

str, optional

type#

Тип.

Type:

str, optional

cover_uri#

Ссылка на изображение с обложкой.

Type:

str, optional

major#

Мейджор-лейбл.

Type:

yandex_music.Major, optional

duration_ms#

Длительность трека в миллисекундах.

Type:

int, optional

storage_dir#

В какой папке на сервере хранится файл TODO.

Type:

str, optional

file_size#

Размер файла. TODO добавить единицу измерения.

Type:

int, optional

substituted#

Замещённый трек.

Type:

yandex_music.Track, optional

matched_track#

Соответствующий трек TODO.

Type:

yandex_music.Track, optional

normalization#

Значения для нормализации трека.

Type:

list из yandex_music.Normalization, optional

error#

Сообщение об ошибке.

Type:

str, optional

can_publish#

Может ли быть опубликован.

Type:

bool, optional

state#

Состояние, например, playable.

Type:

str, optional

desired_visibility#

Видимость трека.

Type:

str, optional

filename#

Название файла.

Type:

str, optional

user_info#

Информация о пользователе, который загрузил трек.

Type:

yandex_music.User, optional

meta_data#

Информация о метаданных трека.

Type:

yandex_music.MetaData, optional

regions#

Регион TODO.

Type:

list из str, optional

available_as_rbt#

TODO.

Type:

bool, optional

content_warning#

Тип откровенного контента.

Type:

str, optional

explicit#

Содержит ли откровенный контент.

Type:

bool, optional

preview_duration_ms#

TODO.

Type:

int, optional

available_full_without_permission#

Доступен ли без подписки.

Type:

bool, optional

version#

Версия.

Type:

str, optional

remember_position#

Если True, то запоминается последняя позиция прослушивания, иначе позиция не запоминается.

Type:

bool, optional

background_video_uri#

Ссылка на видеошот.

Type:

str, optional

short_description#

Краткое описание эпизода подкаста.

Type:

str, optional

is_suitable_for_children#

Подходит ли для детей TODO.

Type:

bool, optional

track_source#

Источник трека.

Type:

str, optional

available_for_options#

Возможные опции для трека.

Type:

list из str, optional

r128#

Параметры нормализации громкости трека в соответствии с рекомендацией EBU R 128.

Type:

yandex_music.R128, optional

lyrics_info#

Данные о наличии текстов трека.

Type:

yandex_music.LyricsInfo, optional

track_sharing_flag#

TODO.

Type:

str, optional

client#

Клиент Yandex Music.

Type:

yandex_music.Client

albums: List[Album] = None#
artists: List[Artist] = None#
artistsName() List[str]#

Псевдоним для artists_name

artists_name() List[str]#

Получает имена всех исполнителей.

Returns:

Имена исполнителей.

Return type:

list из str

available: bool | None = None#
available_as_rbt: bool | None = None#
available_for_options: List[str] | None = None#
available_for_premium_users: bool | None = None#
available_full_without_permission: bool | None = None#
background_video_uri: str | None = None#
best: bool | None = None#
can_publish: bool | None = None#
client: Client | None = None#
content_warning: str | None = None#
cover_uri: str | None = None#
classmethod de_json(data: dict, client: Client) Track | None#

Десериализация объекта.

Parameters:
  • data (dict) – Поля и значения десериализуемого объекта.

  • client (yandex_music.Client, optional) – Клиент Yandex Music.

Returns:

Трек.

Return type:

yandex_music.Track

classmethod de_list(data: list, client: Client) List[Track]#

Десериализация списка объектов.

Parameters:
  • data (list) – Список словарей с полями и значениями десериализуемого объекта.

  • client (yandex_music.Client, optional) – Клиент Yandex Music.

Returns:

Треки.

Return type:

list из yandex_music.Track

desired_visibility: str | None = None#
dislike(*args, **kwargs) bool#

Сокращение для:

client.users_likes_tracks_remove(track.id, user.id *args, **kwargs)

async dislikeAsync(*args, **kwargs) bool#

Псевдоним для dislike_async

async dislike_async(*args, **kwargs) bool#

Сокращение для:

await client.users_likes_tracks_remove(track.id, user.id *args, **kwargs)

download(filename: str, codec: str = 'mp3', bitrate_in_kbps: int = 192) None#

Загрузка трека.

Note

Известные значения codec: mp3, aac.

Известные значения bitrate_in_kbps: 64, 128, 192, 320.

Parameters:
  • filename (str) – Путь для сохранения файла с названием и расширением.

  • codec (str, optional) – Кодек из доступных в self.download_info.

  • bitrate_in_kbps (int, optional) – Битрейт из доступных в self.download_info для данного кодека.

Raises:

yandex_music.exceptions.InvalidBitrateError – Если в self.download_info не найден подходящий трек.

async downloadAsync(filename: str, codec: str = 'mp3', bitrate_in_kbps: int = 192) None#

Псевдоним для download_async

downloadBytes(codec: str = 'mp3', bitrate_in_kbps: int = 192) bytes#

Псевдоним для download_bytes

async downloadBytesAsync(codec: str = 'mp3', bitrate_in_kbps: int = 192) bytes#

Псевдоним для download_bytes_async

downloadCover(filename: str, size: str = '200x200') None#

Псевдоним для download_cover

async downloadCoverAsync(filename: str, size: str = '200x200') None#

Псевдоним для download_cover_async

downloadCoverBytes(size: str = '200x200') bytes#

Псевдоним для download_cover_bytes

async downloadCoverBytesAsync(size: str = '200x200') bytes#

Псевдоним для download_cover_bytes_async

downloadOgImage(filename: str, size: str = '200x200') None#

Псевдоним для download_og_image

async downloadOgImageAsync(filename: str, size: str = '200x200') None#

Псевдоним для download_og_image_async

downloadOgImageBytes(size: str = '200x200') bytes#

Псевдоним для download_og_image_bytes

async downloadOgImageBytesAsync(size: str = '200x200') bytes#

Псевдоним для download_og_image_bytes_async

async download_async(filename: str, codec: str = 'mp3', bitrate_in_kbps: int = 192) None#

Загрузка трека.

Note

Известные значения codec: mp3, aac.

Известные значения bitrate_in_kbps: 64, 128, 192, 320.

Parameters:
  • filename (str) – Путь для сохранения файла с названием и расширением.

  • codec (str, optional) – Кодек из доступных в self.download_info.

  • bitrate_in_kbps (int, optional) – Битрейт из доступных в self.download_info для данного кодека.

Raises:

yandex_music.exceptions.InvalidBitrateError – Если в self.download_info не найден подходящий трек.

download_bytes(codec: str = 'mp3', bitrate_in_kbps: int = 192) bytes#

Загрузка трека и возврат в виде байтов.

Note

Известные значения codec: mp3, aac.

Известные значения bitrate_in_kbps: 64, 128, 192, 320.

Parameters:
  • codec (str, optional) – Кодек из доступных в self.download_info.

  • bitrate_in_kbps (int, optional) – Битрейт из доступных в self.download_info для данного кодека.

Raises:

yandex_music.exceptions.InvalidBitrateError – Если в self.download_info не найден подходящий трек.

Returns:

Трек в виде байтов.

Return type:

bytes

async download_bytes_async(codec: str = 'mp3', bitrate_in_kbps: int = 192) bytes#

Загрузка трека и возврат в виде байтов.

Note

Известные значения codec: mp3, aac.

Известные значения bitrate_in_kbps: 64, 128, 192, 320.

Parameters:
  • codec (str, optional) – Кодек из доступных в self.download_info.

  • bitrate_in_kbps (int, optional) – Битрейт из доступных в self.download_info для данного кодека.

Raises:

yandex_music.exceptions.InvalidBitrateError – Если в self.download_info не найден подходящий трек.

Returns:

Трек в виде байтов.

Return type:

bytes

download_cover(filename: str, size: str = '200x200') None#

Загрузка обложки.

Parameters:
  • filename (str) – Путь для сохранения файла с названием и расширением.

  • size (str, optional) – Размер обложки.

async download_cover_async(filename: str, size: str = '200x200') None#

Загрузка обложки.

Parameters:
  • filename (str) – Путь для сохранения файла с названием и расширением.

  • size (str, optional) – Размер обложки.

download_cover_bytes(size: str = '200x200') bytes#

Загрузка обложки и возврат в виде байтов.

Parameters:

size (str, optional) – Размер обложки.

Returns:

Обложка в виде байтов.

Return type:

bytes

async download_cover_bytes_async(size: str = '200x200') bytes#

Загрузка обложки и возврат в виде байтов.

Parameters:

size (str, optional) – Размер обложки.

Returns:

Обложка в виде байтов.

Return type:

bytes

download_og_image(filename: str, size: str = '200x200') None#

Загрузка обложки.

Предпочтительнее использовать self.download_cover().

Parameters:
  • filename (str) – Путь для сохранения файла с названием и расширением.

  • size (str, optional) – Размер обложки.

async download_og_image_async(filename: str, size: str = '200x200') None#

Загрузка обложки.

Предпочтительнее использовать self.download_cover_async().

Parameters:
  • filename (str) – Путь для сохранения файла с названием и расширением.

  • size (str, optional) – Размер обложки.

download_og_image_bytes(size: str = '200x200') bytes#

Загрузка обложки и возврат в виде байтов.

Предпочтительнее использовать self.download_cover().

Parameters:

size (str, optional) – Размер обложки.

Returns:

Обложка в виде байтов.

Return type:

bytes

async download_og_image_bytes_async(size: str = '200x200') bytes#

Загрузка обложки и возврат в виде байтов.

Предпочтительнее использовать self.download_cover_async().

Parameters:

size (str, optional) – Размер обложки.

Returns:

Обложка в виде байтов.

Return type:

bytes

duration_ms: int | None = None#
error: str | None = None#
explicit: bool | None = None#
file_size: int | None = None#
filename: str | None = None#
getCoverUrl(size: str = '200x200') str#

Псевдоним для get_cover_url

getDownloadInfo(get_direct_links: bool = False) List[DownloadInfo]#

Псевдоним для get_download_info

async getDownloadInfoAsync(get_direct_links: bool = False) List[DownloadInfo]#

Псевдоним для get_download_info_async

getLyrics(*args, **kwargs) TrackLyrics | None#

Псевдоним для get_lyrics

async getLyricsAsync(*args, **kwargs) TrackLyrics | None#

Псевдоним для get_lyrics_async

getOgImageUrl(size: str = '200x200') str#

Псевдоним для get_og_image_url

getSpecificDownloadInfo(codec: str, bitrate_in_kbps: int) DownloadInfo | None#

Псевдоним для get_specific_download_info

async getSpecificDownloadInfoAsync(codec: str, bitrate_in_kbps: int) DownloadInfo | None#

Псевдоним для get_specific_download_info_async

getSupplement(*args, **kwargs) Supplement | None#

Псевдоним для get_supplement

async getSupplementAsync(*args, **kwargs) Supplement | None#

Псевдоним для get_supplement_async

get_cover_url(size: str = '200x200') str#

Возвращает URL обложки.

Parameters:

size (str, optional) – Размер обложки.

Returns:

URL обложки.

Return type:

str

get_download_info(get_direct_links: bool = False) List[DownloadInfo]#

Сокращение для:

client.tracks_download_info(self.track_id, get_direct_links)

async get_download_info_async(get_direct_links: bool = False) List[DownloadInfo]#

Сокращение для:

await client.tracks_download_info(self.track_id, get_direct_links)

get_lyrics(*args, **kwargs) TrackLyrics | None#

Сокращение для:

client.tracks_lyrics(track.id, *args, **kwargs)

async get_lyrics_async(*args, **kwargs) TrackLyrics | None#

Сокращение для:

client.tracks_lyrics(track.id, *args, **kwargs)

get_og_image_url(size: str = '200x200') str#

Возвращает URL OG обложки.

Parameters:

size (str, optional) – Размер обложки.

Returns:

URL обложки.

Return type:

str

get_specific_download_info(codec: str, bitrate_in_kbps: int) DownloadInfo | None#

Возвращает вариант загрузки по критериям.

Parameters:
  • codec (str, optional) – Кодек из доступных в self.download_info.

  • bitrate_in_kbps (int, optional) – Битрейт из доступных в self.download_info для данного кодека.

Returns:

Вариант загрузки трека или None.

Return type:

yandex_music.DownloadInfo | None

async get_specific_download_info_async(codec: str, bitrate_in_kbps: int) DownloadInfo | None#

Возвращает вариант загрузки по критериям.

Parameters:
  • codec (str, optional) – Кодек из доступных в self.download_info.

  • bitrate_in_kbps (int, optional) – Битрейт из доступных в self.download_info для данного кодека.

Returns:

Вариант загрузки трека или None.

Return type:

yandex_music.DownloadInfo | None

get_supplement(*args, **kwargs) Supplement | None#

Сокращение для:

client.track_supplement(track.id, *args, **kwargs)

async get_supplement_async(*args, **kwargs) Supplement | None#

Сокращение для:

await client.track_supplement(track.id, *args, **kwargs)

id: str | int#
is_suitable_for_children: bool | None = None#
like(*args, **kwargs) bool#

Сокращение для:

client.users_likes_tracks_add(track.id, user.id, *args, **kwargs)

async likeAsync(*args, **kwargs) bool#

Псевдоним для like_async

async like_async(*args, **kwargs) bool#

Сокращение для:

await client.users_likes_tracks_add(track.id, user.id, *args, **kwargs)

lyrics_available: bool | None = None#
lyrics_info: LyricsInfo | None = None#
major: Major | None = None#
matched_track: Track | None = None#
meta_data: MetaData | None = None#
normalization: Normalization | None = None#
og_image: str | None = None#
poetry_lover_matches: List[PoetryLoverMatch] = None#
preview_duration_ms: int | None = None#
r128: R128 | None = None#
real_id: str | int | None = None#
regions: List[str] | None = None#
remember_position: bool | None = None#
short_description: str | None = None#
state: str | None = None#
storage_dir: str | None = None#
substituted: Track | None = None#
title: str | None = None#
property trackId: str#

Псевдоним для track_id

property track_id: str#

Уникальный идентификатор трека состоящий из его номера и номера альбома или просто из номера.

Type:

str

track_sharing_flag: str | None = None#
track_source: str | None = None#
type: str | None = None#
user_info: User | None = None#
version: str | None = None#