get_album_with_tracks.py 1012 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. import os
  2. from yandex_music import Client
  3. # без авторизации недоступен список треков альбома
  4. TOKEN = os.environ.get('TOKEN')
  5. ALBUM_ID = 2832563
  6. client = Client(TOKEN).init()
  7. album = client.albums_with_tracks(ALBUM_ID)
  8. tracks = []
  9. for i, volume in enumerate(album.volumes):
  10. if len(album.volumes) > 1:
  11. tracks.append(f'💿 Диск {i + 1}')
  12. tracks += volume
  13. text = 'АЛЬБОМ\n\n'
  14. text += f'{album.title}\n'
  15. text += f"Исполнитель: {', '.join([artist.name for artist in album.artists])}\n"
  16. text += f'{album.year} · {album.genre}\n'
  17. cover = album.cover_uri
  18. if cover:
  19. text += f'Обложка: {cover.replace("%%", "400x400")}\n\n'
  20. text += 'Список треков:'
  21. print(text)
  22. for track in tracks:
  23. if isinstance(track, str):
  24. print(track)
  25. else:
  26. artists = ''
  27. if track.artists:
  28. artists = ' - ' + ', '.join(artist.name for artist in track.artists)
  29. print(track.title + artists)