diff --git a/konabot/common/nb/extract_image.py b/konabot/common/nb/extract_image.py index d0bed4d..f548c22 100644 --- a/konabot/common/nb/extract_image.py +++ b/konabot/common/nb/extract_image.py @@ -8,6 +8,7 @@ import nonebot from nonebot.matcher import Matcher from nonebot.adapters import Bot, Event, Message from nonebot.adapters.discord import Bot as DiscordBot +from nonebot.adapters.discord import GuildMessageCreateEvent as DiscordMessageEvent from nonebot.adapters.onebot.v11 import Bot as OnebotV11Bot from nonebot.adapters.onebot.v11 import Message as OnebotV11Message from nonebot.adapters.onebot.v11 import MessageEvent as OnebotV11MessageEvent @@ -121,6 +122,14 @@ async def extract_image_from_message( logger.debug('获取图片的路径 Fallback 到 QQ 模块') return await extract_image_from_qq_message(msg, evt, bot, allow_reply) + if isinstance(evt, DiscordMessageEvent): + logger.debug('获取图片的路径方式走 Discord') + for a in evt.attachments: + if "image/" not in a.content_type: + continue + url = a.url + return (await download_image_bytes(url)).bind(bytes_to_pil) + for seg in UniMessage.of(msg, bot): logger.info(seg) if isinstance(seg, Image):