isbg.isbg.ISBG¶
- class isbg.isbg.ISBG¶
Main ISBG class.
See also
isbg.__main__
for command line usage.Examples
>>> import isbg >>> sbg = isbg.ISBG() >>> sbg.imapsets.host = "imap.example.org" >>> sbg.imapsets.port = 993 >>> sbg.imapsets.user = "example@example.org" >>> sbg.imapsets.passwd = "xxxxxxxx" >>> sbg.imapsets.inbox = "INBOX" >>> sbg.imapsets.spaminbox = "INBOX.Spam" >>> sbg.imapsets.learnspambox = "INBOX.Spam" >>> sbg.imapsets.learnhambox = "NOSPAM" >>> # Set the number of mails to chech >>> sbg.partialrun = 4 # Only check 4 mails for every proc. >>> sbg.verbose = True # Show more info >>> sbg.ignorelockfile = True # Ignore lock file >>> sbg.removelock() # if there is a lock file >>> sbg.do_isbg() # Connects to the imap and checks for spam
- imap¶
class that take care of connection and communication with the IMAP server. It’s initialized calling
do_imap_login()
and every time that callingdo_isbg()
.
- imapsets¶
Object to store the IMAP settings. It’s initialized when ISBG is initialized and also stores the IMAP folders used by ISBG.
- It also stores the command line args for:
user
(imapuser),passwd
(imappasswd),host
(imaphost),port
(imapport),nossl
(nossl),inbox
(imapinbox),spaminbox
(spaminbox),learnspambox
(learnspambox) andlearnhambox
(learnhambox).
- logger¶
Object used to output info. It’s initialized when ISBG is initialized.
- Type
logging.Logger
These are attributes derived from the command line and needed for normal operations:
- exitcodes¶
If True returns more exit codes. Defaults to
True
.- Type
bool
- imaplist¶
If True shows the folder list. Default to
False
.- Type
bool
- noreport¶
If True not adds SpamAssassin report to mails. Default to
False
.- Type
bool
- nostats¶
If True no shows stats. Default to
False
.- Type
bool
- verbose_mails¶
If True shows the email content. Default to
False
.- Type
bool
- verbose¶
a property that if it’s set to True show more information. Default to
False
.
These are attributes derived for the command line, and needed for SpamAssassin operations:
- dryrun¶
If True don’t do changes in the IMAP account. Default to
False
.- Type
bool
- maxsize¶
Max file size to process. Default to
120,000
.- Type
int
- teachonly¶
If True don’t search spam, only learn. Default to
False
.- Type
bool
- spamc¶
If True use spamc instead of standalone SpamAssassin. Default to
False
.- Type
bool
- gmail¶
If True Delete by copying to [Gmail]/Trash folder. Default to
False
.- Type
bool
- deletehigherthan¶
If it’s not None, the minimum score from a mail to be deleted. Default to
None
.- Type
float
- delete¶
If True the spam mails will be marked for deletion. Default to
False
.- Type
bool
- expunge¶
If True causes marked for deletion messages to also be deleted (only useful if deleted is True. Default to
None
.- Type
bool
- flag¶
If True the spams will be flagged in your INBOX. Default to
False
.- Type
bool
- learnflagged¶
If True only learn flagged messages. Default to
False
.- Type
bool
- learnunflagged¶
If True only learn unflagged messages. Default to
False
.- Type
bool
- learnthendestroy¶
If True mark learned messages for deletion. Default to
False
.- Type
bool
- learnthenflag¶
If True flag learned messages. Default to
False
.- Type
bool
- movehamto¶
If it’s not None, IMAP folder where the ham mail will be moved. Default to
None
.- Type
str
These are attributes derived from the command line and related to the lock file:
- ignorelockfile¶
If True and there is the lock file a error is raised.
- Type
bool
- lockfile¶
Full path and name of the lock file.
The path it’s initialized with the xdg cache home specification plus /isbg/ and with the name
lock
.- Type
str
- lockfilegrace¶
Lifetime of the lock file in seconds. Default to 240.0
- Type
float
These are attributes derived for the command line, related to the IMAP password and files:
- passwdfilename¶
The fill name where the password will be stored. Defaults to
None
. It only have use if savepw is True.- Type
str
- savepw¶
If True a obfuscated password will be stored into a file.
- Type
bool
- trackfile¶
Base name where the processed
uids
will be stored to not reprocess them. Default toNone
when initialized and initialized the first time that is needed.- Type
str
- __init__()¶
Initialize a ISBG object.
Methods
__init__
()Initialize a ISBG object.
assertok
(res, *args)Check that the return code is OK.
Login to the imap.
Sign off from the imap connection.
do_isbg
()Execute the main isbg process.
List the imap boxes.
Do the spamassassin procesing.
pastuid_read
(uidvalidity[, folder])Read the uids stored in a file for a folder.
pastuid_write
(uidvalidity, origpastuids, ...)Write the uids in a file for the folder.
Remove the lockfile.
set_filename
(imapsets, filetype)Set the filename of cached created files.
Attributes
Get the verbose property.
a logger