1
我想學習Python,並認爲我會通過編寫實際使用的東西來學習。所以我試圖寫一些腳本來翻錄一些音樂CD。從MusicBrainz獲取曲目列表
我正在使用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"])
我怎樣才能獲得的曲目列表,看着滿返回的結果是有track-list
財產,但不管是什麼CD我嘗試的結果總是空
謝謝,這工作就像一個魅力:) –
纔有可能得到軌道列表/錄音在搜索,而不是擡頭?類似於musicbrainzngs.search_releases(release = release,包括['recordings']) – user937284
恐怕這是不可能的,因爲(afaik)搜索服務器允許您添加任何包含以指定要檢索的信息。 – Wieland