python3自动群发带附件的邮件至163邮箱被退信问题

这个代码可以实现qq邮箱的带附件群发,但是163邮箱会被退信。

显示:

有办法解决吗?

 

from email.header import Header

from email.mime.text import MIMEText

import csv

import smtplib

import datetime

from email.mime.multipart import MIMEMultipart

from email.mime.application import MIMEApplication

from email.mime.image import MIMEImage

msg = MIMEMultipart()

from_addr = 'xx@qq.com'

password = 'xx'

smtp_server = 'smtp.qq.com'

data = [['xx','xx'],['xx','xx']]

time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

 

text = '收到了没?'

msg1 = MIMEText(text,'plain','utf-8')

msg.attach(msg1)

 

file1 = 'D:\\test\\img.juimg.jpg.jfif'

image = MIMEImage(open(file1,'rb').read())

image.add_header('Content-ID','<image1>')

image["Content-Disposition"] = 'attachment; filename="earth.jpg"'

msg.attach(image)

 

doc_file = open(r'D:\\test\\年度目标清单.docx', 'rb').read()

doc = MIMEText(doc_file, 'base64', 'gb2312')

doc["Content-Type"] = 'application/octet-stream'

doc.add_header('Content-Disposition', 'attachment', filename='年度目标清单.docx')

msg.attach(doc)

 

with open('to_addrs.csv','w',newline='') as f :

    writer = csv.writer(f)

    for row in data:

        writer.writerow(row)

with open('to_addrs.csv','r') as f :

    reader = csv.reader(f)

    for row in reader: 

        to_addrs=row[1]

        msg['From'] = Header(from_addr)

        msg['To'] = Header(to_addrs)

        msg['Subject'] = Header('尝试能否发送')

        msg['time'] = Header(time,'utf-8')

        server = smtplib.SMTP_SSL(smtp_server)

        server.connect(smtp_server,465)

        server.login(from_addr, password)

        server.sendmail(from_addr,to_addrs,msg.as_string())

server.quit()

 

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答

本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。

​​​​因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。