From 832490acc2d3ac9da360e34ab3647fbac914d01f Mon Sep 17 00:00:00 2001 From: Gleb Liutsko Date: Fri, 5 Feb 2021 19:46:04 +0400 Subject: [PATCH 1/2] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=20=D0=BF=D1=80=D0=B8=D0=BC=D0=B5=D1=80=20lyrics=5Fplaying=5Ftr?= =?UTF-8?q?ack.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/README.md | 2 ++ examples/lyrics_playing_track.py | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 examples/lyrics_playing_track.py diff --git a/examples/README.md b/examples/README.md index bb65374..38eee15 100644 --- a/examples/README.md +++ b/examples/README.md @@ -27,6 +27,8 @@ - [daily_playlist_updater](daily_playlist_updater.py) – пример [@catinapoke](https://github.com/catinapoke) без внесения правок. Отмечает плейлист дня как прослушанный сегодня (добавляет +1 к счетчику). +- [lyrics_playing_track](lyrics_playing_track.py) - пример + [@glebliutsko](https://github.com/glebliutsko). Выводит текущий играемый трек и его текст. Все примеры лицензированы в соответствии с [Лицензией CC0](https://github.com/MarshalX/yandex-music-api/blob/master/examples/LICENSE.txt) diff --git a/examples/lyrics_playing_track.py b/examples/lyrics_playing_track.py new file mode 100644 index 0000000..6e3febb --- /dev/null +++ b/examples/lyrics_playing_track.py @@ -0,0 +1,25 @@ +import os + +from yandex_music import Client + + +TOKEN = os.environ.get('TOKEN') + +client = Client(TOKEN) + +queues = client.queues_list() +# Последняя проигрываемая очередь всегда в начале списка +last_queue = client.queue(queues[0].id) + +last_track_id = last_queue.tracks[last_queue.current_index] +last_track = client.tracks(f'{last_track_id.track_id}:{last_track_id.album_id}')[0] + +artists = ', '.join([i.name for i in last_track.artists]) +title = last_track.title +print(f'Сейчас играет: {artists} - {title}') + +supplement = last_track.get_supplement() +if supplement.lyrics: + print(supplement.lyrics.full_lyrics) +else: + print('Текст песни отсутствует') From d517b8bc754ee57d05a06ef38bc098250d5844cb Mon Sep 17 00:00:00 2001 From: Gleb Liutsko Date: Fri, 5 Feb 2021 20:39:57 +0400 Subject: [PATCH 2/2] =?UTF-8?q?=D0=9F=D1=80=D0=B8=D0=BC=D0=B5=D1=80=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D0=BD=D1=8F=D1=82=20=D0=B2=D1=8B=D1=88=D0=B5?= =?UTF-8?q?=20=D0=B2=20=D1=81=D0=BF=D0=B8=D1=81=D0=BA=D0=B5=20=D0=94=D0=BE?= =?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20=D0=B8=D1=81=D0=BF=D0=BE=D0=BB?= =?UTF-8?q?=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D1=81=D0=BE?= =?UTF-8?q?=D0=BA=D1=80=D0=B0=D1=89=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=B8=D0=B7?= =?UTF-8?q?=20#407?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/README.md | 5 +++-- examples/lyrics_playing_track.py | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/examples/README.md b/examples/README.md index 38eee15..22f1eb8 100644 --- a/examples/README.md +++ b/examples/README.md @@ -21,14 +21,15 @@ использование клиента без авторизации. - [like_and_dislike](like_and_dislike.py) – пример установки отметок "Мне нравится" и "Мне не нравится" на альбомы, треки, плейлисты и исполнителей. +- [lyrics_playing_track](lyrics_playing_track.py) - пример работы с очередями и получением текста + трека от [@glebliutsko](https://github.com/glebliutsko). Выводит текущий проигрываемый трек + и его текст. - [player](player.py) – пример [@OwnageIsMagic](https://github.com/OwnageIsMagic). Консольный плеер. Авторизация, получение плейлиста пользователя, список понравившихся треков и их загрузка. Воспроизведение через установленный плеер. - [daily_playlist_updater](daily_playlist_updater.py) – пример [@catinapoke](https://github.com/catinapoke) без внесения правок. Отмечает плейлист дня как прослушанный сегодня (добавляет +1 к счетчику). -- [lyrics_playing_track](lyrics_playing_track.py) - пример - [@glebliutsko](https://github.com/glebliutsko). Выводит текущий играемый трек и его текст. Все примеры лицензированы в соответствии с [Лицензией CC0](https://github.com/MarshalX/yandex-music-api/blob/master/examples/LICENSE.txt) diff --git a/examples/lyrics_playing_track.py b/examples/lyrics_playing_track.py index 6e3febb..b23e831 100644 --- a/examples/lyrics_playing_track.py +++ b/examples/lyrics_playing_track.py @@ -11,10 +11,10 @@ queues = client.queues_list() # Последняя проигрываемая очередь всегда в начале списка last_queue = client.queue(queues[0].id) -last_track_id = last_queue.tracks[last_queue.current_index] -last_track = client.tracks(f'{last_track_id.track_id}:{last_track_id.album_id}')[0] +last_track_id = last_queue.get_current_track() +last_track = last_track_id.fetch_track() -artists = ', '.join([i.name for i in last_track.artists]) +artists = ', '.join(last_track.artists_name()) title = last_track.title print(f'Сейчас играет: {artists} - {title}')