

Python Kullanarak Mail Nasıl Gönderilir?
Python Mail Nasıl Gönderilir? sorusuna cevap vermeden önce dijital dünyanın gelişmesi ile birlikte yazılıma olan ilgi son yılların en yüksek seviyesini gördü. Yazılım programlama dillerinden birisi olan Python; diğer yazılım dillerine oranla basit söz dizimi, dil öğrenilmesi gibi akılda kalmasını kolaylaştırmaktadır. Python programlama dilinde ise sık sorulan sorulardan birisi ise mail gönderimidir. Peki Python programlama dili ile mail nasıl gönderilir? En güncel detaylı rehber yazı içeriğinin devamında yer alıyor.
Python ile mail gönderimleri için en basit yolları bu yazı rehberinde inceleyeceğiz. İçeriği okumaya devam edin.
Python Mail Gönderim Kütüphanesi
Python programlama dilinde mail gönderimleri için iki modül kullanmamız gerekiyor. Bu modüller smtplib ve e-mail modülleridir. Bu modüller ile mail gönderimini açıklamadan önce dilerseniz kavramların ne anlama geldiğini öğrenelim.
Smtplib modülü elektronik posta gönderimleri anlamına gelen bir iletişim protokolüdür.
Gmail Stmp Ayarları
Genel olarak dünyada mail sunucuları stmp protokolünü kullanarak e-mail gönderip almaktadırlar. Python ile mail gönderebilmeniz adına bir smtp mail sunucusu üzerinden bağlanma işlemleri gerçekleştirilmesi gerekmektedir. Bu işlemlerin kolay bir şekilde ilerlemesi adına ise gmail stmp ayarlarını kullanarak mail gönderimi gerçekleştireceğiz. Türkiye’de en fazla kullanılan mail servislerinden birisi olan Gmail üzerinden mail gönderim işlemlerini basit bir şekilde tamamlayabiliriz.
Bu işlemleri sağlıklı bir şekilde tanımlayabilmeniz için Google hesabınıza giriş yapmanız gerekmektedir. Google hesabınıza ilk etapta daha az güvenli uygulama bağlantı girişleri için izin vermeniz gerekmektedir.
https://myaccount.google.com/lesssecureapps
Burada yer alan linke tıklayarak gmail hesabınızla oturum açınız. Oturum açmanızın ardından “Allow less secure apps” ayarını “ON” yapmanız gerekmektedir.
Gerçekleştirdiğiniz bu ayarlar sonrasında Python kodunuzu yazabiirsiniz.
İlk aşamada smtplib ve email modülleri için gerekli tüm ayarları import etmemiz gerekmektedir.
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
Gmail smtp sunucusuna bağlanabilmek için port kısmına 587 giriniz.
mail = smtplib.SMTP("smtp.gmail.com",587)
mail.ehlo()
mail.starttls()
# gmail kullanıcı adımı ve şifremi giriyorum.
mail.login("emailkullanicim@gmail.com", "xxxxxx")
Bu ayarlar ile bağlanma işlemini gerçekleştirmenizin ardından göndereceğiniz mesajı modül içerisinde bulunan “MIMEmultipart” sınıfı üzerinden oluşturacağız. Bu sınıf üzerinde ki “from, to, subject” alanlarına da uygun değerleri vererek kodu tamamlıyoruz.
mesaj = MIMEMultipart()
mesaj["From"] = " emailkullanicim@gmail.com" # Gönderen kişi
mesaj["To"] = " emailkullanicim@gmail.com" # Alıcı
mesaj["Subject"] = "Python Smtp ile Mail Gönderme" # Konu
body = """
Python ile smtp ve email modülünü kullanarak mail gönderiyorum.
"""
body_text = MIMEText(body, "plain")
mesaj.attach(body_text)
Bu aşamaları doğru bir şekilde tamamlamamızın ardından mail istemci sınıfında sendmail metodunu çağıralım.
mail.sendmail( mesaj["From"], mesaj["To"], mesaj.as_string())
İlk aşamadan itibaren yazdığımız kodları bir araya getirelim.
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import sys
# Gmail email sunucusuna bağlanıyoruz
try:
mail = smtplib.SMTP("smtp.gmail.com",587)
mail.ehlo()
mail.starttls()
mail.login("emailkullanicim@gmail.com", "xxxxxx")
mesaj = MIMEMultipart()
mesaj["From"] = "emailkullanicim@gmail.com" # Gönderen
mesaj["Subject"] = "Python Smtp ile Mail Gönderme" # Konusu
body = """
Python ile smtp ve email modülünü kullanarak mail gönderiyorum.
"""
body_text = MIMEText(body, "plain") #
mesaj.attach(body_text)
mail.sendmail(mesaj["From"], mesaj["To"], mesaj.as_string())
print("Mail başarılı bir şekilde gönderildi.")
mail.close()
# Eğer mesaj gönderirken hata olursa, hata mesajını konsole yazdırıyorum.
except:
print("Hata:", sys.exc_info()[0])
Hazırladığımız kodlarda herhangi bir hata olması durumunda ise Python hatanın ne olduğunu konsola yazacaktır. Kıvırcık Yazılımcı Python