[Python-es] Problema con smtplib y bcc

Nicolas lino nicolaslino1 en gmail.com
Mie Sep 26 19:18:25 CEST 2012


Hola, estoy trabajando con un spammer para mi empresa, que manda las
facturas automaticamente, como necesitaria una copia de todos los mails
enviados se me ocurrio enviar con una copia  bcc. Pero no hay forma de
hacerlo solucionar.

El codigo si no incluyo el bcc funciona barbaro, busque bastante info, y lo
que esta dando vueltas en internet dice que lo aga de esta manera.

  bcc = 'nlino en itcom.com.ar'

        x = 0
        TXT = cfg.get('msg','texto')

        for x in rows:
                TUPULA = (x)
                TO = TUPULA[1]
                TO1 = TUPULA[2]
                TO2 = TUPULA[3]
                TO3 = TUPULA[4]
                TO4 = TUPULA[5]
                TO5 = TUPULA[6]
                CL = TUPULA[0]
                CLI = ("^%s\s-*" % (CL))

                for X in MATCH:
                         if re.match(CLI, X):
                                FAC = X
                if FAC != "":
                        msg = MIMEMultipart()
                        msg['Subject'] = cfg.get('msg','subject')
                        msg['From'] = cfg.get('msg','from')
                        msg['To'] = TO

                        msg.preamble = 'Multipart massage.\n'

                        part = MIMEText("%s" % (TXT))
                        msg.attach(part)


                        part = MIMEApplication(open(MT+""+FAC ,"rb").read())
                        part.add_header('Content-Disposition', 'attachment',
filename="%s" % (FAC))
                        msg.attach(part)

                        smtpserver.sendmail(msg['From'], msg['To',
bcc], msg.as_string())
 ## si saco el bcc funciona. Pero necesito las copias.

                        print 'done! Envio a %s' % (TO)

El error es:

Conexion con mysql establecida
Cursor mysql creado
Conexion con server SMTP establecida
listado de facturas ok
Traceback (most recent call last):
  File "menuviejo.py", line 31, in <module>
    mailcompleto.ENV()
  File "/home/oka/mailcompleto.py", line 89, in ENV
    smtpserver.sendmail(msg['From'], msg['To',bcc], msg.as_string())
  File "/usr/lib/python2.6/email/message.py", line 292, in __getitem__
    return self.get(name)
  File "/usr/lib/python2.6/email/message.py", line 358, in get
    name = name.lower()
AttributeError: 'tuple' object has no attribute 'lower'

menuviejo.py es un mini menu de pruebas que estoy usando, mailcompleto.py
es todo el modulo de envio de mails. ENV es el nombre de la funcion de
envio de mails.

Gracias y saludos.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120926/e17a9ee9/attachment.html>


Más información sobre la lista de distribución Python-es