This commit is contained in:
jxxghp
2023-10-18 12:36:46 +08:00
parent 0cd071813f
commit 68e16d18fe
2 changed files with 7 additions and 5 deletions

View File

@ -14,7 +14,6 @@ from ruamel.yaml import CommentedMap
from app import schemas
from app.core.config import settings
from app.core.event import EventManager, eventmanager, Event
from app.db.models.site import Site
from app.db.site_oper import SiteOper
from app.helper.browser import PlaywrightHelper
from app.helper.cloudflare import under_challenge
@ -180,8 +179,8 @@ class AutoSignIn(_PluginBase):
triggers = TimerUtils.random_scheduler(num_executions=2,
begin_hour=9,
end_hour=23,
max_interval=12 * 60,
min_interval=6 * 60)
max_interval=6 * 60,
min_interval=2 * 60)
for trigger in triggers:
self._scheduler.add_job(self.sign_in, "cron",
hour=trigger.hour, minute=trigger.minute,

View File

@ -28,10 +28,13 @@ class TimerUtils:
# 随机生成下一个任务的时间间隔
interval_minutes = random.randint(min_interval, max_interval)
random_interval = datetime.timedelta(minutes=interval_minutes)
# 记录上一个任务的时间触发器
last_random_trigger = random_trigger
# 更新当前时间为下一个任务的时间触发器
random_trigger += random_interval
# 达到结束时间时退出
if random_trigger.hour > end_hour:
# 达到结束时间或者时间出现倒退时退出
if random_trigger.hour > end_hour \
or random_trigger.hour < last_random_trigger.hour:
break
# 添加到队列
trigger.append(random_trigger)