利用python脚本 发送mail
#!/usr/bin/python3
import smtplib
from email.mime.text import MIMEText
from email.header import Header
# 第三方 SMTP 服务
mail_host="smtp.163.com" #设置服务器
mail_user="kaishidongle@163.com" #用户名
mail_pass="12345678" #口令
sender = 'sender@163.com'
receivers = ['kaishidongle@163.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
# 邮件内容
message = MIMEText('你好, 麻烦开通防火墙, 详情见附件~ 谢谢 !!', 'plain', 'utf-8')
# 邮件主题
subject = '申请开通防火墙'
message['Subject'] = Header(subject, 'utf-8')
try:
server = smtplib.SMTP_SSL(mail_host,465)
server.login(mail_user,mail_pass)
server.sendmail(sender, receivers, message.as_string())
print ("邮件发送成功")
except Exception as e :
print (e)
注: 使用SMTP_SSL方法 可以避免 SMTP AUTH extension not supported by server 这个错误
发送带附件的脚本
#!/usr/bin/python3
import smtplib
from email.mime.text import MIMEText
from email.header import Header
from email.mime.base import MIMEBase
from email import encoders
# 第三方 SMTP 服务
mail_host="smtp.163.com" #设置服务器
mail_user="kaishidongle@163.com" #用户名
mail_pass="12345678" #口令
sender = 'sender@163.com'
receivers = ['kaishidongle@163.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
# 邮件内容
message.attach(MIMEText('你好, 麻烦开通防火墙, 详情见附件~ 谢谢 !!', 'plain', 'utf-8'))
# 邮件主题
subject = '申请开通防火墙'
message['Subject'] = Header(subject, 'utf-8')
# 附件相关
part = MIMEBase('application', "octet-stream")
part.set_payload(open("防火墙策略申请表-19-04-01-08-00-48.xlsx", "rb").read(),'utf-8')
encoders.encode_base64(part)
# filename 不要省略了文件名的后缀 否则会变成乱码 eg.:ATT00002.bin
part.add_header('Content-Disposition', 'attachment', filename="防火墙策略申请表.xlsx")
message.attach(part)
try:
server = smtplib.SMTP_SSL(mail_host,465)
server.login(mail_user,mail_pass)
server.sendmail(sender, receivers, message.as_string())
print ("邮件发送成功")
except Exception as e :
print (e)
网友评论