From f7198e8722f310926cf147bd0b218c5d9ef5d6c3 Mon Sep 17 00:00:00 2001 From: Kyomotoi <1172294279@qq.com> Date: Sun, 22 Nov 2020 01:01:43 +0800 Subject: [Update] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增: * 舆情检测 * 对涩图加以调用限制 修复: * Pixiv插件全体 * 储存群聊信息时无法创建文件 优化: * 部分代码重构,效率up * 调整插件结构,使其看起来更舒服 --- ATRI/utils/utils_switch/__init__.py | 79 +++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 ATRI/utils/utils_switch/__init__.py (limited to 'ATRI/utils/utils_switch') diff --git a/ATRI/utils/utils_switch/__init__.py b/ATRI/utils/utils_switch/__init__.py new file mode 100644 index 0000000..4c80e94 --- /dev/null +++ b/ATRI/utils/utils_switch/__init__.py @@ -0,0 +1,79 @@ +#!/usr/bin/env python3 +# -*- encoding: utf-8 -*- +''' +@File : __init__.py +@Time : 2020/10/11 14:44:06 +@Author : Kyomotoi +@Contact : kyomotoiowo@gmail.com +@Github : https://github.com/Kyomotoi +@License : Copyright © 2018-2020 Kyomotoi, All Rights Reserved. +''' +__author__ = 'kyomotoi' + +import json +from pathlib import Path +from typing import Optional + + +def controlSwitch(func_name: str, + control: bool, + group: Optional[str] = None) -> str: + ''' + 控制开关 开启或关闭 + + :return: str + ''' + file_switch_all = Path('.') / 'ATRI' / 'utils' / 'utils_rule' / 'switch.json' + + if group: + file_switch_group = Path( + '.') / 'ATRI' / 'data' / 'data_Group' / f'{group}' / 'switch.json' + try: + with open(file_switch_group, 'r') as f: + data_switch_group = json.load(f) + except FileNotFoundError: + data_switch_group = {} + + if data_switch_group[f"{func_name}"]: + pass + else: + return f"Can't find func({func_name})" + + data_switch_group[f"{func_name}"] = f"{control}" + + with open(file_switch_group, 'w') as f: + f.write(json.dumps(data_switch_group)) + f.close() + + else: + pass + + + with open(file_switch_all, 'r') as f: + try: + data_switch_all = json.load(f) + except: + data_switch_all = {} + + if not data_switch_all[f"{func_name}"]: + return f"Can't find func({func_name})" + + data_switch_all[f"{func_name}"] = f"{control}" + + with open(file_switch_all, 'w') as f: + f.write(json.dumps(data_switch_all)) + f.close() + + if control == True: + if group: + msg = f"({func_name}) has been opened for group ({group})!" + else: + msg = f"({func_name}) has been opened!" + + else: + if group: + msg = f"({func_name}) has been closed for group ({group})!" + else: + msg = f"({func_name}) has been closed!" + + return msg \ No newline at end of file -- cgit v1.2.3