Python脚本会发送更多本应发送的电子邮件

时间:2018-07-24 23:30:43

标签: python email raspberry-pi smtp

我尝试了帖子here的解决方案,但没有帮助。

我的python脚本的一部分向收件人发送电子邮件。当我在Pycharm中运行代码时,它恰好会发送3封电子邮件,这是我的测试用例的电子邮件地址数量以及它应该发送的数量。但是,当我尝试在树莓派上运行它时,它会随机发送电子邮件,而我找不到发送不同电子邮件数量的模式。

因此,存在一个名为“ toAddrs”的列表,该列表保存了收件人的电子邮件地址。我曾经尝试过以下两种方式,一次使用for循环,一次不使用for循环。但是这两个都发送任意数量的电子邮件。

#subject, fromAddr, mainbody and password are already defined
msg = MIMEMultipart('')
msg.attach(MIMEText(mainbody, 'plain'))
msg['Subject'] = subject
msg['From'] = fromAddr
msg['To'] = toAddrs
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(fromAddr, password)

for i in range(len(toAddrs)):
        server.sendmail(fromAddr, toAddrs[i], msg.as_string())
server.quit()

另一个是:

#subject, fromAddr, mainbody and password are already defined
msg = MIMEMultipart('')
msg.attach(MIMEText(mainbody, 'plain'))
msg['Subject'] = subject
msg['From'] = fromAddr
msg['To'] = ' ,'.join(toAddrs)
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(fromAddr, password)
server.sendmail(fromAddr, toAddrs, msg.as_string())
server.quit()

我找不到可能出问题的地方。我将不胜感激。

0 个答案:

没有答案