import tkinter
from tkinter import filedialog
from tkinter.filedialog import *
from email.mime.text import MIMEText
from email.header import Header
from smtplib import SMTP_SSL
from email.mime.multipart import MIMEMultipart
def action():
date = int(entry.get())
date1 = entry1.get().strip()
date2 = entry2.get().strip()
date3 = entry3.get().strip()
date4 = str(entry4.get().strip())
date5 = entry5.get().strip()
host_server = 'smtp.qq.com' # 使用qq邮箱smtp服务器
smtp = SMTP_SSL(host_server) #ssl登录邮箱客户端
smtp.set_debuglevel(1)#set_debuglevel()是用来调试的。参数值为1表示开启调试模式,参数值为0关闭调试模式
smtp.ehlo(host_server)
smtp.login(date, date1)
##定义邮箱内容
msg = MIMEMultipart() ##生成一个邮箱对象
msg["Subject"] = Header(date5, 'utf-8') ##添加邮箱主题
msg["From"] = date2 ##添加邮箱发送方
msg["To"] = date3 ##添加邮箱接收方
# 添加附件,这里以zip文件为例
file_path=date4
att = MIMEText(open(file_path,"rb").read(), "base64", "utf-8")
att["Content-Type"] = "application/octet-stream"
att["Content-Disposition"] = 'attachment;filename = {}'.format(file_path)
msg.attach(att)
smtp.sendmail(date2, date3, msg.as_string())
smtp.quit()
def Huofile():
file_path = filedialog.askopenfilename()
filename.set(file_path) #设置filename值,输出的值为io流
#实例化tk类
root = tkinter.Tk()
filename = tkinter.StringVar()
#定义宽高,注意x不是*,+下右 ;250x100是大小;+600+400是距离横纵坐标的位置
root.geometry('400x200+600+300')
# 重新调整弹窗
# root.resizable(False,False)#弹窗大小固定设置
#设置名称
root.title('Sendmail')
#设置标签,grid网格布局函数
Label(root,text="请输入自己的qq :",font=('宋体',9)).grid(row=0,column=0)
Label(root,text="请输入qq邮箱授权码 :",font=('宋体',9)).grid(row=1,column=0)
Label(root,text="请输入自己的qq邮箱 :",font=('宋体',9)).grid(row=2,column=0)
Label(root,text="请输入收件箱 :",font=('宋体',9)).grid(row=3,column=0)
Label(root,text="请输入邮件主题 :",font=('宋体',9)).grid(row=5,column=0)
Label(root,text="请选择传送的文件 :",font=('宋体',9)).grid(row=4,column=0)
entry=Entry(root)
entry.grid(row=0,column=1)#请输入自己的qq
entry1=Entry(root)
entry1.grid(row=1,column=1)#请输入qq邮箱授权码
entry2=Entry(root)
entry2.grid(row=2,column=1)#请输入自己的qq邮箱
entry3=Entry(root)
entry3.grid(row=3,column=1)#请输入收件箱
entry5=Entry(root)
entry5.grid(row=5,column=1)#请输入邮件主题
entry4=Entry(root,textvariable=filename)
entry4.grid(row=4,column=1)#获取文件路径框
#按钮2
Button(root,text='发送',width='10',command=action).grid(row=5,column=2)
#按钮3
Button(root,text='选择文件',width='10',command=Huofile).grid(row=4,column=2)
#循环弹窗
root.mainloop()
制作exe:pyinstaller -F 文件名.py
侵权请联系