python 發送郵件(可批量發送)


from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
import smtplib
from email.mime.text import MIMEText


class mailLog:
        # 第三方 SMTP 服務
        self.mail_host = "smtp.163.com"  # SMTP服務器
        self.mail_user = " *** "  # 用戶名
        self.mail_pass = " * * "  # 授權密碼,非登錄密碼
        self.sender = ' *  * '  # 發件人郵箱(最好寫全, 不然會失敗)
        self.receivers =* *# 接收郵件,可設置爲你的QQ郵箱或者其他郵箱

    def sendEmail(self, title, content):
        message = MIMEMultipart()
        message.attach(MIMEText(content, 'plain', 'utf-8'))  # 內容, 格式, 編碼
        message['From'] = "{}".format(self.sender)
        message['To'] = ",".join(self.receivers)
        message['Subject'] = title
        part = MIMEApplication(open(r'C:\Users\Administrator\Desktop\aaa.jpg', 'rb').read())
        part.add_header('Content-Disposition', 'attachment', filename=('gbk', '', '圖片.png'))
        message.attach(part)
        try:
            smtpObj = smtplib.SMTP_SSL(self.mail_host, 465)  # 啓用SSL發信, 端口一般是465
            smtpObj.login(self.mail_user, self.mail_pass)  # 登錄驗證
            smtpObj.sendmail(self.sender, self.receivers, message.as_string())  # 發送
            print("mail has been send successfully.")
        except smtplib.SMTPException as e:
            print(e)


if __name__ == '__main__':
    title = '測試'
    content = '123456456'
    mailLog().sendEmail(title,content)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章