1. 程式人生 > >使用Python發送郵件

使用Python發送郵件

加密 郵件 附件

不帶附件的方式發送郵件,代碼如下:

#!/usr/bin/python
#coding:utf8

from email.mime.text import MIMEText
from email.header import Header
from email.utils import formataddr
import smtplib

def mail():

    ###定義SMTP服和器信息###
    from_addr = "[email protected]"
    password = "PASSWORD"
    smtp_server = "smtp.163.com"

    # 單個不需要使用列表
    to_addr = ["[email protected]", "[email protected]"]
    
    # 定義郵件的內容,類型(類型可以是plain or html等)和字符編碼
    msg = MIMEText(‘你好:\n    這是一封Python測試郵件‘, ‘plain‘, ‘utf-8‘)

    # 定義發件人的姓名,需要要進行格式化操作
    msg["From"] = formataddr(["余雁", from_addr])

    # 如果收件人只有1個的話可以定義發件的姓名,如果發件人較多又想實現顯示姓名的話,可以對發件人進行循環來實現群發
    #msg["To"] = formataddr(["小王", to_addr])

    # 對列表轉換成字符串,每個元素用逗號分隔
    msg["To"] = ",".join(to_addr)

    # 定義郵件的主題
    msg["Subject"] = Header("Python測試郵件", "utf-8")
    
    # No SSL
    #server = smtplib.SMTP(smtp_server, 25)

    # Use SSL
    server = smtplib.SMTP_SSL(smtp_server, 465)

    # 發送的日誌輸出
    #server.set_debuglevel(1)

    # 登錄到SMTP
    server.login(from_addr, password)
    
    # 發送郵件
    server.sendmail(from_addr, to_addr, msg.as_string())

    # 退出
    server.quit()

if __name__ == "__main__":
    mail()

運行結果如下圖所示:

技術分享圖片



發送帶附件的郵件,代碼如下:


本文出自 “藍色_風暴” 博客,請務必保留此出處http://270142877.blog.51cto.com/12869137/1983787

使用Python發送郵件