‘壹’ 使用Python登录QQ邮箱发送QQ邮件
迎接新时代的科技探索,让我们揭秘那些隐藏在邮件推送背后的奥秘!无论是温馨的节日祝福,还是创意十足的个人表达,都能通过Python的力量,化为一封封独特的邮件。今天,让我们携手踏入Python的世界,用代码编织出一场邮件的奇妙旅程。
在Python3.5的怀抱中,我们将借助email和smtplib这两个强大的库,实现一个实用的QQ邮箱邮件发送功能。首先,为了实现这一壮举,你需要对你的QQ邮箱进行一些设置。打开邮箱,开启SMTP服务,并获取一个授权码,详细教程在这里:[教程链接]
接下来,让我们一步步修改模板,让Python登录QQ邮箱,发送邮件的魔法开始上演。看这个简洁的代码片段:
from email.mime.text import MIMEText
from email.header import Header
from smtplib import SMTP_SSL
host_server = 'smtp.qq.com'
sender_qq = '3723358***'
pwd = '**iao***lxpic***'
sender_qq_mail = '3723358***@qq.com'
receiver = 'thunder***@gmail.com'
mail_content = '你好,我是来自知乎的[邓旭东HIT],正在进行Python与QQ邮箱的亲密接触。'
mail_title = '邓旭东HIT的Python邮件测试'
smtp = SMTP_SSL(host_server)
smtp.set_debuglevel(1) # 调试模式,可选关闭
smtp.ehlo(host_server)
smtp.login(sender_qq, pwd)
msg = MIMEText(mail_content, "plain", 'utf-8')
msg["Subject"] = Header(mail_title, 'utf-8')
msg["From"] = sender_qq_mail
msg["To"] = receiver
smtp.sendmail(sender_qq_mail, receiver, msg.as_string())
smtp.quit()
只需调整上述变量,即可执行发送任务。然而,如果邮件收件人众多,每个都有不同的内容,手动编写会变得繁琐。这时,我们可以将发送过程封装成一个函数,轻松处理批量发送:
def send_email(sender_qq='', pwd='', receiver='', mail_title='', mail_content=''):
host_server = 'smtp.qq.com'
sender_qq_mail = sender_qq + '@qq.com'
smtp = SMTP_SSL(host_server)
smtp.set_debuglevel(1)
smtp.ehlo(host_server)
smtp.login(sender_qq, pwd)
msg = MIMEText(mail_content, "plain", 'utf-8')
msg["Subject"] = Header(mail_title, 'utf-8')
smtp.sendmail(sender_qq_mail, receiver, msg.as_string())
smtp.quit()
for _ in range(10): # 示例:发送10封邮件
send_email(sender_qq=sender_qq, pwd=pwd, receiver=receiver, mail_title=mail_title, mail_content=mail_content)
注意,MIMEText的第二个参数可以选择为"plain"(纯文本)或"html"(富文本),根据需要调整。想了解更多高级功能,可参考这篇详尽的教程:Python3 SMTP发送邮件教程。
在这个探索的旅程中,Python就像一把钥匙,开启了无限可能。但请记住,技术的运用应该充满创意和温度,让我们用Python传递真诚与热情,而不是冷冰冰的广告。现在,你已经掌握了这个技能,开始创造属于你的邮件故事吧!