从MusicBrainz获取曲目列表

2024-05-14 00:28:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在努力学习Python,并认为我可以通过编写一些我实际使用的东西来学习。所以我想写一个小脚本来翻录一些音乐CD。在

我正在使用musicbrainzngs软件包。我想要这张CD的曲目表。我当前的代码:

#! /usr/bin/env python

import argparse
import musicbrainzngs
import discid

musicbrainzngs.set_useragent("Audacious", "0.1", "https://github.com/jonnybarnes/audacious")

parser = argparse.ArgumentParser()
parser.add_argument("--cdrom", help="provide the source of the cd", default="/dev/cdrom")
args = parser.parse_args()

device = args.cdrom

print("device: %s" % device)
disc = discid.read(device)
print("id: %s" % disc.id)

try:
    result = musicbrainzngs.get_releases_by_discid(disc.id, includes=["artists"])
except musicbrainzngs.ResponseError:
    print("disc not found or bad response")
else:
    if result.get("disc"):
        print("artist:\t%s" %
            result["disc"]["release-list"][0]["artist-credit-phrase"])
        print("title:\t%s" % result["disc"]["release-list"][0]["title"])
    elif result.get("cdstub"):
        print("artist:\t" % result["cdstub"]["artist"])
        print("title:\t" % result["cdstub"]["title"])

如何获得tracklist,查看返回的完整结果有一个track-list属性,但是不管我尝试什么CD,结果总是空的


Tags: importidparsergettitleartistdeviceargs