程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

发邮件

发布于2020-03-21 20:21     阅读(1265)     评论(0)     点赞(18)     收藏(2)


import smtplib
import email.mime.multipart
import email.mime.text
import datetime
from email.header import Header
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication

def send_email(smtpHost,port, sendAddr, password, recipientAddrs, subject='', content=''):
    msg = email.mime.multipart.MIMEMultipart()
    #将邮件发件人名字转化为自己名字
    msg['from'] = Header('123')
    msg['to'] = recipientAddrs#多个收件人的邮箱应该放在字符串中,用字符分隔, 然后用split()分开,不能放在列表中, 因为要使用encode属性
    msg['subject'] = subject
    content = content
    txt = email.mime.text.MIMEText(content, 'plain', 'utf-8')
    msg.attach(txt)
    print("准备添加附件...")
    # 添加附件,从本地路径读取。如果添加多个附件,可以定义part_2,part_3等,然后使用part_2.add_header()和msg.attach(part_2)即可。
    part1 = MIMEApplication(open(r'\\10.58.18.91\.xx部\C.ppt','rb').read())
    part1.add_header('Content-Disposition', 'attachment', filename=Header('C.ppt', 'utf-8').encode())#给附件重命名,一般和原文件名一样,改错了可能无法打开.
    msg.attach(part1)
    part2 = MIMEApplication(open(r'\\10.58.18.91\.xx部\71.ppt','rb').read())
    part2.add_header('Content-Disposition', 'attachment', filename=Header('71.ppt', 'utf-8').encode())#给附件重命名,一般和原文件名一样,改错了可能无法打开.
    msg.attach(part2)
    smtp = smtplib.SMTP(smtpHost, port)#需要一个安全的连接,用SSL的方式去登录得用SMTP_SSL,之前用的是SMTP().端口号465或587
    smtp.login(sendAddr, password)#发送方的邮箱,和授权码(不是邮箱登录密码)
    smtp.sendmail(sendAddr, recipientAddrs.split(";"), str(msg))#注意, 这里的收件方可以是多个邮箱,用";"分开, 也可以用其他符号
    print(subject)
    print('发送成功!')
    smtp.quit()

if __name__ == "__main__":
    try:
        #设置好邮箱信息
        smtpHost = 'xxx'#邮箱服务器
        port = 25
        sendAddr ='xxx@qq.com'#发送方地址
        password = 'xxx'#手动输入授权码更安全.授权码的获取:打开qq邮箱->设置->账户->开启IMAP/SMTP服务->发送短信->授权码
        recipientAddrs = 'XXX@QQ.com;YYY@qq.com'#接收方可以是多个账户, 用分号分开,send_email()函数中手动设置
        subject='XXX!'#主题
        content='''XXX。
谢谢!
'''#正文内容
        send_email(smtpHost, port, sendAddr, password, recipientAddrs, subject, content)#调用函数
    except Exception as err:
        print(err)


所属网站分类: 技术文章 > 博客

作者:dfd323

链接:https://www.pythonheidong.com/blog/article/274951/d00bc5a59334db622429/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

18 0
收藏该文
已收藏

评论内容:(最多支持255个字符)