文章目录
一、发送邮件前的准备
- 注册邮箱:要想给别人发邮箱首先自己需要有邮箱哦
-
基础配置:
要拥有授权码(一定要保存好,这个非常重要)
SMTP服务器: smtp.126.com
二、如何获取授权码
1.在邮箱设置中找到 POP3/SMTP/IMAP 这个选项,操作如下图:
2.点开之后会看到 POP3/SMTP服务 将他开启
开启之后会弹出一个窗口,就是要发邮件的授权码
注意:这个授权码只显示一次,一定要保存好
SMTP(Simple Mail Transfer Protocol)是简单传输协议,它是一组用于用于由源地址到目的地址的邮件传输规则。
python中对SMTP进行了简单的封装,可以发送纯文本邮件、HTML邮件以及带附件的邮件。
三、编写代码
smtplib模块:负责发送邮件
- 首先需要导入模块
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
- 邮件内容配置
# 邮件文本
msg = MIMEText("这个引号内写要发送的内容", "html", "utf-8")
# 邮件上显示的发件人
msg["From"] = formataddr(["这个是发件人姓名", "发件人的邮箱"])
# 邮件上显示的主题
msg["Subject"] = "标题"
- 发送邮件
server = smtplib.SMTP_SSL("smtp.126.com") # 这个就是上面的SMTP
# 注意:不同邮箱的SMTP不同,我这里是网易126邮箱
server.login("发件人的邮箱", "这里填写授权码")
server.sendmail("发件人邮箱", "接受人邮箱", msg.as_string())
server.quit()
login(user,password)方法参数说明:
user:登录邮箱用户名
password:登录邮箱密码
sendmail(from-addr,to_addrs,msg…)方法参数说明:
from_addr:邮件发送者地址
to_addrs:邮件发送地址
quit():结束当前会话
- 总体代码
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
# 邮件内容配置
# 邮件文本
msg = MIMEText("这个引号内写要发送的内容", "html", "utf-8")
# 邮件上显示的发件人
msg["From"] = formataddr(["这个是发件人姓名", "发件人的邮箱"])
# 邮件上显示的主题
msg["Subject"] = "标题"
# 发送邮件
server = smtplib.SMTP_SSL("smtp.126.com")
server.login("发件人的邮箱", "这里填写授权码")
server.sendmail("发件人邮箱", "接受人邮箱", msg.as_string())
server.quit()
send_email()
还可以同时给多个人发哦!
将内容和发送邮件编成一个函数,要发的时候随时调用,如:
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
def send_email(xx):
# 邮件内容配置
# 邮件文本
msg = MIMEText("这个引号内写要发送的内容", "html", "utf-8")
# 邮件上显示的发件人
msg["From"] = formataddr(["这个是发件人姓名", "发件人的邮箱"])
# 邮件上显示的主题
msg["Subject"] = "标题"
# 发送邮件
server = smtplib.SMTP_SSL("smtp.126.com")
server.login("发件人的邮箱", "这里填写授权码")
server.sendmail("发件人邮箱", xx, msg.as_string())
server.quit()
send_email()
send_email("接收人1的邮箱")
send_email("接收人2的邮箱")
send_email("接收人3的邮箱")
版权声明:本文为weixin_56382303原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。