2014-03-28 94 views

回答

1

我會做到這一點使用yagmail(其點是讓發送電子郵件非常簡單):

from yagmail import Connect 
yag = Connect({'[email protected]' : 'SecretAliasName'}, 'pass') 
yag.send('[email protected]', 'MySubject', 'You will never guess..') 

注意,同樣,你可以別名的目標還有:

yag.send({'[email protected]' : 'Mom'}) 

你首先可能需要pip install yagmail

+0

在撰寫本評論時,yagmail的最新版本是0.9.179,它似乎沒有'Connect'方法,因爲它被SMTP取代。然而,通過使用相同的方法,悄悄地發送郵件失敗了......你現在有什麼想法如何用yagmail做同樣的事情嗎? –

1

Web上的大多數示例和教程可能會有點混淆,因爲它們將SMTP的用戶名用作發件人的名稱。以下是我簡單的Python/Gmail SMTP腳本。在那裏你會看到,在我的消息的「From」標題後面,我可以插入任何我想要的字符串,這些字符串將顯示在收到的電子郵件的發件人行中。

def send_email(sendName, user, pwd, recpient, subject, body): 
    import smtplib 
    reciever = recpient if type(recpient) is list else [recpient] 
    message = "From: " + sendName + "\nTo: " + (", ".join(reciever)) + "\nSubject: " + subject + "\n\n" + body + "\n" 
    try: 
     server = smtplib.SMTP("smtp.gmail.com", 587) 
     server.ehlo() 
     server.starttls() 
     server.login(user, pwd) 
     server.sendmail(user, reciever, message) 
     server.close() 
     print("Message Send: Success.") 
    except Exception as e: 
     print("Message Send: Failure.") 
     print(e) 

send_email(input("Sender Name: "), input("Gmail: "), input("Password: "), input("Recipient: "), input("Subject: "), input("Body: ")) 
相關問題