pax_global_header 0000666 0000000 0000000 00000000064 13400741301 0014503 g ustar 00root root 0000000 0000000 52 comment=309ae667efa3c8f7192ef6b744c295fbb8a2d101
woob-309ae667efa3c8f7192ef6b744c295fbb8a2d101-modules-groupamaes/ 0000775 0000000 0000000 00000000000 13400741301 0023351 5 ustar 00root root 0000000 0000000 woob-309ae667efa3c8f7192ef6b744c295fbb8a2d101-modules-groupamaes/modules/ 0000775 0000000 0000000 00000000000 13400741301 0025021 5 ustar 00root root 0000000 0000000 woob-309ae667efa3c8f7192ef6b744c295fbb8a2d101-modules-groupamaes/modules/groupamaes/ 0000775 0000000 0000000 00000000000 13400741301 0027164 5 ustar 00root root 0000000 0000000 woob-309ae667efa3c8f7192ef6b744c295fbb8a2d101-modules-groupamaes/modules/groupamaes/__init__.py 0000664 0000000 0000000 00000001442 13400741301 0031276 0 ustar 00root root 0000000 0000000 # -*- coding: utf-8 -*-
# Copyright(C) 2014 Bezleputh
#
# This file is part of weboob.
#
# weboob is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# weboob is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with weboob. If not, see .
from .module import GroupamaesModule
__all__ = ['GroupamaesModule']
woob-309ae667efa3c8f7192ef6b744c295fbb8a2d101-modules-groupamaes/modules/groupamaes/browser.py 0000664 0000000 0000000 00000005511 13400741301 0031223 0 ustar 00root root 0000000 0000000 # -*- coding: utf-8 -*-
# Copyright(C) 2014 Bezleputh
#
# This file is part of weboob.
#
# weboob is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# weboob is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with weboob. If not, see .
from weboob.browser import LoginBrowser, URL, need_login
from weboob.exceptions import BrowserIncorrectPassword
from weboob.tools.date import LinearDateGuesser
from weboob.tools.capabilities.bank.transactions import sorted_transactions
from .pages import LoginPage, LoginErrorPage, GroupamaesPage, GroupamaesPocketPage
__all__ = ['GroupamaesBrowser']
class GroupamaesBrowser(LoginBrowser):
BASEURL = 'https://www.gestion-epargne-salariale.fr'
login = URL('/groupama-es/fr/index.html', LoginPage)
login_error = URL('/groupama-es/fr/identification/default.cgi', LoginErrorPage)
groupamaes_page = URL('/groupama-es/fr/espace/devbavoirs.aspx\?mode=net&menu=cpte(?P.*)', GroupamaesPage)
groupamaes_pocket = URL('/groupama-es/fr/espace/devbavoirs.aspx\?_tabi=C&a_mode=net&a_mode=net&menu=cpte(?P.*)', GroupamaesPocketPage)
def do_login(self):
self.login.stay_or_go()
self.page.login(self.username, self.password)
if not self.page.logged or self.login_error.is_here():
raise BrowserIncorrectPassword()
@need_login
def get_accounts_list(self):
return self.groupamaes_page.stay_or_go(page='&page=situglob').iter_accounts()
@need_login
def get_history(self):
transactions = list(self.groupamaes_page.go(page='&_pid=MenuOperations&_fid=GoOperationsTraitees').get_history(date_guesser=LinearDateGuesser()))
transactions = sorted_transactions(transactions)
return transactions
@need_login
def get_coming(self):
transactions = list(self.groupamaes_page.go(page='&_pid=OperationsTraitees&_fid=GoWaitingOperations').get_history(date_guesser=LinearDateGuesser(), coming=True))
transactions = sorted_transactions(transactions)
return transactions
@need_login
def iter_investment(self, account):
return self.groupamaes_pocket.go(page='&_pid=SituationParPlan&_fid=GoPositionsDetaillee').iter_investment(account.label)
@need_login
def iter_pocket(self, account):
return self.groupamaes_pocket.go(page='&_pid=SituationParPlan&_fid=GoPositionsDetaillee').iter_pocket(account.label)
woob-309ae667efa3c8f7192ef6b744c295fbb8a2d101-modules-groupamaes/modules/groupamaes/favicon.png 0000664 0000000 0000000 00000022172 13400741301 0031323 0 ustar 00root root 0000000 0000000 PNG
IHDR @ @ iq sRGB gAMA a pHYs $IDATx^{w|UU%@hHCBBzrSnnMO ""}TD(MQf0eF}}<>{ؿrkdtpL\X9z{
:䚌{6\Y|,u~d;'÷7WS B5j.DV9wr-.O{2:fsj}ܹ]n㶟\T&vpυj>GG'\n^Ϗbd|
kpMBT5 ]*'[U&z2˞$tLD/G2z;г*=+8Sɖ`{yOY66fl,}~j}k2ԍP-bD:~ S4Z:HB7{"Q1։-q(v%<asŠ6 6DXPPDW9r۞0Bϒ5\d yQ}xM8Eɍ8!_N#
>+Sѹx"p!*1LmI©X55MM3i 4#9:;ff[Xl:J!Ǥ3UQBe3