From f1b2ed63508dea111c07d21bd3d92bfbeeeb2a39 Mon Sep 17 00:00:00 2001 From: HibiKier <775757368@qq.com> Date: Fri, 22 Nov 2024 16:56:54 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20message-bui?= =?UTF-8?q?ld=E6=94=AF=E6=8C=81=E5=9B=BE=E7=89=87base64=E4=BB=A5=E5=8F=8Au?= =?UTF-8?q?rl?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zhenxun/utils/message.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/zhenxun/utils/message.py b/zhenxun/utils/message.py index c17d14f1..16790803 100644 --- a/zhenxun/utils/message.py +++ b/zhenxun/utils/message.py @@ -1,3 +1,4 @@ +import base64 from io import BytesIO from pathlib import Path @@ -59,7 +60,14 @@ class MessageUtils: for msg in msg_list: if isinstance(msg, Image | Text | At | AtAll | Video | Voice): message_list.append(msg) - elif isinstance(msg, str | int | float): + elif isinstance(msg, str): + if msg.startswith("base64://"): + message_list.append(Image(raw=BytesIO(base64.b64decode(msg[9:])))) + elif msg.startswith("http"): + message_list.append(Image(url=msg)) + else: + message_list.append(Text(msg)) + elif isinstance(msg, int | float): message_list.append(Text(str(msg))) elif isinstance(msg, Path): if msg.exists():