Python“预警机”

比如考研时,要时刻关注学校通知,有时间就去官网。所以为了解决这个问题,我简单地写了这个程序:

[En]

For example, when taking the postgraduate entrance examination, you should always pay attention to the school notice and go to the official website when you have time. So in order to solve this problem, I simply wrote this program:

  • 每5分钟检测探测一次;
  • 如果有”事件”发生,则自动给邮箱发邮件提醒;

根据此功能,抽象的称为”预警机”。

主要结构

根据这个结构,主要修改detect() 就可方便的写出针对不同事件的”预警机”。

详细代码参考:Python-utilities/自动发邮件 at master · KpiHang/Python-utilities (github.com)

class EarlyWarning:
"""
    EarlyWarning : 预警机(检测事件 + 发送提醒);
    Func detect() -> bool: 监测到事件后返回true;
    Func sendWarning() : 发送提醒;
"""
    def __init__(self) -> None:
        self.MSG_FROM = os.getenv('MSG_FROM')
        self.MSG_TO = os.getenv('MSG_TO')
        self.AUTHORIZATION_CODE = os.getenv('AUTHORIZATION_CODE')
        self.latest = ""    # 记录最新通知的时间;
        self.info = {}      # 记录更新主要内容;

    def detect(self):               # 触发事件根据需求不同,用户自定义变动;
    def sendWarning(self):  # 较少变动
    def working(self):          # 较少变动

部署开启

Linux后台运行:

nohup python autoQQemail.py > autoQQemail.log 2>&1 &

其他

一个小终端计时器:

starttime = time.time()
while True:
    print('Next detect 倒计时: ', round(time.time() - starttime, 0), '秒', end="\r") # /r 回到行首
    time.sleep(1)
    if round(time.time() - starttime, 0) >= 300:
        break

参考目录

Original: https://www.cnblogs.com/kphang/p/16445953.html
Author: KpHang
Title: Python“预警机”

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/499137/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • LSTM分类模型

    LSTM文本分类模型 本文主要固定一个文本分类的流程。分为三个部分: 数据处理。对分类文本数据集做简单的预处理。 模型数据准备。处理上一步的结果,得到模型的输入样本。 模型搭建和训…

    Python 2023年10月9日
    044
  • Pygame | 9 – Sprite的碰撞检测

    碰撞检测有 pygame.sprite.collide_rect(first, second) #返回布尔值 第一个参数是精灵, 第二个参数是精灵组, 第三个参数为True,则碰撞…

    Python 2023年9月19日
    034
  • 详细研究python中的Numpy轴

    详细研究python中的Numpy轴 Numpy轴是迭代开始的一种方向。numpy中的每个操作都有一个特定的迭代过程,操作将通过该过程进行。此外,有两种类型的迭代过程:列顺序和Fo…

    Python 2023年8月28日
    041
  • pandas行/列删除

    DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, e…

    Python 2023年8月16日
    027
  • 爬虫工具(tkinter+scrapy+pyinstaller)

    content * – + 需求介绍 + 分析 + 实现 + * uI中的线程控制 * scrapy.py * ui脚本中运行scrapy * pyinstaller …

    Python 2023年10月1日
    027
  • Pycharm中用Git取Clone华为云代码

    当前环境: 1、本地安装虚拟机,使用docker服务架构模式,安装了gitlab,做为远程仓库;—–其实跟本次克隆无关,只是说明本机的环境使用,同时说明Py…

    Python 2023年5月24日
    0106
  • 让jupyter notebook能使用新conda环境(切换jupyter内核)

    前言: 换了电脑重配置环境后,在新建环境后,无需新安装jupyter notebook,在命令行中直接输入如下命令即可打开。 jupyter notebook # anaconda…

    Python 2023年9月7日
    050
  • 爬虫之Scrapy框架

    文章目录 * – 1. Scrapy 介绍 – 2. 基础使用 – + 2.1 安装 + 2.2 创建项目 + 2.3 目录介绍 + 2.4 创…

    Python 2023年10月2日
    045
  • PyGame基础语法

    文章目录 PyGame 基础语法 * 一、 模块简介 – 1、 概述 2、 安装 3、 模块概览 4、 第一个程序 5、 事件循环 二、 Display –…

    Python 2023年9月17日
    036
  • mybatis的配置与简单使用

    Day51 mybatis的配置与简单使用 1,mybatis的配置 首先添加mybatis的依赖 配置步骤: 1.将类路径下的xml文件以输入流形式读入到程序中: Inputst…

    Python 2023年9月27日
    037
  • 解决github图片不显示的问题

    修改hosts C:\Windows\System32\drivers\etc\hosts 在文件末尾添加: GitHub Start 192.30.253.112 Build s…

    Python 2023年6月3日
    067
  • 企业应用架构研究系列十二:网络模型与网络协议

    最近研究IOT相关的技术与架构,由于网络上的资料质量并不是很好,很多文章把一些网络模型与协议混淆,因此梳理了一下这些概念。无论是做IOT平台还是微服务都是离不开网络开发这个一个重要…

    Python 2023年10月16日
    032
  • python图例显示中文_解决matplotlib图例中文乱码问题

    在 matplotlib图例中文乱码? 中看到了很多人的回答,但尝试了之后都发现有问题。经过自己的摸索发现了一个简单的方式。 Windows 10 + Python 3.6 安装字…

    Python 2023年9月4日
    022
  • Numpy常用函数汇总

    本文使用的是Jupyter notebook,因此仅在开头引入了Numpy,后续没有引入,如果在其他编译器中运行的话请确保引入了numpy import numpy as np 1…

    Python 2023年8月3日
    040
  • pandas DataFrame 按照30s 向下取整

    print(ss[‘time’]) 0 2014-01-21 03:31:111 2014-01-21 04:53:552 2014-01-21 05:16:183 2014-01…

    Python 2023年8月8日
    033
  • webgl—将多组点传给webgl系统中

    webgl应用的整体流程:获取webgl绘图上下文—-初始化着色器—设置点的坐标信息—设置canvas背景色—-清空canvas—绘制1.webgl借助ca…

    Python 2023年10月9日
    040
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球