From 833e266a1f95ae91034795b8835a17675fab5eb7 Mon Sep 17 00:00:00 2001 From: yajiwa <839790708@qq.com> Date: Wed, 6 Jul 2022 04:59:54 +0800 Subject: [PATCH] update wbtop --- plugins/wbtop/__init__.py | 42 ++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/plugins/wbtop/__init__.py b/plugins/wbtop/__init__.py index 34eb2ba4..f6a13cf6 100644 --- a/plugins/wbtop/__init__.py +++ b/plugins/wbtop/__init__.py @@ -40,28 +40,30 @@ wbtop_data = [] async def _(event: MessageEvent, arg: Message = CommandArg()): global wbtop_data msg = arg.extract_plain_text().strip() - if not wbtop_data or not msg: - if wbtop_data: - now_time = datetime.datetime.now() - if now_time > wbtop_data["time"] + datetime.timedelta(minutes=5): - data, code = await get_wbtop(wbtop_url) - if code != 200: - await wbtop.finish(data, at_sender=True) - wbtop_data = data - else: + if wbtop_data: + now_time = datetime.datetime.now() + if now_time > wbtop_data["time"] + datetime.timedelta(minutes=5): data, code = await get_wbtop(wbtop_url) if code != 200: await wbtop.finish(data, at_sender=True) + else: + wbtop_data = data + else: + data, code = await get_wbtop(wbtop_url) + if code != 200: + await wbtop.finish(data, at_sender=True) + else: wbtop_data = data - if not msg: - img = await asyncio.get_event_loop().run_in_executor( - None, gen_wbtop_pic, wbtop_data["data"] - ) - await wbtop.send(img) - logger.info( - f"(USER {event.user_id}, GROUP {event.group_id if isinstance(event, GroupMessageEvent) else 'private'})" - f" 查询微博热搜" - ) + + if not msg: + img = await asyncio.get_event_loop().run_in_executor( + None, gen_wbtop_pic, wbtop_data["data"] + ) + await wbtop.send(img) + logger.info( + f"(USER {event.user_id}, GROUP {event.group_id if isinstance(event, GroupMessageEvent) else 'private'})" + f" 查询微博热搜" + ) if is_number(msg) and 0 < int(msg) <= 50: url = wbtop_data["data"][int(msg) - 1]["url"] await wbtop.send("开始截取数据...") @@ -72,7 +74,7 @@ async def _(event: MessageEvent, arg: Message = CommandArg()): wait_time=12 ) if img: - await wbtop.send(img) + await wbtop.finish(img) else: - await wbtop.send("发生了一些错误.....") + await wbtop.finish("发生了一些错误.....")