Добавлен пример получения информации об альбоме и вывода списка его треков
このコミットが含まれているのは:
コミット
38abd035c5
|
@ -3,6 +3,8 @@
|
||||||
В этой папке есть небольшие примеры, чтобы показать, как выглядят скрипты,
|
В этой папке есть небольшие примеры, чтобы показать, как выглядят скрипты,
|
||||||
написанные с помощью `yandex-music-api`.
|
написанные с помощью `yandex-music-api`.
|
||||||
|
|
||||||
|
- [get_album_with_tracks](get_album_with_tracks.py) – пример получения информации
|
||||||
|
об альбоме. Пример отображения треков вместе с исполнителями и названием.
|
||||||
- [proxy](proxy.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)
|
読み込み中…
新しいイシューから参照