Usando Python, Gmail SMTP para automatizar el envío masivo de correos electrónicos personalizados

Este artículo explica cómo ahorrar el 90 % del tiempo de su campaña de marketing por correo electrónico manual y regular mediante el uso de Gmail SMTP y el script Python.

Desde una perspectiva de marketing, el tráfico orgánico no se limita solo al SEO. Por el contrario, cubre una amplia gama de fuentes de tráfico siempre que el porcentaje mayoritario de la inversión se centre en la mano de obra. Pueden ser redes sociales, asociaciones, VoD, correo electrónico, etc. En comparación con estos canales en términos de tráfico orgánico, el marketing por correo electrónico sigue siendo el enfoque más eficiente en el marketing de conversación uno a uno con una mayor tasa de conversión de nuevos clientes y un menor costo por retención, especialmente en los sectores de comercio electrónico y B2B.

Básicamente, tenemos dos opciones si aprovechamos la magia del marketing por correo electrónico: plataforma paga y gratuita. Si prefiere un retorno de inversión a largo plazo en lugar de estar restringido por las tarifas de pago recurrentes de la plataforma, este artículo puede adaptarse a su estómago.

Este artículo explica cómo ahorrar un 90 % del tiempo de su campaña de marketing por correo electrónico manual y regular mediante el uso de secuencias de comandos de Gmail y Python. Al final de este artículo, usted y su equipo pueden escribir una secuencia de comandos de Python personalizada para crear un sistema de envío masivo de correo electrónico mediante Gmail.

Pros y contras para ganar más tiempo usando la automatización de marketing SMTP de Gmail:

Ventajas:

  • Ahorre más del 90 % de tiempo en comparación con el envío manual de correos electrónicos;
  • Ahorre más del 90 % de dólares en comparación con suscribirse a un software de CRM o invertir en un sistema interno creado por un tercero. Posteriormente podemos invertir estos dólares en otra área que es difícil de automatizar;
  • Posiblemente integre la aplicación de automatización de Gmail con otras aplicaciones para agilizar el proyecto y ahorrar aún más tiempo.

Contras:

  • Una cuenta gratuita de Gmail solo ofrece 500 envíos de correo electrónico por día;
  • Ofrezca plantillas de correo electrónico y funciones de generación de informes menos avanzadas en comparación con el CRM de pago;
  • Requiera talentos con habilidades de Python o dedique tiempo a escribir guiones en primer lugar

Sección del artículo:

Conéctese con la base de datos de clientes usando gspread y Google Sheet

Lo primero es lo primero, debemos conectarnos con nuestra base de datos de clientes, que incluye los contactos y mensajes del público objetivo. Google Sheet es una excelente opción para almacenar los datos porque es conveniente para conectarse o integrarse con aplicaciones que usan gspread. Como muestra la captura de pantalla, cada columna representa un tipo de conjunto de datos. Daré más detalles sobre cómo usarlos en un momento.

En el script de Python, podemos conectar Google Sheet usando el módulo gspread. A continuación se encuentran las codificaciones de secuencias de comandos para su referencia.

Agregue la credencial de la cuenta personal y conéctese con el servidor SMTP de Gmail

Después de habernos conectado con la base de datos, podemos agregar la credencial de su cuenta de Gmail al script y conectarnos con el servidor de Gmail.

Crear y leer un mensaje de plantilla con parámetros variables

Enviar el mensaje de correo electrónico correcto a la lista de audiencia objetivo es el propósito de la automatización de Gmail, en lugar de mostrar la base de datos y la conexión de Gmail. Por lo tanto, necesitamos agregar nuestros mensajes de correo electrónico a la campaña de correo electrónico.

Aquí hay una muestra donde creamos un archivo txt y agregamos el mensaje allí. Lo que necesitamos su atención es que hay algunas palabras allí con un símbolo $ . La razón por la que necesitamos este símbolo es por la personalización de los mensajes para cada receptor. Cualquiera que sea la palabra que tenga un símbolo delante de ellos, eso significa que esta posición es una palabra variable. Voy a explicar más sobre cómo hacerlo.

Después de eso, podemos abrir el archivo de plantilla con el fin de conectarlo con la campaña de correo electrónico más adelante. A continuación se muestra el ejemplo de codificación del script.

f = open('template.txt','r')

message_template = Template(f.read())

Agregar mensajes personalizados

Como mencioné dos cosas anteriormente con respecto a la base de datos y el símbolo en la plantilla txt, en realidad están correlacionados.

Primero, cada fila representa una audiencia única en la hoja de cálculo de Google. Posteriormente, categorizamos la información del público objetivo por columna. Por lo tanto, cada columna representa un tipo de conjunto de datos, como correo electrónico, nombre, enlace al sitio web, etc. Tenga en cuenta que el nombre de la columna es importante, ya que se usa para conectarse con el script de Python. Por lo tanto, asegúrese de que esté desduplicado entre las columnas.

En segundo lugar, la palabra que sigue al símbolo en la plantilla txt es la variable que creamos en el script de Python. Por ejemplo, Channel_Name, Video_headline en este caso.

En el módulo MIME, tiene un método sustituto para que los desarrolladores creen estas variables y se conecten con la base de datos. Como puede ver en la captura de pantalla a continuación, cada variable tiene un valor único. El valor único es básicamente el valor de la columna específica en la hoja de cálculo.

Por ejemplo, creamos un bucle aquí: para ChannelName en el lector, porque normalmente hay más de una fila en la automatización del correo electrónico. Luego, usamos esta variable de bucle para ubicar qué columna queremos que coincida con el conjunto de símbolos de antemano en la plantilla txt. ChannelName[2] significa que la tercera columna en la hoja de cálculo de Google almacena los datos del nombre del canal. Es porque lo contamos a partir de 0

Enviar correos electrónicos

Cuando la personalización del mensaje de correo electrónico está lista, es hora de codificar el envío del correo electrónico al público objetivo en el ciclo.

El primer paso es completar la información del correo electrónico que incluye el asunto, el correo electrónico del destinatario utilizando el método msg proporcionado por la función MINEText.

En segundo lugar, como sabrá, el correo electrónico del receptor se almacena en la Hoja de Google. Por lo tanto, usamos la variable con la columna específica en la línea de codificación 'Para'.

Por último, pero no menos importante, escribimos una línea de códigos usando server.sendmail() . En el método, debemos agregar tres valores que son el correo electrónico del remitente, el correo electrónico del receptor y msg.as_string.

Además, sugeriré agregar un time.sleep() porque reduce los correos electrónicos bloqueados por Google cuando la frecuencia de envío es demasiado alta.

Script completo de Python para enviar correos electrónicos usando Gmail SMTP

Si está interesado en el script de python completo del Capítulo 59: Uso de Python y Gmail SMTP para automatizar el envío de correos electrónicos personalizados, suscríbase a nuestro boletín agregando el mensaje "Capítulo 59" . Le enviaremos el guión inmediatamente a su buzón.

Espero que disfrute leyendo el Capítulo 59: Uso de Python y Gmail SMTP para automatizar el envío de correos electrónicos personalizados. Si lo hiciste, apóyanos haciendo una de las cosas que se enumeran a continuación, porque siempre ayuda a nuestro canal.

  • Apoya y dona a nuestro canal a través de PayPal ( paypal.me/Easy2digital )
  • Suscríbete a mi canal y activa la campanita de notificaciones Easy2Digital Youtube channel .
  • Sigue y dale me gusta a mi página Easy2Digital Facebook page
  • Comparte el artículo en tu red social con el hashtag #easy2digital
  • Compre productos con Easy2Digital 10% de descuento Código de descuento ( Easy2DigitalNewBuyers2021)
  • Te suscribes a nuestro boletín semanal para recibir los últimos artículos, videos y códigos de descuento de Easy2Digital
  • Suscríbase a nuestra membresía mensual a través de Patreon para disfrutar de beneficios exclusivos ( www.patreon.com/louisludigital )