欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python实现自动发送验证邮件

程序员文章站 2022-07-08 10:03:04
...

最近在忙的一个在线论坛的项目的注册环节需要实现发送验证邮件功能,想着这种功能python肯定有库,查了查果不其然。

两个库smtplib和email都是自带的,连装都不用装(python 3.7.0)

注意点:

这里的密码基本上都不是你平时登陆邮箱的密码,都是授权码,例如QQ的http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256

然后就是smtp地址要根据自己的邮箱商家查,一般自己邮箱设置里就有。

代码:
 

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header

receiver = input()#收件人邮箱
idCode = input()#验证码

smtpserver = 'smtp.qq.com'
username = 'aaa@qq.com'
password = 'xxxxx'
sender = username#sender一般要与username一样

subject = '注册验证邮件,请勿回复'
subject = Header(subject, 'utf-8').encode()

#构造邮件对象MIMEMultipart对象
#主题,发件人,收件人等显示在邮件页面上的。
msg = MIMEMultipart('mixed')
msg['Subject'] = subject
msg['From'] = 'Mr.Van'
msg['To'] = receiver

#构造文字内容
text = "Hi man!\n这是你的验证码:" + idCode
text_plain = MIMEText(text,'plain', 'utf-8')
msg.attach(text_plain)

#发送邮件
smtp = smtplib.SMTP()
smtp.connect(smtpserver)
#用set_debuglevel(1)可以打印出和SMTP服务器交互的所有信息。
#smtp.set_debuglevel(1)
smtp.login(username, password)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.quit()

运行效果:

python实现自动发送验证邮件

 

python实现自动发送验证邮件