zoukankan      html  css  js  c++  java
  • python 利用imap接收邮件,并保存附件

    def SaveAttachImap():# login the imap server ,retrive the  new mails ,and download the attachments.

        M = imaplib.IMAP4(mail_host,mail_port)
        #print M


        M.login(mail_user,mail_pass)

        M.select('INBOX',False)
        #result, message = M.select('INBOX',False)
        typ, data = M.search(None, 'UNSEEN')
        print data
        for num in string.split(data[0]):
            try:
                typ, data = M.fetch(num, '(RFC822)')
                #print data
                msg = email.message_from_string(data[0][1])
                for par in msg.walk():
                #if not par.is_multipart():
                    name = par.get_filename()
                    print 'name',name

                    #name2 = par.get_filename()
                    #print 'name2',name2


                    if name:
                        dstdir =dirname+name
                        print 'dirname',dstdir
                        #print 'name',name
                        data = par.get_payload(decode=True)
                        #print dstdir
                        try:
                            f = open(dstdir, 'wb') #注意一定要用wb来打开文件,因为附件一般都是二进制文件
                            print 'save attfile %s succeed'%dstdir
                        except:
                            print 'open  file name error'
                        f.write(data)
                        f.close()

                    #print "_______________________________"
            except Exception,e:
                print 'got msg error: %s' % e

        M.close()
        M.logout()

  • 相关阅读:
    机器学习模型之逻辑回归
    机器学习模型之决策树
    机器学习模型之朴素贝叶斯
    机器学习模型之KNN算法
    Gradle系列之构建脚本基础
    Gradle系列之Groovy基础篇
    Gradle系列之初识Gradle
    Bitmap之内存缓存和磁盘缓存详解
    Bitmap之位图采样和内存计算详解
    WebView中Java与JavaScript的交互
  • 原文地址:https://www.cnblogs.com/maseng/p/3491127.html
Copyright © 2011-2022 走看看