Python發郵件程式部署到Linux雲伺服器上之後無法工作
阿新 • • 發佈:2018-11-06
寫了一個爬取學校教務網獲取成績的小工具,每五分鐘進行一次查詢,如果發現有新成績出現就用郵件通知自己,郵件伺服器使用的騰訊企業郵箱。
爬蟲寫的比較順利,但發郵件的部分出了一些問題,在自己的Linux環境下執行沒問題,在雲伺服器上卻連線不到smtp伺服器,程式碼大概是這樣的:
import smtplib
from email.mime.text import MIMEText
def sendEmail(toEmail,toUser,subject,content):
msg=MIMEText(content,'plain','utf-8')
msg['From']='xxx'
msg['To']=toUser
msg['Subject']=subject
server='smtp.exmail.qq.com'
server=smtplib.SMTP(server,25)
server.set_debuglevel(1)
server.login(' [email protected]','xxx')
server.sendmail('[email protected]',toEmail,msg.as_string())
server.quit()
查了好多資料均無果,最後發現有人連線的時候用了SSL,然後抱著試一試的心態改成這樣:
server=smtplib.SMTP_SSL(server,465)
然後就一切正常了。