我有一个方案,其中我从数据库中提取电子邮件并将邮件发送给相应的用户。 从数据库中获取的值可以是单个电子邮件ID或多个电子邮件ID。
我编写了以下代码,当它遇到多个用逗号分隔的电子邮件ID时,抛出一个错误。
for index, row in df1.iterrows():
myVar1 = row["abc"]
#myVar2 = row["Email"]
if row["Email"].count('@') > 1:
myVar2 = ','.join(row["Email"])
else:
myVar2 = row["Email"]
msg = email.message.Message()
msg['From'] = 'do.not.reply@xyz.com'
msg['To'] = myVar2
msg['Subject'] = "abc to be read - {0}".format(myVar1)
msg.add_header('Content-Type', 'text')
msg.set_payload("Hello Users,\n\n ABC - {0} has reached its limit.".format(myVar1))
smtp_obj = smtplib.SMTP("outlook.xyz.com")
smtp_obj.sendmail(msg['From'],msg['To'], msg.as_string())
smtp_obj.quit()
如果它是一个电子邮件ID,则该邮件将适当地触发,但如果传递了多个电子邮件,则每个字母将以逗号分隔
输入'abc @ xyz.com,asd @ xyz.com' 错误消息:a,b,c,@,x,y,z,。,c,o,m ,,, a,s,d,@,x,y,z,。,c,o,m >
请帮助我解决这个问题。
谢谢