ID3v2.3标签我已经整理好了,因为有4个字节,但是这里的帧头标签总共只有3个字节,而不是4个。这似乎意味着我不能struct.unpack
用来获取int
出它。
例如,我现在使用的标签是:名称标识符TT2\x00\x00\x0c\x00Torn Within
在哪里,尺寸标识符在哪里。标签的内容是,大小为 12 个字节。 TT2
\x00\x00\x0c
\x00Torn Within
这也是这首歌的 ID3 标题。'ID3\x02\x00\x00\x00\x04NP'
,您可以在其中看到未设置编码和标志。
我已经尝试过struct.unpack('>3b', '\x00\x00\x0c')
,但这只会获取每个单独字节的值。
但在那之后,我被卡住了,因为除非我\x00
在尺寸标签前面加上 a,否则我无法继续。我该怎么办?
这是 ID3 标签文档http://id3.org/id3v2-00和struct
模块文档http://docs.python.org/library/struct.html#format-characters
编辑发现我可以这样做:int(binascii.hexlify('\x00\x00\x0c'), 16)
但我认为这不是一个很好的解决方案