小编Ngu*_*Sơn的帖子

如何以快速的python方式向成千上万的收件人发送邮件,每个收件人都显示为邮件头中的接收者?

我正在寻找用Python发送大量邮件(数十万)的解决方案.我有一个收件人列表(在一个文件中),我想发送邮件给所有人.我希望每个收件人都显示为邮件标题中的接收者,而不是密件抄送或cc.好吧,我的解决方案:向每个邮件发送一个单独的邮件,而不是邮件发送到所有列表.我在下面做了一些工作:(我使用了smtplib,线程):

class SendMail(threading.Thread):
  def __init__(self, from, to, subject, message):
     self.from = from
     self.to = to
     self.subject = subject
     self.message = message 
  def run(self):
    try:
                msg = MIMEMultipart('alternative')
                msg['Subject'] = self.subject
                msg['From'] = self.from
                msg['To'] = self.to
                msg.attach(MIMEText(self.message , 'html'))
                server = smtplib.SMTP()              
                server.connect('xxxxx', 25)
                server.login('cxxxxx', 'yyyyyy')                
                server.sendmail(self.from, self.to, msg.as_string())
    except:
          pass

def sendmail():
   f = open('recipients','w')
   from = "me@mail.test"
   subject = "hello"
   message = "Hello Hello"
   for line in f.readlines():
      t = SendMail(from, line, subject, message) …
Run Code Online (Sandbox Code Playgroud)

python email sendmail smtplib

3
推荐指数
1
解决办法
4421
查看次数

标签 统计

email ×1

python ×1

sendmail ×1

smtplib ×1