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

 更新时间:2020年11月12日 11:32:13   作者:元芳啊  
这篇文章主要介绍了如何利用Python发送邮件或发带附件的邮件,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下。

本文使用的是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 如何比较两集合的大小关系

    这篇文章主要介绍了python 比较两集合的大小关系操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Pyqt助手安装PyQt5帮助文档过程图解

    Pyqt助手安装PyQt5帮助文档过程图解

    这篇文章主要介绍了Pyqt助手安装PyQt5帮助文档过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Python操作注册表详细步骤介绍

    Python操作注册表详细步骤介绍

    Python编程语言最大的特点在于其简单易用,可以大大方便开发人员的程序开发。在这里我们就一起来了解一下有关Python操作注册表的相关应用技术。Python操作注册表相关的函数可以分为打开注册表、关闭注册表、读取项值、c添加项值、添加项,以及删除项等几类
    2020-02-02
  • python 找出list中最大或者最小几个数的索引方法

    python 找出list中最大或者最小几个数的索引方法

    今天小编就为大家分享一篇python 找出list中最大或者最小几个数的索引方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • 详解python中list的使用

    详解python中list的使用

    这篇文章主要介绍了python中list的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • keras 多gpu并行运行案例

    keras 多gpu并行运行案例

    这篇文章主要介绍了keras 多gpu并行运行案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • python通过伪装头部数据抵抗反爬虫的实例

    python通过伪装头部数据抵抗反爬虫的实例

    下面小编就为大家分享一篇python通过伪装头部数据抵抗反爬虫的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Django 查询数据库并返回页面的例子

    Django 查询数据库并返回页面的例子

    今天小编就为大家分享一篇Django 查询数据库并返回页面的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • 让python的Cookie.py模块支持冒号做key的方法

    让python的Cookie.py模块支持冒号做key的方法

    虽然Cookie的标准是不允许:冒号出现在key里面的,但是我们的开发人员是很可爱的,常常会让我们意想不到。
    2010-12-12
  • Python input()函数用法大全

    Python input()函数用法大全

    input()函数获取用户输入数据,实现用户交互,本文重点给大家介绍Python input()函数用法大全,感兴趣的朋友一起看看吧
    2021-04-04

最新评论