İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Script Programlama (Python, Ruby, Perl, Bash/Shell
Script Programlama (Python, Ruby, Perl, Bash/Shell

Python İle Mass Mailer

digitall08.06.20120 cevap2.661 görüntüleme
2012'den beri8 mesaj
#1
Sitem bir süre kapalı kaldığı için eski takipçilerimin birçoğunu kaybettim.Allahtan hepsinin kayıtlı olduğu bir maillistim vardı.Şimdi sitemi tekrardan açtığıma göre bundan onları haberdar etmek lazımdı.Bu yüzden toplu mail göndermeliydim.Bunu piyasada yapan çok fazla kişi var.Ancak onlarda ciddi rakamlar istiyorlar.Zaten benimde maillistim o kadar büyük değildi.Onlara verecek kadar da param yoktu.Bu yüzden bende python kullanarak hepsine toplu mail attım.
Bildiğiniz gibi linux ortamında mail göndermek için mail -s komutu var.Bununla mx kaydı yapılmış tüm serverlardan mail atabiliyorsunuz.Bende python ile linuxun bu özelliğini kullandım.Kod olarak çok basit olabilir ama işlev olarak gayet iyi bence.Belki ileride multi-thread ekleyip işlemleri çok daha kısa sürede tamamlattırabilirim.Ama şimdilik aşağıdaki kod işimi gördü.
#!/usr/bin/env python

import os


mailler = open("mailler.txt","r")


for mail in mailler:
    print mail
[LEFT]    os.system("""echo " Uzun suredir kapali kalan sitem www.halitalptekin.com tekrardan acildi.Tekrardan siteme beklerim. " | mail -s " Yeniden Acildi " """ + mail)[/LEFT]
Aynı dizinde bulunun mailler.txt dosyası içinde mailleri alt alta yazabilirsiniz.Örnek mailler.txt dosyası:

a@a.com
b@b.com
c@c.com
d@d.com

Tabi burada benim karşılaştığım bir sorundan bahsetmek istiyorum.Linux ile Windowsun dosya tipleri farklı olduğu için windows ortamındaki text dosyasını linux ortamında kullanamıyoruz.Bende bunu unutmuştum.Ve dosyayı aynen attığımda python hata verdi ve mailleri göndermedi.Daha sonra aklıma dos2unix programı geldi.Bununla windows ortamındaki metin dosyasını linux ortamında kullanılabilir hale getiriyoruz.Eminim ilerde sizde bu sorunla karşılaşacaksınız.Şimdiden çözümünü bi yerlere not etmekte fayda var.
Kurulum için

yum install dos2unix

Veya

apt-get install dos2unix

Kurduktan sonra dosya dönüştürmek için aşağıdaki komutu girebilirsiniz.(Bu komut windows ortamındaki dosyayı linux ortamı için uyarlar)

dos2unix -k mailler.txt

Ve şimdi bu dosyamızı rahatlıkta yukarıdaki mass mail programımızda kullanabiliriz.

Not: Lütfen programı iyi niyetli amaçlar için kullanalım.Spam mail atmak için kullanmayalım.

Kaynak : http://www.halitalptekin.com/python-ile-mass-mailer.html

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.