DOLAR 38,7502 0.36%
EURO 43,6390 0.25%
ALTIN 4.150,531,15
BITCOIN 39915524.1072%
İstanbul
23°

AÇIK

SABAHA KALAN SÜRE

mthaber

mthaber

03 Mayıs 2025 Cumartesi

Sıfırdan Otomatik Mail Gönderme Scripti Yaz! (Python ile Anlatım)

Sıfırdan Otomatik Mail Gönderme Scripti Yaz! (Python ile Anlatım)
0

BEĞENDİM

ABONE OL

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ç

  1. Gmail hesabına gir
  2. 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)
  3. 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?