admin管理员组

文章数量:1559763

  1. 使用个人邮箱

    使用个人邮箱的时候需要申请QQ授权码:
    首先登陆个人邮箱,在邮箱设置下方找到账户一栏。

    接着点击下图中的生成授权码:

    例子如下:

#发送邮件通知成绩
for stu in student:
    smtpObj = smtplib.SMTP('smtp.qq', 587)
    smtpObj.ehlo()
    smtpObj.starttls()

    scoresend = str(int(exam) * int(exam_proportion) / 100 + int(dailyscore) * int(
                dailyscore_proportion) / 100 + int(homework) * int(homework_proportion) / 100 + int(
                checkscore) * int(checkscore_proportion) / 100 + int(experiment) * int(
                experiment_proportion) / 100)

    text = 'Subject: ' + courseTitle + ' score is:  ' + scoresend  # 邮件内容
    msg = MIMEText(text)
    if float(scoresend) >= 60:
        msg['Subject'] = u'Score Indicate'
    else:
        msg['Subject'] = u'WARNING'
    #将example替换成你的QQ号码
    msg['From'] = 'example@qq'
    msg['To'] = stu.email
    #将example替换成你的QQ号码,并填写password,此处的password不是QQ密码,而是腾讯授权码
    smtpObj.login('example@qq', '授权码')
    smtpObj.sendmail(msg['From'], msg['To'], msg.as_string())
    smtpObj.quit()
  1. 使用企业邮箱
    如果使用的是企业邮箱,那么需要将smtpObj = smtplib.SMTP('smtp.qq', 587)替换为smtpObj = smtplib.SMTP_SSL('smtp.exmail.qq', 465)
    此外,需要将如下两行代码注释掉:
# smtpObj.ehlo()
# smtpObj.starttls()

例子如下:(注意此处的企业邮箱密码并非授权码,是登录密码)

smtpObj = smtplib.SMTP_SSL('smtp.exmail.qq', 465)
# smtpObj.ehlo()
# smtpObj.starttls()

context['site'] = site_url()
context['site_name'] = config.site_name
message = render_to_string(template_name, context)
subject = ''.join(subject.splitlines())

msg = MIMEText(message)
msg['Subject'] = subject
msg['From'] = '企业邮箱账号'
msg['To'] = to[0]
smtpObj.login('企业邮箱账号', '企业邮箱密码')
smtpObj.sendmail(msg['From'], msg['To'], msg.as_string())
smtpObj.quit()

参考链接

本文标签: 腾讯企业邮箱区别邮箱Python