Belirlenen dakikada bir mail göndermek.

Başlatan mami96, 22 Haziran 2011 - 16:44:05

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

mami96

Selamlar.

Bir mail gönderici kodu yaptım.

Ben bu kodu döngüye sokmak istiyorum.

Şöyle diyeyim

bu kod mail atıyor. 5 dakikada bir mail atsın bunu nasıl ayarlarım? kod şu [istihzadan yararlanmılmıştır]


import smtplib
from email.mime.text import MIMEText

textfile = "yazi.txt"
fp = open(textfile, 'rb')

msg = MIMEText(fp.read())
fp.close()

me = "x@gmail.com"
you = "x@m.facebook.com"
kullanici_adi = raw_input("Gmail adresi: ")
parola = raw_input("Gmail sifresi: ")
print("[+]Durum guncelleniyor...\n")
mailServer = smtplib.SMTP("smtp.gmail.com", 587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(kullanici_adi, parola)

msg['Subject'] = "Deneme %s" % textfile
msg['From'] = me
msg['To'] = you

mailServer.sendmail(me, [you], msg.as_string())
print("[+]Durum basariyla guncellendi...\n")
mailServer.quit()

sem

Programı komple döngü içerisine alıp

sleep komutu ile her döngü sonunda istenilen süre kadar bekletebilirsiniz.

döngüler;
http://www.istihza.com/py3/dongu.html

sleep;
http://www.tutorialspoint.com/python/time_sleep.htm
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

mami96

Bir ornek verseniz?

ornegin bu program

24 saat boyunca 5 dakikada bir mail atacak

dongu hic durmicak

ornek gerekiyorda

furkankalkan

programı derleyip crontabla istediğiniz dakikada bir çalısmasını sağlayabilirsiniz.
Lover
twitter.com/furkan_kalkan1

mami96

çoklu platformda çalışmalı :(

yani sırf bu kodlar ile bu sağlanabilir mi?

ubuntu da dediğiniz crontab ile yapılabilir.

bense

windows, ubuntu altinda calisacak kod ariyorum.

furkankalkan

Alıntı yapılan: mami96 - 22 Haziran 2011 - 17:59:22
çoklu platformda çalışmalı :(

yani sırf bu kodlar ile bu sağlanabilir mi?

ubuntu da dediğiniz crontab ile yapılabilir.

bense

windows, ubuntu altinda calisacak kod ariyorum.
[/quote

hmm o zaman tamam :D
Lover
twitter.com/furkan_kalkan1

mami96

windows'u arkadasa yapiyorum linux'u kendime (:

hitokiri

#!/usr/bin/env python
#! coding:utf-8 -*-
import time
import sys
import smtplib
from email.mime.text import MIMEText
def posta():
        textfile = raw_input("Dosya Yolu: ")
        me =raw_input("Gmail adresi: ")
        you =raw_input("Gönderme adresi: ")
        parola = raw_input("Gmail sifresi: ")
        fp = open(textfile, 'rb')
        msg = MIMEText(fp.read())
        fp.close()   
        print("[+]Durum guncelleniyor...\n")
        mailServer = smtplib.SMTP("smtp.gmail.com", 587)
        mailServer.ehlo()
        mailServer.starttls()
        mailServer.ehlo()
        mailServer.login(me, parola)
        msg['Subject'] = "Deneme %s" % textfile
        msg['From'] = me
        msg['To'] = you
        mailServer.sendmail(me, [you], msg.as_string())
        print("[+]Durum basariyla guncellendi...\n")
        mailServer.quit()
posta()
while True:
        i=0
        while i <= 60*5:
             i+=1
             sys.stdout.write("\rGeçen Saniye: %d%%" %i)
             sys.stdout.flush()
             time.sleep(1)           
        else:
             posta()
                   

En basitinden böyle olabilir beraberinde başka işlemler falanda gerekiyorsa thread diye aratıp bi incelemek faydalı olabilir.

utdmr

Kişisel Blogum: Çoğunlukla Zararsız - cogunluklazararsiz.org
--
Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -and a lot of courage- to move in the opposite direction.

mami96

#9
Tesekkurler harika oldu (:

Su dosya secimini iptal etmeyi deneyeyim.

Ellerinize saglik

Cozulmustur tagini ekleyeyim.

******************

Duzenleyeyim

birde sunu nasil ayarlarim

her defasinda bu

kullanici adini sormasin.

dosya yolunu da sormasin.