利用Python发送邮件或发带附件的邮件


Posted in Python onNovember 12, 2020

本文使用的是163邮件进行测试。

注:163邮箱现在需要使用 客户端授权码 进行测试,不再支持邮箱密码进行测试。

 1、使用Python发Text 邮件

import smtplib
# 发送字符串的邮件
from email.mime.text import MIMEText

# 设置服务器所需信息
fromEmailAddr = '发件人邮箱地址' # 邮件发送方邮箱地址
password = 'email password' # 密码(部分邮箱为授权码)
toEmailAddrs = ['接收方地址'] # 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发

# 设置email信息
# ---------------------------发送字符串的邮件-----------------------------
# 邮件内容设置
message = MIMEText('hello,test Python send Email.', 'plain', 'utf-8')
# 邮件主题
message['Subject'] = 'python test email'
# 发送方信息
message['From'] = fromEmailAddr
# 接受方信息
message['To'] = toEmailAddrs[0]
# ---------------------------------------------------------------------


# 登录并发送邮件
try:
 server = smtplib.SMTP('smtp.163.com') # 163邮箱服务器地址,端口默认为25
 server.login(fromEmailAddr, password)
 server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string())
 print('success')
 server.quit()
except smtplib.SMTPException as e:
 print("error:", e)

2、使用Python发送带附件的邮件

import smtplib
# 发送字符串的邮件
from email.mime.text import MIMEText
# 需要 MIMEMultipart 类
from email.mime.multipart import MIMEMultipart

# 设置服务器所需信息
fromEmailAddr = '发件人邮箱地址' # 邮件发送方邮箱地址
password = 'email password' # 密码(部分邮箱为授权码)
toEmailAddrs = ['收件人地址'] # 邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发

# 设置email信息
# ---------------------------发送带附件邮件-----------------------------
# 邮件内容设置
message = MIMEMultipart()
# 邮件主题
message['Subject'] = 'python test email'
# 发送方信息
message['From'] = fromEmailAddr
# 接受方信息
message['To'] = toEmailAddrs[0]
# 邮件正文内容
message.attach(MIMEText('hello,test Python send Email', 'plain', 'utf-8'))

# 构造附件
att1 = MIMEText(open('text.txt', 'rb').read(), 'base64', 'utf-8')
att1['Content-type'] = 'application/octet-stream'
att1['Content-Disposition'] = 'attachment; filename="test.zip"'
message.attach(att1)
# ---------------------------------------------------------------------

# 登录并发送邮件
try:
 server = smtplib.SMTP('smtp.163.com') # 163邮箱服务器地址,端口默认为25
 server.login(fromEmailAddr, password)
 server.sendmail(fromEmailAddr, toEmailAddrs, message.as_string())
 print('success')
 server.quit()
except smtplib.SMTPException as e:
 print("error:", e)

以上就是利用Python发送邮件或发带附件的邮件的详细内容,更多关于python 发送邮件的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
使用Python脚本对Linux服务器进行监控的教程
Apr 02 Python
Python中enumerate函数代码解析
Oct 31 Python
20个常用Python运维库和模块
Feb 12 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
详解Django中间件的5种自定义方法
Jul 26 Python
python根据文章标题内容自动生成摘要的实例
Feb 21 Python
python制作填词游戏步骤详解
May 05 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
Aug 13 Python
Python笔记之工厂模式
Nov 20 Python
使用Python爬虫库requests发送请求、传递URL参数、定制headers
Jan 25 Python
Python类和实例的属性机制原理详解
Mar 21 Python
python 实现倒计时功能(gui界面)
Nov 11 Python
Python如何使用ConfigParser读取配置文件
Nov 12 #Python
Python使用windows设置定时执行脚本
Nov 12 #Python
Django restful framework生成API文档过程详解
Nov 12 #Python
Python通过Schema实现数据验证方式
Nov 12 #Python
Django用户认证系统如何实现自定义
Nov 12 #Python
Django自带用户认证系统使用方法解析
Nov 12 #Python
Django多数据库联用实现方法解析
Nov 12 #Python
You might like
一个简单的自动发送邮件系统(三)
2006/10/09 PHP
分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html
2015/12/09 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
2019/03/11 PHP
可实现多表单提交的javascript函数
2007/08/01 Javascript
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
jQuery创建自己的插件(自定义插件)的方法
2010/06/10 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
js读取csv文件并使用json显示出来
2015/01/09 Javascript
js与jquery实时监听输入框值的oninput与onpropertychange方法
2015/02/05 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
BootStrap文件上传样式超好看【持续更新】
2016/05/10 Javascript
纯JS前端实现分页代码
2016/06/21 Javascript
Vue如何实现组件的源码解析
2017/06/08 Javascript
随机生成10个不重复的0-100的数字(实例讲解)
2017/08/16 Javascript
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
Javascript数组方法reduce的妙用之处分享
2019/06/10 Javascript
js定义类的方法示例【ES5与ES6】
2019/07/30 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
2020/08/28 Javascript
Python判断变量是否已经定义的方法
2014/08/18 Python
Python访问纯真IP数据库脚本分享
2015/06/29 Python
Python聊天室实例程序分享
2016/01/05 Python
Python时间获取及转换知识汇总
2017/01/11 Python
Python如何实现守护进程的方法示例
2017/02/08 Python
Python分割指定页数的pdf文件方法
2018/10/26 Python
python openCV自制绘画板
2020/10/27 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
跑步、骑行和铁人三项的高性能眼镜和服装:ROKA
2018/07/06 全球购物
实现向右循环移位
2014/07/31 面试题
《日月潭》教学反思
2014/02/28 职场文书
《天游峰的扫路人》教学反思
2014/04/25 职场文书
赢在执行观后感
2015/06/16 职场文书
单位领导婚礼致辞
2015/07/28 职场文书
golang如何去除多余空白字符(含制表符)
2021/04/25 Golang
CSS变量实现主题切换的方法
2021/06/23 HTML / CSS
javascript之Object.assign()的痛点分析
2022/03/03 Javascript