我正在尝试解析 iTunes 库的大量文件,并且我正在尝试使用 plistlib 库。
我的代码看起来像这样:
import plistlib
with open('iTunes Music Library.xml') as fp:
pl = plistlib.load(fp)
print(pl["aKey"])
当我这样做时,我收到错误:
TypeError: startswith first arg must be str or a tuple of str, not bytes
我不知道这是什么,有什么解释吗?
如docs中所述,
plistlib.load
采用一个binary文件对象。您已经给它一个以文本模式打开的文件。
您需要以二进制形式打开文件,即
with open('iTunes Music Library.plist', 'rb') as fp:
pl = plistlib.load(fp)