2

所以我使用 Python 3 和 Mutagen,我知道如何从音频文件中删除所有标签元数据。

对于 mp3 文件,我只需要使用:

from mutagen.easyid3 import EasyID3
audio = EasyID3(filepath)
audio.delete()
audio.save()

对于 .flac 我必须使用:

from mutagen.flac import FLAC
audio = FLAC(filepath)
audio.delete()
audio.clear_pictures()
audio.save()

但是如果我只想删除一个标签怎么办?例如,如果我只想清除“日期”标签怎么办?我不确定如何对 MP3 文件或 FLAC 音频文件执行此操作,我想知道如何对两者执行此操作。你如何在 Python 中使用 Mutagen 只清除一个标签?谢谢。

4

3 回答 3

2

您可以将标签设置为空白字符串并保存文件,但在将内容打印为空白/空条目时它将继续显示

我发现像列表中的条目一样弹出不需要的标签似乎可行。我只用 FLAC 测试过,但我确信 MP3 会类似

from mutagen.flac import FLAC
audio = FLAC(filepath)
audio.pop('date')
audio.save()
于 2020-08-08T10:18:16.783 回答
1

只需为其分配空字符串。例如,我们要删除tracknumber标签:

mp3file = EasyID3(filename)
mp3file["tracknumber"] = ""
mp3file.save()
于 2018-09-14T21:59:33.513 回答
0

如果你想删除,比如说,艺术品,你可以将特定标签设置为一个空列表:

from mutagen.id3 import ID3
file = ID3(filepath)
file.setall('APIC', [])
file.save()

这完全删除了标签和相关的艺术品。

如果您不知道您感兴趣的标签的具体名称,您可以这样做:

print(file.pprint())

供参考: https ://mutagen.readthedocs.io/en/latest/api/id3.html

于 2020-09-12T21:27:24.550 回答