Sıfırdan Otomatik Mail Gönderme Scripti Yaz! (Python ile Anlatım)
Python ile Anlatım Otomatik mail gönderimi, artık sadece kurumsal sistemlerin yaptığı bir iş değil. Python ile kendi mail otomasyonunu yazmak sadece birkaç adım sürüyor. Üstelik tamamen kontrol sende, araya pahalı yazılımlar veya kısıtlayıcı platformlar girmiyor.
Bu yazıda, sıfırdan kendi otomatik e-posta gönderme scriptini yazacağız. Geliştiriciler, freelancer'lar, küçük işletmeler ve teknik meraklılar için net bir rehber olacak.
Neler Yapacağız?
- SMTP mantığını öğreneceksin
- Gmail ile mail gönderimini kuracağız
.env
dosyasıyla şifreleri gizleyeceğiz- Kişiye özel içerikli mailler göndereceğiz
- Toplu mail gönderimi yapacağız
- Planlı ve otomatik çalışan sistem kuracağız
Neden Python?
Python hem basit hem güçlüdür. Özellikle smtplib
, email
, schedule
, dotenv
gibi kütüphaneler sayesinde, hızlı ve güvenli bir otomasyon sistemi kurabilirsin.
Adım 1: Gmail SMTP Ayarlarını Aç
- Gmail hesabına gir
- https://myaccount.google.com/lesssecureapps adresinden “Daha az güvenli uygulamalara izin ver” seçeneğini aç (yeni hesaplarda bu kalktıysa, “Uygulama şifresi” oluşturman gerekir)
- 2FA aktifse, “Uygulama Şifresi” üret → https://myaccount.google.com/apppasswords
Adım 2: Gerekli Kütüphaneleri Kur
pip install python-dotenv schedule
Adım 3: .env Dosyası Oluştur
.env
dosyasına şifreni güvenli şekilde sakla:
EMAIL_ADDRESS=seninmailin@gmail.com
EMAIL_PASSWORD=uygulama_sifren
Adım 4: Python Scripti Yaz
import smtplib
import os
from email.message import EmailMessage
from dotenv import load_dotenv
load_dotenv()
EMAIL_ADDRESS = os.getenv("EMAIL_ADDRESS")
EMAIL_PASSWORD = os.getenv("EMAIL_PASSWORD")
def mail_gonder(alici, konu, icerik):
msg = EmailMessage()
msg["Subject"] = konu
msg["From"] = EMAIL_ADDRESS
msg["To"] = alici
msg.set_content(icerik)
with smtplib.SMTP_SSL("smtp.gmail.com", 465) as smtp:
smtp.login(EMAIL_ADDRESS, EMAIL_PASSWORD)
smtp.send_message(msg)
print(f"Mail gönderildi: {alici}")
Adım 5: Tek Seferlik Mail Gönder
mail_gonder(
alici="hedefmail@gmail.com",
konu="Test Maili",
icerik="Bu mail Python ile otomatik olarak gönderilmiştir."
)
Adım 6: Toplu Mail Gönder (Excel'den veya Listeyle)
alicilar = [
"kisi1@example.com",
"kisi2@example.com",
"kisi3@example.com"
]
for email in alicilar:
mail_gonder(
alici=email,
konu="Kampanya Başladı!",
icerik=f"Merhaba {email}, yepyeni kampanyamız yayında!"
)
Adım 7: Otomatik Zamanlı Mail Gönderimi
import schedule
import time
def gunluk_mail():
mail_gonder(
alici="rapor@example.com",
konu="Günlük Rapor",
icerik="İşte bugünkü sistem raporunuz..."
)
schedule.every().day.at("08:00").do(gunluk_mail)
while True:
schedule.run_pending()
time.sleep(60)
SEO Etiket Önerileri (WordPress için)
python ile otomatik mail
smtplib mail gönderme
gmail smtp python
python email otomasyon
otomatik e-posta python
mail gönderme scripti
schedule python mail
Kullanım Senaryoları
- Günlük sistem raporlarını kendine gönder
- Toplu kampanya mailleri yolla
- Proje teslim hatırlatıcıları kur
- Kişiye özel teşekkür e-postaları gönder
- Freelance müşterilere otomatik bilgilendirme sistemi yaz
Güvenlik Uyarısı
- E-posta şifreni asla kodun içinde düz metin olarak tutma
.env
dosyanı.gitignore
içine eklemeyi unutma- Gmail API gibi alternatiflerle daha profesyonel sistemler kurulabilir
Sonuç: Artık Mail Otomasyonunu Kendin Yönetebilirsin
Artık ihtiyacına göre şekillenen bir mail gönderim sistemi elinde.
Hem maliyetsiz, hem esnek, hem de istediğin zaman kontrol sende. Bu script, daha sonra gelişmiş bir CRM sistemine bile dönüşebilir. Küçük adımlarla büyük otomasyonlar kurabilirsin.
Hazırsan bu scriptin .py
halini sana özel olarak da verebilirim. Veya web panel entegresi istiyorsan Flask ile frontend bile ekleriz.
Sonraki başlığa geçelim mi?