歡迎訪問個人我的主頁 qupzhi.com ,轉載請註明出處。python
摘要:咱們在使用QQ郵箱做爲告警接收郵箱的時候,用了一段時間發現,告警郵箱再也沒辦法發出來了,很是的困惑,檢查了所有的網絡策略、dns、smtp服務器配置都沒有問題,原來是qq郵箱的自動策略,在此記錄。服務器
咱們使用python的測試smtp腳本,無密碼時使用,有密碼時去掉註釋網絡
# -*- coding: utf-8 -*-
from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib
def _format_addr(s):
name, addr = parseaddr(s)
return formataddr(( \
Header(name, 'utf-8').encode(), \
addr.encode('utf-8') if isinstance(addr, unicode) else addr))
from_addr = 'root@mymail.com'
to_addr = ['xxxx@163.com','xxx.qq.com']
#password = ''
smtp_server = 'mymail'
msg = MIMEText('hello, send by Python...', 'plain', 'utf-8')
msg['From'] = _format_addr(u'monitorcloud <%s>' % from_addr)
msg['To'] = _format_addr(u'管理員 <%s>' % to_addr)
msg['Subject'] = Header(u'來自SMTP的問候……', 'utf-8').encode()
server = smtplib.SMTP(smtp_server, 25)
server.set_debuglevel(1)
#server.starttls()
#server.login(from_addr, password)
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()
複製代碼