from mutagen.mp3 import MP3
from mutagen.id3 import ID3, APIC, error
audio = MP3(path_mp3, ID3=ID3)
audio.tags.add(
APIC(
encoding=3, # 3 is for utf-8
mime="image/png", # can be image/jpeg or image/png
type=3, # 3 is for the cover image
desc='Cover',
data=open("cover.png", mode='rb').read()
)
)
3条答案
按热度按时间xtupzzrd1#
下面是我使用的代码的一个修改版本,你可能需要修改
example.mp3
和cover.jpg
(也许还需要修改mime类型):tag.images.set()
接受三个参数:*图片类型:这是它的图像类型。
3
是封面艺术的代码。你可以在这里找到它们。*图像数据:这是图像的二进制数据,在本例中,我使用
open().read()
加载了这个数据。*哑剧类型:这是二进制数据的文件类型。如果它是
jpg
文件,则需要image/jpeg
,如果它是png
文件,则需要image/png
。vs91vp4v2#
除了上面的答案,下面是我苦苦挣扎了两天的答案:
audio.initTag()
也可以擦除所有 meta信息,如果你想这样做的话。jdg4fx2g3#
在撰写本文时,
mutagen
已经可以很好地与python3配合使用。从https://stackoverflow.com/a/47346660/191246复制粘贴,并为python3所需的图像添加了二进制文件模式。
注意:您可能希望 Package 在
try-except
中,以便捕获将从没有ID3标记的MP3文件中抛出的ID3NoHeaderError
。在这种情况下,您可以创建标记,例如,tags = ID3()...
后跟tags.save('myaudio.mp3')