Python 使用QQ 邮箱进行发送邮件及经验总结
今天我带大家实现下简单的发邮件功能。我们要使用到email和smtplib库,这两个库时python自带的,直接import 引用就好了,实现环境python3.6.
- 对QQ邮箱进行开启SMTP服务
开启SMTP服务可以查看此链接,讲的很详细: https://jingyan.baidu.com/article/b0b63dbf1b2ef54a49307054.html
如下图:需要开启POP3/SMTP 服务,获取到的授权码,就是你登陆时需要用到的。

- 使用QQ邮箱进行邮件发送: 代码如下
第一步:登陆QQ邮箱。
第二步:构建发件人,收件人,邮件标题,邮件内容等信息。
第三步:发送邮件。
1 import smtplib
2 import email
3 from email.mime.text import MIMEText
4 from email.header import Header
5 from email.mime.multipart import MIMEMultipart
6
7 #纯文本格式发送email
8 def email_sendmail_txt(sender,receiver,title,message):
9 username = "67xxxx305@qq.com"
10 password_pop3 = "veixxxxxkmflxxgb"
11 #password_imap = "wpxxxxxyjnxxbcje"
12 smtp = smtplib.SMTP()
13 smtp.connect('smtp.qq.com')
14 smtp.login(username, password_pop3)
15 msg = MIMEText(message, "plain", 'utf-8')
16 msg["Subject"] = Header(title, 'utf-8')
17 msg["From"] = sender
18 msg["To"] = receiver
19 to_address = receiver.split(',') #将Str格式的receiver分割成list格式,才能发送邮件给多个人。
20 smtp.sendmail(sender, to_address, msg.as_string())
21 smtp.quit()
22
23 if __name__ == "__main__":
24
25 sender = "67xxxx305@qq.com"
26 receiver = 'lixx@vaxxxxxch.com,67xxxx305@qq.com'
27
28 mail_message = 'Dear all,\n 今日CP3良率监控情况如下所示:\n 您们好,我是TE助理1号,很高兴加入TE group,我会努力为大家提供服务,希望大家能够喜欢我,谢谢!\n'
29
30 mail_title = "CP3 yield monitor"
31
32 email_sendmail_txt(sender,receiver,mail_title,mail_message) #登陆QQ邮箱并发送消息
- 问题总结
- 用email_sendmail 发送邮件,明明有很多个接收人,但是只有第一个人能收到邮件。
->:原因在于msg["To"] = receiver 的类型为str,而email_sendmail 中to_address 参数则需要是list格式,两者参数不一样。
两者如果混用,导致结果就是,发送的mail显示是有很多个收件人,可是成功收取邮件的只有第一个人而已。
从smtplib.py中找到sendmail 函数定义就可以看到。

解决办法:如下图只需要将msg["To"] = receiver str类型的内容通过split()进行分割成list格式,就解决了!!!

Python 使用QQ 邮箱进行发送邮件及经验总结的更多相关文章
- python QQ邮箱自动发送邮件
于初学者来讲在写发送邮件代码时常见的错误有SMTPAuthenticationError535,有点懵逼,检查用户名,密码正确就是报错, 想当年笔者也是这么过来的,现在就给大家分享一下个人经验: 一, ...
- Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
最新在学习Python的基础入门系列课程,今天学习到使用python 的内置库smtplib发送邮件内容. 使用Python发送邮件步骤简单: 创建SMTP连接 使用邮箱和密码登录SMTP服务器 创建 ...
- python使用qq邮箱向163邮箱发送邮件、附件
在生成html测试报告后 import smtplib,time from email.mime.text import MIMEText from email.mime.multipart impo ...
- C#如何利用QQ邮箱SMTP发送邮件
public void SendEmail() { MailMessage msg = new MailMessage(); msg.To.Add("to@qq.com");//收 ...
- 用JavaMail通过QQ邮箱来发送邮件(第一篇博客,备忘)
1.先启用QQ邮箱里POP3/STMP服务:生成授权码 2.导入mail.jar包(不要用太古董的技术,你懂得) 3.注意要在代码里加上开启SSL加密的代码 4.直接上代码 import java.u ...
- python 向qq邮箱发邮件
#coding:utf-8 ''' Created on 2017-1-12 @author: xiaochun ''' import smtplib from email.mime.text imp ...
- python3 通过qq邮箱定时发送邮件
下面的代码为了每天定时发送监控邮件,监控什么呢?监控当天redis队列中是否有没有消费的数据,和当天mysql中新增的数据量 # -*- coding:utf-8 -*- from common.re ...
- 使用Python登陆QQ邮箱发送垃圾邮件 简单实现
参考:Python爱好者 知乎文章 需要做的是: 1.邮箱开启SMTP功能 2.获取授权码 上述两步百度都有. 源码: #!/usr/bin/env python from email.mime.te ...
- Selenium+webdriver自动化登陆QQ邮箱并发送邮件
1.关于selenium Selenium的主要功能包括:(1)测试与浏览器的兼容性:测试应用程序能否兼容工作在不同浏览器和操作系统之上.(2)测试系统功能:录制用例自动生成测试脚本,用于回归功能测 ...
- python发送QQ邮箱方法
import smtplib from email.mime.text import MIMEText mail_user = "user1@qq.com" mail_pwd = ...
随机推荐
- Windows10常用快捷键总结
--Windows10常用快捷键总结 1. Window键: 打开或关闭|开始菜单 2. Win + A 打开操作中心 3. Win + D 显示桌面 4. Win + E 打开计算机文件管理器 5. ...
- 【基础知识】C++算法基础(快速排序)
快速排序: 1.执行流程(一趟快排): 2.一趟快排的结果:获得一个枢纽,在此左边皆小于此数,在此右边皆大于此数,因此可以继续使用递归获得最终的序列.
- sql server 自动核算
USE tempdb; CREATE TABLE #temptable ( [姓名] NVARCHAR(255), [加班日期] DATE, [加班时长] DECIMAL(8, 2) ); INSER ...
- clickhouse 安装部署(linux)
1.安装部署 1.1下载文件 可以按照官网步骤安装 https://clickhouse.tech/docs/zh/getting-started/install/. 这个库目前大小有2G,网络不允许 ...
- Hadoop之HDFS优缺点、设计原理、框架
如需大数据开发整套视频(hadoop\hive\hbase\flume\sqoop\kafka\zookeeper\presto\spark):请联系QQ:1974983704 Hadoop的前世今 ...
- 2020/03/24 HTML基础复习笔记
2020-03-24 15:49:30 下午好! 这是我开通博客的第二天也是在钉钉上网课的又一天,为了应对考试现在复习到了HTML基础知识,本打算用VS敲想了想还是用了XMind(真的好用!!!)文件 ...
- Vue学习之基础大全
1 导入vue: 2 <script src="vue.min.js"></script> 3 创建vm实例 4 var vm=new Vue({ 5 el ...
- sql运算符优先级
1.() 2.* / % 3.+正 -负 + - +连接(字符串) 4.= > < >= <= <> != !> !< 5.not 6.and 7.b ...
- 数据库结构差异比较-SqlServer
/****** Object: StoredProcedure [dbo].[p_comparestructure_2005] Script Date: 2022/10/8 10:00:20 **** ...
- Repeater 绑定数据如何根据数据列的内容排序
可指定Repeater的数据源 从数据库查询时直接排序,而后绑定数据这样