需要用到smtp.SMTP_SSL(host,post)
# 设置邮箱账号
account = input('请输入邮箱账户:')
# 设置邮箱授权码
token = input('请输入邮箱授权码:')
# 设置邮箱服务器,端口
smtp = smtplib.SMTP_SSL('smtp.qq.com', 465)
# 登录qq邮箱
smtp.login(account, token)
还有MIMEText简单邮件对象,参数有(文本,‘plain’,编码格式)
email_content = MIMEText(content, 'plain', 'utf-8')
把读取出来的文件作为附件添加
# 读取工作表文件数据
with open('./04_月考勤表.xlsx', 'rb') as f:
file_data = f.read()
# 设置内容类型为附件
attachment = MIMEText(file_data, 'base64', 'utf-8')
#base64是压缩格式,附件
#plain参数是正文内容,都需要带引号
设置附件标题以及附件
attachment.add_header('Content-Disposition', 'attachment', filename='04_月考勤表.xlsx')
整合发送
# 创建复合邮件对象
msg = MIMEMultipart()
# 添加正文到复合邮件对象中
msg.attach(email_content)
# 添加附件到复合邮件对象里
msg.attach(attachment)
# 设置发送者信息
msg['From'] = '陈知枫'
# 设置接受者信息
msg['To'] = '闪光金融的各位同事们'
# 设置邮件标题
msg['Subject'] = '04_月考勤表'
发出邮件,关闭服务
# 发送邮件
smtp.sendmail(account, 'example@mail.com', msg.as_string())
# account 是接收方
# example@mail.com 是发送方
# 关闭邮箱服务
smtp.quit()