Skip to content

Telofy/imapy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Imapy: Imap for Humans

Imapy is an MIT Licensed IMAP library, written in Python. It makes processing emails in your email box easy.

Most existing Python modules for dealing with IMAP are extremely low-level. They require the programmer to know the intricacies of IMAP protocol and differences in IMAP server behaviour so that even simple tasks require writing hundred lines of code.

Imapy changes that.

>>> box = imapy.connect(
              host='imap.gmail.com',
              username='[email protected]',
              password='secret',
              ssl=True)

Get all folder names:

>>> names = box.folders()

Get last 5 emails in 'Inbox' folder:

>>> emails = box.folder('Inbox').emails(-5)

Get unseen emails with Awesome in subject:

>>> q = Q()
>>> emails = box.folder('Inbox').emails(
>>>     q.subject('Awesome').unseen()
>>> )

Move messages sent by your boss to "Important" folder and mark them 'Flagged' and 'Unseen':

>>> q = Q()
>>> emails = box.folder('Inbox').emails(
>>>     q.sender('[email protected]').unseen()
>>> )
>>> for email in emails:
>>>     email.move('Important').mark(['Flagged', 'Unseen'])
>>>

Print some email details:

>>> for email in emails:
>>>    print(email['from'], email['subject'])

Process all emails in 'Inbox' folder:

>>> status = box.folder('Inbox').info()
>>> total = status['total']
>>> for t in range(1, total + 1):
>>>     email = box.folder('Inbox').email(t)
>>>     print(email['subject'])

Logout

>>> box.logout()

You can see more examples here

Installation

To install Imapy, simply:

$ pip install imapy

Miscellaneous

Notes & TODO

About

Imapy: Imap for Humans

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%