Python ile Mail Göndermenin En Kolay Yolu

Python ile mail göndermek için smtplib ve email modüllerini kullanmamız gerekiyor. Öncelikle smtp kavramını açıklayalım. 
İngilizce açılımı simple mail transfer protocol olan smtp, elektronik posta göndermek için kullanılan bir iletişim protokolüdür.

Mail sunucuları smtp protokolünü kullanarak email gönderip alırlar.

Mail gönderebilmek için bir smtp mail sunucusuna bağlanmamız gerekmektedir. Basit olması açısından gmail stmp sunucusu üzerinden mail göndereceğiz. Pek çoğumuzun bir gmail hesabı olduğuna göre bu şekilde mail göndermeyi denemek kolay olacaktır. 

Göndermeden önce google hesabınıza daha az güvenli uygulamaların bağlanabilmesine izin vermelisiniz. Aşağıdaki linke kendi gmail hesabınızla bağlandıktan sonra bağlantı ( Allow less secure apps ) ayarını ON yapmalısınız.

https://myaccount.google.com/lesssecureapps

Bu ayarı yaptıktan sonra artık Python kodunu yazmaya başlayabiliriz. 

İlk olarak smtplib ve email modüllerinin ilgili sınıflarını import etmemiz gerekiyor.

Gmail smtp sunucusuna 587 portu üzerinden bağlanıyorum:

Bu şekilde bağlandıktan sonra da göndereceğim mesajı email modülü içerisinde bulunan MIMEMultipart objesini kullanarak oluşturuyorum. MIMEMultipart objesinin From, To ve Subject alanlarını uygun değerler ile dolduruyorum.

Son olarak yapmam gereken şey mail istemci objesinin sendmail metodunu çağırmak olacaktır:

Örnek kodumuzun tamamını yazalım:

Eğer kodumuzda bir hata varsa örneğin şifremiz hatalı ise, except bloğu çalışacak ve python hatamızın ne olduğunu konsola yazacaktır.

Örneğin gmail şifremizi hatalı girersek şöyle bir hata verecektir:

Smtp.SMTPAuthenticationError

Şifremizi doğru atadıktan sonra başarılı bir şekilde mail gönderdiğinizi göreceksiniz:

Gmail üzerinden mesaj göndermenin bazı limitleri de var onu da söylemeden geçemeyeceğim. Günde 500 taneden fazla mail gönderemezsiniz veya aynı maile 500’den fazla alıcı atayamazsınız.

Sonuç

Evet arkadaşlar, Python ile mail göndermenin ne kadar kolay olduğunu görmüş olduk. Python hakkında  merak ettiğiniz başka şeyler için yorum yapmayı unutmayın.

Python uygulamasını arka planda nasıl çalıştırırım.

Yorum Gönder

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Scroll to Top