From f8766df357487bb9323f3a88bd0c3517df4305eb Mon Sep 17 00:00:00 2001 From: Yuki-Asuuna <10174503104@stu.ecnu.edu.cn> Date: Wed, 9 Mar 2022 11:00:14 +0800 Subject: =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Db=E7=AB=99=E5=8A=A8=E6=80=81?= =?UTF-8?q?=E8=AE=A2=E9=98=85=E5=8A=A9=E6=89=8B=E5=81=B6=E4=B8=A2=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I86d07518d374eca7f1afd177aea9a15ec7d9a60b --- ATRI/plugins/bilibili_dynamic/__init__.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'ATRI/plugins') diff --git a/ATRI/plugins/bilibili_dynamic/__init__.py b/ATRI/plugins/bilibili_dynamic/__init__.py index 4c313a1..5ece6f6 100644 --- a/ATRI/plugins/bilibili_dynamic/__init__.py +++ b/ATRI/plugins/bilibili_dynamic/__init__.py @@ -1,3 +1,4 @@ +import pytz from apscheduler.triggers.base import BaseTrigger from apscheduler.triggers.combining import AndTrigger from apscheduler.triggers.interval import IntervalTrigger @@ -13,7 +14,8 @@ from nonebot import get_bot from .data_source import BilibiliDynamicSubscriptor import re from tabulate import tabulate -from datetime import datetime +from datetime import datetime, timedelta +from ATRI.log import logger bilibili_dynamic = BilibiliDynamicSubscriptor().on_command( "/bilibili_dynamic", "b站动态订阅助手", aliases={"b站动态"} @@ -60,7 +62,8 @@ async def handle_subcommand(event: GroupMessageEvent, state: T_State = State()): r = await subscriptor.get_subscriptions(query_map={"groupid": event.group_id}) subs = [] for s in r: - subs.append([s.nickname, s.uid, s.last_update]) + tm = s.last_update.replace(tzinfo=pytz.timezone("Asia/Shanghai")) + subs.append([s.nickname, s.uid, tm + timedelta(hours=8)]) output = "本群订阅的UP列表如下~\n" + tabulate( subs, headers=["up名称", "UID", "上次更新时间"], tablefmt="plain", showindex=True ) @@ -165,13 +168,19 @@ async def _check_dynamic(): tq.put(d) else: d: Subscription = tq.get() + logger.info("准备查询UP【{up}】的动态 队列剩余{size}".format(up=d.nickname, size=tq.qsize())) ts = int(d.last_update.timestamp()) + # logger.info("上一次更新的时间戳{time}".format(time=ts)) info: dict = await subscriptor.get_recent_dynamic_by_uid(d.uid) res = [] if info: if info.get("cards") is not None: res = subscriptor.extract_dynamics_detail(info.get("cards")) + + if len(res) == 0: + logger.warning("获取UP【{up}】的动态为空".format(up=d.nickname)) for i in res: + # logger.info("获取UP【{up}】的动态,时间{time},内容{content}".format(up=d.nickname, time=i["timestamp"],content=i["content"][:20])) i["name"] = d.nickname if ts < i["timestamp"]: text, pic_url = subscriptor.generate_output(pattern=i) -- cgit v1.2.3 From 73ec1934ca67710859b5868ca28fc2a18a20296d Mon Sep 17 00:00:00 2001 From: Yuki-Asuuna <10174503104@stu.ecnu.edu.cn> Date: Wed, 9 Mar 2022 11:27:49 +0800 Subject: =?UTF-8?q?fix:=20=E6=B7=BB=E5=8A=A0=E8=AE=A2=E9=98=85=E6=97=B6?= =?UTF-8?q?=E8=AE=BE=E7=BD=AEutc=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I390cad4067359d564094cd2f0a20becc82d09a8e --- ATRI/plugins/bilibili_dynamic/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ATRI/plugins') diff --git a/ATRI/plugins/bilibili_dynamic/__init__.py b/ATRI/plugins/bilibili_dynamic/__init__.py index 5ece6f6..03ed580 100644 --- a/ATRI/plugins/bilibili_dynamic/__init__.py +++ b/ATRI/plugins/bilibili_dynamic/__init__.py @@ -110,7 +110,7 @@ async def handle_uid(event: GroupMessageEvent, state: T_State = State()): print(success) success = success and ( await subscriptor.update_subscription_by_uid( - uid=uid, update_map={"nickname": up_name, "last_update": datetime.now()} + uid=uid, update_map={"nickname": up_name, "last_update": datetime.utcnow()} ) ) elif sub_command == "取消订阅": -- cgit v1.2.3 From 905da626ebb740328de508edd88cadda80988cf9 Mon Sep 17 00:00:00 2001 From: Lint Action Date: Wed, 9 Mar 2022 03:28:36 +0000 Subject: =?UTF-8?q?:rotating=5Flight:=20=E8=87=AA=E5=8A=A8=E8=BF=9B?= =?UTF-8?q?=E8=A1=8C=E4=BB=A3=E7=A0=81=E6=A0=BC=E5=BC=8F=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ATRI/plugins/bilibili_dynamic/__init__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'ATRI/plugins') diff --git a/ATRI/plugins/bilibili_dynamic/__init__.py b/ATRI/plugins/bilibili_dynamic/__init__.py index 03ed580..82fbb4d 100644 --- a/ATRI/plugins/bilibili_dynamic/__init__.py +++ b/ATRI/plugins/bilibili_dynamic/__init__.py @@ -110,7 +110,8 @@ async def handle_uid(event: GroupMessageEvent, state: T_State = State()): print(success) success = success and ( await subscriptor.update_subscription_by_uid( - uid=uid, update_map={"nickname": up_name, "last_update": datetime.utcnow()} + uid=uid, + update_map={"nickname": up_name, "last_update": datetime.utcnow()}, ) ) elif sub_command == "取消订阅": -- cgit v1.2.3