Hi Guys. I need some help with the coding for my program.

This coding is suppose to sort text file according to the latest date and send 
the latest file. Attach it to my email and sent to another email account. But 
somehow the program is unable to send email.

[CODE]#!/usr/bin/python
import os, glob, smtplib, datetime
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
from email import Encoders

process_list=[]
AP_filelist=[]
Client_filelist=[]
BlackClient_filelist=[]
sniff_assoc = 0
i = 0

to = "iamsiaozhar...@hotmail.sg"
gmail_user = "root.phidg...@gmail.com"
gmail_pwd = "rootphidget"

def mail(to, subject, text, attach):
   msg = MIMEMultipart()

   msg['From'] = gmail_user
   msg['To'] = to
   msg['Subject'] = subject

   msg.attach(MIMEText(text))

   part = MIMEBase('application', 'octet-stream')
   part.set_payload(open(attach, 'rb').read())
   Encoders.encode_base64(part)
   part.add_header('Content-Disposition',
           'attachment; filename="%s"' % os.path.basename(attach))
   msg.attach(part)

   mailServer = smtplib.SMTP("smtp.gmail.com", 587)
   mailServer.ehlo()
   mailServer.starttls()
   mailServer.ehlo()
   mailServer.login(gmail_user, gmail_pwd)
   mailServer.sendmail(gmail_user, to, msg.as_string())
   # Should be mailServer.quit(), but that crashes...
   mailServer.close()


Client_files = glob.glob('/root/wifi/Output_assoc/*Rouge-Client*.txt')
def get_oldest_Client_file(Client_files):
    for data in Client_files:
        stats = os.stat(data)
        Client_filelist.append(data)
    sortedClient = sorted(Client_filelist)
    return sortedClient[0]


BlackClient_files = glob.glob('/root/wifi/Output_arp/*DeAuth-Client*.txt')
def get_oldest_BlackClient_file(BlackClient_files):
    for data in BlackClient_files:
        stats = os.stat(data)
        BlackClient_filelist.append(data)
    sortedBlackClient = sorted(BlackClient_filelist)
    return sortedBlackClient[0]


if __name__=='__main__':

    try:
        if os.path.getsize(get_oldest_Client_file(Client_files)) > 1:
            mail("root.phidg...@gmail.com",
                "Rouge Client Found",
                "Client MAC address in the attachment",
                get_oldest_Client_file(Client_files))
            print str(datetime.datetime.now()) + '  --  ' + 
get_oldest_Client_file(Client_files) + ' was sent.'
            os.remove(get_oldest_Client_file(Client_files))
        else:
            for line in os.popen("ps -e"):
                fields  = line.split()
                process = fields[3]
                process_list.append(process)

            for pro in process_list:
                if pro == 'sniff_assoc':
                    sniff_assoc = 1
                    i+=1

            if sniff_assoc == 0:
                os.remove(get_oldest_Client_file(Client_files))
                print str(datetime.datetime.now()) + '  --  ' + 'program is not 
running. ' + get_oldest_Client_file(Client_files) + ' is remove.'
            else:
                print str(datetime.datetime.now()) + '  --  ' + 'Client file is 
still writing.'
    except:
        print str(datetime.datetime.now()) + '  --  ' + 'No AP file to send.'


    try:
        if os.path.getsize(get_oldest_BlackClient_file(BlackClient_files)) > 1:
            mail("root.phidg...@gmail.com",
                "DeAuth Rouge Client",
                "Client MAC address in the attachment.",
                get_oldest_BlackClient_file(BlackClient_files))
            print str(datetime.datetime.now()) + '  --  ' + 
get_oldest_BlackClient_file(BlackClient_files) + ' was sent.'
            os.remove(get_oldest_BlackClient_file(BlackClient_files))
        else:

            for line in os.popen("ps -e"):
                fields  = line.split()
                process = fields[3]
                process_list.append(process)

            for pro in process_list:
                if pro == 'sniff_arp':
                    sniff_assoc = 1
                    i+=1

            if sniff_assoc == 0:
                os.remove(get_oldest_BlackClient_file(BlackClient_files))
                print str(datetime.datetime.now()) + '  --  ' + 'program is not 
running. ' + get_oldest_BlackClient_file(BlackClient_files) + ' is REMOVED!!'
            else:
                print str(datetime.datetime.now()) + '  --  ' + 'DeAuth client 
file is still writing!'
    except:
        print str(datetime.datetime.now()) + '  --  ' + 'No DeAuth client file 
to send.'[/CODE]
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to