day 07作业
题目要求:
给files文件夹下 同学qq邮箱 工作簿下,联系方式 工作表中的同学发送
将files 文件夹下 python数据分析 工作簿中 学生信息 工作表里的成绩发送给本人
# 引库
import openpyxl
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
import os
# 连接邮箱服务器并登录
connect = smtplib.SMTP_SSL('smtp.qq.com', 465)
connect.login('********@qq.com', '*************')
wb1 = openpyxl.load_workbook('files/同学qq邮箱.xlsx')
wb2 = openpyxl.load_workbook('files/python数据分析.xlsx')
sheet1 = wb1['联系方式']
sheet2 = wb2['学生信息']
# 遍历 学生信息 工作表
for row2 in range(2, sheet2.max_row + 1): # row2: 成绩里的行
# 遍历 联系方式 工作表
for row1 in range(2, sheet1.max_row + 1): #row1: 学生联系方式里的行
if sheet2.cell(row2, 1).value == sheet1.cell(row1, 1).value:
mail = MIMEMultipart()
mail['Subject'] = Header('day7_homework', 'utf-8').encode()
mail['From'] = 'python2302 <**********@qq.com>'
mail['To'] = sheet1.cell(row1, 1).value
msg = MIMEText('%s同学,你好:\n你本次考试的成绩为:\n' % sheet1.cell(row1, 1).value)
mail.attach(msg)
# 遍历有联系方式的学员的各科成绩,并将分数加入邮件
for col2 in range(2, sheet2.max_column + 1):
msg = MIMEText('%s:%s\t' % (sheet2.cell(1, col2).value, sheet2.cell(row2, col2).value), 'plain', 'utf-8')
mail.attach(msg)
connect.sendmail('**********@qq.com', '%s' % sheet1.cell(row1, 4).value, mail.as_string())
connect.close()