diff --git a/bot.py b/bot.py index 59c8056..2cd7717 100644 --- a/bot.py +++ b/bot.py @@ -1,23 +1,39 @@ +import os +import glob +import logging import nonebot -from nonebot.adapters.qq import Adapter as QQAdapter +from pathlib import Path from nonebot import logger from nonebot.log import default_format -from apscheduler.schedulers.blocking import BlockingScheduler -from src.configs.path_config import log_path -from src.plugins.platform import clean_temp_cache +from nonebot.adapters.qq import Adapter as QQAdapter +from apscheduler.schedulers.background import BackgroundScheduler +from src.configs.path_config import log_path,temp_path,video_path nonebot.init() driver = nonebot.get_driver() driver.register_adapter(QQAdapter) # 注册QQ适配器 nonebot.load_from_toml("pyproject.toml") -logger.add(log_path, level="ERROR", format=default_format, rotation="1 week") +logger.add(log_path+"error.log", level="ERROR", format=default_format, rotation="1 week") from src.clover_sqlite.data_init.db_connect import disconnect, init driver.on_startup(init) driver.on_shutdown(disconnect) -scheduler = BlockingScheduler() + +def clean_temp_cache(): + """定时清理缓存文件""" + path_list = [Path(temp_path), Path(video_path)] + print("开始清理文件") + for folder_path in path_list: + files = get_files_in_folder(folder_path) + for file in files: + os.remove(file) + +def get_files_in_folder(folder_path: Path): + return [Path(f) for f in glob.glob(str(folder_path / "*")) if Path(f).is_file()] + +scheduler = BackgroundScheduler() scheduler.add_job(clean_temp_cache, 'cron', hour=0, minute=0) -scheduler.start() if __name__ == "__main__": + scheduler.start() nonebot.run() diff --git a/src/plugins/platform.py b/src/plugins/platform.py index 7c11c8e..60eba3f 100644 --- a/src/plugins/platform.py +++ b/src/plugins/platform.py @@ -1,14 +1,11 @@ -import os -import glob + import time import psutil import platform -import logging from pathlib import Path from nonebot.rule import to_me from nonebot.plugin import on_command from nonebot.adapters.qq import Message, MessageSegment -from src.configs.path_config import temp_path,video_path repository = on_command("repo", rule=to_me(), priority=10, block=True) @@ -46,15 +43,4 @@ async def get_platform_info(): await platform_info.finish(content) -def clean_temp_cache(): - """定时清理缓存文件""" - path_list = [temp_path, video_path] - for folder_path in path_list: - files = get_files_in_folder(folder_path) - for file in files: - os.remove(file) - - -def get_files_in_folder(folder_path: Path): - return [Path(f) for f in glob.glob(str(folder_path / "*")) if Path(f).is_file()]