python使用smtp库发送邮件

目前正在开发一个日志扫描工具,用于扫描报错日志,并打包成邮件,发送到邮箱。

 

虽然不复杂,但是是个非常方便的工具。

 

#!/usr/bin/env python
# coding=utf-8
from smtplib import SMTP
from email import MIMEText
from email import Header
from os.path import getsize
from sys import exit
from re import compile, IGNORECASE
#定义主机 帐号 密码 收件人 邮件主题
smtpserver = '10.0.10.191'
user = 'daxingyu'
password = '*******'
sender = '[email protected]'
receiver = ('[email protected]','收件人',)
subject = u'Web服务器Tomcat日志错误信息'
From = u'xxx Web服务器'
To = u'服务器管理员'

#发送邮件函数
def send_mail(error):
	#定义邮件的头部信息
	header = Header.Header
	msg = MIMEText.MIMEText(error,'plain','utf-8')
	msg['From'] = header(From)
	msg['To'] = header(To)
	msg['Subject'] = header(subject+'\n')
	#连接SMTP服务器,然后发送信息
	smtp = SMTP(smtpserver)
	smtp.login(user, password)
	smtp.sendmail(sender, receiver, msg.as_string())
	smtp.close()
	
send_mail("hi hello")

 

注意,user和password在调用163等邮箱的时候。

user是自己的邮箱。

senser也是自己的邮箱。

 

但是在公司内部邮件系统中,这个login的user,可能是其他的账户。

sender,才是你自己的邮箱。

 

上述代码经过测试。

你可能感兴趣的:(python)