从excel中读取用户数据发送email
from openpyxl import load_workbook import smtplib from email.mime.text import MIMEText wb = load_workbook("H:\项目\Test\发送邮件\email1.xlsx") sheet = wb.get_sheet_by_name('Sheet1') lastCol = sheet.max_column lastestMonth = sheet.cell(row =1,column =lastCol).value unpadiMembers = {} for r in range(2,sheet.max_row+1): payment = sheet.cell(row=r ,column=lastCol) if payment != "": name = sheet.cell(row=r ,column=1).value email = sheet.cell(row=r ,column=2).value if email != None: unpadiMembers[name]= email smtpObj = smtplib.SMTP() smtpObj.connect('smtp.163.com',) smtpObj.login('hy17611499228@163.com','huyang123') for name,email in unpadiMembers.items(): body ='{}党费什么时候交{}'.format(name,lastestMonth) print('Sending email to {}'.format(email)) msg = MIMEText(body,'html','utf-8') msg['Form'] = 'hy17611499228@163.com' msg['To'] = email msg['Subject'] = '懒惰是可耻的' sendemailStatus = smtpObj.sendmail('hy17611499228@163.com','hy17611499228@163.com',msg.as_string()) if sendemailStatus !={}: #不空代表有错误 print('There was a problem sending email to %s'%sendemailStatus) smtpObj.quit()
测试结果