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. 修改mysql配置文件的默认字符集重启后依然不生效2. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!3. css - html根字体设置成很大的值后, 包裹了行内元素的div莫名变高是什么原因4. docker api 开发的端口怎么获取?5. Android-studio导入.so库问题?6. golang - 用IDE看docker源码时的小问题7. java - mybatis源码分析8. docker容器呢SSH为什么连不通呢?9. 请教一个python字符串处理的问题?10. docker网络端口映射,没有方便点的操作方法么?

网公网安备