@my_blue.route('/send_email', methods=['GET']) def send_email(): # SMTP服务器,这里使用163邮箱 mail_host = "smtp.163.com" # 发件人邮箱 mail_sender = "19231296076@163.com" # 邮箱授权码,注意这里不是邮箱密码,如何获取邮箱授权码,请看本文最后教程 mail_license = "ASHYWVYQPXHTDHJX" # 收件人邮箱,可以为多个收件人 mail_receivers = ["3245850899@qq.com"] # 构建MIMEMultipart对象代表邮件本身 mm = MIMEMultipart('related') # 邮件主题 subject_content = """Python邮件测试""" # 设置发送者,注意严格遵守格式,里面邮箱为发件人邮箱 mm["From"] = "sender_name<19231296076@163.com>" # 设置接受者,注意严格遵守格式,里面邮箱为接受者邮箱 mm["To"] = "receiver_1_name<3245850899@qq.com>" # 设置邮件主题 mm["Subject"] = Header(subject_content, 'utf-8') # 邮件正文内容 arr = str(random.randint(1111, 9999)) redis_app.set('yan',arr) body_content = arr # 构造文本,参数1:正文内容,参数2:文本格式,参数3:编码方式 message_text = MIMEText(body_content, "plain", "utf-8") # 向MIMEMultipart对象中添加文本对象 mm.attach(message_text) stp = smtplib.SMTP() # 设置发件人邮箱的域名和端口,端口地址为25 stp.connect(mail_host, 25) # set_debuglevel(1)可以打印出和SMTP服务器交互的所有信息 stp.set_debuglevel(1) # 登录邮箱,传递参数1:邮箱地址,参数2:邮箱授权码 stp.login(mail_sender, mail_license) # 发送邮件,传递参数1:发件人邮箱地址,参数2:收件人邮箱地址,参数3:把邮件内容格式改为str stp.sendmail(mail_sender, mail_receivers, mm.as_string()) print("邮件发送成功") # 关闭SMTP对象 stp.quit() return {'msg':'发送成功'}
04-18
11-30
07-21
204
04-01
2741