如何让 Python 脚本在工作日运行?
你好,我是征哥,最近用 Python 写了个每日签到答题的脚本,想让它在工作日每天运行,于是我找到了这个三方库-chinesecalendar。
chinesecalendar 可以用来判断某年某月某一天是不是工作日/节假日。支持 2004 年至 2022 年,包括 2020 年的春节延长。
我觉得,支持以往的年份没什么价值,毕竟都过去了,还好他支持 2022 年。
看了它的实现方式,是根据国家的法定节假日写死的:
毕竟也是没有办法的事情,哪天调休谁也无法提前预知。在此感谢 LKI[1] 的辛勤贡献。
接下来分享 chinesecalendar 的简单用法:
先 pip install chinesecalendar 安装,然后就可以判断了:
from datetime import datetime, timedelta from chinese_calendar import is_holiday, is_workday day = datetime.now() week_list = ["一", "二", "三", "四", "五", "六", '日'] for i in range(31): x = day + timedelta(days=i) desc = "工作日" if is_workday(x) else "节假日" if is_holiday(x) else "" print(f"{x.strftime('%Y-%m-%d')} 星期{week_list[x.weekday()]} {desc}")
运行结果如下: