From e18cc827921e1fa30119c1ac6baab97adfb7af7c Mon Sep 17 00:00:00 2001 From: passthem Date: Thu, 16 Oct 2025 19:13:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20av/bv=20=E5=8F=B7=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E7=9B=B4=E6=8E=A5=E8=A2=AB=E7=AD=9B=E9=80=89=E8=AF=BB?= =?UTF-8?q?=E5=8F=96=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- konabot/plugins/bilibili_fetch/__init__.py | 39 ++++++++++++++++++++++ konabot/plugins/bilibili_fetch_fix.py | 25 -------------- 2 files changed, 39 insertions(+), 25 deletions(-) create mode 100644 konabot/plugins/bilibili_fetch/__init__.py delete mode 100644 konabot/plugins/bilibili_fetch_fix.py diff --git a/konabot/plugins/bilibili_fetch/__init__.py b/konabot/plugins/bilibili_fetch/__init__.py new file mode 100644 index 0000000..b7bd6e9 --- /dev/null +++ b/konabot/plugins/bilibili_fetch/__init__.py @@ -0,0 +1,39 @@ +import re + +from nonebot import on_message +from nonebot_plugin_alconna import Reference, Reply, UniMsg + +from nonebot.adapters import Event + + +matcher_fix = on_message() + +pattern = ( + r"^(?:(?:av|cv)\d+|BV[a-zA-Z0-9]{10})|" + r"(?:b23\.tv|bili(?:22|23|33|2233)\.cn|\.bilibili\.com|QQ小程序(?:]|]|\])哔哩哔哩).{0,500}" +) + + +@matcher_fix.handle() +async def _(msg: UniMsg, event: Event): + to_search = msg.exclude(Reply, Reference).dump(json=True) + to_search2 = msg.exclude(Reply, Reference).extract_plain_text() + if not re.search(pattern, to_search) and not re.search(pattern, to_search2): + return + + from nonebot_plugin_analysis_bilibili import handle_analysis + + await handle_analysis(event) + + # b_url: str + # b_page: str | None + # b_time: str | None + # + # from nonebot_plugin_analysis_bilibili.analysis_bilibili import extract as bilibili_extract + # + # b_url, b_page, b_time = bilibili_extract(to_search) + # if b_url is None: + # return + # + # await matcher_fix.send(await UniMessage().text(b_url).export()) + diff --git a/konabot/plugins/bilibili_fetch_fix.py b/konabot/plugins/bilibili_fetch_fix.py deleted file mode 100644 index bda556d..0000000 --- a/konabot/plugins/bilibili_fetch_fix.py +++ /dev/null @@ -1,25 +0,0 @@ -import re -from loguru import logger -from nonebot import on_message -from nonebot_plugin_alconna import Reference, Reply, UniMsg - -from nonebot.adapters import Event - - -matcher_fix = on_message() - -pattern = ( - r"^(?:(?:av|cv)\d+|BV[a-zA-Z0-9]{10})|" - r"(?:b23\.tv|bili(?:22|23|33|2233)\.cn|\.bilibili\.com|QQ小程序(?:]|]|\])哔哩哔哩).{0,500}" -) - - -@matcher_fix.handle() -async def _(msg: UniMsg, event: Event): - to_search = msg.exclude(Reply, Reference).dump(json=True) - if not re.search(pattern, to_search): - return - logger.info("检测到有 Bilibili 相关的消息,直接进行一个调用") - _module = __import__("nonebot_plugin_analysis_bilibili") - await _module.handle_analysis(event) -