Tk写的发邮件小程序
- from tkinter import *
- import smtplib
- from email.mime.text import MIMEText
- from email.header import Header
- win = Tk()
- win.geometry('500x330+300+200')
- win.title('海啸投资发邮件')
- Label(win,text='邮件主题:',width=10).grid(row=0,column=0,padx=5,pady=10)
- Label(win,text='发送人:',width=10).grid(row=1,column=0,padx=5,pady=10)
- Label(win,text='接收者:',width=10).grid(row=2,column=0,padx=5,pady=10)
- Label(win,text='邮件内容:',width=10).grid(row=3,column=0,padx=5,pady=10)
- varAdr = StringVar()
- varAdr.set('')
- entryAdr = Entry(win,width=40,textvariable = varAdr)
- entryAdr.grid(row=0,column = 1,padx=5,pady=5)
- varPost = StringVar()
- varPost.set('')
- entryPost = Entry(win,width=40,textvariable = varPost)
- entryPost.grid(row=1,column = 1,padx=5,pady=5)
- varGet = StringVar()
- varGet.set('')
- entryGet = Entry(win,width=40,textvariable = varGet)
- entryGet.grid(row=2,column = 1,padx=5,pady=5)
- varText = StringVar()
- varText.set('')
- textText = Text(win,width=40,height=10)
- textText.grid(row=3,column = 1,padx=5,pady=5)
- #print(textText.get(1))
- def fun():
- # 第三方 SMTP 服务
- mail_host="smtp.qq.com" #设置服务器
- mail_user="" #用户名
- mail_pass="xxxxx" #口令QQ需要授权码
- sender = varPost.get()
- receivers = [varGet.get()] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
- message = MIMEText(textText.get(1.0,END), 'plain', 'utf-8')
- message['From'] = Header("我是发送者", 'utf-8')
- message['To'] = Header("我是接收者", 'utf-8')
- subject = varAdr.get()
- message['Subject'] = Header(subject, 'utf-8')
- try:
- smtpObj = smtplib.SMTP_SSL()
- smtpObj.connect(mail_host, 465) # 465 为 SMTP 端口号
- smtpObj.login(mail_user,mail_pass)
- print(help(smtpObj.sendmail))
- smtpObj.sendmail(sender, receivers, message.as_string())
- print ("邮件发送成功")
- except smtplib.SMTPException:
- print ("Error: 无法发送邮件")
- Button(win,text='发送',width=20,command=fun).grid(row=4,column=0,padx=10,pady=10)
- Button(win,text='退出',width=20).grid(row=4,column=1,padx=10,pady=10)
- mainloop()
Tk写的发邮件小程序的更多相关文章
- Python3的tkinter写一个简单的小程序
一.这个学期开始学习python,但是看了python2和python3,最后还是选择了python3 本着熟悉python的原因,并且也想做一些小程序来增加自己对python的熟练度.所以写了一个简 ...
- C++写一个排列组合小程序
今天突然想到一个问题,有时候,针对同一个事件有多种反映,特别是游戏AI当中,这种情况下需要采取最适合的方案,哪种方案最适合,可以将每种方案的结果或影响都计算一遍,从而选择最合适的.最基本就是一个排列组 ...
- 用 python 写一个年会抽奖小程序
使用 pyinstaller 打包工具常用参数指南 pyinstaller -F demo.py 参数 含义 -F 指定打包后只生成一个exe格式的文件 -D –onedir 创建一个目录,包含exe ...
- 写个发邮件的功能php的(全代码)
---恢复内容开始--- 正好做了个项目,需要在线留言,一般在线留言发邮件是很常见的方式,一开始从网上搜了很久都没有很全的,也有全一点的,但是也不能用,运行不成功,下面给大家分享一下运行成功了的全部代 ...
- 人人都可以写的可视化Python小程序第二篇:旋转的烟花
兴趣是最好的老师 枯燥的编程容易让人放弃,兴趣才是最好的老师.无论孩子还是大人,只有发现这件事情真的有趣,我们才会非常执着的去做这件事,比如打游戏.如果编程能像玩游戏一样变得有趣,我相信很多人就特别愿 ...
- 用python写个简单的小程序,编译成exe跑在win10上
每天的工作其实很无聊,早知道应该去IT公司闯荡的.最近的工作内容是每逢一个整点,从早7点到晚11点,去查一次客流数据,整理到表格中,上交给素未蒙面的上线,由他呈交领导查阅. 人的精力毕竟是有限的,所以 ...
- 今天给大家分享用Python matplotlib来写随机漫步的小程序
先安装两个库: pip install matplotlib pip install numpy 引用库: import matplotlib.pyplot as mp import numpy as ...
- 分享下自己写的一个微信小程序请求远程数据加载到页面的代码
1 思路整理 就是页面加载完毕的时候 请求远程接口,然后把数据赋值给页面的变量 ,然后列表循环 2 js相关代码 我是改的 onload函数 /** * 生命周期函数--监听页面加载 */ on ...
- C#自己写的第一个小程序,庆祝一下
Packages.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; na ...
随机推荐
- 详解python 局部变量与全局变量
本文将详细分析python的全局变量与局部变量,学过php的人都知道,php里面的全局变量是无法在function里面去使用的,只有超全局变量才可以,那么python会怎么处理全局变量与局部变量呢?下 ...
- select2赋值需要注意
$('#mySelect2').val(data.id).trigger('change'); 需要在赋值后,调用下change事件,不然的话展示值的span不会显示select最新的选中值.
- 编程练习:寻找发帖"水王"扩展问题一
回顾 寻找发帖水王的问题总结起来就是在一个数组中某一个元素出现次数超过了数组长度的一半,那么可以很顺利的找到这个元素,实现见"编程练习:寻找发帖水王" 扩展 上面的问题中,强调了某 ...
- lintcode-100-删除排序数组中的重复数字
100-删除排序数组中的重复数字 素只出现一次,并且返回新的数组的长度. 不要使用额外的数组空间,必须在原地没有额外空间的条件下完成. 样例 给出数组A =[1,1,2],你的函数应该返回长度2,此时 ...
- jquery在页面加载完成后再append的元素事件无效问题
最近遇到一个问题,jquery在页面加载完成后再append的元素,append元素上有onclick事件,但是在append的元素上怎么点击都不会触发onclick事件.就如: <ul cla ...
- Redis的高级应用——数据安全
Redis的数据保存在内存中,速度十分快.这也就意味着,一个恶意破解redis数据库密码的用户,可以在一秒钟进行更多的尝试.如果用户密码级别较低或更换频率过长,就会造成致命的危害. 1.设置用户 Re ...
- 微服务日志监控与查询logstash + kafka + elasticsearch
使用 logstash + kafka + elasticsearch 实现日志监控 https://blog.csdn.net/github_39939645/article/details/788 ...
- 51nod 1565模糊搜索(FFT)
题目大意就是字符串匹配,不过有一个门限k而已 之前有提到过fft做字符串匹配,这里和之前那种有些许不同 因为只有A,C,G,T四种字符,所以就考虑构造4个01序列 例如,模板串a关于'A'的01序列中 ...
- 【题解】JSOI2010满汉全席
~bzoj1823 第一次接触2-SAT——SAT,即适定性(Satisfiability)的缩写.像名称所说,即满足需求的可能性问题,而k-SAT即每个人有k种需求,已经证明k>2时是一个NP ...
- 【BZOJ3674】可持久化并查集加强版
可持久化并查集我觉得就是可持久化数组的一种应用.可持久化数组,顾名思义,就是有历史版本的数组,那么如果我们暴力修改储存的话,修改O(n)查询O(1),空间O(n*m),这样肯定不可行,那么我们发现主席 ...