我正在尝试使用下面的pyton脚本向多个收件人发送电子邮件。我已经在论坛上搜索了答案,但是没有能够正确地实现其中的任何一个。如果有人有时间回顾我的脚本并发现/解决问题,我们将不胜感激。
这是我的脚本,我发现我的问题在“sendmail”部分,但无法找到解决方法:
gmail_user = "sender@email.com"
gmail_pwd = "sender_password"
recipients = ['recipient1@email.com','recipient2@email.com']
def mail(to, subject, text, attach):
msg = MIMEMultipart()
msg['From'] = gmail_user
msg['To'] = ", ".join(recipients)
msg['Subject'] = subject
msg.attach(MIMEText(text))
part = MIMEBase('application', 'octet-stream')
part.set_payload(open(attach, 'rb').read())
Encoders.encode_base64(part)
part.add_header('Content-Disposition',
'attachment; filename="%s"' % os.path.basename(attach))
msg.attach(part)
mailServer = smtplib.SMTP("smtp.gmail.com", 587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(gmail_user, gmail_pwd)
mailServer.sendmail(gmail_user, to, msg.as_string())
mailServer.close()
mail("recipient1@email.com, recipient2@email.com",
"Subject",
"Message",
"attchachment")
任何洞察都将不胜感激。
最好的
马特
应该更像
您已经声明了一个收件人数组,这也是全局性的,您可以使用它而不将其作为参数传递给
mail
。我面临着同样的问题,我现在就解决了这个问题。这是我的密码-
我写这段代码就是为了做你想做的。如果你发现了一个bug,请告诉我(我已经测试过了,而且很有效):
相关问题 更多 >
编程相关推荐