定时任务没有执行
Opened this issue · 1 comments
koking0 commented
用ComWeChatBotClient搭建的微信机器人,反向WebSocket,起了一个Nonebot,然后用plugin-apscheduler创建了一个每天定时推送天气预报的任务,启动的显示插件加载成功了,但是到时间后没有任何反应。
import nonebot
import requests
from nonebot import require
from nonebot.adapters.onebot.v12 import Adapter
# 初始化 NoneBot
nonebot.init()
app = nonebot.get_asgi()
# 注册适配器
driver = nonebot.get_driver()
driver.register_adapter(Adapter)
nonebot.load_plugins("plugins/chatgpt") # ChatGPT
require("nonebot_plugin_apscheduler")
from nonebot_plugin_apscheduler import scheduler
def get_daily_weather_msg():
params = {"key": "288a5858cf8e924665f6eafb18e88bcb", "city": "110108"}
res = requests.get(url="http://api.tianapi.com/tianqi/index", params=params)
data = res.json()
print(f"data: {data}")
date = data["newslist"][0]["date"]
week = data["newslist"][0]["week"]
area = data["newslist"][0]["area"]
weather = data["newslist"][0]["weather"]
lowest = data["newslist"][0]["lowest"]
highest = data["newslist"][0]["highest"]
wind = data["newslist"][0]["wind"]
windsc = data["newslist"][0]["windsc"]
tips = data["newslist"][0]["tips"]
msg = f"今天是{date},{week},小麦为您播报{area}的天气。\n\n"
msg += f"今天{weather},最低温度:{lowest},最高温度:{highest},风向:{wind}{windsc}\n\n"
msg += f"小麦提醒你,{tips}"
return msg
# 每日天气
@scheduler.scheduled_job("cron", hour="17", minute="21", id="daily_weather")
async def daily_weather():
nonebot.logger.info("每日天气推送")
bot, = nonebot.get_bots().values()
msg = get_daily_weather_msg()
vip_user_list = ["wxid_u7s0skwtellf22"]
print(f"vip_user_list: {vip_user_list}")
for user_id in vip_user_list:
await bot.send_private_msg(user_id=user_id, message=msg)
scheduler.add_job(daily_weather, "interval", days=1, id="daily_weather")
if __name__ == "__main__":
nonebot.logger.warning("小麦微信版启动")
nonebot.run()
按理来说应该在下午五点21分的时候推送消息,但是启动后到时间没有任何反应。
JustUndertaker commented
大概率原因是你nb代码问题,自己在nb侧加点日志调试,