Python“预警机”

打印 上一主题 下一主题

主题 899|帖子 899|积分 2697

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

  • 每5分钟检测探测一次;
  • 如果有“事件”发生,则自动给邮箱发邮件提醒;
根据此功能,抽象的称为“预警机”。
主要结构

根据这个结构,主要修改detect() 就可方便的写出针对不同事件的“预警机”。
详细代码参考:Python-utilities/自动发邮件 at master · KpiHang/Python-utilities (github.com)
  1. class EarlyWarning:
  2.     """
  3.     EarlyWarning : 预警机(检测事件 + 发送提醒);
  4.     Func detect() -> bool: 监测到事件后返回true;
  5.     Func sendWarning() : 发送提醒;
  6.     """
  7.     def __init__(self) -> None:
  8.         self.MSG_FROM = os.getenv('MSG_FROM')
  9.         self.MSG_TO = os.getenv('MSG_TO')
  10.         self.AUTHORIZATION_CODE = os.getenv('AUTHORIZATION_CODE')
  11.         self.latest = ""          # 记录最新通知的时间;
  12.         self.info = {}            # 记录更新主要内容;
  13.         
  14.     def detect(self):                                # 触发事件根据需求不同,用户自定义变动;
  15.     def sendWarning(self):  # 较少变动
  16.     def working(self):                         # 较少变动
复制代码
部署开启

Linux后台运行:
  1. nohup python autoQQemail.py > autoQQemail.log 2>&1 &
复制代码
其他

一个小终端计时器:
  1. starttime = time.time()
  2. while True:
  3.     print('Next detect 倒计时: ', round(time.time() - starttime, 0), '秒', end="\r") # /r 回到行首
  4.     time.sleep(1)
  5.     if round(time.time() - starttime, 0) >= 300:
  6.         break
复制代码
参考目录


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

缠丝猫

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表