python 使用公司邮箱发邮件_python 通过邮件发送附件之企业QQ邮箱

def setmailinfo(self, receiveUser, cc, subject, text, text_type, *attachmentFilePaths):

# 设置邮件的基本信息(收件人,抄送,主题,正文,附件,可变参数附件路径列表)

self.msg['From'] = self.mailUser

# receiveUser cc must be list,[]

self.msg['To'] = receiveUser

self.msg['Cc'] = cc

self.msg['Subject'] = Header(subject, "utf-8")

self.msg.attach(MIMEText(text, text_type))

for attachmentFilePath in attachmentFilePaths:

self.msg.attach(self.getattachmentfromfile(attachmentFilePath))

# receiver 必须是列表

receiver = [i for i in self.msg['To'].split(',')] + [k for k in self.msg['Cc'].split(',')]

self.mailServer.sendmail(self.mailUser, receiver, self.msg.as_string())

logger.info('Sent email to {0}, Cc {0}'.format(self.msg['To'], self.msg['Cc']))

def getattachmentfromfile(self, attachmentFilePath):

# 通过路径添加附件

part = MIMEBase('application', "octet-stream")

part.set_payload(open(attachmentFilePath, "rb").read())

encode_base64(part)

# 指定编码格式, qq邮箱对邮件使用gbk编码,否则可能会出现文件名乱码

part.add_header('Content-Disposition', 'attachment', filename=("gbk", "", os.path.basename(attachmentFilePath)))

return part

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值