zoukankan      html  css  js  c++  java
  • 【python】一个备份把文件备份到邮箱的python实现

    公司服务器弄了跳板机,从服务器上拉文件变得好麻烦,弄了个脚本从服务器上向邮箱发送文件,还蛮方便哈~

    #!/usr/bin/env python2.7
    #! coding:UTF-8
    
    
    import smtplib
    from email.MIMEMultipart import MIMEMultipart
    from email.MIMEBase import MIMEBase
    from email.MIMEText import MIMEText
    from email.Utils import COMMASPACE, formatdate
    from email import Encoders
    import os
    import sys
    from optparse import OptionParser
    
    g_username = "123123123"
    g_password = "xxxxxxxxxxx"
    
    def send_mail(to,subject,content,attached_files):
        smtp = smtplib.SMTP()
        smtp.set_debuglevel(1)
        smtp.connect("smtp.qq.com","25")
        smtp.login(g_username, g_password)
        msg = MIMEMultipart()
        msg["From"] = g_username + "@qq.com"
        msg["To"] = to
        msg['Date'] = formatdate(localtime=True)
        content = "[backup] files: "+ ",".join(attached_files)
        msg['Subject'] = content[:32]
        msg.attach(MIMEText(content))
        for filename in attached_files:
            if not os.path.exists(filename):
                continue
            part = MIMEBase('application', "octet-stream")
            part.set_payload(open(filename,"rb").read())
            Encoders.encode_base64(part)
            part.add_header('Content-Disposition', 'attachment; filename="%s"' 
                            % os.path.basename(filename))
            msg.attach(part)
        smtp.sendmail(g_username + '@qq.com',[to],msg.as_string())
        smtp.close()
    
    if __name__ == "__main__":
        parser = OptionParser()
        (option,args) = parser.parse_args()
        send_mail("接受备份文件的邮箱@163.com","trival","trival",args)
    
  • 相关阅读:
    Bacula Plugins
    getopt、getopt_long命令参数
    Notepad++ 快捷键
    make命令
    Linux目录结构
    rhel安装输入法
    libtool编译
    install和cp
    dlopen动态链接库操作
    结构体赋值
  • 原文地址:https://www.cnblogs.com/igloo1986/p/3282594.html
Copyright © 2011-2022 走看看