skip to navigation
skip to content

Not Logged In

easyimap 0.6.2

Simple imap wrapper.

About this module

Simple imap wrapper.

Example to use

connect function create IMAP4_SSL instance by default:

>>> import easyimap
>>> host = "imap.gmail.com"
>>> user = "me@example.com"
>>> password = "hogehogehogehoge"
>>> mailbox = "secret"
>>> imapper = easyimap.connect(host, user, password, mailbox)

connect function also create IMAP4 instance by passing ssl argument:

>>> import easyimap
>>> host = "imap.gmail.com"
>>> user = "me@example.com"
>>> password = "hogehogehogehoge"
>>> mailbox = "secret"
>>> imapper = easyimap.connect(host, user, password, mailbox, ssl=False, port=143)
This imapper can list up latest n mail by listup method.
By default, This invoke fetch from IMAP4_SSL instance with ‘(UID RFC822)’.::
>>> mail1, mail2 = imapper.listup(2)
>>> mail1.uid
80
>>> mail1
<easyimap.easyimap.MailObj object at 0x...>
>>> type(mail1.body)
<type 'unicode'>
>>> type(mail1.title)
<type 'unicode'>
>>> type(mail1.date)
<type 'unicode'>
>>> type(mail1.sender)
<type 'unicode'>

You can check latest unseen mail by unseen method:

>>> imapper.unseen(2)
[(82, <easyimap.easyimap.MailObj object at 0x...>), (81, <easyimap.easyimap.MailObj object at 0x...)]

You can directly fetch email object with specific id:

>>> imapper.mail(80)
<easyimap.easyimap.MailObj object at 0x...>

You can download attachments:

>>> imapper.mail(80)
>>> (id, mail) = imapper.mail(80)
>>> for attachment in mail.attachment:
>>>     print attachment[0], attachment[1]

Finally, call quit method:

>>> imapper.quit()

Basic API

  • easyimap.connect(host, user, password, mailbox=’INBOX’, timeout=15, ssl=True, port=993, **kwargs)
    Create IMAP4(_SSL) wrapper.
    If you want to keep read/unread status, Please pass optional read_only=True argument.
    kwargs are read from Imapper’s constructor. Plz read source code.

Imapper

  • listids(limit=10, criterion=None)

    Returns list of available email ids.

  • listup(limit=10, criterion=None, include_raw=False)

    Returns list of mail_object.

  • unseen(limit=10)

    Returns list of mail_object.

  • mail(uid, include_raw=False)

    Returns MailObj.

  • change_mailbox(mailbox)

    Change mailbox.

  • quit()

    Close and Logout.

MailObject

  • uid

    Returns UID(type: int).

  • raw

    if you fetched email with include_raw option, this returns raw Data:

    >>> [(id1, mail1), (id2, mail2)] = imapper.listup(2, include_raw)
    >>> data = mail1.raw
    
  • title

    Returns string of ‘Subject’ header.

  • sender

    Returns string of ‘Sender’ header.

  • from_addr

    Returns string of ‘From’ header.

  • to

    Returns string of ‘To’ header.

  • date

    Returns string of ‘Date’ header.

  • body

    Returns string of Body.

  • content_type

    Returns string of ‘Content-Type’ header.

  • content_transfer_encoding

    Returns string of ‘Content-Transfer-Encoding’ header.

  • references

    Returns string of ‘References’ header.

  • in_reply_to

    Returns string of ‘In-Reply-To’ header.

  • reply_to

    Returns string of ‘Reply-To’ header.

  • return_path

    Returns string of ‘Return-Path’ header.

  • mime_version

    Returns string of ‘MIME-Version’ header.

  • message_id

    Returns string of ‘Message-ID’ header.

  • attachments

    Returns list of tuples(‘attached file name’, MailObj).

Recent Change

  • 0.6.2
    • Fixed a bug in header/body encoding
  • 0.6.1
    • Fixed a bug in _decode_header function
  • 0.6.0
    • Add support for Python-3.4.

    • Backward incompatible changes
      • Modify listup to return list of mailobj.
      • Rename many properties to underbar separated format.
 
File Type Py Version Uploaded on Size
easyimap-0.6.2.tar.gz (md5) Source 2015-05-31 5KB
  • Downloads (All Versions):
  • 73 downloads in the last day
  • 948 downloads in the last week
  • 2849 downloads in the last month