Добавлен пример получения информации об альбоме и вывода списка его треков
このコミットが含まれているのは:
コミット
38abd035c5
|
@ -3,6 +3,8 @@
|
|||
В этой папке есть небольшие примеры, чтобы показать, как выглядят скрипты,
|
||||
написанные с помощью `yandex-music-api`.
|
||||
|
||||
- [get_album_with_tracks](get_album_with_tracks.py) – пример получения информации
|
||||
об альбоме. Пример отображения треков вместе с исполнителями и названием.
|
||||
- [proxy](proxy.py) – пример использования прокси, когда у пользователя нет подписки
|
||||
(так как Яндекс.Музыка недоступна за пределами СНГ. Актуально для расположения
|
||||
скрипта на зарубежном сервере). При проблемах с авторизацией или токеном
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
import os
|
||||
|
||||
from yandex_music import Client
|
||||
|
||||
# без авторизации недоступен список треков альбома
|
||||
TOKEN = os.environ.get('TOKEN')
|
||||
ALBUM_ID = 2832563
|
||||
|
||||
client = Client(TOKEN)
|
||||
|
||||
album = client.albums_with_tracks(ALBUM_ID)
|
||||
tracks = []
|
||||
for i, volume in enumerate(album.volumes):
|
||||
if len(album.volumes) > 1:
|
||||
tracks.append(f'💿 Диск {i + 1}')
|
||||
tracks += volume
|
||||
|
||||
text = 'АЛЬБОМ\n\n'
|
||||
text += f'{album.title}\n'
|
||||
text += f"Исполнитель: {', '.join([artist.name for artist in album.artists])}\n"
|
||||
text += f'{album.year} · {album.genre}\n'
|
||||
|
||||
cover = album.cover_uri
|
||||
if cover:
|
||||
text += f'Обложка: {cover.replace("%%", "400x400")}\n\n'
|
||||
|
||||
text += 'Список треков:'
|
||||
|
||||
print(text)
|
||||
|
||||
for track in tracks:
|
||||
if isinstance(track, str):
|
||||
print(track)
|
||||
else:
|
||||
artists = ''
|
||||
if track.artists:
|
||||
artists = ' - ' + ', '.join(artist.name for artist in track.artists)
|
||||
print(track.title + artists)
|
読み込み中…
新しいイシューから参照