Python中有內置的smtplib模塊,完成一封郵件的發送,需要做很多準備工作。第三方的py_smtp這個包也是基於smtplib的,在Python中使用py_smtp發送電子郵件非常方便,只要填寫發送郵件的相關信息即可。
一、安裝模塊
pip install py-smtp
二、發送郵件
from py_smtp import send send('smtp服務器', 465,['發送人暱稱', '發送人郵箱地址'], '密碼', ['收件人1','收件人2','收件人3'], ['抄送人1','抄送人2'], '標題', '內容', ['附件1','附件2'])
三、注意事項:
1、該模塊使用smtplib.SMTP_SSL(host, port)方法,只支持465端口進行SSL加密傳送,能夠滿足大部分場景需要,比如使用263郵箱、139郵箱、QQ郵箱的465端口進行發送郵件。但不支持非加密的25端口,也不支持TLS的587端口(比如QQ郵箱)。
2、如果使用QQ郵箱作爲發送人,上述方法中的 '密碼' 不是QQ郵箱的登錄密碼,而是授權碼,需要登錄到QQ郵箱的頁面開啓POP3/SMTP服務,並獲取授權碼,路徑爲:“設置”-“賬戶”-“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務”-“POP3/SMTP服務 開啓”
四、相關截圖
01-py_smtp源碼
02-使用QQ郵箱發送到139郵箱的電子郵件
03-QQ郵箱需開啓POP3和SMTP服務
04-QQ郵箱需開啓POP3和SMTP服務
參考鏈接:
py-smtp 1.0.8
https://pypi.org/project/py-smtp/