从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('[email protected]','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'] = '[email protected]'
    msg['To'] = email 
    msg['Subject'] = '懒惰是可耻的'
    sendemailStatus = smtpObj.sendmail('[email protected]','[email protected]',msg.as_string())
    if sendemailStatus !={}:  #不空代表有错误
        print('There was a problem sending email to %s'%sendemailStatus)
        
smtpObj.quit()        

测试结果

猜你喜欢

转载自www.cnblogs.com/huyangblog/p/9193411.html