首先需要有一个邮箱,没有就注册一个,最好是163邮箱。
本文将使用163邮箱讲解python发送邮件。
目录
开启邮箱smtp服务
打开SMTP设置
开启SMTP服务
记录授权密码和服务端配置
脚本发送邮件
引入所需的库
发送配置
邮箱登录发送邮件
查看收到邮件
总结
开启邮箱smtp服务
想使用python来操控邮箱发送邮件,需要开启邮箱的POP3/SMTP/IMAP服务。
打开SMTP设置
在邮箱中【设置】->【POP3/SMTP/IMAP】中。
如下:
开启SMTP服务
点击后即可进入设置页面
记录授权密码和服务端配置
开启SMTP服务,需要注册手机账号发送短信进行验证,
开启后即可获取客户端调用授权密码,
需要记录一下下面python脚本发送邮件需要使用。
如下:
脚本发送邮件
上面设置开启SMTP服务获取授权密码后,即可开始python邮件发送脚本开发。
引入所需的库
需要引入两个库,发送邮件和邮件文本处理。
示例如下:
# 发邮件的库
import smtplib
# 邮件文本处理库
from email.mime.text import MIMEText
发送配置
设置好邮箱发送的配置:服务器地址、发送的邮箱、授权密码。
发送内容需要经过邮件文本处理,然后对处理后的邮件文本增加主题和发送者。
示例如下:
# SMTP服务器
SMTPServer = 'smtp.163.com'
sendEmail = '你的邮箱@163.com'
sendEmailPwd = '授权密码'
# 设置发送内容
message = '这是一封python发送的测试邮件!'
# 转换成邮件
msg = MIMEText(message)
# 邮件主题
msg['Subject'] = '来自python'
# 发送者
msg['From'] = sendEmail
邮箱登录发送邮件
主要为加载上面的配置,创建SMTP服务后登录要发送的邮箱,在发送完毕后退出邮箱。
示例如下:
# 创建SMTP服务
mailServer = smtplib.SMTP(SMTPServer, 25)
# 登录邮箱
mailServer.login(sendEmail, sendEmailPwd)
# 发送邮件
mailServer.sendmail(sendEmail, sendEmail, msg.as_string())
# 退出邮箱
mailServer.quit()
查看收到邮件
执行完成后,刷新邮箱可查看到一条未读邮件,内容如下:
总结
发送邮件主要先配置好SMTP,之后编写python发送邮件的脚本即可;
本文只是简单实现发送邮件,如果需要添加到项目中,可以与项目功能结合进行相应修改即可。