python定时任务,定时爬取水质和天气

定时爬取水质和天气

代码

c 复制代码
from apscheduler.schedulers.background import BackgroundScheduler
import requests
import datetime

urlweather = "http://localhost:8000/CrwalingViewWeather"  # 天气接口
urlwater = "http://localhost:8000/CrwalingViewWater/"  # 水质接口

def fetch_weather():
    print("正在获取天气数据...", datetime.datetime.now())
    try:
        response = requests.get(urlweather)
        if response.status_code == 200:
            print("天气数据获取成功")
        else:
            print("天气数据获取失败")
    except Exception as e:
        print(f"获取天气数据时发生错误: {e}")

def fetch_water_quality():
    print("正在获取水质数据...", datetime.datetime.now())
    try:
        response = requests.get(urlwater)
        if response.status_code == 200:
            print("水质数据获取成功")
        else:
            print("水质数据获取失败")
    except Exception as e:
        print(f"获取水质数据时发生错误: {e}")

scheduler = BackgroundScheduler()

# 每小时的第10分钟执行
scheduler.add_job(fetch_weather, 'cron', hour='*', minute=40)
# 每小时的第20分钟执行
scheduler.add_job(fetch_water_quality, 'cron', hour='*', minute=20)

scheduler.start()

try:
    # 模拟长时间运行
    while True:
        datetime.datetime.now()
except (KeyboardInterrupt, SystemExit):
    scheduler.shutdown()
相关推荐
程序员:钧念几秒前
深度学习与大语言模型LLM的区别
人工智能·python·深度学习·语言模型·自然语言处理·transformer·agent
满栀5851 分钟前
插件轮播图制作
开发语言·前端·javascript·jquery
深蓝电商API2 分钟前
Scrapy Feed Exports 进阶:多种格式导出配置
爬虫·python·scrapy
JAVA+C语言14 分钟前
如何在Java中实现线程间的通信?
java·大数据·python
不会c嘎嘎16 分钟前
QT中的事件机制
开发语言·qt
移远通信16 分钟前
短信的应用
java·git·python
a努力。17 分钟前
阿里Java面试被问:WebSocket的心跳检测和自动重连实现
java·开发语言·python·websocket·面试·职场和发展·哈希算法
冷雨夜中漫步17 分钟前
Python入门——__init__.py文件作用
android·java·python
Volunteer Technology18 分钟前
Centos7安装python和jupyter
linux·python·jupyter
行秋19 分钟前
MATLAB 中的两大电力仿真库:Simscape Electrical(蓝色库) vs SimPowerSystems(黑色库)
开发语言·matlab