diff options
Diffstat (limited to 'ATRI/plugins/polaroid')
-rw-r--r-- | ATRI/plugins/polaroid/data_source.py | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/ATRI/plugins/polaroid/data_source.py b/ATRI/plugins/polaroid/data_source.py index 220d8d5..5314397 100644 --- a/ATRI/plugins/polaroid/data_source.py +++ b/ATRI/plugins/polaroid/data_source.py @@ -1,9 +1,10 @@ from ATRI import driver -from ATRI.service import Service +from ATRI.service import Service, ServiceTools from ATRI.rule import is_in_service from ATRI.utils import request from ATRI.log import logger as log from ATRI.exceptions import RequestError + from .image_dealer import image_dealer @@ -21,7 +22,7 @@ class Polaroid(Service): res = await request.get(TENCENT_AVATER_URL.format(user_id=user_id)) except Exception: raise RequestError("Request failed!") - data = res.read() + data = res.read() # type: ignore return data @classmethod @@ -40,19 +41,20 @@ from .image_dealer import TEMP_PATH, POLAROID_DIR async def init_source(): files = ["frame-0.PNG", "frame-1.PNG", "font-0.ttf"] - for i in files: - path = POLAROID_DIR / i - if not path.is_file(): - log.warning("插件 polaroid 缺少所需资源,装载中") - - url = SOURCE_URL + i - try: + try: + for i in files: + path = POLAROID_DIR / i + if not path.is_file(): + log.warning("插件 polaroid 缺少所需资源,装载中") + url = SOURCE_URL + i data = await request.get(url) with open(path, "wb") as w: - w.write(data.read()) - log.info("所需资源装载完成") - except Exception: - log.error("装载资源失败") + w.write(data.read()) # type: ignore + except Exception: + ServiceTools.service_controller("拍立得", False) + log.error(f"插件 polaroid 装载资源失败. 已自动禁用") + + log.success("插件 polaroid 装载资源完成") driver().on_startup(init_source) |