我試圖從我廣泛的卡拉OK集合中讀取ID3標籤,以便我可以將它們存儲在CSV文件中,以便於格式化和打印,但我是有問題真正獲得價值!我設法讓他們在這樣的格式,如果我打印的方法items()
:如何使用Python和Mutagen訪問這些ID3值
[('artist', [u'Steve Miller Band']), ('title', [u'Space Cowboy [Karaoke]'])] [('artist', [u'Stevie Wonder']), ('title', [u"Livin' For The City [Karaoke]"])]
我正在使用的代碼如下:
#! /usr/bin/env python2.7
import os
import glob
import os.path
import csv
from mutagen.easyid3 import EasyID3
from mutagen.mp3 import MP3
#form stagger.id3 import *
directory = os.path.normpath("C:/Users/Adrian/Music/Karaoke/Kar/*/*.cdg")
files = glob.glob(directory)
csvw = open('C:\\python\\karaoke.csv', 'wb')
info = []
for f in files:
split = os.path.splitext(f)
newpath = split[0] + ".mp3"
if(os.path.isfile(newpath)):
audio = MP3(newpath, ID3=EasyID3)
stuff = audio.items()
print stuff
try:
print>>csvw, (stuff[0] + ", " + stuff[1] + "\r\n")
except:
print>>csvw, (os.path.basename(newpath) + "\r\n")
info.append(audio.items())
我已經使用整數訪問嘗試它們就好像它們是一個列表一樣,並且還像字典一樣字符串,但每次都會出錯。我在SE上看過一個函數items()
返回一個「類似字典的對象」,但在谷歌上搜索也沒有幫助我!