import cookielib
import getpass
import os
import sys
import urllib
import urllib2

if len(sys.argv) > 3 or len(sys.argv) < 2:
    print 'python grabber.py <username> <password> [xml|csv]'
    sys.exit(1)

user = sys.argv[1]

if len(sys.argv) == 3:
    format = sys.argv[3]
else:
    format = 'xml'

pw = getpass.getpass()

#Store received cookies and use them in later requests
cookiejar = cookielib.LWPCookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar))
urllib2.install_opener(opener)

#Login and store our cookie
login_data = urllib.urlencode([('username', user), ('password', pw)])
urllib2.urlopen('https://www.wesabe.com/user/login', login_data)

#Grab the account export with our cookie
acc = urllib2.urlopen('https://www.wesabe.com/accounts/export/%s' % format)
out = open('accounts.%s' % format, 'w')
out.write(acc.read())
out.close()
acc.close()
