Files
daily-schedule/main.py
2025-10-15 13:37:09 +08:00

60 lines
1.7 KiB
Python

import schedule
import time
from config.log_config import logger
from work.daily_stock import get_stock_message, get_today_stock
from work.daily_weather import get_today_indices, get_today_weather, get_weather_message
from message.wechat_message import send_wechat_message, MessageEnum
def daily_weather_task():
logger.info("执行定时天气任务...")
weather = get_today_weather()
indices = get_today_indices()
send_wechat_message(MessageEnum.MARKDOWN2, get_weather_message(weather, indices), True)
def daily_stock_task():
logger.info("执行定时股票任务...")
stock = get_today_stock()
send_wechat_message(MessageEnum.MARKDOWN, get_stock_message(stock))
def daily_order_supper_task():
logger.info("执行定时订饭任务...")
send_wechat_message(MessageEnum.TEXT, "📢 订饭时间到!记得订晚饭~")
def setup_schedule():
schedule.every().day.at("09:00").do(daily_weather_task)
schedule.every().day.at("15:00").do(daily_stock_task)
schedule.every().day.at("14:00").do(daily_order_supper_task)
def run_schedule():
"""运行定时任务"""
while True:
schedule.run_pending()
time.sleep(1)
def main():
logger.info("程序启动,开始设置定时任务...")
# daily_weather_task()
# daily_stock_task()
# daily_order_supper_task()
setup_schedule()
try:
run_schedule()
except KeyboardInterrupt:
logger.info("\n程序被用户中断,正在退出...")
schedule.clear()
logger.info("所有定时任务已清除")
except Exception as e:
logger.error(f"程序发生错误: {str(e)}", exc_info=True)
if __name__ == "__main__":
main()