python 发送邮件

写在前面

此文档仅记录本人遇到的问题及解决办法,并非涵盖所有

最近写一个小程序,需要发送邮件,学了一下,现在回来,记录一下

准备

  • 两个QQ邮箱
  • 发件箱的授权码
    • QQ 邮箱一般默认关闭SMTP服务,得去开启
    • 打开 https://mail.qq.com/ 登录
    • 设置-->账户设置-->下拉-->开启POP3/SMTP服务-->验证-->得到授权码
      python 发送邮件_第1张图片

发送邮件

  • 模块
    • smtplib负责发送邮件
    • email负责构造邮件内容
  • 代码
import smtplib
from email.mime.text import MIMEText

# 发件邮箱账号
send_mail = '***********@qq.com'
# 发件邮箱授权码
authorization = '*************'
# 收件邮箱账号
receive_mail = '**********@qq.com'

# 登陆邮箱
sent = smtplib.SMTP()
sent.connect('smtp.qq.com', 25)
sent.login(send_mail, authorization)

# 编辑邮件
# 邮件正文内容
send_content = '邮件正文内容'
content = MIMEText(send_content)
# 邮件头信息
content['Subject'] = '邮件标题'
content['From'] = send_mail
content['To'] = receive_mail

# 发送邮件
try:
    # 发送人,收件人,邮件内容
    sent.sendmail(send_mail, receive_mail, content.as_string())
    print('邮件发送成功')
except smtplib.SMTPException:
    print('错误:邮件发送失败')
finally:
    # 关闭服务器
    sent.close()

python 发送邮件_第2张图片

你可能感兴趣的:(Python学习历程,服务器,运维,python)