python3使用SMTP发送简单文本邮件

 更新时间:2021年04月19日 15:15:02   作者:神马东东2012  
这篇文章主要为大家详细介绍了python3使用SMTP发送简单文本邮件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

一、设置开启SMTP服务并获取授权码

0.如果使用第三方邮件服务器SMTP服务来发送邮件,首先要在邮箱设置里面开启POP3/SMTP/IMAP服务,下面以163邮箱为例,其它邮箱设置方法相同

163邮箱SMTP服务器:smtp.163.com

QQ邮箱SMTP服务器:smtp.qq.com

1.首先登录自己的邮箱,找到【设置】》【POP3/SMTP/IMAP】,开启相应的服务

2.然后开启并获取客户端授权码(这里的授权码并不是登录邮箱时的密码,而是第三方邮箱服务使用的授权码)

二、使用Python3 发送邮件

0.使用的环境为:
Python 3.6.3 (64bit)
PyCharm 2017.3 (64bit)

1.实现代码:

import smtplib 
from email.header import Header     # 用来设置邮件头和邮件主题 
from email.mime.text import MIMEText    # 发送正文只包含简单文本的邮件,引入MIMEText即可 
 
# 发件人和收件人 
sender = 'XXXXXXXXXXX@163.com' 
receiver = 'XXXXXXXXX@qq.com' 
 
# 所使用的用来发送邮件的SMTP服务器 
smtpServer = 'smtp.163.com' 
 
# 发送邮箱的用户名和授权码(不是登录邮箱的密码) 
username = 'XXXXXXXXXXX' 
password = 'XXXXXXXX' 
 
mail_title = '这里是邮件的主题' 
mail_body = '这里是邮件的正文' 
 
# 创建一个实例 
message = MIMEText(mail_body, 'plain', 'utf-8') # 邮件正文 
message['From'] = sender       # 邮件上显示的发件人 
message['To'] = receiver       # 邮件上显示的收件人 
message['Subject'] = Header(mail_title, 'utf-8') # 邮件主题 
 
try: 
 smtp = smtplib.SMTP()       # 创建一个连接 
 smtp.connect(smtpServer)      # 连接发送邮件的服务器 
 smtp.login(username, password)    # 登录服务器 
 smtp.sendmail(sender, receiver, message.as_string()) # 填入邮件的相关信息并发送 
 print("邮件发送成功!!!") 
 smtp.quit() 
except smtplib.SMTPException: 
 print("邮件发送失败!!!") 

2.发送成功之后,如果在收件人的邮箱看不到邮件,可能是被当做垃圾邮件拦截了,可以去拦截记录里面找一下
发送方发送的邮件:

接收方收到的邮件:

3.这里是发送最简单的格式的邮件的示例,正文只包含文本

还可以发送:
正文为HTML格式的邮件
包含附件的邮件(附件可以是HTML网页,TXT文本,JPG图片,以及音频、视频等)
后面继续讲

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python运行其他程序的实现方法

    python运行其他程序的实现方法

    这篇文章主要介绍了python运行其他程序的实现方法的相关资料,需要的朋友可以参考下
    2017-07-07
  • Python编写nmap扫描工具

    Python编写nmap扫描工具

    NMAP是一款开源的网络探测和安全审核的工具,今天我们用python的模拟实现一个简单版本的端口扫描工具,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 带你了解Python语言的神奇世界

    带你了解Python语言的神奇世界

    大家好,本篇文章主要讲的是带你了解Python语言的神奇世界,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • 分析python请求数据

    分析python请求数据

    这篇文章我们给大家整理了关于python请求数据的相关知识点内容,有兴趣和需要的朋友们可以学习下。
    2018-08-08
  • 浅谈python中常用的excel模块库

    浅谈python中常用的excel模块库

    本文主要介绍了python中常用的excel模块库,感兴趣的同学,可以参考下。
    2021-06-06
  • python学习笔记--将python源文件打包成exe文件(pyinstaller)

    python学习笔记--将python源文件打包成exe文件(pyinstaller)

    这篇文章主要介绍了通过将pyinstallerpython源文件打包成exe文件的方法,需要的朋友可以参考下
    2018-05-05
  • Python中sys.stdout方法的语法示例详解

    Python中sys.stdout方法的语法示例详解

    Python中sys 模块中的一个方法是stdout ,它使用其参数直接显示在控制台窗口上,print() 方法,它有相同的行为,首先转换为sys.stdout() 方法,然后在控制台显示结果,本文给大家介绍Python sys.stdout方法的语法,感兴趣的朋友一起看看吧
    2023-09-09
  • 解决pip install xxx报错SyntaxError: invalid syntax的问题

    解决pip install xxx报错SyntaxError: invalid syntax的问题

    今天小编就为大家分享一篇解决pip install xxx报错SyntaxError: invalid syntax的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • 余弦相似性计算及python代码实现过程解析

    余弦相似性计算及python代码实现过程解析

    这篇文章主要介绍了余弦相似性计算及python代码实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 对pandas中时间窗函数rolling的使用详解

    对pandas中时间窗函数rolling的使用详解

    今天小编就为大家分享一篇对pandas中时间窗函数rolling的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11

最新评论