python实现的发邮件功能示例


Posted in Python onSeptember 11, 2019

本文实例讲述了python实现的发邮件功能。分享给大家供大家参考,具体如下:

一 简介

本应用实现给网易邮箱发送邮件

二 代码

import smtplib
import tkinter
class Window:
  def __init__(self,root):
    label1 = tkinter.Label(root,text='SMTP')
    label2 = tkinter.Label(root,text='Port')
    label3 = tkinter.Label(root,text='用户名')
    label4 = tkinter.Label(root,text='密码')
    label5 = tkinter.Label(root,text='收件人')
    label6 = tkinter.Label(root,text='主题')
    label7 = tkinter.Label(root,text='发件人')
    label1.place(x=5,y=5)
    label2.place(x=5,y=30)
    label3.place(x=5,y=55)
    label4.place(x=5,y=80)
    label5.place(x=5,y=105)
    label6.place(x=5,y=130)
    label7.place(x=5,y=155)
    self.entryPop = tkinter.Entry(root)
    self.entryPort = tkinter.Entry(root)
    self.entryUser = tkinter.Entry(root)
    self.entryPass = tkinter.Entry(root,show = '*')
    self.entryTo = tkinter.Entry(root)
    self.entrySub = tkinter.Entry(root)
    self.entryFrom = tkinter.Entry(root)
    self.entryPort.insert(tkinter.END,'25')
    self.entryPop.place(x=50,y=5)
    self.entryPort.place(x=50,y=30)
    self.entryUser.place(x=50,y=55)
    self.entryPass.place(x=50,y=80)
    self.entryTo.place(x=50,y=105)
    self.entrySub.place(x=50,y=130)
    self.entryFrom.place(x=50,y=155)
    self.get = tkinter.Button(root,text='发送邮件',command = self.Get)
    self.get.place(x=60,y=180)
    self.text=tkinter.Text(root)
    self.text.place(y=220)
  def Get(self):
    try:
      host = self.entryPop.get()
      port =int(self.entryPort.get())
      user = self.entryUser.get()
      pw = self.entryPass.get()
      fromaddr = self.entryFrom.get()
      toaddr=self.entryTo.get()
      subject=self.entrySub.get()
      text = self.text.get(1.0,tkinter.END)
      msg =("From:%s\nTo:%s\nSubject:%s\n\n"
         % (fromaddr,toaddr,subject))
      msg = msg+text
      smtp=smtplib.SMTP(host,port)
      smtp.set_debuglevel(1)
      smtp.login(user,pw)
      smtp.sendmail(fromaddr,toaddr,msg)
      smtp.quit()
    except Exception as e:
      self.text.insert(tkinter.END,'发送错误\n')
root =tkinter.Tk()
window=Window(root)
root.minsize(600,400)
root.mainloop()

三 运行结果

python实现的发邮件功能示例

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
使用sklearn之LabelEncoder将Label标准化的方法
Jul 11 Python
Sanic框架路由用法实例分析
Jul 16 Python
Python使用Selenium爬取淘宝异步加载的数据方法
Dec 17 Python
Python多进程入门、分布式进程数据共享实例详解
Jun 03 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
JupyterNotebook 输出窗口的显示效果调整方法
Apr 13 Python
python如何爬取网页中的文字
Jul 28 Python
详解python命令提示符窗口下如何运行python脚本
Sep 11 Python
python获取时间戳的实现示例(10位和13位)
Sep 23 Python
python网络爬虫实现发送短信验证码的方法
Feb 25 Python
Pytorch如何切换 cpu和gpu的使用详解
Mar 01 Python
Flask使用SQLAlchemy实现持久化数据
Jul 16 Python
python 字符串常用函数详解
Sep 11 #Python
python sqlite的Row对象操作示例
Sep 11 #Python
Python lambda表达式filter、map、reduce函数用法解析
Sep 11 #Python
python针对mysql数据库的连接、查询、更新、删除操作示例
Sep 11 #Python
Python range、enumerate和zip函数用法详解
Sep 11 #Python
Python 实现文件读写、坐标寻址、查找替换功能
Sep 11 #Python
Python使用APScheduler实现定时任务过程解析
Sep 11 #Python
You might like
PHP持久连接mysql_pconnect()函数使用介绍
2012/02/05 PHP
php利用单例模式实现日志处理类库
2014/02/10 PHP
PHP中实现获取IP和地理位置类分享
2015/02/10 PHP
php给每个段落添加空格的方法
2015/03/20 PHP
变量在 PHP7 内部的实现(一)
2015/12/21 PHP
Yii2.0框架behaviors方法使用实例分析
2019/09/30 PHP
用js查找法实现当前栏目的高亮显示的代码
2007/11/24 Javascript
jQuery 标题的自动翻转实现代码
2009/10/14 Javascript
浏览器脚本兼容 文本框中,回车键触发事件的兼容
2010/06/21 Javascript
原生JS操作网页给p元素添加onclick事件及表格隔行变色
2013/12/01 Javascript
nodejs读取memcache示例分享
2014/01/02 NodeJs
jquery实现非叠加式的搜索框提示效果
2014/01/07 Javascript
返回上一页并自动刷新的JavaScript代码
2014/02/19 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
jQuery页面刷新(局部、全部)问题分析
2016/01/09 Javascript
利用jQuery的动画函数animate实现豌豆发射效果
2016/08/28 Javascript
微信小程序 Windows2008 R2服务器配置TLS1.2方法
2016/12/05 Javascript
js实现产品缩略图效果
2017/03/10 Javascript
JS设置随机出现2个数字的实例代码
2017/07/19 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
2018/04/09 Javascript
layui按条件隐藏表格列的实例
2019/09/19 Javascript
layui监听下拉选框选中值变化的方法(包含监听普通下拉选框)
2019/09/24 Javascript
vue项目使用$router.go(-1)返回时刷新原来的界面操作
2020/07/26 Javascript
[03:02]生活中的Dendi之野外度假篇
2016/08/09 DOTA
go语言计算两个时间的时间差方法
2015/03/13 Python
pygame游戏之旅 添加icon和bgm音效的方法
2018/11/21 Python
tensorboard实现同时显示训练曲线和测试曲线
2020/01/21 Python
jupyter notebook远程访问不了的问题解决方法
2021/01/11 Python
python+playwright微软自动化工具的使用
2021/02/02 Python
Auguste The Label官网:澳大利亚一家精品女装时尚品牌
2020/06/14 全球购物
银行实习人员自我鉴定
2013/09/22 职场文书
优秀实习自我鉴定
2013/12/04 职场文书
法律专业实习鉴定
2013/12/22 职场文书
初中差生评语
2014/12/29 职场文书
初中美术教学反思
2016/02/17 职场文书
如何有效防止sql注入的方法
2021/05/25 SQL Server