我需要向100位收件人发送电子邮件。当我向一个收件人发送邮件时,需要三秒钟。当我一次将它发送给三个收件人时,也需要三秒钟。
所以我使用多个收件人来更快地发送邮件。
def send(x, y, z):
to = [x, y, z]
subject="Multi Test"
gmail_user = 'test@gmail.com'
gmail_pwd = 'test'
smtpserver = smtplib.SMTP("smtp.gmail.com", 587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(gmail_user, gmail_pwd)
header = 'To:' + ", ".join(to) + '\n' + 'From: ' + gmail_user + '\n' + 'Subject: ' + subject + '\n'
msg = header + '\n' + subject + '\n\n'
smtpserver.sendmail(gmail_user, to, msg)
smtpserver.close()
我要发送消息的电子邮件是
1@yahoo.com, 2@yahoo.com, 3@yahoo.com....., 100@yahoo.com
所以我希望脚本分成三个电子邮件然后发送消息
或者如果您知道另一种创建脚本以更快地发送消息的方法
答案 0 :(得分:1)
将您的功能更改为
def send(to):
// ..
header = 'To:' + ", ".join(to)
然后将其称为
send(["1@yahoo.com", "2@yahoo.com", "3@yahoo.com", ..., "100@yahoo.com"])
但请考虑以下事项:
email.message
来构建电子邮件。不要只是串起来。