如何使用tkinter发送邮件
时间: 2023-05-11 20:05:18 浏览: 100
可以使用Python内置的smtplib和tkinter库来实现发送邮件的功能。以下是一个简单的示例代码:
```python
import smtplib
from tkinter import *
def send_email():
# 获取输入框中的内容
sender = sender_entry.get()
password = password_entry.get()
receiver = receiver_entry.get()
subject = subject_entry.get()
content = content_text.get("1.0", END)
# 设置邮件内容
message = "From: {}\nTo: {}\nSubject: {}\n\n{}".format(sender, receiver, subject, content)
# 连接SMTP服务器并发送邮件
try:
smtp_server = smtplib.SMTP_SSL("smtp.gmail.com", 465)
smtp_server.login(sender, password)
smtp_server.sendmail(sender, receiver, message)
smtp_server.quit()
result_label.config(text="邮件发送成功!", fg="green")
except Exception as e:
result_label.config(text="邮件发送失败:" + str(e), fg="red")
# 创建窗口和控件
window = Tk()
window.title("发送邮件")
sender_label = Label(window, text="发件人邮箱:")
sender_entry = Entry(window)
password_label = Label(window, text="邮箱密码:")
password_entry = Entry(window, show="*")
receiver_label = Label(window, text="收件人邮箱:")
receiver_entry = Entry(window)
subject_label = Label(window, text="邮件主题:")
subject_entry = Entry(window)
content_label = Label(window, text="邮件内容:")
content_text = Text(window, height=10)
send_button = Button(window, text="发送邮件", command=send_email)
result_label = Label(window, text="")
# 布局控件
sender_label.grid(row=0, column=0)
sender_entry.grid(row=0, column=1)
password_label.grid(row=1, column=0)
password_entry.grid(row=1, column=1)
receiver_label.grid(row=2, column=0)
receiver_entry.grid(row=2, column=1)
subject_label.grid(row=3, column=0)
subject_entry.grid(row=3, column=1)
content_label.grid(row=4, column=0)
content_text.grid(row=4, column=1)
send_button.grid(row=5, column=1)
result_label.grid(row=6, column=1)
# 运行窗口
window.mainloop()
```
在这个示例中,我们使用了SMTP_SSL协议连接Gmail的SMTP服务器,并通过登录验证和sendmail方法发送邮件。你可以根据自己的需要修改代码中的SMTP服务器地址和端口号,以及邮件内容的格式。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)