Python Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Python Examples

Quick Start
Unicode
Byte Array
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML-to-XML
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
Signatures
Socket / SSL
SFTP
SMTP
Spider
SSH Key
SSH
SSH Tunnel
Tar
HTTP Upload
XML
XMP
Zip

More Examples...
String
Email Object
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Icon

 

 

 

 

 

 

 

Delete Email Individually (One at a time) from an IMAP Mailbox

Downloads email from an IMAP mailbox and deletes emails individually (one by one).

Download Chilkat Python Library

import sys
import chilkat

imap = chilkat.CkImap()

#  Anything unlocks the component and begins a fully-functional 30-day trial.
success = imap.UnlockComponent("Anything for 30-day trial")
if (success != True):
    print imap.lastErrorText()
    sys.exit()

#  Connect to an IMAP server.
success = imap.Connect("mail.chilkatsoft.com")
if (success != True):
    print imap.lastErrorText()
    sys.exit()

#  Login
success = imap.Login("myLogin","myPassword")
if (success != True):
    print imap.lastErrorText()
    sys.exit()

#  Select an IMAP mailbox
success = imap.SelectMailbox("Inbox")
if (success != True):
    print imap.lastErrorText()
    sys.exit()

#  We can choose to fetch UIDs or sequence numbers.
fetchUids = True
#  Get the message IDs of all the emails in the mailbox
messageSet = imap.Search("ALL",fetchUids)
if (messageSet == None ):
    print imap.lastErrorText()
    sys.exit()

#  Fetch the emails into a bundle object:

bundle = imap.FetchBundle(messageSet)
if (bundle == None ):

    print imap.lastErrorText()
    sys.exit()

#  To mark a complete set of emails for deletion, call SetFlags:
success = imap.SetFlags(messageSet,"Deleted",1)
if (success != True):
    print imap.lastErrorText()
    sys.exit()

#  Messages can also be marked for deletion individually:
#  Loop over the bundle and mark each message for deletion.

for i in range(0,bundle.get_MessageCount()):

    email = bundle.GetEmail(i)
    print email.ck_from()
    print email.subject()

    #  To delete this email, set the "Deleted" flag to 1.
    #  The email is not actually deleted until Expunge or
    #  ExpungeAndClose is called.
    success = imap.SetMailFlag(email,"Deleted",1)
    if (success != True):
        print imap.lastErrorText()
        sys.exit()

    print "--"

success = imap.ExpungeAndClose()
if (success != True):
    print imap.lastErrorText()
    sys.exit()

#  Disconnect from the IMAP server.
imap.Disconnect()


 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.