簡體   English   中英

使用帶主題的SMTP發送python電子郵件

[英]Send python email using SMTP with a subject

我正在嘗試使用SMTP發送一封使用SMTP的電子郵件,包括發件人地址,收件人地址,BCC地址,主題和郵件。 我有電子郵件發送,它甚至發送到BCC,唯一的問題是電子郵件的消息說:

To: example@gmail.com

Subject: Subject goes here

this is the email that I’m sending

當我只希望消息本身顯示消息所在的位置,並且未設置電子郵件的主題時,所以有一個空白主題。 以下是我設置的方法:

def sendEmail(fromAddress, toAddress, bccAddress, appName, message):

    subject = "Subject goes here"
    BODY = string.join((
            "From: %s\r\n" % fromAddress,
            "To: %s\r\n" % toAddress,
            "Subject: %s\r\n" % subject,
            "\r\n",
            message
            ), "\r\n")

    #im using arbitrary values here, when I run it I use actual login info
    username = 'example@gmail.com'
    password = 'password'
    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.ehlo()
    server.starttls()
    server.login(username,password)

    toList = []
    bccList = []
    toList.append(toAddress)
    bccList.append(bccAddress)
    server.sendmail(fromAddress, toList + bccList, BODY)
    server.quit()

使用email包( docs )。

from email.mime.text import MIMEText

def send_mail(to, from_addr, subject, text):
    msg = MIMEText(text)
    msg['Subject'] = subject
    msg['From'] = from_addr
    msg['To'] = to
    s = smtplib.SMTP_SSL("smtp.gmail.com")
    s.login(smtp_user, smtp_pass)
    # for Python 3
    s.send_message(msg)
    # OR
    # for Python 2 (or 3, will still work)
    s.sendmail(from_addr, [to], msg.as_string())
    s.quit()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM