python smtp 群发邮件
最近工作中遇到使用脚本处理问题并发送结果邮件,使用python的smtp模块很简单的完成了实现。今天遇到一个问题,根据脚本的测试结果需要群发邮件,但是发送邮件的py文件只有首个地址收到了邮件。仔细排查发现个有意思的地方:
发送邮件的py大致如下:
def sendmail(message,to_addrs)
............................
...........................
msg = MIMEMultipart()
msg['From'] = _from
msg['To'] = to_addrs
......................
......................
mailserver.sendmail(_from, to_addrs, message)
方法1 使用的方法是获取到邮件地址后,以“test@test.com,kratos@test.com,admin@test.com”以字符串形式作为参数“to_addrs”给了sendmail。脚本运行结束后只有test@test.com邮箱收到了邮件,后续地址均未收到邮件。
google 了python 的smtp之后,修改的方法是:
方法2 以["test@test.com","kratos@test.com","admin@test.com"]以列表形式作为参数“to_addrs”给了sendmail。
然后将“msg["To"] = to_addrs” 行修改为 “msg["To"] = ",".join(to_addrs)”搞定,指定的邮件列表中的账户均收到邮件
>>> a = "test@test.com,kratos@test.com,admin@test.com"
>>> a
'test@test.com,kratos@test.com,admin@test.com'
>>> type(a)
<type 'str'>
>>> b = ["test@test.com","kratos@test.com","admin@test.com"]
>>> c = ",".join(b)
>>> c
'test@test.com,kratos@test.com,admin@test.com'
>>> type(c)
<type 'str'>
>>> a == c
True
以上看 a 与c没什么区别,使用方法2 成功搞定。有时间在继续看看吧,没知识太可怕了呵呵。
备注:
使用的是Gmail邮箱
python smtp 群发邮件的更多相关文章
- Python自动群发邮件,只需20行代码!
		
今日分享 Python自动群发邮件 import smtplib from email import (header) from email.mime import (text, applicatio ...
 - python SMTP邮件发送(转载)
		
Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. py ...
 - python大法好——Python SMTP发送邮件
		
Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. py ...
 - Python——SMTP发送邮件
		
一.定义 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式.python的smtplib ...
 - python SMTP
		
一.一开始,相信SMTP服务,所以在本机安装了一个 apt-get install sendmail apt-get install sendmail-cf apt-get install squir ...
 - Python SMTP邮件模块
		
SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮件. Python对SMTP支持有smtplib和email两个模块,email负责构造邮件, ...
 - 使用python实现群发邮件
		
最近在工作时,需要实现在公司开发的调度系统上实现:将每天产生的游戏数据查询统计出,并发送邮件给数据分析的开发人员. 考虑到python语言的简洁易上手,在我没有任何python基础的情况下,十分轻松的 ...
 - python smtp模块发送邮件
		
应用场景: 在服务器上设置的告警参数被触发后,通常是发送手机短信或者邮件通知,本例就以发送邮件为例,手机怎么收邮件呢?以qq邮箱为例,在手机端安装qq邮箱app,触发邮件后,手机也能及时查看了 代码展 ...
 - Python SMTP邮件发送
		
SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮件. Python对SMTP支持有smtplib和email两个模块: email负责构造邮件 ...
 
随机推荐
- 用普通计算机假设基于liunx系统的NAS部署FineReport决策系统
			
何为NAS? 简单说就是连接在网络上,具备资料存储功能的装置因此也称为“网络存储器”.它是一种专用数据存储服务器.他以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽.提高性能.降低 ...
 - 运行python程序
			
1 在windows下运行python程序 1)从DOS命令行运行python脚本 用python解释器来执行python脚本,在windows下面python解释器是python.exe,我的pyt ...
 - [No0000A6]Visual Studio 2015 中的常用命令的默认键盘快捷键-VS2015 Shortcut
			
注意:你也可以通过打开"选项"对话框,展开"环境"节点,然后选择"键盘",查找任何命令的快捷键. Build(生成) 命令 键盘快捷键 [上 ...
 - c# (ENUM)枚举组合类型的谷歌序列化Protobuf
			
c# (ENUM)枚举组合类型的谷歌序列化Protobuf,必须在序列化/反序列化时加上下面: RuntimeTypeModel.Default[typeof(Alarm)].EnumPassthru ...
 - jquery.mobiscroll仿Iphone ActionSheet省市区联动
			
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="u ...
 - 解读ASP.NET 5 & MVC6系列(10):Controller与Action
			
我们知道在MVC5和之前的版本,两个框架的生命周期是不一样的,在新版MVC6中,MVC Controller/Web API Controller已经合二为一了,本章我们主要讲解Controller和 ...
 - [LeetCode] Expression Add Operators 表达式增加操作符
			
Given a string that contains only digits 0-9 and a target value, return all possibilities to add ope ...
 - [LeetCode] Letter Combinations of a Phone Number 电话号码的字母组合
			
Given a digit string, return all possible letter combinations that the number could represent. A map ...
 - emoji表情 与 iconfont 一锅炖😂
			
什么是emoji?
 - Babel:JavaScript编译器
			
一.介绍: Babel是一个Javascript编译器,可以将ES6语法转换成ES5. 这意味着,你可以现在就用ES6编写程序,而不用担心现有环境是否支持.下面是一个例子: //转码前: input. ...