資源簡介
python GUI實現簡易發送郵件程序。
代碼片段和文件信息
#!/usr/bin/env?python
#coding=utf-8
from?smtplib?import?*
from?Tkinter?import?*
import?tkMessageBox
import?string
class?loginPage(object):
????def?__init__(self?master?info=‘Mail?Send?System‘):
????????self.master?=?master
????????self.mainlabel?=?Label(master?text=info?justify=CENTER)
????????self.mainlabel.grid(row=0?columnspan=3)
????????self.user?=?Label(master?text=‘username‘?borderwidth=2)
????????self.user.grid(row=1?sticky=W)
????????self.pwd?=?Label(master?text=‘password‘?borderwidth=2)
????????self.pwd.grid(row=2?sticky=W)
????????self.userEntry?=?Entry(master)
????????self.userEntry.grid(row=1?column=1?columnspan=2)
????????self.userEntry.focus_set()
????????self.pwdEntry?=?Entry(master?show=‘*‘)
????????self.pwdEntry.grid(row=2?column=1?columnspan=2)
????????self.loginButton?=?Button(master?text=‘Login‘?borderwidth=2?command=self.login)
????????self.loginButton.grid(row=3?column=1)
????????self.clearButton?=?Button(master?text=‘Clear‘?borderwidth=2?command=self.clear)
????????self.clearButton.grid(row=3?column=2)
????def?login(self):
????????self.username?=?self.userEntry.get().strip()
????????self.passwd?=?self.pwdEntry.get().strip()
????????if?len(self.username)?==?0?or?len(self.passwd)?==?0?or?‘@‘?not?in?self.username:
????????????tkMessageBox.showwarning(‘警告‘?‘用戶名或者密碼為空或郵件格式不正確‘)
????????????self.clear()
????????????self.userEntry.focus_set()
????????????return
????????self.getSmtpHost()
????????self.connect()
????def?connect(self):
????????‘this?method?will?try?to?connet?the?SMTP?server?according?the?current?user‘
????????HOST?=?‘smtp.‘?+?self.smtp?+‘.com‘
????????try:
????????????self.mySMTP?=?SMTP(HOST)
????????????self.mySMTP.login(self.username?self.passwd)
????????#except?SMTPConnectError:
????????except?Exception?e:
????????????tkMessageBox.showerror(‘連接錯誤‘?‘%s‘?%?e)
????????????return
????????self.mySendMail?=?sendMail(self.master?self.mySMTP?self.username)
????def?clear(self):
????????self.userEntry.delete(0?END)
????????self.pwdEntry.delete(0?END)
????def?getSmtpHost(self):
????????‘this?method?try?to?obtian?the?SMTP?HOST?according?the?user?account‘
????????firstSplit?=?self.username
- 上一篇:python turtle繪圖
- 下一篇:Python圖像聚類
評論
共有 條評論