From 9306a501233ef933cc5241167bb6f4f7b5860cb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B6=B5=E6=9B=A6?= Date: Thu, 3 Oct 2024 17:41:22 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=A4=B1=E8=B4=A5=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/test_music_tags.py | 5 +++-- xiaomusic/utils.py | 8 +++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/test/test_music_tags.py b/test/test_music_tags.py index 8025b79..5ca5f13 100644 --- a/test/test_music_tags.py +++ b/test/test_music_tags.py @@ -36,8 +36,9 @@ async def main(directory): # await test_one_music(file) pass - await test_one_music("./music/一生何求.mp3") - await test_one_music("./music/程响-人间烟火.flac") + await test_one_music("./music/4.mp3") + # await test_one_music("./music/4 In Love - 一千零一个愿.mp3") + # await test_one_music("./music/程响-人间烟火.flac") if __name__ == "__main__": diff --git a/xiaomusic/utils.py b/xiaomusic/utils.py index 3861404..a442f3b 100644 --- a/xiaomusic/utils.py +++ b/xiaomusic/utils.py @@ -26,7 +26,7 @@ import aiohttp import mutagen from mutagen.asf import ASF from mutagen.flac import FLAC -from mutagen.id3 import ID3, Encoding, TextFrame, TimeStampTextFrame +from mutagen.id3 import APIC, ID3, Encoding, TextFrame, TimeStampTextFrame from mutagen.mp3 import MP3 from mutagen.mp4 import MP4 from mutagen.oggvorbis import OggVorbis @@ -609,9 +609,11 @@ def extract_audio_metadata(file_path, save_root): metadata.album = _get_tag_value(tags, "TALB") metadata.year = _get_tag_value(tags, "TDRC") metadata.genre = _get_tag_value(tags, "TCON") - if "APIC:" in tags: - metadata.picture = _save_picture(tags["APIC:"].data, save_root, file_path) metadata.lyrics = _get_alltag_value(tags, "USLT") + for tag in tags.values(): + if isinstance(tag, APIC): + metadata.picture = _save_picture(tag.data, save_root, file_path) + break elif isinstance(audio, FLAC): metadata.title = _get_tag_value(tags, "TITLE")