python实现用户登陆邮件通知的方法

yipeiwu_com5年前Python基础

本文实例讲述了python实现用户登陆邮件通知的方法。分享给大家供大家参考。具体如下:

这里写在linux计划任务里定时执行,当有新用户登陆时候发送用户名到指定邮箱通知管理员。

#!/usr/bin/env python
#encoding=utf-8
from smtplib import SMTP
import subprocess
smtp = "smtp.qq.com"
user = '1234567'
password = 'xxxx'
run_comd = subprocess.Popen('w¦grep pts',shell=True,stdout=subprocess.PIPE)
data = run_comd.stdout.read()
mailb = ["服务器有新用户登录",data]
mailh = ["From: 1234567@qq.com", "To: xxxx@gmail.com", "Subject: 用户登录监控"]
mailmsg = "\r\n\r\n".join(["\r\n".join(mailh), "\r\n".join(mailb)])
def send_mail():
  send = SMTP(smtp)
  send.login(user,password)
  result = send.sendmail("1234567@qq.com", ("xxxx@gmail.com",), mailmsg)
  send.quit()
if data == '':
  pass
else:
  send_mail()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

pytest中文文档之编写断言

编写断言 使用assert编写断言 pytest允许你使用python标准的assert表达式写断言; 例如,你可以这样做: # test_sample.py def func...

浅谈python中的getattr函数 hasattr函数

hasattr(object, name) 作用:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect, name)是否抛出异常来实现的...

Python实现常见的回文字符串算法

回文 利用python 自带的翻转 函数 reversed() def is_plalindrome(string): return string == ''.join(list(...

window环境pip切换国内源(pip安装异常缓慢的问题)

在使用pip默认的安装源时,安装速度通常会比较缓慢。通过切换为国内的安装源通常会解决这个问题,以下是解决步骤: 在如下目录新增一个pip文件 \Users\Administrato...

基于pycharm导入模块显示不存在的解决方法

基于pycharm导入模块显示不存在的解决方法

最近,同级或者不同级目录下,导入某个模块,显示不存在,可明明存在,百度找了好多没找到,试了 import sys sys.path.append('/path/to/test') /...