python - Python - 每个月的第一个星期一运行作业
问题描述
背景:我需要每个月的第一个和第三个星期一为服务器运行自动任务。这应该通过 python 而不是 crontab 来实现。
我找到了 python 模块“schedule”,但它的文档并不详细。 https://pypi.org/project/schedule/
https://schedule.readthedocs.io/en/stable/
有人知道怎么做这个吗?
import schedule
def TestFunction():
pass
schedule.every(1).monday.do(TestFunction)
schedule.every(3).monday.do(TestFunction)
schedule.run_pending()
这将在一年、每月的第一个星期一还是每个星期一执行?
解决方案
这是一个可能的解决方案:
import datetime
def something():
day_of_month = datetime.now().day
if (day_of_month > 7 and day_of_month < 15) or day_of_month > 21:
return # not first / third monday of month
# your code
schedule.every().monday.do(something())
调度程序将在每个星期一运行,但return
如果这不是本月的第一个/第三个星期一。
推荐阅读
- python - DeepLearning4J:权重数组的形状错误
- c++ - 如何通过函数读取用户输入的文件名
- powerbi - 如何创建可以根据 Power BI 中的切片器选择动态更改的度量?
- azure - 将关键短语提取添加到 Azure 认知搜索
- http-live-streaming - HLS 清单的实际最大长度
- astropy - 关于 Astropy Kuiper 测试中 fpp 的问题
- discord - discord bot 怎么知道你玩游戏多久了?
- python-3.x - 在python中将元组表示为二进制
- javascript - (javascript) 如何在表格 html 上像 classList.toggle 一样隐藏和显示 innerHTML?
- python - 将 ESPN 当前周的 NFL 行刮到 pandas 数据框中