12

我收到很多没有 ID3 标签的播客。我已经尝试了许多可以用来循环目录并将标题和艺术家信息添加到 ID3 标签的工具,但它们都失败了。我试过 ID3、eyed3 和诱变剂。大多数情况下,如果文件没有 ID3 标签,这些模块就会失败。

有人可以推荐一个可以通过循环工作的好的 ID3 标签编辑器库吗?当 ID3 标签为 100% 空白时,我还需要了解哪些关于编辑/添加 ID3 标签的信息?一个又一个图书馆尝试图书馆却发现问题仍然存在,这令人沮丧。

谢谢你。

4

2 回答 2

27

Mutagen 处理得很好:

>>> import mutagen
>>> from mutagen.easyid3 import EasyID3
>>> filePath = "8049.mp3"

>>> try:
>>>    meta = EasyID3(filePath)
>>> except mutagen.id3.ID3NoHeaderError:
>>>    meta = mutagen.File(filePath, easy=True)
>>>    meta.add_tags()
>>> meta
{}
>>> type(meta)
<class 'mutagen.easyid3.EasyID3'>
>>> meta['title'] = "This is a title"
>>> meta['artist'] = "Artist Name"
>>> meta['genre'] = "Space Funk"
>>> meta.save(filePath, v1=2)
>>> changed = EasyID3("8049.mp3")
>>> changed
{'genre': [u'Space Funk'], 'title': [u'This is a title'], 'artist': [u'Artist Name']}
于 2013-08-22T00:04:52.713 回答
0
import mutagen.id3
import mutagen.mp3

M = mutagen.mp3.MP3(myfilepath)

if M.tags is None:
    M.tags = mutagen.id3.ID3()  # also sets the filepath for the ID3 instance

M.tags['TIT2'] = mutagen.id3.TIT2(encoding=1, text=['mytitle'])

M.save(v1=0, v2_version=3)  # save ID3v2.3 only without ID3v1 (default is ID3v2.4)
于 2021-12-29T10:56:02.343 回答