python 发送邮件至多个收件人有一点小问题。
问题描述
想向一多个用户发邮件,于是写了发送方法,然后循环读取文件,想让收件人看到邮件中的收件人只有自己,但是收件人还是显示列表中的多个而且是文件中第一个人收件人看到一个,第二个收件人看到前两个像是追加到list似的,但是在调用中打印出to_addr 也是只有一个地址的,并不是多个地址。后来还是发了,注释了msg[’To’]就可以不显示收件人,但是想搞明白为什么会显示多个。请大神帮忙分析下。
#!/usr/bin/python# -*- coding: UTF-8 -*-import smtplibimport osimport socketimport commandsfrom email.mime.text import MIMETextfrom email.header import Headerdef send(a,b): user = ’xxxx’ from_addr = ’xxxx@xxxx.com’ password = ’***********;’ smtp_server = ’smtp.xxxx.com’ to_addr = b print '##############'+to_addr msg[’To’] = Header(to_addr, ’utf-8’).encode() server = smtplib.SMTP(smtp_server, 25) server.set_debuglevel(1) server.login(user, password) print ’**************’+to_addr server.sendmail(from_addr, to_addr, a.as_string()) server.close()if __name__ == ’__main__’: msg = MIMEText(’内容文字内容文字’, ’plain’, ’utf-8’) msg[’Subject’] = Header(u’我是标题’, ’utf-8’).encode() file = open('sample.txt') #lines=file.readlines() for i in file:print i print '##'q=send(msg,i)
问题解答
回答1:这应该是邮箱自己帮你合并显示的,你应该登录收件人的邮箱看看收件人列表是不是一个,而不是看发件人
回答2:试着睡一会?在每个循环里time.sleep(60)?
相关文章:
1. java - mybatis怎么实现在数据库中有就修改,没有就添加2. MYSQL新建用户设置可以远程访问的问题3. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题4. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)5. angular.js - angularjs的自定义过滤器如何给文字加颜色?6. javascript - 用表单提交两个时间段请求后台返回对应数据时出现的一些问题!7. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?8. mysql - 我的myeclipse一直连显示数据库连接失败,不知道为什么9. mysql - SQL操作时间的函数?10. mysql 为何insert的时候会有lock wait timeout 异常
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)