El siguiente script trata de automatizar el envió de correos, por medio del uso de dos ficheros.
1.carta.txt:
Estimado/a H #CLIENTE#
Tenemos noticias de que usted don/doña H #CLIENTE# no a abonado el importe
de la cuota mensual a que le obliga el draconiano contrato que firmó.
2.cliente.txt:
alguncorreo@gmail.com nombre apellido
alguncorreo@gmail.com nombre apellido
La idea es sustituir #CLIENTE# por el nombre y apellido del cliente, que es lo que ya he logrado hasta el momento y sustituir H(hombre) si esta presente o M(mujer) por su correspondiente identificativo Estimado/a y don/doña esta es la parte que aun no he podido hacer si me pudieran dar alguna idea de como optimizar y como finalizar este ejercicio se los agradeceria
Gracias por responder al final lo solucione usando expresiones regulares puede que no sea muy
eficiente pero lo logre hacer .
Este es el código
Código
def envio_correo_personalizado(): try: # variables y apertura de ficheros nombre = [] mensaje = "" carta = open("carta.txt", "r") carta_copia = open("carta.txt.copia", "w") cliente = open("cliente.txt", "r") # lectura de clientes for _cliente in cliente: nombre += _cliente.rstrip().split("/") # Leyendo el fichero carta linea = carta.readline() while linea != "": mensaje += linea linea = carta.readline() # TODO Cambiando los valores del mensaje segun el genero usando expresiones regulares. # FIXME Buscar otra forma de hacerlo. mensaje = re.sub( r"/a|/doña|H", "", mensaje) if "H" in mensaje else re.sub(r"o/|don/|M", "", mensaje) mensaje = re.sub(r"#CLIENTE#", nombre[1], mensaje) print("Mensaje cambiado") print(mensaje) for i in mensaje: carta_copia.write(i) # cierre de ficheros carta.close() cliente.close() carta_copia.close() except IOError: print("Fichero no existe")