zhanling

 

-----------------------------打包部分----------------------------------

 

```
import zipfile

def zipDir(dirpath, outFullName):
    zip = zipfile.ZipFile(outFullName, \'w\', zipfile.ZIP_DEFLATED)
    for path, dirnames, filenames in os.walk(dirpath):
        this_path = os.path.abspath(\'.\')
        fpath = path.replace(this_path, \'\')
        for filename in filenames:
            zip.write(os.path.join(path, filename), os.path.join(fpath, filename))
    zip.close()
    
```

  

----------------------------发送邮件部分----------------------------------

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase #附件
from email.mime.text import MIMEText
from email import encoders #转码

def server_pre(msg):
    \'\'\'邮件服务器基础设置\'\'\'
    print(\'connecting :::::::::::::::\')
    server = smtplib.SMTP_SSL(\'smtp.qq.com\')
    # server.starttls()
    fromAddr = \'XXXXXXXX@qq.com\'  # 发件人地址
    myPass = \'password\'  # 发件人密码
    print(\'login :::::::::::::::\')
    server.login(fromAddr, myPass)
    print(\'sending :::::::::::::::\')
    server.sendmail(msg[\'From\'], msg[\'To\'].split(\',\'),msg.as_string())
    print(\'quiting :::::::::::::::\')
    server.quit()

def send_listing(zippedFn,subject,sendFn,to_adress_list):
    \'\'\'发送邮件\'\'\'
    global msg_list
    msg_list = MIMEMultipart()
    msg_list[\'From\'] = \'YYYYYYYYYYY@qq.com\'
    msg_list[\'To\'] = \',\'.join(to_adress_list)
    print(msg_list[\'To\'])
    msg_list[\'Subject\'] = subject
    body = \'\'send py python\'
    msg_list.attach(MIMEText(body))
    print(\'period 1 :::::::::::::::\')
    with open(zippedFn,\'rb\') as f:
        #这里附件的MIME和文件名
        mime = MIMEBase(\'zip\',\'zip\',filename=sendFn)
        #加上必要的头信息
        mime.add_header(\'Content-Disposition\',\'attachment\',filename=(\'gb2312\', \'\', sendFn))
        mime.add_header(\'Content-ID\',\'<0>\')
        mime.add_header(\'X-Attachment-Id\',\'0\')
        #把附件的内容读进来
        mime.set_payload(f.read())
        #用Base64编码
        encoders.encode_base64(mime)
        msg_list.attach(mime)
    print(\'period 2 :::::::::::::::\')
    server_pre(msg_list)
    print(">> email send successfully !!")

  

分类:

技术点:

相关文章:

  • 2022-01-16
  • 2021-05-03
  • 2022-02-09
  • 2022-12-23
  • 2022-12-23
  • 2021-12-03
猜你喜欢
  • 2021-12-26
  • 2022-12-23
  • 2021-12-26
  • 2022-12-23
  • 2021-12-05
  • 2021-07-04
  • 2021-12-26
相关资源
相似解决方案