使用scheduler.add_job(test_4a, 'cron', hour='8, 20', minute=new_date)随机分钟执行每次都是29分执行
时间: 2023-11-26 20:03:34 浏览: 88
如果你想让 `scheduler.add_job` 在指定的小时(8 和 20)随机的分钟执行,可以使用 `randint` 函数来生成一个随机的分钟数,并将这个分钟数作为参数传递给 `scheduler.add_job` 函数。下面是一段示例代码:
```python
from apscheduler.schedulers.blocking import BlockingScheduler
import random
def test_4a():
print('任务执行')
scheduler = BlockingScheduler()
# 生成一个随机的分钟数
new_date = random.randint(0, 59)
# 在每天的 8:xx 和 20:xx 执行任务
scheduler.add_job(test_4a, 'cron', hour='8, 20', minute=str(new_date))
scheduler.start()
```
在上面的代码中,`random.randint(0, 59)` 会生成一个 0 到 59 之间的随机整数,然后将这个整数转换成字符串类型,并作为 `scheduler.add_job` 函数的 `minute` 参数传递进去。这样就可以实现在每天的 8:xx 和 20:xx 执行任务,并且每次执行的分钟数都是随机的了。
相关问题
scheduler.add_job cron 1小时执行一次怎么写
如果你想使用 `cron` 表达式来实现每小时执行一次任务,可以这样写:
```python
from apscheduler.schedulers.blocking import BlockingScheduler
scheduler = BlockingScheduler()
# 使用 cron 表达式,每小时执行一次
scheduler.add_job(job_func, 'cron', hour='*', minute=0)
scheduler.start()
```
其中,`hour='*'` 表示每个小时都执行,`minute=0` 表示每个小时的 0 分钟执行。你可以根据需要修改 `hour` 和 `minute` 参数来调整执行时间。
scheduler.add_job python 配置每周 每天每月
你可以使用APScheduler库来实现这个功能。以下是示例代码:
```python
from datetime import datetime
from apscheduler.schedulers.blocking import BlockingScheduler
def job():
print("Hello World!")
scheduler = BlockingScheduler()
# 每周一 9:30 执行
scheduler.add_job(job, 'cron', day_of_week='mon', hour=9, minute=30)
# 每天 9:30 执行
scheduler.add_job(job, 'cron', hour=9, minute=30)
# 每月 1 号 9:30 执行
scheduler.add_job(job, 'cron', day='1', hour=9, minute=30)
scheduler.start()
```
代码中使用了`BlockingScheduler`来创建一个调度器,并且使用`add_job`方法添加了三个不同的任务。通过`'cron'`参数来指定调度方式,然后通过不同的参数来实现每周、每天、每月的定时任务。
阅读全文