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

python 利用imap接收邮件,并保存附件的更多相关文章

  1. python 利用pop3接收邮件并保存附件

    def SaveAttach():# login the pop3 server ,retrive the new mails ,and download the attachments dstdir ...

  2. Python 用IMAP接收邮件

    一.简介IMAP(Internet Message Access Protocol),这个协议与POP一样,也是从邮件服务器上下载邮件到本机,不过IMAP比POP的功能要更加强大些,IMAP除支持PO ...

  3. Python接收邮件并保存至MySQL

    转自:http://www.360doc.com/content/14/0103/13/11789990_342303735.shtml 参考了一些网络上的资料,做了个简单程序,使用python接收邮 ...

  4. 使用python发送和接收邮件

    关于电子邮件 大学之前,基本不用邮箱,所以基本感觉不到它的存在,也不知道有什么用:然而大学之后,随着认识的人越来越多,知识越来越广泛,邮箱已然成为很重要的通讯工具,大学一些课程作业需要有邮箱发给老师, ...

  5. Python利用zmail收取邮件

    收取邮件一般用pop和imap,这里使用国人大神开发的zmail来收取: 1 ''' 2 #利用zmail收取邮件 3 #只要几行代码 4 #安装库:pip3 install zmail 5 #国内大 ...

  6. Python 用POP接收邮件

    一.简介 POP(Post Office Protocal)最长用的POP版本是POP3,因此本文是以POP3为主.POP3非常简单,可以用来从邮件服务器上下载邮件,然后删除这些邮件.功能非常有限,后 ...

  7. python利用imap实现伪“无痕”取信

    所谓无痕取信,目前主要是指从邮箱中把信件收取后,邮箱内状态不发生任何改变.这里的状态主要是指两部分,一部分是邮件状态不变,即已读与未读状态不变,另一部分是指邮箱记录的登陆IP不发生改变.本文中所说的伪 ...

  8. python 利用 smtplib发邮件

    import smtplib from email.mime.text import MIMEText title = "request build error" content ...

  9. Android pop3与imap方式接收邮件(javamail)

    需要下载3个jar包:mail.jar/    activation.jar/    additionnal.jar 1.pop3 /** * 以pop3方式读取邮件,此方法不能读取邮件是否为已读,已 ...

随机推荐

  1. [转]PHP中fopen,file_get_contents,curl的区别

    1.       fopen /file_get_contents 每次请求都会重新做DNS查询,并不对 DNS信息进行缓存.但是CURL会自动对DNS信息进行缓存.对同一域名下的网页或者图片的请求只 ...

  2. Linux之父访谈录:设计内核只为了好玩

    2010-09-20 10:36 “有 些人生来就具有统率百万人的领袖风范;另一些人则是为写出颠覆世界的软件而生.唯一一个能同时做到这两 者的人,就是Linus Torvalds.”这是美国<时 ...

  3. MVVM学习

    1:MVVMLight中通过IOC注册的服务或者是类是全局的整个工程都能访问到 2:向下的结构(viem→VM→Model)也不严格是这样 3:延迟SimpleIoc的注册 4:在Navigatedt ...

  4. Scrumworks乱码

    要搞敏捷,先找个工具.选了scrumworks5.1.安装完后发现录入汉字乱码. 环境: server:CentOS linux db:mysql5.0 appserver:jboss(scrumwo ...

  5. 实现iOS长时间后台的两种方法:Audiosession和VOIP(转)

    分类: Iphone2013-01-24 14:03 986人阅读 评论(0) 收藏 举报 我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在后台下载或者与服务器保持连接的App ...

  6. Daject初探 - 从Table模型得到Record模型

    前言: 如果你还不知道Daject是什么,如何使用,可以浏览 http://www.cnblogs.com/kason/p/3577359.html github地址:https://github.c ...

  7. JDBC连接数据库代码

    //连接是需要导包 http://pan.baidu.com/s/1o6nyuOa /*配合数据库建立表 create database day14 character set utf8 collat ...

  8. JPA学习---第一节:JPA详解

    一.详解 JPA JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关系映射工具来管理Java应用中的关系数据.他的出现主要是 ...

  9. 团队作业week2-软件分析和用户需求调查

    我们的团队选择评定的软件是必应词典(iphone版)和使用较多的有道词典(iphone版)   类别 描述 评分(Bing) 评分(有道)  功能      核心功能1:词典 顾名思义,作为一款词典类 ...

  10. android编程常见问题-程序真机中不显示

    新手编程常见问题: 问题表现:连接上手机后,程序不显示 解决版本:检查AndroidManifest.xml 文件中SDK版本的设置(要求要兼容当前手机版本系统),如下: