Python SMTP Modülü

for i in liste2:


    mesaj["From"] = "ahmetkamerc@gmail.com"
    mesaj["To"] = "{}".format(i)
    mesaj["Subject"] = "Bu bir toplu e-postadır."

    govde = """
    BU E-POSTA PYTHON TARAFINDAN TOPLU OLARAK GÖNDERİLMİŞTİR.
    """

    mesaj_govdesi = MIMEText(govde, "plain")
    mesaj.attach(mesaj_govdesi)



    mail = smtplib.SMTP("smtp.gmail.com", 587)
    mail.ehlo()

    mail.starttls()
    mail.login("ahmetkamerc@gmail.com", "******")

    mail.sendmail(mesaj["From"], mesaj["To"], mesaj.as_string())

    print("Mail başarı ile gönderildi")

    mail.close()

Arkadaşlar liste2, sadece e-postalardan oluşuyor. Ama yukarıdaki kodu çalıştırmama rağmen herkese 4 tane e-posta gidiyor. Kişi başı bir tane gitmesini istiyorum. Yardımcı olabilir misiniz?

Listenin ilk elemanına 4 tane gerisine 0 tane e-posta gidiyor

Merhaba,

mesaj nesnesini for döngüsünün dışında oluşturmuşsunuz. Sanırım her bir gönderi için ayrı bir mesaj nesnesi oluşturmanız gerekiyor.

Ayrıca, mesaj["to]" kısmına birden çok adresi virgül ile ayırarak yazabilirsiniz. Yani toplu mesaj göndermek için for döngüsüne de ihtiyacınız yok.

2 Beğeni

Çok teşekkür ederim :slight_smile: