From c5e15538789b44ac451e5748028d4ed3f424ff4f Mon Sep 17 00:00:00 2001 From: Shining Hu <40261893+nethawkhu@users.noreply.github.com> Date: Mon, 18 Nov 2024 17:14:30 +0800 Subject: [PATCH] Update main.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新成功和更新失败的错误消息,进行合并发送,账号较多的时候,可以减少通知的数量。 --- main.py | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index 70451b3..183d1da 100644 --- a/main.py +++ b/main.py @@ -578,12 +578,15 @@ async def main(mode: str = None): # 登录JD获取pt_key async with async_playwright() as playwright: + success_users = [] + failed_users = [] + for user in user_dict: logger.info(f"开始更新{user}") pt_key = await get_jd_pt_key(playwright, user, mode) if pt_key is None: logger.error(f"获取pt_key失败") - await send_msg(send_api, send_type=1, msg=f"{user} 更新失败") + failed_users.append(user) continue req_data = user_dict[user] @@ -593,19 +596,40 @@ async def main(mode: str = None): response = await qlapi.set_envs(data=data) if response['code'] == 200: logger.info(f"{user}更新成功") + success_users.append(user) else: logger.error(f"{user}更新失败, response: {response}") - await send_msg(send_api, send_type=1, msg=f"{user} 更新失败") + failed_users.append(user) continue data = bytes(f"[{req_data['id']}]", 'utf-8') response = await qlapi.envs_enable(data=data) if response['code'] == 200: logger.info(f"{user}启用成功") - await send_msg(send_api, send_type=0, msg=f"{user} 更新成功") else: logger.error(f"{user}启用失败, response: {response}") + # 处理用户名隐私 + def mask_username(username): + if len(username) > 8: # 确保用户名长度足够进行替换 + start = len(username) // 2 - 2 + return username[:start] + '****' + username[start + 4:] + return username # 如果用户名长度不足,则不进行修改 + + masked_success_users = [mask_username(user) for user in success_users] + masked_failed_users = [mask_username(user) for user in failed_users] + + # 附加消息 + additional_message = "\n 解决办法:ABCD!" + + # 最终发送消息 + if masked_success_users: + success_msg = "更新成功的用户:\n" + "\n".join(masked_success_users) + "\n" + await send_msg(send_api, send_type=0, msg=success_msg) + if masked_failed_users: + failed_msg = "更新失败的用户:\n" + "\n".join(masked_failed_users) + "\n" + additional_message + await send_msg(send_api, send_type=1, msg=failed_msg) + except Exception as e: traceback.print_exc()