依然写在前面的话:那天突然想积累点小脚本还是有用,说不定哪天就派上用场了,顺便也算是一种学习积累吧。以前听某个行业大佬说坚持每天写一点。
今天学习的是利用python发送邮件
使用第三方SMTP服务发送
用QQ的话,需要对QQ邮箱做一下配置
进入QQ邮箱-设置-账户-开启POP3/SMTP服务
拿到授权码,作为密码使用
QQ 邮箱 SMTP 服务器地址:smtp.qq.com,ssl 端口:465。
import smtplib from email.mime.text import MIMEText from email.utils import formataddr #第三方SMTP服务 mail_host="smtp.qq.com" mail_user='409169403@qq.com' #发件人的实际邮箱 mail_pass='xxxxxx' #我的授权码 receivers=['409169403@qq.com','meltest2@163.com'] #接收人邮箱,可以是单人,也可以是多人 def sendmail(): flag=True try:
#邮件内容 msg=MIMEText('Hello, World.','plain','utf-8') #邮件正文 msg['From'] = formataddr(['zhuni','xxx1@163.com']) #发件人的宣称昵称,发件人的宣称邮箱,不一定与发件人的实际邮箱一致,最好不要乱填,容易被识别为垃圾邮件而发送失败 msg['To']=formataddr(['rony','xxx2@163.com']) #收件人的昵称,收件人的邮箱 msg['Subject']='传说中的标题' #邮件的主题
#邮件发送 server = smtplib.SMTP_SSL(mail_host,465) #SMTP服务器,端口号 server.login(mail_user,mail_pass) #发件人的实际邮箱和密码 server.sendmail(mail_user,receivers,msg.as_string()) #发件人,收件人,发送邮件 server.quit()
except Exception: flag=False return flag flag=sendmail() if flag: print('success') else: print('faild')