4

我正在使用 eyed3 模块从音乐库中仅读取“艺术家姓名”标签,但是当某些文件正确加载时,其他文件在开始时会在加载状态下失败:

mp3file = eyed3.load(filepath)

例如,阅读我的图书馆会出现大约 10 种不同类型的错误。控制台输出:

eyed3.id3.frames:警告:修复无效的歌词语言代码:
¦Ó eyed3.id3.frames:警告:尚不支持帧“RVAD”,使用原始
帧解析 eyed3.core:警告:FrameHeader:非法帧 ID: COM
eyed3.core:WARNING: FrameHeader: Illegal Frame ID: CM1
eyed3.id3.frames:WARNING: Unknown ID3 frame ID: RGAD
eyed3.core:WARNING: GEOB 帧不包含 mime 类型
eyed3.core:WARNING: GEOB 帧不包含有效的 mime 类型
eyed3.core:WARNING: FrameHeader: Illegal Frame ID: TT2
eyed3.mp3:WARNING: Unable to find a valid mp3 frame
eyed3.core:WARNING: Invalid APIC picture type: 78
eyed3.core:WARNING : APIC 帧不包含图像数据/url

我已经通过仅加载我需要的标签('艺术家姓名')而不是所有标签来解决这个问题,但是 eyed3 可以吗?

顺便说一句。你知道在 Python 中使用这个模块的任何好的手册吗?因为在这种情况下,官方网站(http://eyed3.nicfit.net)似乎很差

4

2 回答 2

4

正如在此处共享的那样,您可以将错误日志记录级别设置为仅记录错误,这应该会删除您的警告。

eyed3.log.setLevel("ERROR")
于 2016-09-04T12:12:44.287 回答
1

没有“仅艺术家姓名标签”。每个文件都有一个标签,艺术家姓名可能存在于其中。所有的 WARNING 消息都只是警告。标签已加载,某些值格式错误,因此会打印警告。但标签仍会加载,如果有艺术家框架,您可以使用 tag.artist 读取它。

于 2013-04-07T16:13:17.387 回答