Sabrina Carpenter 'Espresso'

song = {
    "artist": "Sabrina Carpenter",
    "title": "Espresso",
    "feat": None,
    "album": "Short n' Sweet",
    "album_type": "정규 앨범",
    "cover": "/assets/music/short-n-sweet.jpg",
    "track": 7,
    "year": 2024,
    "youtube": "eVli-tstM5E"
}

from IPython.display import HTML

HIDDEN = {"youtube"}  # 영상은 아래 칸에서 재생

def show(k, v):
    if k == "cover":
        return f'<img src="{v}" alt="{song["album"]} 커버" width="200">'
    return v

HTML('<table>' + ''.join(f'<tr><th>{k}</th><td>{show(k, v)}</td></tr>' for k, v in song.items() if v is not None and k not in HIDDEN) + '</table>')
artist Sabrina Carpenter
title Espresso
album Short n' Sweet
album_type 정규 앨범
cover Short n' Sweet 커버
track 7
year 2024
from IPython.display import YouTubeVideo
YouTubeVideo(song['youtube'], width=640, height=360)