Python SMTP发送祝福邮件
Python SMTP发送祝福邮件
- 前提条件
- 相关介绍
- 实验环境
- 发送邮件
-
- 主要思路
- 获取邮箱授权码
- 代码实现
- 输出结果
前提条件
- 熟悉Python基本语法
相关介绍
- Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
- SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。python的smtplib提供了一种很方便的途径发送电子邮件。其对smtp协议进行了简单的封装。
- Email模块是一个用于管理电子邮件消息的库。
- 下图来源于《计算机网络(第7版)- 谢希仁》
实验环境
- Python 3.x (面向对象的高级语言)
- Emain 3.141.0 (python第三方库)
- Smtplib (python标准库)
发送邮件
主要思路
- 导入所需的库
- 设置发送方、接收方
- 构建一个邮件文本
- 设置QQ邮箱授权码
- 连接QQ邮箱服务器
- 登录QQ邮箱,并发送邮件
获取邮箱授权码
以QQ邮箱为例,登录QQ邮箱->设置->账号->开启IMAP/SMTP服务->生成授权码
代码实现
# -*- coding: utf-8 -*-"""Created on 2022/03/08 10:00:00@author: TFX"""import smtplibfrom email.mime.text import MIMEText # 构建邮件文本from email.header import Header # 发送内容sender = '********@qq.com' # 发送方receivers = ['********@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱# 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码message = MIMEText('今天是妇女节,真心祝福所有美女,愿你们青春靓丽,身体健康,工作顺利,开心快乐!', 'plain', 'utf-8')message['From'] = Header("爱你的人", 'utf-8') # 发送者message['To'] = Header("所有美女", 'utf-8') # 接收者subject = '祝福邮件'message['Subject'] = Header(subject, 'utf-8')pwd = '********' # 邮箱授权码smtpObj = smtplib.SMTP('smtp.qq.com') # 链接服务器smtpObj.login(sender, pwd) # 登录发送方邮箱smtpObj.sendmail(sender, receivers, message.as_string()) # 发送邮件print ("邮件发送成功")
输出结果