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()

  • 相关阅读:
    Spring boot 集成三种拦截方式
    Spring boot 异常处理配置
    Linux 启动、停止、重启tomcat工具(Shell脚本)
    Java 序列化对象工具类
    Spring boot 集成 Swagger
    Spring boot 项目导出可执行jar
    包扫描自定义注解类并实例化
    Zuul 网关搭建
    Hystrix + Hystrix Dashboard搭建(Spring Cloud 2.X)
    Feign + Hystrix 服务熔断和服务降级
  • 原文地址:https://www.cnblogs.com/maseng/p/3491127.html
Copyright © 2011-2022 走看看