Python SMTP发送电子邮件的示例


Posted in Python onSeptember 23, 2020

简单邮件传输协议(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中的装饰器、闭包和functools的教程
Apr 02 Python
python如何通过protobuf实现rpc
Mar 06 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
Mar 15 Python
Python模块的制作方法实例分析
Dec 21 Python
Python通过TensorFLow进行线性模型训练原理与实现方法详解
Jan 15 Python
python中使用you-get库批量在线下载bilibili视频的教程
Mar 10 Python
解决python对齐错误的方法
Jul 16 Python
小结Python的反射机制
Sep 28 Python
Python基于内置函数type创建新类型
Oct 22 Python
如何向scrapy中的spider传递参数的几种方法
Nov 18 Python
python3中for循环踩过的坑记录
Dec 14 Python
python中用ggplot绘制画图实例讲解
Jan 26 Python
python两个list[]相加的实现方法
Sep 23 #Python
python matplotlib库的基本使用
Sep 23 #Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
Sep 23 #Python
Python读取多列数据以及用matplotlib制作图表方法实例
Sep 23 #Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
Sep 23 #Python
python中如何打包用户自定义模块
Sep 23 #Python
python使用matplotlib绘制折线图的示例代码
Sep 22 #Python
You might like
php获取目录所有文件并将结果保存到数组(实例)
2013/10/25 PHP
php实现通用的信用卡验证类
2015/03/24 PHP
实例分析PHP中PHPMailer发邮件
2017/12/13 PHP
PHP利用curl发送HTTP请求的实例代码
2020/07/09 PHP
js 变量类型转换常用函数与代码[比较全]
2009/12/01 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
2014/10/16 Javascript
JS去除iframe滚动条的方法
2015/04/01 Javascript
浅谈jQuery.easyui的datebox格式化时间
2015/06/25 Javascript
IE10中flexigrid无法显示数据的解决方法
2015/07/26 Javascript
13个PHP函数超实用
2015/10/21 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
原生js实现手风琴功能(支持横纵向调用)
2017/01/13 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
解决vue build打包之后首页白屏的问题
2018/03/06 Javascript
JavaScript 获取滚动条位置并将页面滑动到锚点
2021/02/08 Javascript
跟老齐学Python之数据类型总结
2014/09/24 Python
Python批量转换文件编码格式
2015/05/17 Python
python如何通过twisted实现数据库异步插入
2018/03/20 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
Python实现的计算器功能示例
2018/04/26 Python
详解Django项目中模板标签及模板的继承与引用(网站中快速布置广告)
2019/03/27 Python
PyQt5 在label显示的图片中绘制矩形的方法
2019/06/17 Python
详解程序意外中断自动重启shell脚本(以Python为例)
2019/07/26 Python
Django中提示消息messages的设置方式
2019/11/15 Python
Pytorch 使用 nii数据做输入数据的操作
2020/05/26 Python
浅谈TensorFlow之稀疏张量表示
2020/06/30 Python
抽象方法、抽象类怎样声明
2014/10/25 面试题
小学数学教学反思
2014/02/02 职场文书
经济国贸专业求职信
2014/06/18 职场文书
安全责任书模板
2014/07/22 职场文书
国家税务局干部作风整顿整改措施
2014/09/18 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
工作时间调整通知
2015/04/24 职场文书
二审代理词范文
2015/05/25 职场文书
三好学生竞选稿范文
2019/08/21 职场文书
Python机器学习三大件之一numpy
2021/05/10 Python