问题描述
我无法将附件发送给多个收件人 我尝试这样做没有成功,这是我的代码:
def mail_semanal(msg_to,asunto="Reporte semanal",message="Reporte"):
msg = MIMEMultipart()
msg['From'] = 'postmaster@xxx.com'
msg_to = msg_to
msg['Subject'] = asunto
msg.attach(MIMEText(message))
mailserver = smtplib.SMTP('smtp-relay.xxx.com',587)
mailserver.ehlo()
mailserver.starttls()
# adjunto
filename = folder + reporte
with open(filename,'r') as f:
message = MIMEText(f.read())
message.add_header('Content-disposition','attachment',filename=reporte)
msg.attach(message)
user = 'postmaster@xxx.com'
pwd = 'xxx'
mailserver.ehlo()
mailserver.login(user,pwd)
mailserver.sendmail('smtp-relay.xxx.com',msg_to,msg.as_string())
header = '\nTo:' + msg_to + '\n' + 'From: ' + msg['From'] + '\n' + 'Subject:'+ msg['Subject'] +'\n'
print(header)
print ('enviado a las '+datetime.datetime.Now().strftime("%d/%m/%Y %H:%M:%s")+' !')
mailserver.quit()
当我尝试发送给多个收件人时,它仅发送给列表中的第一个收件人,这是主要代码:
#Escribir consulta
fnreporte.base_datos("select archivo_idreg,idtransferencia,round((montototal),2,1),c.diasremision idcliente_new,c.idcliente,c.razonsocial,t.fechadeposito from cdpnew..transferencias t left join clientes c on c.idcliente=t.idcliente where t.fechadeposito>'"+fecha+"' and t.montototal<>0")
fecha=datetime.datetime.Now().strftime("%m-%Y")
#escribir cabecera del excel con el siguiente formato ('c1,c2,c3,c4')
fnreporte.cvs('IDREG,IDTRANSFERENCIA,MONTOTOTAL,ID CLIENTE NUEVO,ID CLIENTE,RAZON SOCIAL,FECHA DEPOSITO',"Reporte_semanal_de_OP_PEI_Débito"+fecha+".csv")
#escribir destinatario
fnreporte.mail_semanal(['ZANAGA@LIVE.COM.AR,ivkanian@gmail.com'],"Reporte semanal de OP PEI - Débito "+fecha,"se adjunta el documento con el detalle")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)