Python SMTP发送电子邮件的示例

 更新时间:2020年09月23日 10:21:53   作者:次第花开  
这篇文章主要介绍了Python SMTP发送电子邮件的示例,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下

简单邮件传输协议(SMTP)是一种协议,用于处理在电子邮件服务器之间发送电子邮件和路由电子邮件。Python提供了smtplib模块,该模块定义了一个SMTP客户端会话对象,该对象可用于将邮件发送到具有SMTP或ESMTP侦听器守护程序的任何Internet计算机。
SMTP对象具有一个称为sendmail的实例方法,该方法通常用于完成邮件的发送工作。它需要三个参数-

  • sender- 具有发件人地址的字符串。
  • receivers- 字符串列表,每个接收者一个。
  • message- 以各种RFC中指定的格式格式化为字符串的消息。

Python SMTP示

这是使用Python脚本发送一封电子邮件的简单方法。示例代码:

#!/usr/bin/python3

import smtplib

sender = 'from@fromdomain.com'
receivers = ['to@todomain.com']

message = """From: From Person <from@fromdomain.com>
To: To Person <to@todomain.com>
Subject: SMTP e-mail test

This is a test e-mail message.
"""

try:
  smtpObj = smtplib.SMTP('localhost')
  smtpObj.sendmail(sender, receivers, message)     
  print "Successfully sent email"
except SMTPException:
  print "Error: unable to send email"

在这里,已经在邮件中放置了一个基本电子邮件,使用三重引号,请注意正确设置标题的格式。电子邮件需要一个“发件人”,“收件人”和“主题”标头,并以空白行与电子邮件正文分开。

要发送邮件,需要使用smtpObj连接到本地计算机上的SMTP服务器。然后,调用sendmail方法与消息,发件人地址和目标地址一起用作参数(即使发件人和收件人地址位于电子邮件本身之内,但它们并不总是用于路由邮件)。

如果您不在本地计算机上运行SMTP服务器,则可以使用smtplib客户端与远程SMTP服务器通信。除非您使用Webmail服务(例如gmail或Yahoo! Mail),否则您的电子邮件提供商必须已向您提供了可以提供它们的外发邮件服务器详细信息,如下所示-

mail = smtplib.SMTP('smtp.gmail.com', 587)

使用Python发送HTML电子邮件当使用Python发送文本消息时,所有内容均被视为简单文本。即使您在文本消息中包含HTML标签,它也将显示为简单文本,并且HTML标签不会根据HTML语法进行格式化。但是,Python提供了将HTML消息作为实际HTML消息发送的选项。

发送电子邮件时,可以指定Mime版本,内容类型和字符集来发送HTML电子邮件。
示例代码

以下是将HTML内容作为电子邮件发送的示例 -

#!/usr/bin/python3

import smtplib

message = """From: From Person <from@fromdomain.com>
To: To Person <to@todomain.com>
MIME-Version: 1.0
Content-type: text/html
Subject: SMTP HTML e-mail test

This is an e-mail message to be sent in HTML format

<b>This is HTML message.</b>
<h1>This is headline.</h1>
"""

try:
  smtpObj = smtplib.SMTP('localhost')
  smtpObj.sendmail(sender, receivers, message)     
  print "Successfully sent email"
except SMTPException:
  print "Error: unable to send email"

以上就是Python SMTP发送电子邮件的示例的详细内容,更多关于Python SMTP发送电子邮件的资料请关注脚本之家其它相关文章!

相关文章

  • python中将函数赋值给变量时需要注意的一些问题

    python中将函数赋值给变量时需要注意的一些问题

    变量赋值是我们在日常开发中经常会遇到的一个问题,下面这篇文章主要给大家介绍了关于python中将函数赋值给变量时需要注意的一些问题,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-08-08
  • python删除列表元素del,pop(),remove()及clear()

    python删除列表元素del,pop(),remove()及clear()

    这篇文章主要介绍了python删除列表元素del,pop(),remove()及clear(),列表元素能增加就可以删除,这里要给大家介绍的是删除列表元素,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-03-03
  • python自动化实现登录获取图片验证码功能

    python自动化实现登录获取图片验证码功能

    这篇文章主要介绍了python自动化实现登录获取图片验证码功能,本文通过实例截图的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • Django开发的简易留言板案例详解

    Django开发的简易留言板案例详解

    这篇文章主要介绍了Django开发的简易留言板,结合实例形式详细分析了基于Python框架Django开发留言板的具体文件结构、流程步骤与相关操作技巧,需要的朋友可以参考下
    2018-12-12
  • import paddle报错的成功解决方法

    import paddle报错的成功解决方法

    最近安装paddle的时候遇到了些问题,这里给大家总结下,下面这篇文章主要给大家介绍了关于import paddle报错的成功解决方法,需要的朋友可以参考下
    2023-06-06
  • 使用Python字典实现词频统计的方法

    使用Python字典实现词频统计的方法

    在Python中,利用字典进行词频统计是一种常见且强大的方式,通过对文本进行预处理并使用字典数据结构,可以轻松地统计文本中每个单词出现的频率,下面将详细解释这个过程,并提供多种例子,以帮助你更好地理解并应用这一技术,需要的朋友可以参考下
    2023-12-12
  • Django实现发送邮件找回密码功能

    Django实现发送邮件找回密码功能

    在各大网站上,一定都遇到过找回密码的问题,通常采用的方式是通过发送带有验证码的邮件进行身份验证,本文将介绍通过Django实现邮件找回密码功能,需要的朋友可以参考下
    2019-08-08
  • 浅谈python多线程和队列管理shell程序

    浅谈python多线程和队列管理shell程序

    这篇文章主要给大家简单介绍了python多线程和队列管理shell程序的方法和简单示例,有需要的小伙伴可以参考下。
    2015-08-08
  • Mac安装python3的方法步骤

    Mac安装python3的方法步骤

    这篇文章主要介绍了Mac安装python3的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Python Pandas describe()函数的使用详解

    Python Pandas describe()函数的使用详解

    pandas库中的describe()函数为我们提供了这样的功能,它可以快速生成数据集的描述性统计信息,这篇文章主要介绍了Python Pandas describe()函数的使用介绍,需要的朋友可以参考下
    2024-05-05

最新评论