Python“预警机”
比如考研时候,总是要关注学校通知,有时间就要去官网看看。所以为了解决这个问题,简单写了这个程序:
创新互联坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。十年网站建设经验创新互联是成都老牌网站营销服务商,为您提供成都网站制作、网站建设、外贸网站建设、网站设计、H5技术、网站制作、成都品牌网站建设、小程序制作服务,给众多知名企业提供过好品质的建站服务。
- 每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
参考目录
- https://blog.csdn.net/MATLAB_matlab/article/details/
- https://www.runoob.com/python3/python3-smtp.html
网页题目:Python“预警机”
URL链接:http://ybzwz.com/article/dsogggg.html