使用Python发送邮件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用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发送邮件的主要内容,如果未能解决你的问题,请参考以下文章

Javascript - 使用 HTML 片段通过电子邮件发送 JSON 输出

Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码

python笔记- 发送邮件

超实用的php代码片段

从(Python)代码实际发送邮件的正确方法是什么?

ThinkPHP中使用PHPMailer发送邮件