woob issueshttps://gitlab.com/woob/woob/-/issues2024-02-08T23:37:32Zhttps://gitlab.com/woob/woob/-/issues/200Documentation issue.2024-02-08T23:37:32ZWoob ImportDocumentation issue.I've been browsing the website and I have not been able to find any "example" or "getting started" or anything.
I want to gather tracking info from tracking websites and put the results in my "packages in transit" database. Some sites ...I've been browsing the website and I have not been able to find any "example" or "getting started" or anything.
I want to gather tracking info from tracking websites and put the results in my "packages in transit" database. Some sites allow me "lynx -dump <the-url>" but others will error out and just give me the same page no matter what the tracking number is. I think I need weboob, but I would first like the documentation to give me some sort of demo so that I can start looking for what needs to be done from there.
Sample URL: https://global.cainiao.com/detail.htm?mailNoList=LX593784117NL
This is really a documentation issue. For someone familiar with the package it is going to be perfectly obvious what to do, but for someone not familiar with the matter it is one big mess.
After installing weboob, weboob-qt (apt install) I tried "man weboob". No manual.
I tried weboob-qt No such executable. I tried weboob. It gives me a long list of things to choose and I have no clue what it wants me to do. And I've tried weboob-cli and it tells me the syntax is
Syntax: /usr/bin/weboob-cli capability method [args ..]
Well great! (NOT!)https://gitlab.com/woob/woob/-/issues/75[wish] Retrieve history for many account with one single command2024-02-08T23:33:18ZWoob Import[wish] Retrieve history for many account with one single commandI would like to retrieve all accounts from my bank in one single command, to avoid re-typing my password for each account. Would it be possible to do that with something like this ?
`boobank history XXXX@mybank YYYYYY@mybank -f ofx > m...I would like to retrieve all accounts from my bank in one single command, to avoid re-typing my password for each account. Would it be possible to do that with something like this ?
`boobank history XXXX@mybank YYYYYY@mybank -f ofx > myfile.ofx `
Thanks.https://gitlab.com/woob/woob/-/issues/155DeprecationWarning: Overriding __eq__ blocks inheritance of __hash__ in 3.x2024-02-08T23:27:58ZWoob ImportDeprecationWarning: Overriding __eq__ blocks inheritance of __hash__ in 3.xhttps://stackoverflow.com/questions/15471333/how-to-eliminate-a-python3-deprecation-warning-for-the-equality-operator
Found it weboob/capabilities/base.py
Is it bad though? I got this warning on my other libs: future, tqdm, requests, etc.https://stackoverflow.com/questions/15471333/how-to-eliminate-a-python3-deprecation-warning-for-the-equality-operator
Found it weboob/capabilities/base.py
Is it bad though? I got this warning on my other libs: future, tqdm, requests, etc.https://gitlab.com/woob/woob/-/issues/123Get a single OFX/QFX for all accounts quickly2024-02-08T23:26:52ZWoob ImportGet a single OFX/QFX for all accounts quicklyThe following scripts will retrieve the history of all checking and credit cards accounts, and will generate a single (and valid) OFX/QFX file.
When there are many accounts to retrieve, `boobank` can be a little slow. So GNU `parall...The following scripts will retrieve the history of all checking and credit cards accounts, and will generate a single (and valid) OFX/QFX file.
When there are many accounts to retrieve, `boobank` can be a little slow. So GNU `parallel` is used to to retrieve data in parallel for each account. In my particular setup, download speed is increased by a factor of 10.
To use, you will need to put your accounts numbers in the following files:
* checkings.txt
* creditcards.txt
Please let me know how to upload this somewhere on the site, so it can easily be accessible by all.
[boobank.sh](/uploads/ffeae16c1fcbfa274ecc8ca703ab51cd/boobank.sh)
[boohistory.sh](/uploads/9d9fcc2cb34e9b623f31b7c20b105fe8/boohistory.sh)
[boocoming.sh](/uploads/552901410b2091b4729adf7e13667dbe/boocoming.sh)https://gitlab.com/woob/woob/-/issues/156check_xpath improvements2024-02-08T23:24:27ZWoob Importcheck_xpath improvements* maybe the "." check should not be there in some cases (obj_* when they are actual methods?)
* false positive when using Async
* sometimes the . is there but not at the start, try to parse those weird cases
* allow ignoring some line...* maybe the "." check should not be there in some cases (obj_* when they are actual methods?)
* false positive when using Async
* sometimes the . is there but not at the start, try to parse those weird cases
* allow ignoring some lines, for example "# noqa" comments (this would allow using check_xpath all the time, like our pyflakes script)
* make it into a flake8 plugin? (could solve ignores)https://gitlab.com/woob/woob/-/issues/160Repository update is not resilient to a failure of the module repo2024-02-08T22:59:51ZWoob ImportRepository update is not resilient to a failure of the module repoHello,
I open this ticket to report a problem about repository updates.
Currently, before doing an update of the repositories, weboob deletes the local cache of the repositories (in the `repository` folder) **before** performing an u...Hello,
I open this ticket to report a problem about repository updates.
Currently, before doing an update of the repositories, weboob deletes the local cache of the repositories (in the `repository` folder) **before** performing an update of the repository (see here : https://git.weboob.org/weboob/devel/blob/master/weboob/core/repositories.py#L600-601).
In case the update process fails, for example due to the update server being "down" or for example because the TLS certificate is not renewed in due time (yes the problem raised these days ;)), the user cannot use the local version of modules (in the `modules` folder), as weboob first looks in the repository cache to determine if it knows the module (and the cache was deleted). This results in raising an `ModuleLoadError` and breaks the local use of weboob due to a remote problem (the cached modules could still be valid or at least partially functional).
I understand the intend to delete everything, if we are certain that there won't be any problem when updating, however these kind of problems can happen. In my opinion, the local repository cache should only be deleted if :
- we got an updated version of the repo locally
- OR the repository is not within the repositories listed in the `sources.list` provided to weboob.
The second clause could be discussed, as for testing purposes, a repo could be disabled temporarily, and the cache would be deleted for nothing (making it impossible to come back to a normal situation, in case this repo is down).
I open this ticket to open the discussion on what should be the behaviour in case the update process fails for any reason, and keep weboob usable anyway. I will propose an implementation once I have a good view on what should be expected.https://gitlab.com/woob/woob/-/issues/583[bank][n26] Bug(n26): 404 Client Error: Not Found2024-01-28T04:57:48ZCarlos GOMES[bank][n26] Bug(n26): 404 Client Error: Not FoundHello,
I've got this error since some days
```
2022-08-29 09:38:11,031:DEBUG:bcall:3.0:bcall.py:101:backend_process <Backend 'bnp'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object ...Hello,
I've got this error since some days
```
2022-08-29 09:38:11,031:DEBUG:bcall:3.0:bcall.py:101:backend_process <Backend 'bnp'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7f99a23760>> returned: <generator object Application._do_complete_iter at 0x7f9689a970>
Bug(n26): 404 Client Error: Not Found
2022-08-29 09:38:11,042:DEBUG:urllib3.util.retry:3.0:retry.py:333:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-08-29 09:38:11,042:DEBUG:urllib3.util.retry:3.0:retry.py:333:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
=== [ 0%] Getting https://updates.woob.tech/3.0/main/
2022-08-29 09:38:11,057:DEBUG:urllib3.connectionpool:3.0:connectionpool.py:973:_new_conn Starting new HTTPS connection (1): updates.woob.tech:443
2022-08-29 09:38:11,243:DEBUG:urllib3.connectionpool:3.0:connectionpool.py:452:_make_request https://updates.woob.tech:443 "GET /3.0/main/modules.list HTTP/1.1" 200 67526
```
Thanks for you're helphttps://gitlab.com/woob/woob/-/issues/523[bill][ovh] connection not working2023-12-10T14:11:12ZKévin Dunglas[bill][ovh] connection not working
### With which module do you encounter problems?
bill ovh
### Describe the problem you encounter
Unable to log in.
### Paste here the stacktrace or error message you observe
```
2021-12-28 11:56:36,535:DEBUG:woob.core.bcall:3.1:bca...
### With which module do you encounter problems?
bill ovh
### Describe the problem you encounter
Unable to log in.
### Paste here the stacktrace or error message you observe
```
2021-12-28 11:56:36,535:DEBUG:woob.core.bcall:3.1:bcall.py:92:backend_process <Backend 'ovh'>: Calling function <bound method Application._do_complete of <woob.applications.bill.bill.AppBill object at 0x105040fd0>>
2021-12-28 11:56:36,535:DEBUG:woob.core.bcall:3.1:bcall.py:98:backend_process <Backend 'ovh'>: Called function <bound method Application._do_complete of <woob.applications.bill.bill.AppBill object at 0x105040fd0>> raised an error: TypeError("'NoneType' object does not support item assignment")
Bug(ovh): 'NoneType' object does not support item assignment
(If --auto-update is passed on the command-line, new versions of the module will be checked automatically)
Traceback (most recent call last):
File "/Users/dunglas/workspace/woob/woob/core/bcall.py", line 94, in backend_process
result = function(backend, *args, **kwargs)
File "/Users/dunglas/workspace/woob/woob/tools/application/base.py", line 349, in _do_complete
res = getattr(backend, function)(*args, **kwargs)
File "/Users/dunglas/.local/share/woob/modules/3.1/woob_modules/ovh/module.py", line 54, in iter_subscription
return self.browser.get_subscription_list()
File "/Users/dunglas/workspace/woob/woob/browser/browsers.py", line 989, in inner
browser.do_login()
File "/Users/dunglas/workspace/woob/woob/tools/decorators.py", line 38, in f_retry
return f(*args, **kwargs)
File "/Users/dunglas/.local/share/woob/modules/3.1/woob_modules/ovh/browser.py", line 81, in do_login
self.validate_security_form()
File "/Users/dunglas/.local/share/woob/modules/3.1/woob_modules/ovh/browser.py", line 74, in validate_security_form
res_form['emailCode'] = self.config['pin_code'].get()
TypeError: 'NoneType' object does not support item assignment
```
### What are the steps to reproduce the problem?
```
woob bill
backend add ovh
download_pdf all
```
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.1 Copyright(C) 2010-2021 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module ovh |
+-----------------.------------------------------------------------------------'
| Version | 202104111456
| Maintainer | Vincent Paredes <vparedes@budget-insight.com>
| License | LGPLv3+
| Description | Ovh
| Capabilities | CapCollection, CapDocument
| Installed | yes
| Location | https://updates.woob.tech/3.1/main/ovh.tar.gz
| |
| Configuration | login: Account ID (default: )
| | password: Password (default: )
| | pin_code: Code PIN / Email (default: )
'-----------------'
```
### How did you install woob?
setup.py
### Additional info you'd like to mention
I'm not sure about what "PIN code" refers to.https://gitlab.com/woob/woob/-/issues/581[bank][boursorama] No ID (nor Category) for Coming transactions on Carte à dé...2023-12-09T21:25:24Ztomyvi[bank][boursorama] No ID (nor Category) for Coming transactions on Carte à débit différé### With which module do you encounter problems?
Woob bank boursorama
### Describe the problem you encounter
When getting 'coming' transactions on an account type "Card" / 7, no Id is retrieved (value set by default to 'NotAvailable@bou...### With which module do you encounter problems?
Woob bank boursorama
### Describe the problem you encounter
When getting 'coming' transactions on an account type "Card" / 7, no Id is retrieved (value set by default to 'NotAvailable@boursorama' instead of a 32-char unique key identifier)
### Paste here the stacktrace or error message you observe
No error message, only missing data :
Sample record returned:
{
**"id": "NotAvailable@boursorama",**
"url": null,
"date": "2022-09-01",
"rdate": "2022-08-04",
"vdate": null,
"bdate": "2022-08-05",
"type": 12,
"raw": "CARTE 04/08/22 05 SAEM DES ECRINS",
**"category": null,**
"label": "05 SAEM DES ECRINS",
"amount": "-48.00",
"card": null,
"commission": null,
"gross_amount": null,
"original_amount": null,
"original_currency": null,
"country": null,
"original_commission": null,
"original_commission_currency": null,
"original_gross_amount": null,
"investments": []
}
### What are the steps to reproduce the problem?
> woob bank
> list
> coming #AccountID
### What woob version are you using?
Woob config v3.0 Copyright(C) 2010-2022 Christophe Benz, Romain Bignon
### What module version are you using?
.------------------------------------------------------------------------------.
| Module boursorama |
+-----------------.------------------------------------------------------------'
| Version | 202208081152
| Maintainer | Gabriel Kerneis <gabriel@kerneis.info>
| License | LGPLv3+
| Description | Boursorama
| Capabilities | CapContact, CapCredentialsCheck, CapCollection, CapBank, CapCurrencyRate, CapBankTransfer, CapTransfer, CapDocument, CapBankWealth, CapProfile, CapBankTransferAddRecipient
| Installed | yes
| Location | https://updates.woob.tech/3.0/main/boursorama.tar.gz
| |
| Configuration | login: Identifiant (default: )
| | password: Mot de passe (default: )
| | code: None
| | request_information: None
'-----------------'
### How did you install woob?
pip
### Additional info you'd like to mention
Latest update to module added the collection of 'Category' value when getting transaction history. Could be nice to get also category from boursorama when getting 'Coming' transactions.https://gitlab.com/woob/woob/-/issues/618[bank][boursorama] Unknown error: Unable to find element X //form @name="form...2023-12-09T21:17:14ZNicolas D[bank][boursorama] Unknown error: Unable to find element X //form @name="form"/div @data-strong-authentication-payload].### Bank module for Boursorama
### can't setup the boursorama account on Kresus.
###
Unknown error: Unable to find element X
//form @name="form"/div @data-strong-authentication-payload].
### Add access
### What woob version are yo...### Bank module for Boursorama
### can't setup the boursorama account on Kresus.
###
Unknown error: Unable to find element X
//form @name="form"/div @data-strong-authentication-payload].
### Add access
### What woob version are you using? 3.3.1
### How did you install woob?
WOOB is behind Kresus.
Unknown error: Unable to find element X
//form @name="form"/div @data-strong-authentication-payload]. Erreur inconnue de Kresus : essayez de
• mettre à jour Woob, et si cela ne règle pas votre problème, merci de signaler l'erreur aux auteurs de Kresus.
Veuillez vous référer à la console développeurs pour plus d'informations.https://gitlab.com/woob/woob/-/issues/589[bank][boursorama] AssertionError when trying to connect2023-12-06T13:47:33ZOlivier Schwander[bank][boursorama] AssertionError when trying to connect
### With which module do you encounter problems?
Boursorama
### Describe the problem you encounter
The login is impossible. The password seems to be accepted and I receive the 2FA code by sms on my phone but then it fails with an Ass...
### With which module do you encounter problems?
Boursorama
### Describe the problem you encounter
The login is impossible. The password seems to be accepted and I receive the 2FA code by sms on my phone but then it fails with an AssertionError.
### Paste here the stacktrace or error message you observe
```
~$ woob bank -b boursorama
Welcome to bank v3.1
Copyright(C) 2010-2022 Romain Bignon, Christophe Benz
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Type "help" to display available commands.
Loaded backends: boursorama
bank> logging debug
bank> list
Account Balance Coming
------------------------------------------+----------+----------
2022-09-30 00:19:57,028:DEBUG:woob.core.bcall:3.1:bcall.py:91:backend_process <Backend 'boursorama'>: Calling function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7fd0022e1900>>
[boursorama] Mot de passe (hidden input):
2022-09-30 00:20:02,848:DEBUG:urllib3.util.retry:3.1:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-09-30 00:20:02,849:DEBUG:urllib3.util.retry:3.1:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-09-30 00:20:02,854:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:1063:_load_cookies Reloaded cookies from storage
2022-09-30 00:20:02,859:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:1006:_new_conn Starting new HTTPS connection (1): clients.boursorama.com:443
2022-09-30 00:20:03,042:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /connexion/saisie-mot-de-passe HTTP/1.1" 200 None
2022-09-30 00:20:03,077:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://clients.boursorama.com/connexion/saisie-mot-de-passe with PasswordPage
2022-09-30 00:20:03,153:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /connexion/clavier-virtuel?_hinclude=1 HTTP/1.1" 200 None
2022-09-30 00:20:03,157:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://clients.boursorama.com/connexion/clavier-virtuel?_hinclude=1 with VirtKeyboardPage
2022-09-30 00:20:04,578:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "POST /connexion/saisie-mot-de-passe HTTP/1.1" 302 None
2022-09-30 00:20:04,613:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET / HTTP/1.1" 302 None
2022-09-30 00:20:04,886:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /securisation HTTP/1.1" 200 None
2022-09-30 00:20:04,926:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://clients.boursorama.com/securisation with AuthenticationPage
2022-09-30 00:20:05,261:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /securisation/validation HTTP/1.1" 200 None
2022-09-30 00:20:05,272:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://clients.boursorama.com/securisation/validation with AuthenticationPage
2022-09-30 00:20:05,278:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:1006:_new_conn Starting new HTTPS connection (1): api.boursorama.com:443
2022-09-30 00:20:05,647:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://api.boursorama.com:443 "POST /services/api/v1.7/_user_/_7bb3c76dc3f62c4_/session/otp/startsms/10305 HTTP/1.1" 200 None
2022-09-30 00:20:05,653:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://api.boursorama.com/services/api/v1.7/_user_/_7bb3c76dc3f62c4_/session/otp/startsms/10305 with AddRecipientOtpSendPage
2022-09-30 00:20:05,653:DEBUG:woob.core.bcall:3.1:bcall.py:97:backend_process <Backend 'boursorama'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7fd0022e1900>> raised an error: BrowserQuestion(<woob.tools.value.Value object at 0x7fcffe3fbfa0>)
[code] Entrez le code reçu par SMS: 123456
2022-09-30 00:20:20,831:DEBUG:woob.core.bcall:3.1:bcall.py:91:backend_process <Backend 'boursorama'>: Calling function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7fd0022e1900>>
2022-09-30 00:20:20,862:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /aide/messages/dashboard?showza=0&_hinclude=1 HTTP/1.1" 302 None
2022-09-30 00:20:20,937:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /securisation HTTP/1.1" 200 None
2022-09-30 00:20:20,948:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://clients.boursorama.com/securisation with AuthenticationPage
2022-09-30 00:20:20,979:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /dashboard/comptes-professionnels?_hinclude=1 HTTP/1.1" 302 None
2022-09-30 00:20:21,060:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://clients.boursorama.com:443 "GET /securisation HTTP/1.1" 200 None
2022-09-30 00:20:21,065:DEBUG:woob.backend.boursorama.browser:3.1:browsers.py:892:internal_callback Handle https://clients.boursorama.com/securisation with AuthenticationPage
2022-09-30 00:20:21,065:DEBUG:woob.core.bcall:3.1:bcall.py:97:backend_process <Backend 'boursorama'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7fd0022e1900>> raised an error: AssertionError()
Bug(boursorama):
(If --auto-update is passed on the command-line, new versions of the module will be checked automatically)
Traceback (most recent call last):
File "/home/olivier/.local/lib/python3.10/site-packages/woob-3.1-py3.10.egg/woob/core/bcall.py", line 93, in backend_process
result = function(backend, *args, **kwargs)
File "/home/olivier/.local/lib/python3.10/site-packages/woob-3.1-py3.10.egg/woob/tools/application/base.py", line 351, in _do_complete
res = getattr(backend, function)(*args, **kwargs)
File "/home/olivier/.data/woob/modules/3.1/woob_modules/boursorama/module.py", line 190, in iter_resources
return self.iter_accounts()
File "/home/olivier/.data/woob/modules/3.1/woob_modules/boursorama/module.py", line 70, in iter_accounts
return self.browser.get_accounts_list()
File "/home/olivier/.local/lib/python3.10/site-packages/woob-3.1-py3.10.egg/woob/browser/retry.py", line 77, in wrapper
ret = cb()
File "/home/olivier/.local/lib/python3.10/site-packages/woob-3.1-py3.10.egg/woob/browser/retry.py", line 73, in <lambda>
cb = lambda: func(browser, *args, **kwargs)
File "/home/olivier/.local/lib/python3.10/site-packages/woob-3.1-py3.10.egg/woob/browser/browsers.py", line 996, in inner
return func(browser, *args, **kwargs)
File "/home/olivier/.data/woob/modules/3.1/woob_modules/boursorama/browser.py", line 505, in get_accounts_list
assert self.no_account.is_here()
AssertionError
------------------------------------------+----------+----------
bank>
```
### What are the steps to reproduce the problem?
Any command which to be logged in.
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.1 Copyright(C) 2010-2022 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module boursorama |
+-----------------.------------------------------------------------------------'
| Version | 202209051348
| Maintainer | Gabriel Kerneis <gabriel@kerneis.info>
| License | LGPLv3+
| Description | Boursorama
| Capabilities | CapDocument, CapProfile, CapBank, CapContact, CapCurrencyRate, CapCollection, CapCredentialsCheck, CapBankWealth, CapTransfer, CapBankTransferAddRecipient, CapBankTransfer
| Installed | yes
| Location | https://updates.weboob.org/3.1/main/boursorama.tar.gz
| |
| Configuration | login: Identifiant (default: )
| | password: Mot de passe (default: )
| | code: None
| | request_information: None
'-----------------'
```
### How did you install woob?
git + setup.py
### Additional info you'd like to mentionhttps://gitlab.com/woob/woob/-/issues/539Handling NeedInteractiveFor2FA exception in a script2023-07-03T13:40:46ZVincent RaspalHandling NeedInteractiveFor2FA exception in a scriptThis is more a question than a issue.
I have a personal script based on woob and Bank capability.
What is the proper way to deal with the `NeedInteractiveFor2FA()` exception?
Basically, below is (a part of) my script :
```
w = Woob(back...This is more a question than a issue.
I have a personal script based on woob and Bank capability.
What is the proper way to deal with the `NeedInteractiveFor2FA()` exception?
Basically, below is (a part of) my script :
```
w = Woob(backends_filename=decrypted_bck_file)
w.setup_nss()
for account in w.iter_accounts():
assert isinstance(account, Account)
headers_values[account.id] = account.balance
```
`NeedInteractiveFor2FA()` is raised by `w.iter_accounts()`
If I pass silently this exception, I get the secure code on my phone.
I can prompt the user (me actually) to type this code.
But what should I do with this after?
I have cloned woob project from gitlab to investigate the question, but as a half-newbie I am getting lost.
Thank you in advance.https://gitlab.com/woob/woob/-/issues/634[bank][cic] woob.browser.pages.FormNotFound2023-06-14T19:28:04ZErwann[bank][cic] woob.browser.pages.FormNotFoundThis is a template for submitting an issue, fill the blanks and remove non-applicable stuff.
First, read the [frequently asked questions](https://gitlab.com/woob/woob/-/wikis/faq#common-problems).
### With which module do you encounter...This is a template for submitting an issue, fill the blanks and remove non-applicable stuff.
First, read the [frequently asked questions](https://gitlab.com/woob/woob/-/wikis/faq#common-problems).
### With which module do you encounter problems?
### Describe the problem you encounter
### Paste here the stacktrace or error message you observe
```
:~$ woob bank
Welcome to bank v3.6
Copyright(C) 2010-2023 Romain Bignon, Christophe Benz
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Type "help" to display available commands.
Loaded backends: cic
bank> logging debug
bank> list
Bug(cic):
(If --auto-update is passed on the command-line, new versions of the module will be checked automatically)
Traceback (most recent call last):
File "/home/imeneja/.local/lib/python3.10/site-packages/woob/core/bcall.py", line 100, in backend_process
for subresult in result:
File "/home/imeneja/.local/lib/python3.10/site-packages/woob/tools/application/base.py", line 327, in _do_complete_iter
for i, sub in enumerate(res):
File "/home/imeneja/.local/share/woob/modules/3.6/woob_modules/creditmutuel/module.py", line 72, in iter_accounts
for account in self.browser.get_accounts_list():
File "/home/imeneja/.local/lib/python3.10/site-packages/woob/browser/browsers.py", line 1121, in inner
return func(browser, *args, **kwargs)
File "/home/imeneja/.local/share/woob/modules/3.6/woob_modules/creditmutuel/browser.py", line 792, in get_accounts_list
self.page.go_accounts_list()
File "/home/imeneja/.local/share/woob/modules/3.6/woob_modules/creditmutuel/pages.py", line 1894, in go_accounts_list
form = self.get_form(
File "/home/imeneja/.local/lib/python3.10/site-packages/woob/browser/pages.py", line 820, in get_form
raise FormNotFound()
woob.browser.pages.FormNotFound
------------------------------------------+----------+----------
bank> list
Account Balance Coming
------------------------------------------+----------+----------
#1 (cic) C/C Contrat Personnel Glo 123.45
------------------------------------------+----------+----------
Total (EUR) 123.45 0.00
bank>
```
### What are the steps to reproduce the problem?
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.6 Copyright(C) 2010-2023 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module cic |
+-----------------.------------------------------------------------------------'
| Version | 202305231553
| Maintainer | Julien Veyssier <julien.veyssier@aiur.fr>
| License | LGPLv3+
| Description | CIC
| Capabilities | CapTransfer, CapCollection, CapBankMatching, CapBank, CapBankWealth, CapContact, CapDocument, CapProfile, CapBankTransferAddRecipient, CapBankTransfer, CapCredentialsCheck
| Installed | yes
| Location | https://updates.woob.tech/3/main/cic.tar.gz
| |
| Configuration | login: Identifiant (default: )
| | password: Mot de passe (default: )
'-----------------'
```
### How did you install woob?
pip under ubuntu 22.04
I have same issue on other computer
### Additional info you'd like to mention
I have the problem since May 23, 2023.
If I execute list a second time, there is no problemhttps://gitlab.com/woob/woob/-/issues/520[bank][nef] Unable to login2023-04-18T12:56:19ZShikiryu[bank][nef] Unable to loginVia Kresus, I'm trying to login my Nef account which worked since july this year.
Now I have an error in Kresus saying "can't login" but I have this stack trace in logs :
```
2021-12-07 22:29:05,921:DEBUG:woob.backend:modules.py:99:cre...Via Kresus, I'm trying to login my Nef account which worked since july this year.
Now I have an error in Kresus saying "can't login" but I have this stack trace in logs :
```
2021-12-07 22:29:05,921:DEBUG:woob.backend:modules.py:99:create_instance Created backend "nef" for module "nef"
2021-12-07 22:29:05,924:DEBUG:urllib3.util.retry:retry.py:333:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2021-12-07 22:29:05,924:DEBUG:urllib3.util.retry:retry.py:333:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2021-12-07 22:29:05,936:DEBUG:urllib3.connectionpool:connectionpool.py:975:_new_conn Starting new HTTPS connection (1): espace-client.lanef.com:443
2021-12-07 22:29:06,029:DEBUG:urllib3.connectionpool:connectionpool.py:461:_make_request https://espace-client.lanef.com:443 "GET /templates/logon/logon.cfm HTTP/1.1" 200 None
2021-12-07 22:29:06,044:DEBUG:woob.nef.browser:browsers.py:888:internal_callback Handle https://espace-client.lanef.com/templates/logon/logon.cfm with LoginPage
2021-12-07 22:29:06,198:DEBUG:urllib3.connectionpool:connectionpool.py:461:_make_request https://espace-client.lanef.com:443 "POST /templates/logon/checkPasswordMatrixToken.cfm HTTP/1.1" 302 None
2021-12-07 22:29:06,242:DEBUG:urllib3.connectionpool:connectionpool.py:461:_make_request https://espace-client.lanef.com:443 "GET /templates/logon/logon.cfm?logOnError=logon.error.Expired_One_Time_Password HTTP/1.1" 200 None
2021-12-07 22:29:06,251:DEBUG:woob.nef.browser:browsers.py:888:internal_callback Handle https://espace-client.lanef.com/templates/logon/logon.cfm?logOnError=logon.error.Expired_One_Time_Password with LoginPage
```
I'm using current master, commit `78d781677d621b7b38cb92bba157350693653208` Woob 3.1https://gitlab.com/woob/woob/-/issues/491[bank] cic/creditmutuel: please add support for Digipass-based OTP2023-04-09T09:52:46ZCyril Brulebois[bank] cic/creditmutuel: please add support for Digipass-based OTPThe 9b9c64f6d7043c36e587179355d745e39d945e68 commit makes sure users are presented with an error message regarding Digipass, which isn't supported yet.
I'm opening this issue to coordinate efforts around adding support for it.
As far a...The 9b9c64f6d7043c36e587179355d745e39d945e68 commit makes sure users are presented with an error message regarding Digipass, which isn't supported yet.
I'm opening this issue to coordinate efforts around adding support for it.
As far as I can see, when trying to log in using a personal or professional CIC account, the `validation.aspx` page contains the QR code inline, in the following tag:
<img id="qrCodeImage" src="data:image/png;base64,VERY-LONG-STUFF-IN-BASE64">
which I suppose should just be extracted and presented to users with whatever display method is deemed appropriate.
The resulting OTP should be entered in this field:
<input name="otpfull" type="text" maxlength="9" id="otpfull" tabindex="1" class="ei_appl_otpid" placeholder="XXXX XXXX" autofocus="">
This field is connected to a validation event that (based on a very cursory reading) only picks digits, and format them with a space between each group of 4 digits; given the `maxlength` above, it seems exactly 2 groups of 4 digits are expected. So I suppose it would make sense to ensure the OTP entered by the user matches this:
^(\d{4}) ?(\d{4})$
and is sent as:
\1 \2
Feedback/suggestions/acks/nacks appreciated.https://gitlab.com/woob/woob/-/issues/625[CIC] error message "mise à jour de l'extension SConnect"2023-04-07T00:46:54Zkoanya[CIC] error message "mise à jour de l'extension SConnect"### With which module do you encounter problems?
CIC
### Describe the problem you encounter
Since today, when I try to synchronise my CIC account, I have the error message "Unhandled error: 'Attention, une mise à jour de l'extension SCo...### With which module do you encounter problems?
CIC
### Describe the problem you encounter
Since today, when I try to synchronise my CIC account, I have the error message "Unhandled error: 'Attention, une mise à jour de l'extension SConnect, utile à votre connexion Safetrans, vous sera très prochainement proposée. Une fenêtre "Conditions Générales - SConnect" s'affichera pour vous demander l'installation de cette extension. L'acceptation de cette mise à jour est nécessaire. Vos Supports habituels sont à votre disposition en cas de difficultés.'"
I can connect to my account on CIC website.
### Paste here the stacktrace or error message you observe
```
[2023-03-29T11:06:59.536] [INFO] HTTP - DELETE /api/logs - 200 (3 ms)
[2023-03-29T11:07:05.565] [INFO] providers/woob - Calling woob: command operations...
[2023-03-29T11:07:07.042] [INFO] providers/woob - exited with code 1.
[2023-03-29T11:07:07.043] [INFO] providers/woob - Command returned an error code.
[2023-03-29T11:07:07.044] [INFO] providers/woob - Checking that woob is installed and can actually be called…
[2023-03-29T11:07:07.044] [INFO] providers/woob - Calling woob: command test...
[2023-03-29T11:07:07.707] [INFO] providers/woob - exited with code 0.
[2023-03-29T11:07:07.708] [INFO] providers/woob - OK: woob exited normally with non-empty JSON content.
[2023-03-29T11:07:07.708] [ERROR] providers/woob - Got error while running command "operations": Unknown error: Unhandled error: 'Attention, une mise à jour de l'extension SConnect, utile à votre connexion Safetrans, vous sera très prochainement proposée. Une fenêtre "Conditions Générales - SConnect" s'affichera pour vous demander l'installation de cette extension. L'acceptation de cette mise à jour est nécessaire. Vos Supports habituels sont à votre disposition en cas de difficultés.'.
Traceback (most recent call last):
File "/home/kresus/node_modules/kresus/build/server/providers/woob/py/main.py", line 706, in fetch
results['values'] = self.get_operations(from_date)
File "/home/kresus/node_modules/kresus/build/server/providers/woob/py/main.py", line 589, in get_operations
for account in list(self.backend.iter_accounts()):
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/creditmutuel/module.py", line 74, in iter_accounts
for account in self.browser.get_accounts_list():
File "/home/kresus/.local/lib/python3.9/site-packages/woob/tools/backend.py", line 368, in browser
self._browser = self.create_default_browser()
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/cic/module.py", line 54, in create_default_browser
browser = self.create_browser(self.config, woob=self.woob)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/tools/backend.py", line 411, in create_browser
browser.load_state(self.storage.get('browser_state', default={}))
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/creditmutuel/browser.py", line 357, in load_state
super(CreditMutuelBrowser, self).load_state(state)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/mfa.py", line 75, in load_state
super(TwoFactorBrowser, self).load_state(state)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 1084, in load_state
self.locate_browser(state)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 1045, in locate_browser
self.location(state['url'])
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 931, in location
self.page.on_load()
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/creditmutuel/pages.py", line 154, in on_load
assert not error_msg, "Unhandled error: '%s'" % error_msg
AssertionError: Unhandled error: 'Attention, une mise à jour de l'extension SConnect, utile à votre connexion Safetrans, vous sera très prochainement proposée. Une fenêtre "Conditions Générales - SConnect" s'affichera pour vous demander l'installation de cette extension. L'acceptation de cette mise à jour est nécessaire. Vos Supports habituels sont à votre disposition en cas de difficultés.'
[2023-03-29T11:07:07.709] [ERROR] providers/woob - (error code: GENERIC_EXCEPTION)
[2023-03-29T11:07:07.724] [ERROR] helpers - when fetching operations: Unknown error: Unhandled error: 'Attention, une mise à jour de l'extension SConnect, utile à votre connexion Safetrans, vous sera très prochainement proposée. Une fenêtre "Conditions Générales - SConnect" s'affichera pour vous demander l'installation de cette extension. L'acceptation de cette mise à jour est nécessaire. Vos Supports habituels sont à votre disposition en cas de difficultés.'.
Traceback (most recent call last):
File "/home/kresus/node_modules/kresus/build/server/providers/woob/py/main.py", line 706, in fetch
results['values'] = self.get_operations(from_date)
File "/home/kresus/node_modules/kresus/build/server/providers/woob/py/main.py", line 589, in get_operations
for account in list(self.backend.iter_accounts()):
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/creditmutuel/module.py", line 74, in iter_accounts
for account in self.browser.get_accounts_list():
File "/home/kresus/.local/lib/python3.9/site-packages/woob/tools/backend.py", line 368, in browser
self._browser = self.create_default_browser()
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/cic/module.py", line 54, in create_default_browser
browser = self.create_browser(self.config, woob=self.woob)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/tools/backend.py", line 411, in create_browser
browser.load_state(self.storage.get('browser_state', default={}))
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/creditmutuel/browser.py", line 357, in load_state
super(CreditMutuelBrowser, self).load_state(state)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/mfa.py", line 75, in load_state
super(TwoFactorBrowser, self).load_state(state)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 1084, in load_state
self.locate_browser(state)
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 1045, in locate_browser
self.location(state['url'])
File "/home/kresus/.local/lib/python3.9/site-packages/woob/browser/browsers.py", line 931, in location
self.page.on_load()
File "/home/kresus/database/woob-data/modules/3.1/woob_modules/creditmutuel/pages.py", line 154, in on_load
assert not error_msg, "Unhandled error: '%s'" % error_msg
AssertionError: Unhandled error: 'Attention, une mise à jour de l'extension SConnect, utile à votre connexion Safetrans, vous sera très prochainement proposée. Une fenêtre "Conditions Générales - SConnect" s'affichera pour vous demander l'installation de cette extension. L'acceptation de cette mise à jour est nécessaire. Vos Supports habituels sont à votre disposition en cas de difficultés.'
[2023-03-29T11:07:07.724] [INFO] helpers - Error
at new KError (/home/kresus/node_modules/kresus/build/server/helpers.js:59:22)
at callWoob (/home/kresus/node_modules/kresus/build/server/providers/woob/index.js:192:15)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async _fetchHelper (/home/kresus/node_modules/kresus/build/server/providers/woob/index.js:249:16)
at async Object.fetchOperations (/home/kresus/node_modules/kresus/build/server/providers/woob/index.js:274:12)
at async pollTransactions (/home/kresus/node_modules/kresus/build/server/lib/accounts-manager.js:216:34)
at async AccountManager.syncTransactions (/home/kresus/node_modules/kresus/build/server/lib/accounts-manager.js:339:24)
at async fetchOperations (/home/kresus/node_modules/kresus/build/server/controllers/accesses.js:209:37)
[2023-03-29T11:07:07.729] [ERROR] HTTP - POST /api/accesses/1/fetch/operations - 500 (2209 ms)
[2023-03-29T11:07:15.250] [INFO] providers/woob - Calling woob: command version...
[2023-03-29T11:07:15.874] [INFO] providers/woob - exited with code 0.
[2023-03-29T11:07:15.875] [INFO] providers/woob - OK: woob exited normally with non-empty JSON content.
[2023-03-29T11:07:15.883] [INFO] HTTP - GET /api/instance/woob - 200 (636 ms)
```
### What are the steps to reproduce the problem?
Sync a CIC account
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.1 Copyright(C) 2010-2023 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module creditmutuel |
+-----------------.------------------------------------------------------------'
| Version | 202301271123
| Maintainer | Julien Veyssier <julien.veyssier@aiur.fr>
| License | LGPLv3+
| Description | Crédit Mutuel
| Capabilities | CapBankTransferAddRecipient, CapBankMatching, CapBankWealth, CapTransfer, CapBankTransfer, CapContact, CapCollection, CapBank, CapDocument, CapCredentialsCheck, CapProfile
| Installed | yes
| Location | https://updates.woob.tech/3.1/main/creditmutuel.tar.gz
| |
| Configuration | login: Identifiant (default: )
| | password: Mot de passe (default: )
| | resume: None
| | request_information: None
| | code: None
'-----------------'
```
### How did you install woob?
pip
### Additional info you'd like to mention
I use Woob via Kresus. I tried to sync my CIC account with woob bank cli and I had the same errorhttps://gitlab.com/woob/woob/-/issues/604[bank][cic] cannot get balance2023-04-06T12:22:09ZRaspbeguy[bank][cic] cannot get balance### With which module do you encounter problems?
CIC
### Describe the problem you encounter
I can't get my account list or balance, it lists only my card with current month balance
### Paste here the stacktrace or error message you o...### With which module do you encounter problems?
CIC
### Describe the problem you encounter
I can't get my account list or balance, it lists only my card with current month balance
### Paste here the stacktrace or error message you observe
```
bank> list
Account Balance Coming
------------------------------------------+----------+----------
#1 (cic) CB Mastercard XXXXXXXXXXX 0.00 -516.70
------------------------------------------+----------+----------
Total (EUR) 0.00 -516.70
```
### What are the steps to reproduce the problem?
* configure a CIC account
* `woob bank`
* `list`
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.0 Copyright(C) 2010-2022 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module cic |
+-----------------.------------------------------------------------------------'
| Version | 202208081152
| Maintainer | Julien Veyssier <julien.veyssier@aiur.fr>
| License | LGPLv3+
| Description | CIC
| Capabilities | CapBankWealth, CapCredentialsCheck, CapTransfer, CapDocument, CapBank, CapContact, CapCollection, CapBankMatching, CapProfile, CapBankTransferAddRecipient, CapBankTransfer
| Installed | yes
| Location | https://updates.woob.tech/3.0/main/cic.tar.gz
| |
| Configuration | code: None
'-----------------'
```
### How did you install woob?
piphttps://gitlab.com/woob/woob/-/issues/614axabanque fails with 4012023-04-01T15:48:59ZBenoit 'BoD' Lubekaxabanque fails with 401### With which module do you encounter problems?
Bank and axabanque backend
### Describe the problem you encounter
After adding my account and running `list`, I get a 401 error.
### Paste here the stacktrace or error message you obse...### With which module do you encounter problems?
Bank and axabanque backend
### Describe the problem you encounter
After adding my account and running `list`, I get a 401 error.
### Paste here the stacktrace or error message you observe
```
bank> list
Account Balance Coming
------------------------------------------+----------+----------
2023-01-28 14:35:23,593:DEBUG:woob.core.bcall:3.1:bcall.py:91:backend_process <Backend 'axabanque'>: Calling function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7f43d7805820>>
2023-01-28 14:35:23,596:DEBUG:woob.core.bcall:3.1:bcall.py:100:backend_process <Backend 'axabanque'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7f43d7805820>> returned: <generator object Application._do_complete_iter at 0x7f43cf72e900>
2023-01-28 14:35:23,600:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:273:_get_conn Resetting dropped connection: api-banque.axa.fr
2023-01-28 14:35:24,180:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:456:_make_request https://api-banque.axa.fr:443 "GET /distri-account-api/api/v1/persons/me/accounts?types=CHECKING%2CSAVING HTTP/1.1" 401 0
Bug(axabanque): 401 Client Error: Unauthorized
=== [ 0%] Getting https://updates.woob.tech/3.1/main/
2023-01-28 14:35:24,392:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:456:_make_request https://updates.woob.tech:443 "GET /3.1/main/modules.list HTTP/1.1" 200 65766
2023-01-28 14:35:24,489:DEBUG:charset_normalizer:3.1:api.py:436:from_bytes Encoding detection: utf_8 is most likely the one.
Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/core/bcall.py", line 105, in backend_process
for subresult in result:
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/tools/application/base.py", line 330, in _do_complete_iter
for i, sub in enumerate(res):
File "/root/.local/share/woob/modules/3.1/woob_modules/axabanque/browser.py", line 264, in iter_accounts
self.accounts.go(params={'types': 'CHECKING,SAVING'})
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/url.py", line 104, in go
r = self.browser.location(self.build(**kwargs), params=params, data=data, json=json, method=method, headers=headers or {})
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/browsers.py", line 840, in location
response = self.open(*args, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/browsers.py", line 827, in open
return super(PagesBrowser, self).open(callback=internal_callback, *args, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/browsers.py", line 691, in open
return super(DomainBrowser, self).open(req, *args, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/browsers.py", line 396, in open
response = self.session.send(preq,
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/sessions.py", line 165, in send
return func(*args, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/sessions.py", line 158, in func
return callback(self, resp)
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/browsers.py", line 391, in inner_callback
self.raise_for_status(response)
File "/usr/local/lib/python3.9/dist-packages/woob-3.1-py3.9.egg/woob/browser/browsers.py", line 451, in raise_for_status
raise ClientError(http_error_msg, response=response)
woob.browser.exceptions.ClientError: 401 Client Error: Unauthorized
------------------------------------------+----------+----------
```
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.1 Copyright(C) 2010-2023 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module axabanque |
+-----------------.------------------------------------------------------------'
| Version | 202301271123
| Maintainer | Romain Bignon <romain@weboob.org>
| License | LGPLv3+
| Description | AXA Banque
| Capabilities | CapBankWealth, CapTransfer, CapBankTransfer, CapCollection, CapBank, CapDocument, CapCredentialsCheck, CapProfile
| Installed | yes
| Location | https://updates.woob.tech/3.1/main/axabanque.tar.gz
| |
| Configuration | login: Identifiant (default: )
| | password: Code (default: )
| | code: None
| | request_information: None
'-----------------'
```
### How did you install woob?
git clone, done today (2023-01-28)
### Additional info you'd like to mention
Looks like it was working at least 3 few days ago, but I was running an old clone of woob's git (from several months ago). Today I `git pull` and axabanque no longer works for me.https://gitlab.com/woob/woob/-/issues/607[bank][bforbank] Website is unavailable2023-03-29T14:16:27ZGuillaume R[bank][bforbank] Website is unavailable### With which module do you encounter problems?
BforBank
### Describe the problem you encounter
It is no longer possible to authenticate on the BforBank bank.
### Paste here the stacktrace or error message you observe
```
2022-12-2...### With which module do you encounter problems?
BforBank
### Describe the problem you encounter
It is no longer possible to authenticate on the BforBank bank.
### Paste here the stacktrace or error message you observe
```
2022-12-23 11:24:56,121:DEBUG:bcall:3.0:bcall.py:92:backend_process <Backend 'bforbank'>: Calling function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x105457070>>
2022-12-23 11:24:56,125:DEBUG:urllib3.util.retry:3.0:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-12-23 11:24:56,125:DEBUG:urllib3.util.retry:3.0:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-12-23 11:24:56,129:DEBUG:modules:3.0:modules.py:166:load_module Loaded module "spirica" from /Users/xxxxxxxx/.local/share/woob/modules/3.0/spirica
2022-12-23 11:24:56,129:DEBUG:urllib3.util.retry:3.0:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-12-23 11:24:56,129:DEBUG:urllib3.util.retry:3.0:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2022-12-23 11:24:56,130:DEBUG:backend.bforbank.browser:3.0:woob_browser_mfa.py:59:_load_cookies Reloaded cookies from storage
2022-12-23 11:24:56,131:DEBUG:urllib3.connectionpool:3.0:connectionpool.py:1003:_new_conn Starting new HTTPS connection (1): client.bforbank.com:443
2022-12-23 11:24:56,254:DEBUG:urllib3.connectionpool:3.0:connectionpool.py:456:_make_request https://client.bforbank.com:443 "GET /connexion-client/service/login?urlBack=%2Fespace-client HTTP/1.1" 200 None
2022-12-23 11:24:56,255:DEBUG:backend.bforbank.browser:3.0:browsers.py:880:internal_callback Handle https://client.bforbank.com/connexion-client/service/login?urlBack=%2Fespace-client with LoginPage
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 194
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 226
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 220
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,260:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 218
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 222
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 206
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 172
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,267:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 217
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 137
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IHDR' 16 13
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'pHYs' 41 9
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'cHRM' 62 32
2022-12-23 11:24:56,268:DEBUG:PIL.PngImagePlugin:3.0:PngImagePlugin.py:201:call STREAM b'IDAT' 106 200
2022-12-23 11:24:56,374:DEBUG:urllib3.connectionpool:3.0:connectionpool.py:456:_make_request https://client.bforbank.com:443 "POST /connexion-client/service/auth HTTP/1.1" 200 2280
2022-12-23 11:24:56,379:DEBUG:backend.bforbank.browser:3.0:browsers.py:894:internal_callback Unable to handle https://client.bforbank.com/connexion-client/service/auth
2022-12-23 11:24:56,379:DEBUG:bcall:3.0:bcall.py:98:backend_process <Backend 'bforbank'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x105457070>> raised an error: BrowserUnavailable()
Error(bforbank): Website is unavailable.
```
### What are the steps to reproduce the problem?
```
woob bank
logging debug
ls
```
### What woob version are you using?
Output of `woob config --version` command:
```
Woob config v3.0 Copyright(C) 2010-2022 Christophe Benz, Romain Bignon
```
### What module version are you using?
Output of `woob config info MODULE_NAME` command:
```
.------------------------------------------------------------------------------.
| Module bforbank |
+-----------------.------------------------------------------------------------'
| Version | 202207130105
| Maintainer | Baptiste Delpey <b.delpey@hotmail.fr>
| License | LGPLv3+
| Description | BforBank
| Capabilities | CapBank, CapCredentialsCheck, CapBankWealth, CapProfile, CapCollection
| Installed | yes
| Location | https://updates.woob.tech/3.0/main/bforbank.tar.gz
| |
| Configuration | login: Identifiant (default: )
| | password: Code personnel (default: )
| | birthdate: Date de naissance
| | code: None
| | request_information: None
'-----------------'
```
### How did you install woob?
with brew
### Additional info you'd like to mention
I'm on macOS Monterey 12.6.1https://gitlab.com/woob/woob/-/issues/613[bank][humanis] invalid login/password2023-03-29T14:15:13ZBenoit M[bank][humanis] invalid login/passwordHumanis seem to bee broken .
Account and password are ok on Humanis / Epsens : I could sign in with my account / password on a regular browser https://www.gestion-epargne-salariale.fr/epsens/fr/identification/authentification.html
`...Humanis seem to bee broken .
Account and password are ok on Humanis / Epsens : I could sign in with my account / password on a regular browser https://www.gestion-epargne-salariale.fr/epsens/fr/identification/authentification.html
```
woob bank --debug --auto-update -b humanis
Unable to load formatter "table": No module named 'prettytable'
Falling back to "multiline".
2023-01-22 19:20:01,807:DEBUG:woob.config:3.1:yamlconfig.py:74:load Loading configuration file: /home/ben/.config/woob/bank.storage.
2023-01-22 19:20:01,810:DEBUG:woob.config:3.1:yamlconfig.py:78:load Configuration file loaded: /home/ben/.config/woob/bank.storage.
2023-01-22 19:20:01,841:DEBUG:woob.core.modules.loader:3.1:modules.py:182:load_module Loaded module "humanis" from /home/ben/.local/share/woob/modules/3.1/woob_modules/humanis
2023-01-22 19:20:01,841:DEBUG:woob.backend:3.1:modules.py:98:create_instance Created backend "humanis" for module "humanis"
2023-01-22 19:20:01,842:DEBUG:woob.config:3.1:iniconfig.py:45:load Loading application configuration file: /home/ben/.config/woob/bank.
2023-01-22 19:20:01,842:DEBUG:woob.config:3.1:iniconfig.py:62:load Application configuration file loaded: /home/ben/.config/woob/bank.
Welcome to bank v3.1
Copyright(C) 2010-2023 Romain Bignon, Christophe Benz
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Type "help" to display available commands.
Loaded backends: humanis
bank> list
Account Balance Coming
------------------------------------------+----------+----------
2023-01-22 19:21:06,906:DEBUG:woob.core.bcall:3.1:bcall.py:91:backend_process <Backend 'humanis'>: Calling function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7f1fc58ac970>>
2023-01-22 19:21:06,907:DEBUG:urllib3.util.retry:3.1:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2023-01-22 19:21:06,908:DEBUG:urllib3.util.retry:3.1:retry.py:351:from_int Converted retries value: 2 -> Retry(total=2, connect=None, read=None, redirect=None, status=None)
2023-01-22 19:21:06,911:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:1004:_new_conn Starting new HTTPS connection (1): www.gestion-epargne-salariale.fr:443
2023-01-22 19:21:07,427:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://www.gestion-epargne-salariale.fr:443 "GET /epsens/fr/identification/authentification.html HTTP/1.1" 200 None
2023-01-22 19:21:07,442:DEBUG:woob.backend.humanis.browser:3.1:browsers.py:892:internal_callback Handle https://www.gestion-epargne-salariale.fr/epsens/fr/identification/authentification.html with LoginPage
2023-01-22 19:21:07,632:DEBUG:urllib3.connectionpool:3.1:connectionpool.py:457:_make_request https://www.gestion-epargne-salariale.fr:443 "POST /epsens/fr/identification/authentification.html HTTP/1.1" 200 None
2023-01-22 19:21:07,636:DEBUG:woob.backend.humanis.browser:3.1:browsers.py:892:internal_callback Handle https://www.gestion-epargne-salariale.fr/epsens/fr/identification/authentification.html with LoginPage
2023-01-22 19:21:07,636:DEBUG:woob.core.bcall:3.1:bcall.py:97:backend_process <Backend 'humanis'>: Called function <bound method Application._do_complete of <woob.applications.bank.bank.Appbank object at 0x7f1fc58ac970>> raised an error: BrowserIncorrectPassword()
Error(humanis): invalid login/password.
```