Python发送邮件

Python发送邮件

以QQ邮箱为例,使用Python发送邮件

1、获得QQ邮箱授权码

在这里插入图片描述

2、进入后点击安全设置,拉到安全设置页面最底部,POP3/IMAP/SMTP/Exchange/CardDAV 服务。(我的已开启,没开启的按邮箱要求设置)

在这里插入图片描述

3、最终邮箱会给你一个授权码,这个授权码需要记下来。

在这里插入图片描述

4、准备工作完成,编写代码。注意修改代码里的发送邮箱、授权码、接收邮箱。

import smtplib
from email.mime.text import MIMEText
from email.header import Header# 邮件服务器地址和端口
smtp_server = 'smtp.qq.com'
smtp_port = 587# 发件人邮箱和密码
sender_email = '19644@qq.com'   # 发送邮件的QQ邮箱
sender_password = '这里改为刚才保存的授权码'  # 授权码# 收件人邮箱
receiver_email = 'kevin@163.com'  # 这里是接收邮件的邮箱# 邮件内容
subject = '测试邮件'
body = '这是一封测试邮件'# 创建邮件对象
message = MIMEText(body, 'plain', 'utf-8')
message['From'] = Header(sender_email)
message['To'] = Header(receiver_email)
message['Subject'] = Header(subject)try:# 连接邮件服务器server = smtplib.SMTP(smtp_server, smtp_port)server.starttls()  # 启用TLS加密server.login(sender_email, sender_password)  # 登录邮箱# 发送邮件server.sendmail(sender_email, receiver_email, message.as_string())print('邮件发送成功')except Exception as e:print('邮件发送失败:', str(e))finally:# 关闭连接server.quit()

5、运行测试,OK

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/535880.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java-双列集合

什么是双列集合? 集合中每次存的数据是成对存入的 以及它的特点是什么? 特别注意:键不可重复,值可以 Map是双列集合的顶层接口 Map 它有哪些方法呢? Map的常用API 添加 添加操作的代码如下 我们要明白一些细节&…

软件设计师15--进程资源图

软件设计师15--进程资源图 考点1:进程资源图例题: 考点1:进程资源图 例题: 1、在如下所示的进程资源图中,D)。 A、P1、P2、P3都是非阻塞节点,该图可以化简,所以是非死锁的 B、P1、…

Mybatis Plus + Spring 分包配置 ClickHouse 和 Mysql 双数据源

目录 一、背景 二、各个配置文件总览(文件位置因人而异) 2.1 DataSourceConfig 2.2 MybatisClickHouseConfig (ClickHouse 配置类) 2.3 MybatisMysqlConfig(Mysql 配置类) 2.4 application.propertie…

【C语言】qsort函数的使用

👑个人主页:啊Q闻 🎇收录专栏:《C语言》 🎉道阻且长,行则将至 前言 这篇博客主要是介绍qsort函数的使用,以及利用冒泡排序的方式模拟实现qsort 一.初识qsort函数 我们可以在…

Redis缓存问题详解和处理

缓存更新策略 缓存穿透 缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在,这样缓存永远不会生效,这些请求都会打到数据库. 常见的解决方案: 缓存空对象 优点: 实现简单, 维护方便缺点: 额外的内存消耗, 可能造成短期的不一致 布隆过滤 优点: 内存占用较少(保存的是数据…

PDF Word Converter V2-一站式文档转换解决方案

PDF Word Converter V2 一站式文档转换解决方案 功能亮点: PDF 转 Word:轻松将 PDF 文档转换为可编辑的 Word 文件,保持原有格式和布局。 Word 转 PDF:将 Word 文档转换为 PDF 格式,确保跨平台的文档一致性和专业呈…

像SpringBoot一样使用Flask - 3.蓝图路由Blueprint

接上一篇文章《像SpringBoot一样使用Flask - 2.静态资源访问及模版》,我们看到测试的"controller"都写在了一起🤔 如何像Springboot一样划分出一个完整的controller,里面实现不同业务的包呢? 本篇引入Blueprint&#xf…

uniapp图片涂鸦插件(支持多种涂鸦方式,图片放大缩小)

工程地址https://gitee.com/geshijia/ct-graffiti ct-graffiti涂鸦组件使用说明 参考说明 参考链接:https://github.com/ylyuanlu/yl-graffiti 感谢作者的付出,给我提供了一些思路,并做了如下优化: 增加图片放大缩小移动功能添…

数据库基础理论知识

1.基本概念 数据(Data):数据库存储的基本对象。数字、字符串、图形、图像、音频、视频等数据库(DB):在计算机内,永久存储、有组织、可共享的数据集合数据库管理系统(DBMS):管理数据库的系统软件数据库系统(DBS):DBDBM…

数据结构:红黑树的模拟实现

目录 1、什么是红黑树? 2、红黑树的相关操作与实现 1、节点定义 2、查找操作 3、插入操作 1、cur为红,p为红,g为黑,cur存在且为红 2、cur为红,p为红,g为黑,u不存在/u存在且为黑 4、判断…

Prompt进阶3:LangGPT(构建高性能质量Prompt策略和技巧2)--稳定高质量文案生成器

Prompt进阶3:LangGPT(构建高性能质量Prompt策略和技巧2)–稳定高质量文案生成器 1.LangGPT介绍 现有 Prompt 创建方法有如下缺点: 缺乏系统性:大多是细碎的规则,技巧,严重依赖个人经验缺乏灵活性:对他人分享的优质 …

mysql基于mycat实现读写分离

试验环境 基于mysql主从复制已经实现 mycat主机192.168.199.149,安装好java和jdk 数据库主机192.168.199.150 数据库从机192.168.199.151 149配置 下载mycat并解压 vim /root/mycat/conf/server.xml vim /root/mycat/conf/schema.xml 150是主数据库&#xff0…