שירים mp3
קניית ויאגרה
תרגום קולי מעברית לאנגלית
бинарные опционы брокеры
קמגרה גל
купоны на lamoda

Invitando al FLISOL 2014 Santa Fe desde Python

Esto tenía que salir rápido por lo que es muy probable que la solución implementada en esta publicación esté lejos de ser la mejor. Pero andaba con poco tiempo para indagar, con cansancio para mejorar y con dolor de cabeza como para renegar. Contundencia y pragmatismo era lo que necesitaba.

El tema es el siguiente, tengo en un archivo CSV información sobre los asistentes al FLISOL del año pasado, entre esos datos está su email, nombre y apellido. Es una lista de 137 inscriptos y quería invitarlos usando un método más automático que escribirle a uno por uno a manopla, entonces necesitaba lograr un email algo amigable, que incluya su nombre en el contenido, el mensaje y que además adjunte la hermosa imagen del FLISOL 2014.

Bien, qué hago? simple, parseo el archivo extrayendo email, nombre y apellido, agarro un mensaje de invitación que escribí en el mismo programa, reemplazo ciertas etiquetas con el nombre y apellido, adjunto ese texto y la imagen al email y mando usando mi misma cuenta de gmail.

Itero hasta llegar al final y listo el pollo. Así sería la cosa:

# -*- coding: utf-8 -*-
# Importamos libs
import smtplib
import mimetypes

# Importamos los modulos
from email.MIMEMultipart import MIMEMultipart
from email.MIMEImage import MIMEImage
from email.Encoders import encode_base64
from email.mime.text import MIMEText
# para esperar y para reemplazar el nombre y apellido
from time import sleep
from string import Template

# Adjuntamos Imagen
file = open("FLISOL2014SFe.png", "rb")
attach_image = MIMEImage(file.read())
attach_image.add_header('Content-Disposition', 'attachment; filename = "FLISOL2014SFe.png"')

# Autenticamos con gmail
mailServer = smtplib.SMTP('smtp.gmail.com',587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login("ACA_EMAIL@gmail.com","ACA_TU_PASS")

# Texto del mail para reemplazar luego nombre y apellido
sms = Template("""Estimad@ $nombre $apellido,

Le enviamos una especial invitación a la nueva edición del
Festival Latinoamericano de Software Libre a realizarse en la
ciudad de Santa Fe.

Este año el evento se llevará a cabo en la Facultad de Ingeniería Química - UNL,
ubicada en Santiago del Estero 2829.

Inscripción y más información en http://flisolsantafe.org.ar .
Esperamos contar con su presencia!!!

Atte.
Grupo de Usuarios de Linux del Litoral (LUGLi).
http://lugli.org.ar""")

f = open("Flisol2013_participantes.csv",'r')
# Leemos todas las lineas
lines = f.readlines()
i = 0
for l in lines:
    i += 1
    dat = l.split(';')
    ape = dat[2]
    nom = dat[3]
    mailto = dat[4]
    # armamos el mail
    msg = MIMEMultipart()
    msg['From'] = "Emiliano López"
    msg['To'] = mailto
    msg['Subject'] = "FLISOL 2014 en Santa Fe"
    # reemplazo el nombre y apellido por lo leido
    msg.attach(MIMEText(sms.substitute({ 'nombre': nom, 'apellido': ape})))
    msg.attach(attach_image)

    # Enviamos
    mailServer.sendmail("TU_MAIL@gmail.com", mailto, msg.as_string())
    print str(i)+" "+mailto+"    ok"
    sleep(2)

#cierra el archivo
f.close()

# Cerramos conexion
mailServer.close()

Ahora me quedo sentado a esperar que se llene de personas la FIQ y desparramar software libre a troche y moche!

Ahora sí, lo que todos estábamos esperando:

  1. Juan Pablo Taulamet

    Muy bueno!

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Social Widgets powered by AB-WebLog.com.

Social Widgets powered by AB-WebLog.com.

Social Widgets powered by AB-WebLog.com.