import smtplib
import time
import os
import wx
window=wx.App()
s=smtplib.SMTP("smtp.gmail.com",587)
s.starttls()
class pymailer(wx.Frame):
def __init__(self):
wx.Frame.__init__(self,None,-1,"Py-mailer",size=(500,700))
self.panel=wx.Panel(self,-1)
menubar=wx.MenuBar()
filem=wx.Menu()
filem.Append(201,"Quit")
self.Bind(wx.EVT_MENU,self.Quit,id=201)
viewm=wx.Menu()
viewm.Append(202,"About")
self.Bind(wx.EVT_MENU,self.About,id=202)
menubar.Append(filem,"File")
menubar.Append(viewm,"Help")
self.SetMenuBar(menubar)
wx.StaticText(self.panel,-1,"Welcome to Py-mailer.\nLogin with your Gmail credentials and you can send a text-only email to anyone quickly and easily.",pos=(10,10))
wx.StaticText(self.panel,-1,"Please enter your Gmail login ID: ",pos=(10,100))
wx.StaticText(self.panel,-1,"Please enter your Gmail login password:\n(will not be stored)",pos=(10,130))
username=wx.TextCtrl(self.panel,101,"Login ID",pos=(220,100))
user=username.GetValue()
password=wx.TextCtrl(self.panel,102,"Password",pos=(220,130))
passw=password.GetValue()
login=wx.Button(self.panel,103,label="Login",pos=(10,170))
self.Bind(wx.EVT_BUTTON,self.Login,id=103)
wx.StaticText(self.panel,-1,"To:",pos=(10,250))
wx.StaticText(self.panel,-1,"Subject:",pos=(10,280))
wx.StaticText(self.panel,-1,"Message:",pos=(10,310))
toadd=wx.TextCtrl(self.panel,104,"<username@domain.server>",pos=(80,250),size=(240,20))
to=toadd.GetValue()
subj=wx.TextCtrl(self.panel,105,pos=(80,280),size=(240,20))
subject=subj.GetValue()
mess=wx.TextCtrl(self.panel,106,pos=(80,310),size=(240,150))
message=mess.GetValue()
send=wx.Button(self.panel,107,"Send",pos=(245,470))
self.Bind(wx.EVT_BUTTON,self.Send,id=107)
self.Centre()
self.Show()
def Quit(self,event):
self.Close()
def About(self,event):
about=wx.AboutDialogInfo()
about.SetName("Py-Mailer")
about.SetCopyright("(c) 2009 Sravan")
about.SetWebSite("http://www.uberpix.wordpress.com")
about.AddDeveloper("Sravan\nDan")
wx.AboutBox(about)
def Login(self,event):
try:
s.login(user,passw)
wx.StaticText(self.panel,-1,"Logged in",pos=(10,200))
except:
wx.StaticText(self.panel,-1,"Failed",pos=(10,200))
def Send(self,event):
msg="To: "+to+"\nSubject: "+subject+"\n"+message
s.sendmail(us,to,msg)
s.quit()
pymailer()
window.MainLoop()
No matter what I enter, it doesn't login and says "Failed". Why?