1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
#!/usr/bin/python2.3
#
# unreadmsgcount.py -- Demo to return unread message count with saved state
#
# $Revision: 1.1 $ ($Date: 2004/09/15 12:36:01 $)
#
# Author: follower@myrealbox.com
#
# License: GPL 2.0
#
#
# This demo intends to show how account state can be saved between script
# runs.
#
import os
import sys
import logging
# Allow us to run using installed `libgmail` or the one in parent directory.
try:
import libgmail
logging.warn("Note: Using currently installed `libgmail` version.")
except ImportError:
# Urghhh...
sys.path.insert(1,
os.path.realpath(os.path.join(os.path.dirname(__file__),
os.path.pardir)))
import libgmail
if __name__ == "__main__":
import sys
from getpass import getpass
try:
filename = sys.argv[1]
except IndexError:
print "Usage: %s <state filename>" % sys.argv[0]
raise SystemExit
if not os.path.isfile(filename):
name = raw_input("Gmail account name: ")
pw = getpass("Password: ")
ga = libgmail.GmailAccount(name, pw)
print "\nPlease wait, logging in..."
try:
ga.login()
except libgmail.GmailLoginFailure:
print "\nLogin failed. (Wrong username/password?)"
raise SystemExit
print "Log in successful.\n"
else:
print "\nDon't wait, not logging in... :-)"
ga = libgmail.GmailAccount(
state = libgmail.GmailSessionState(filename = filename))
print "Unread messages: %s" % ga.getUnreadMsgCount()
print "Saving state..."
state = libgmail.GmailSessionState(account = ga).save(filename)
print "Done."
|