From 37af630893468252828ef330d42c4c5654439a6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=A1=BA=E4=B8=9C?= <577732344@qq.com> Date: Thu, 15 Jan 2026 23:00:22 +0800 Subject: [PATCH] update --- job_crawler/app/services/crawler.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/job_crawler/app/services/crawler.py b/job_crawler/app/services/crawler.py index bbc06ed..f8c88f3 100644 --- a/job_crawler/app/services/crawler.py +++ b/job_crawler/app/services/crawler.py @@ -11,11 +11,14 @@ from app.core.config import settings logger = logging.getLogger(__name__) +# 任务完成后重新执行的延迟时间(秒) +RESCHEDULE_DELAY_SECONDS = 3600 # 1小时 + class TaskCrawler: """单个任务采集器 - 从后往前采集""" - def __init__(self, task_config): + def __init__(self, task_config, on_complete_callback=None): self.task_id = task_config.id self.task_name = task_config.name or task_config.id self.batch_size = settings.api.batch_size @@ -24,6 +27,8 @@ class TaskCrawler: self._running = False self._total_filtered = 0 self._total_produced = 0 + self._on_complete_callback = on_complete_callback # 完成回调 + self._scheduled_task: Optional[asyncio.Task] = None # 延迟调度任务 @property def is_running(self) -> bool: