# -*- coding: utf-8 -*- # Author : Charley # Python : 3.10.8 # Date : 2025/8/1 18:03 import time import schedule import threading from loguru import logger from clove_blind_box_spider import blind_main from clove_recycle_spider import recycle_main logger.remove() logger.add("./logs/{time:YYYYMMDD}.log", encoding='utf-8', rotation="00:00", format="[{time:YYYY-MM-DD HH:mm:ss.SSS}] {level} {message}", level="DEBUG", retention="7 day") def run_threaded(job_func, *args, **kwargs): """ 在新线程中运行给定的函数,并传递参数。 :param job_func: 要运行的目标函数 :param args: 位置参数 :param kwargs: 关键字参数 """ job_thread = threading.Thread(target=job_func, args=args, kwargs=kwargs) job_thread.start() def schedule_task(): """ 爬虫模块的启动文件 """ # 立即运行一次任务 run_threaded(blind_main, log=logger) run_threaded(recycle_main, log=logger) # 设置定时任务 schedule.every().day.at("00:06").do(run_threaded, blind_main, log=logger) schedule.every().friday.at("00:01").do(run_threaded, recycle_main, log=logger) while True: schedule.run_pending() time.sleep(1) if __name__ == '__main__': schedule_task()