通过126邮箱SMTP服务发送邮件到指定邮箱

测试环境清单:smtplib函数库
Python3.7
Windows10
程序源码

import smtplib
from email.header import Header
from email.mime.text import MIMEText
 
# 第三方 SMTP 服务
mail_host = "smtp.126.com"      	# SMTP服务器,需要能够访问外网
mail_user = "lxxxxxxxxxxxx@126.com" #126邮箱用户名
mail_pass = "XVMWJSRBXEQLLLNV"      # 授权密码,非登录密码
 
sender = 'lxxxxxxxxxxxx@126.com'    # 发件人邮箱(最好写全, 不然会失败)
receivers = ['xxxxxxx@qq.com']  # 接收邮件,可设置为目标邮箱
 
content = '2051-10-28 13:41:00 涂装4号车间前处理电泳故障停线12分钟,报交线产量40台'
title = '某某轿车小时停线汇报'  # 邮件主题
 
def sendEmail():
 
    message = MIMEText(content, 'plain', 'utf-8')  # 内容, 格式, 编码
    message['From'] = "{}".format(sender)
    message['To'] = ",".join(receivers)
    message['Subject'] = title
 
    try:
        smtpObj = smtplib.SMTP_SSL(mail_host, 465)  # 启用SSL发信, 端口一般是465
        smtpObj.login(mail_user, mail_pass)  # 登录验证
        smtpObj.sendmail(sender, receivers, message.as_string())  # 发送
        print("mail has been send successfully.")
    except smtplib.SMTPException as e:
        print(e)
 
def send_email2(SMTP_host, from_account, from_passwd, to_account, subject, content):
    email_client = smtplib.SMTP(SMTP_host)
    email_client.login(from_account, from_passwd)
    # create msg
    msg = MIMEText(content, 'plain', 'utf-8')
    msg['Subject'] = Header(subject, 'utf-8')  # subject
    msg['From'] = from_account
    msg['To'] = to_account
    email_client.sendmail(from_account, to_account, msg.as_string())
 
    email_client.quit()
 
if __name__ == '__main__':
    sendEmail()
    # receiver = '***'
    # send_email2(mail_host, mail_user, mail_pass, receiver, title, content)

首先配置126邮件服务器,步骤如下

  1. 网页登录126邮箱,找到邮箱设置
    在这里插入图片描述

  2. 找到SMTP配置项
    在这里插入图片描述

  3. 开启SMTP服务
    在这里插入图片描述

  4. 创建授权码,授权码是用于登录第三方邮件客户端的专用密码
    在这里插入图片描述

  5. 手机扫描二维码发送短信完成验证,点击我已发送就可以创建新的授权码
    在这里插入图片描述

  6. 生产的授权码要保存好,只能看一次,永久有效
    在这里插入图片描述

  7. 修改python程序,需要修改登录用户、授权码、源邮箱、目标邮箱、邮件内容等
    在这里插入图片描述

  8. 测试发送邮件到目标邮箱
    运行python程序(需要连接外网)

  9. 大功告成
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值