From 058f0885f765aae308fc1025e531b1db844ece59 Mon Sep 17 00:00:00 2001 From: HibiKier <775757368@qq.com> Date: Mon, 4 Oct 2021 20:22:09 +0800 Subject: [PATCH] fix 0.0.5.1 --- plugins/Yu-Gi-Oh/__init__.py | 0 plugins/admin_bot_manage/data_source.py | 5 +++-- plugins/admin_bot_manage/timing_task.py | 2 +- plugins/init_config/data_source.py | 1 - plugins/send_setu/__init__.py | 7 ++++--- plugins/send_setu/data_source.py | 8 ++++++++ plugins/statistics/statistics_handle.py | 5 ++++- utils/image_utils.py | 1 + 8 files changed, 21 insertions(+), 8 deletions(-) delete mode 100644 plugins/Yu-Gi-Oh/__init__.py diff --git a/plugins/Yu-Gi-Oh/__init__.py b/plugins/Yu-Gi-Oh/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/plugins/admin_bot_manage/data_source.py b/plugins/admin_bot_manage/data_source.py index a6edb684..ceaf1c0a 100644 --- a/plugins/admin_bot_manage/data_source.py +++ b/plugins/admin_bot_manage/data_source.py @@ -190,10 +190,11 @@ def _get_plugin_status() -> MessageSegment: return image(b64=A.pic2bs4()) -async def update_member_info(group_id: int) -> bool: +async def update_member_info(group_id: int, remind_superuser: bool = False) -> bool: """ 更新群成员信息 :param group_id: 群号 + :param remind_superuser: 失败信息提醒超级用户 """ bot = get_bot() _group_user_list = await bot.get_group_member_list(group_id=group_id) @@ -262,7 +263,7 @@ async def update_member_info(group_id: int) -> bool: logger.info(f"退群用户{del_user} 所属{group_id} 已删除") else: logger.info(f"退群用户{del_user} 所属{group_id} 删除失败") - if _error_member_list: + if _error_member_list and remind_superuser: result = "" for error_user in _error_member_list: result += error_user diff --git a/plugins/admin_bot_manage/timing_task.py b/plugins/admin_bot_manage/timing_task.py index 598ab7ea..ad9635d4 100644 --- a/plugins/admin_bot_manage/timing_task.py +++ b/plugins/admin_bot_manage/timing_task.py @@ -45,7 +45,7 @@ async def _(): all_group = [x.group_id for x in await GroupInfo.get_all_group()] for g in gl: if g not in all_group: - await update_member_info(g) + await update_member_info(g, False) logger.info(f"快速更新群信息以及权限:{g}") except (IndexError, ConnectionDoesNotExistError): pass diff --git a/plugins/init_config/data_source.py b/plugins/init_config/data_source.py index ae90a75d..b804d557 100644 --- a/plugins/init_config/data_source.py +++ b/plugins/init_config/data_source.py @@ -121,7 +121,6 @@ def init_plugins_settings(data_path: str): with open(plugins2config_file, "w", encoding="utf8") as wf: round_trip_dump(_data, wf) logger.info(f"已成功加载 {len(plugins2settings_manager.get_data())} 个非限制插件.") - print(admin_manager) def init_plugins_cd_limit(data_path): diff --git a/plugins/send_setu/__init__.py b/plugins/send_setu/__init__.py index 05bed0c4..605ac3da 100644 --- a/plugins/send_setu/__init__.py +++ b/plugins/send_setu/__init__.py @@ -29,6 +29,7 @@ from .data_source import ( gen_message, check_local_exists_or_download, add_data_to_database, + get_setu_count ) from nonebot.adapters.cqhttp.exception import ActionFailed from configs.config import ONLY_USE_LOCAL_SETU, WITHDRAW_SETU_TIME, NICKNAME @@ -237,8 +238,8 @@ async def send_setu_handle( await matcher.finish("咳咳咳,虽然我很可爱,但是我木有自己的色图~~~有的话记得发我一份呀") # 本地先拿图,下载失败补上去 setu_list, code = None, 200 - msg_id = None - if not ONLY_USE_LOCAL_SETU and tags: + setu_count = await get_setu_count(r18) + if (not ONLY_USE_LOCAL_SETU and tags) or setu_count <= 0: # 先尝试获取在线图片 urls, text_list, add_databases_list, code = await get_setu_urls( tags, num, r18, command @@ -288,9 +289,9 @@ async def send_setu_handle( except ActionFailed: await matcher.finish("坏了,这张图色过头了,我自己看看就行了!", at_sender=True) return - # 本地无图 或 超过上下限 if code != 200: await matcher.finish("网络连接失败...", at_sender=True) + # 本地无图 if setu_list is None: setu_list, code = await get_setu_list(tags=tags, r18=r18) if code != 200: diff --git a/plugins/send_setu/data_source.py b/plugins/send_setu/data_source.py index 2df67611..d59e6194 100644 --- a/plugins/send_setu/data_source.py +++ b/plugins/send_setu/data_source.py @@ -210,6 +210,14 @@ def get_luoxiang(impression): return None +async def get_setu_count(r18: int) -> int: + """ + 获取色图数量 + :param r18: r18类型 + """ + return await Setu.get_image_count(r18) + + async def find_img_index(img_url, user_id): async with aiohttp.ClientSession() as session: async with session.get(img_url, proxy=get_local_proxy(), timeout=5) as res: diff --git a/plugins/statistics/statistics_handle.py b/plugins/statistics/statistics_handle.py index 9c119d8b..e84e7720 100644 --- a/plugins/statistics/statistics_handle.py +++ b/plugins/statistics/statistics_handle.py @@ -157,6 +157,10 @@ async def _(bot: Bot, event: MessageEvent, state: T_State): async def generate_statistics_img( data: dict, arg: str, name: str, plugin: str, day_index: int ): + try: + plugin = plugins2settings_manager.get_plugin_data(plugin)['cmd'][0] + except (KeyError, IndexError): + pass bar_graph = None if arg == "day_statistics": bar_graph = await init_bar_graph(data, f"{name} 日功能调用统计") @@ -180,7 +184,6 @@ async def generate_statistics_img( count.append(0) else: try: - print(data[str(week_lst[i])][plugin]) count.append(data[str(week_lst[i])][plugin]) except KeyError: count.append(0) diff --git a/utils/image_utils.py b/utils/image_utils.py index fb4945eb..4e6b6440 100644 --- a/utils/image_utils.py +++ b/utils/image_utils.py @@ -640,6 +640,7 @@ class CreateMat: _max_value = ceil( _max_value / eval("1" + "0" * (len(str(_max_value)) - 1)) ) * eval("1" + "0" * (len(str(_max_value)) - 1)) + _max_value = _max_value if _max_value >= 10 else 100 _step = int(_max_value / 10) for i in range(_step, _max_value + _step, _step): _y_index.append(i)