python邮箱发送四位数随机验证码

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
import random



def mail(my_user):
    my_sender = '6469182449@qq.com'  # 发件人邮箱账号
    my_pass = 'dzbjszuybbhc'  # 发件人邮箱的授权码
    my_user = my_user  # 收件人邮箱账号,我这边发送给自己
    ret= True
    try:
        num = random.randint(1000,9999)
        msg = MIMEText('验证码为:{}'.format(num), 'plain', 'utf-8')
        msg['From'] = formataddr(["From nicead.top", my_sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号
        msg['To'] = formataddr(["FK", my_user]) # 括号里的对应收件人邮箱昵称、收件人邮箱账号
        msg['Subject'] = "验证码" # 邮件的主题,也可以说是标题
        server = smtplib.SMTP_SSL("smtp.qq.com", 465) # 发件人邮箱中的SMTP服务器,端口是25
        server.login(my_sender, my_pass) # 括号中对应的是发件人邮箱账号、邮箱密码
        server.sendmail(my_sender, [my_user, ], msg.as_string()) # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
        server.quit()  # 关闭连接
        return ret, my_user, num
    except Exception as e:  # 如果 try 中的语句没有执行,则会执行下面的ret=False
        ret = False
        return ret
ret,my_user,num = mail("221803658@qq.com")
if ret:
    print("邮件发送成功")
    print(my_user,num)
else:
    print("邮件发送失败")

 

posted @ 2021-07-15 11:38  邓居旺  阅读(202)  评论(0)    收藏  举报