mailbox over IMAP
Project description
Please note that imap_mailbox is still under active development and will be subject to significant changes.
import imap_mailbox
# connect to the IMAP server
with imap_mailbox.IMAPMailbox('imap.example.com', 'username', 'password') as mailbox:
# search messages from vip@example.com
uids = mailbox.search('FROM', 'vip@example.com')
# move the messages to the 'VIP' folder
mailbox.move(uids, 'VIP')
This module provides a subclass of mailbox.Mailbox that allows you to interact with an IMAP server. It is designed to be a drop-in replacement for the standard library mailbox module.
Installation
Install the latest stable version from PyPI:
pip install imap-mailbox
Examples
Iterate over messages in a folder
import imap_mailbox
# connect to the IMAP server
with imap_mailbox.IMAPMailbox('imap.example.com', 'username', 'password') as mailbox:
# select the INBOX folder
mailbox.select('INBOX')
# iterate over messages in the folder
for message in mailbox:
print(f"From: {message['From']}")
print(f"Subject: {message['Subject']}")
Connect to a Proton Mail account
import imap_mailbox
# connect to the local IMAP bridge
with imap_mailbox.IMAPMailbox(
'127.0.0.1', 'username', 'password'
port=1143, security='STARTTLS'
) as mailbox:
# search messages from your friend
uids = mailbox.search('FROM', 'tr3nton@proton.me')
# erase the evidence
mailbox.delete(uids)
Delete messages from a noisy sender
import imap_mailbox
with imap_mailbox.IMAPMailbox('imap.example.com', 'username', 'password') as mailbox:
# search messages from
uids = mailbox.search('FROM', 'spammer@example.com')
# delete the messages
mailbox.delete(uids)
Delete GitHub messages older than two years
import imap_mailbox
with imap_mailbox.IMAPMailbox('imap.example.com', 'username', 'password') as mailbox:
# search messages older than two years from github.com
uids = mailbox.search('NOT PAST2YEARS FROM github.com')
# delete the messages
mailbox.delete(uids)
Development
Set up the development environment with dependencies and git hooks:
./scripts/init-dev.sh
Contribution
Help improve imap_mailbox by reporting any issues or suggestions on our issue tracker at github.com/medecau/imap_mailbox/issues.
Get involved with the development, check out the source code at github.com/medecau/imap_mailbox.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file imap_mailbox-0.3.0.tar.gz.
File metadata
- Download URL: imap_mailbox-0.3.0.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c403aeddfe8c2f55040e2ccf81217318c54d7f6009e6ac602a1561c158043f2
|
|
| MD5 |
3cf09d8adc9cdefa718081bc91b3f34c
|
|
| BLAKE2b-256 |
b6bc3a4f7749c95b4bcbeed7956a2f389df1661fe75a778245a158dc57a61a60
|
File details
Details for the file imap_mailbox-0.3.0-py3-none-any.whl.
File metadata
- Download URL: imap_mailbox-0.3.0-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eddb0edea9c2daa44903fb3cbe1640c56e3249c211046fe4f13dfc7d9d3d5abe
|
|
| MD5 |
8cec63636679218541c7a053816c19be
|
|
| BLAKE2b-256 |
45a6169679b253335b8ee0d9fd375b97a2ad5457c42ee3525e20503ca10dd580
|