Utilisateur·ice·s de Kresus

Migration vers PosgreSQL : Unexpected UTF-8 BOM

Bonsoir,
je viens de migrer sur postgreSQL et j’ai rencontré cette erreur lors de la récupération des transaction de ma banque HelloBanque.

[2020-02-02T21:49:36.642] [ERROR] sources/weboob - (error code: GENERIC_EXCEPTION)
[2020-02-02T21:49:36.756] [ERROR] helpers - when fetching operations: Unknown error: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0).
Traceback (most recent call last):
File « /home/kresus/app_20200202/build/server/weboob/main.py », line 678, in fetch
results[‹ values ›] = self.get_operations(from_date)
File « /home/kresus/app_20200202/build/server/weboob/main.py », line 561, in get_operations
for account in list(self.backend.iter_accounts()):
File « /home/kresus/.kresus/weboob-data/modules/1.6/bnporc/module.py », line 97, in iter_accounts
return self.browser.iter_accounts()
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 817, in inner
browser.do_login()
File « /home/kresus/.kresus/weboob-data/modules/1.6/bnporc/pp/browser.py », line 159, in do_login
self.page.login(self.username, self.password)
File « /home/kresus/.kresus/weboob-data/modules/1.6/bnporc/pp/pages.py », line 254, in login
response = self.browser.location(target, data={‹ AUTH ›: auth, ‹ CSRF ›: csrf})
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 755, in location
self.page.on_load()
File « /home/kresus/.kresus/weboob-data/modules/1.6/bnporc/pp/pages.py », line 215, in on_load
error_page = self.browser.list_error_page.open()
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/url.py », line 113, in open
r = self.browser.open(self.build(**kwargs), params=params, data=data, method=method, headers=headers or {}, is_async=is_async, callback=callback)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/tools/decorators.py », line 38, in f_retry
return f(*args, **kwargs)
File « /home/kresus/.kresus/weboob-data/modules/1.6/bnporc/pp/browser.py », line 151, in open
return super(BNPParibasBrowser, self).open(*args, **kwargs)
File « /home/kresus/.kresus/weboob-data/modules/1.6/bnporc/pp/browser.py », line 75, in open
return super(JsonBrowserMixin, self).open(*args, **kwargs)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 734, in open
return super(PagesBrowser, self).open(callback=internal_callback, *args, **kwargs)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 626, in open
return super(DomainBrowser, self).open(req, *args, **kwargs)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 378, in open
is_async=is_async)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/sessions.py », line 162, in send
return func(*args, **kwargs)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/sessions.py », line 155, in func
return callback(self, resp)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 367, in inner_callback
return callback(response)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 714, in internal_callback
response.page = url.handle(response)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/url.py », line 184, in handle
page = self.klass(self.browser, response, m.groupdict())
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/pages.py », line 157, in init
self.doc = self.build_doc(self.data)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/pages.py », line 464, in build_doc
return json.loads(text)
File « /usr/lib/python3.5/json/init.py », line 315, in loads
s, 0)
json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)

J’ai la dernière version de weboob (1.6) et même en mettant mes modules à jour, j’ai toujours cette erreur.

J’ai un autre compte BNP Paribas et je n’ai pas cette erreur.

Est ce que cela viendrais de la migration ? lors d’un premier essai j’ai une cette erreur

[2020-02-02T19:21:46.792] [ERROR] init - Error at initialization:
Message: database « kresus_db » does not exist
error: database « kresus_db » does not exist

Et j’ai créé une base vide vec les paramètre par défaut :

Merci poour votre aide

Bonjour @Olivier !

Je doute personnellement que les deux erreurs soient liées.
Est-il possible d’avoir les logs qui suivent error: database « kresus_db » does not exist pour voir comment se comporte l’app par la suite ?
Tu avais bien créé la base avant de lancer Kresus donc (désolé si la question peut paraître bête) ?

Bonsoir @nicofrand,

voici les logs:
1ère tentative sans créer la base, juste en indiquant le nom de la base, du user et l’adresse du serveur BDD dans le config.ini

[2020-02-02T19:21:46.792] [ERROR] init - Error at initialization:
Message: database « kresus_db » does not exist
error: database « kresus_db » does not exist
at Connection.parseE (/home/kresus/app_20200202/node_modules/pg/lib/connection.js:604:13)
at Connection.parseMessage (/home/kresus/app_20200202/node_modules/pg/lib/connection.js:403:19)
at Socket. (/home/kresus/app_20200202/node_modules/pg/lib/connection.js:123:22)
at Socket.emit (events.js:198:13)
at addChunk (_stream_readable.js:288:12)
at readableAddChunk (_stream_readable.js:269:11)
at Socket.Readable.push (_stream_readable.js:224:10)
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
[2020-02-02T19:24:31.484] [INFO] HTTP - GET / - 200 (51 ms)
[2020-02-02T19:24:31.554] [INFO] HTTP - GET /main.css - 200 (20 ms)
[2020-02-02T19:24:31.586] [INFO] HTTP - GET /main.js - 200 (47 ms)
[2020-02-02T19:24:31.900] [INFO] HTTP - GET /themes.json - 200 (8 ms)
[2020-02-02T19:24:31.913] [ERROR] helpers - when loading all data: No repository for « Account » was found. Looks like this entity is not registered in current « default » connection?
[2020-02-02T19:24:31.916] [INFO] helpers - RepositoryNotFoundError: No repository for « Account » was found. Looks like this entity is not registered in current « default » connection?
at new RepositoryNotFoundError (/home/kresus/app_20200202/node_modules/typeorm/error/RepositoryNotFoundError.js:11:28)
at EntityManager.getRepository (/home/kresus/app_20200202/node_modules/typeorm/entity-manager/EntityManager.js:555:19)
at Connection.getRepository (/home/kresus/app_20200202/node_modules/typeorm/connection/Connection.js:343:29)
at Object.getRepository (/home/kresus/app_20200202/node_modules/typeorm/index.js:280:55)
at repo (/home/kresus/app_20200202/build/server/models/entities/accounts.js:186:26)
at Function.all (/home/kresus/app_20200202/build/server/models/entities/accounts.js:87:22)
at getAllData (/home/kresus/app_20200202/build/server/controllers/v1/all.js:33:45)
at all (/home/kresus/app_20200202/build/server/controllers/v1/all.js:70:25)
at Layer.handle [as handle_request] (/home/kresus/app_20200202/node_modules/express/lib/router/layer.js:95:5)
at next (/home/kresus/app_20200202/node_modules/express/lib/router/route.js:137:13)
[2020-02-02T19:24:31.934] [ERROR] HTTP - GET /api/v1/all/ - 500 (37 ms)
[2020-02-02T19:24:31.947] [INFO] HTTP - GET /favicon/favicon-192x192.png - 200 (3 ms)
[2020-02-02T19:30:57.299] [INFO] apply-config - Running Kresus with the following parameters:
[2020-02-02T19:30:57.310] [INFO] apply-config - NODE_ENV = production
[2020-02-02T19:30:57.311] [INFO] apply-config - KRESUS_LOGIN = user


une 2e tentative ou j’ai du avoir la même erreur :

[2020-02-02T19:30:57.329] [INFO] apply-config - KRESUS_DB_USERNAME = kresus_db
[2020-02-02T19:30:57.330] [INFO] apply-config - KRESUS_DB_PASSWORD = (hidden)
[2020-02-02T19:30:57.330] [INFO] apply-config - KRESUS_DB_NAME = kresus_db
[2020-02-02T19:30:58.647] [WARN] notifications - Notification module is NYI.
[2020-02-02T19:30:59.044] [ERROR] init - Error at initialization:
Message: database « kresus_db » does not exist
error: database « kresus_db » does not exist
at Connection.parseE (/home/kresus/app_20200202/node_modules/pg/lib/connection.js:604:13)
at Connection.parseMessage (/home/kresus/app_20200202/node_modules/pg/lib/connection.js:403:19)
at Socket. (/home/kresus/app_20200202/node_modules/pg/lib/connection.js:123:22)
at Socket.emit (events.js:198:13)
at addChunk (_stream_readable.js:288:12)
at readableAddChunk (_stream_readable.js:269:11)
at Socket.Readable.push (_stream_readable.js:224:10)
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
[2020-02-02T19:34:19.944] [INFO] apply-config - Running Kresus with the following parameters:
[2020-02-02T19:34:19.954] [INFO] apply-config - NODE_ENV = production
[2020-02-02T19:34:19.955] [INFO] apply-config - KRESUS_LOGIN = user


et la dernière tentative après avoir créé une base vide. J’ai caviardé certaines infos de log sur mes comptes.
J’ai d’autres erreurs sur d’autres moduels (Banque Postal et Amex) mais pour moi ce n’est pas la priorité. C’est le module Hello Bank qui est pour moi prio.

[2020-02-02T19:34:19.973] [INFO] apply-config - KRESUS_DB_USERNAME = kresus_db
[2020-02-02T19:34:19.974] [INFO] apply-config - KRESUS_DB_PASSWORD = (hidden)
[2020-02-02T19:34:19.975] [INFO] apply-config - KRESUS_DB_NAME = kresus_db
[2020-02-02T19:34:21.288] [WARN] notifications - Notification module is NYI.
[2020-02-02T19:34:23.896] [INFO] models/index - Creating default user…
[2020-02-02T19:34:23.897] [INFO] models/index - User has id 1
[2020-02-02T19:34:23.980] [INFO] models/index - Checking if the migration from CozyDB is required… yes
[2020-02-02T19:34:24.400] [INFO] models/index - Migrating from CozyDB…
[2020-02-02T19:36:08.182] [INFO] controllers/all - Importing:
accesses: xx
accounts: xx
alerts: xx
budgets: xx
categories: xx
operation-types: xx
settings: xx
operations: xx

[2020-02-02T19:36:08.184] [INFO] controllers/all - Import accesses…
[2020-02-02T19:36:09.551] [INFO] controllers/all - Done.
[2020-02-02T19:36:09.553] [INFO] controllers/all - Import accounts…
[2020-02-02T19:36:10.419] [INFO] controllers/all - Done.
[2020-02-02T19:36:10.420] [INFO] controllers/all - Import categories…
[2020-02-02T19:36:13.870] [INFO] controllers/all - Done.
[2020-02-02T19:36:13.871] [INFO] controllers/all - Import budgets…
[2020-02-02T19:36:26.843] [INFO] controllers/all - Done.
[2020-02-02T19:36:26.844] [INFO] controllers/all - Import transactions…
[2020-02-02T19:36:27.065] [INFO] models/helpers - bulk insert: inserting all at once
[2020-02-02T19:36:29.683] [INFO] controllers/all - Done.
[2020-02-02T19:36:29.683] [INFO] controllers/all - Import settings…
[2020-02-02T19:36:30.617] [INFO] controllers/all - Done.
[2020-02-02T19:36:30.619] [INFO] controllers/all - Import alerts…
[2020-02-02T19:36:30.620] [INFO] controllers/all - Done.
[2020-02-02T19:36:30.622] [INFO] models/index - Migrating from CozyDB done!
[2020-02-02T19:36:30.745] [INFO] init - Starting bank accounts polling et al…
[2020-02-02T19:36:30.768] [INFO] poller - > Next check of accounts on 03/02/2020 at 03:32:00
[2020-02-02T19:36:30.774] [INFO] poller - Checking accounts and operations for all accesses…
[2020-02-02T19:36:30.800] [INFO] accounts-manager - Retrieve all accounts from access bp with login *******xxx
[2020-02-02T19:36:30.806] [INFO] sources/weboob - Calling weboob: command accounts…
[2020-02-02T19:36:30.808] [INFO] sources/weboob - Weboob will be updated prior to command « accounts »
[2020-02-02T19:36:34.158] [INFO] sources/weboob - exited with code 1.
[2020-02-02T19:36:34.159] [INFO] sources/weboob - Command returned an error code.
[2020-02-02T19:36:34.162] [INFO] sources/weboob - Checking that weboob is installed and can actually be called…
[2020-02-02T19:36:34.163] [INFO] sources/weboob - Calling weboob: command test…
[2020-02-02T19:36:35.172] [INFO] sources/weboob - exited with code 0.
[2020-02-02T19:36:35.173] [INFO] sources/weboob - OK: weboob exited normally with non-empty JSON content.
[2020-02-02T19:36:35.174] [ERROR] sources/weboob - Got error while running command « accounts »: Unable to load module bp.
Traceback (most recent call last):
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/modules.py », line 152, in load_module
module = LoadedModule(imp.load_module(module_name, fp, pathname, description))
File « /usr/lib/python3.5/imp.py », line 244, in load_module
return load_package(name, filename)
File « /usr/lib/python3.5/imp.py », line 216, in load_package
return _load(spec)
File «  », line 693, in _load
File «  », line 673, in _load_unlocked
File «  », line 673, in exec_module
File «  », line 222, in _call_with_frames_removed
File « /home/kresus/.kresus/weboob-data/modules/1.6/bp/init.py », line 20, in
from .module import BPModule
File « /home/kresus/.kresus/weboob-data/modules/1.6/bp/module.py », line 34, in
from .browser import BPBrowser, BProBrowser
File « /home/kresus/.kresus/weboob-data/modules/1.6/bp/browser.py », line 32, in
from weboob.exceptions import (
ImportError: cannot import name ‹ AppValidationCancelled ›

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File « /home/kresus/app_20200202/build/server/weboob/main.py », line 874, in main
weboob_connector.create_backend(bank_module, params, session)
File « /home/kresus/app_20200202/build/server/weboob/main.py », line 502, in create_backend
storage=self.storage
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/ouiboube.py », line 430, in build_backend
return super(Weboob, self).build_backend(module_name, params, storage, name, nofail)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/ouiboube.py », line 116, in build_backend
module = self.modules_loader.get_or_load_module(module_name)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/modules.py », line 117, in get_or_load_module
self.load_module(module_name)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/modules.py », line 159, in load_module
raise ModuleLoadError(module_name, e)
weboob.exceptions.ModuleLoadError: cannot import name ‹ AppValidationCancelled ›

[2020-02-02T19:36:35.177] [ERROR] sources/weboob - (error code: UNKNOWN_WEBOOB_MODULE)
[2020-02-02T19:36:35.285] [ERROR] poller - Error when polling accounts: Unable to load module bp.
Traceback (most recent call last):
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/modules.py », line 152, in load_module
module = LoadedModule(imp.load_module(module_name, fp, pathname, description))
File « /usr/lib/python3.5/imp.py », line 244, in load_module
return load_package(name, filename)
File « /usr/lib/python3.5/imp.py », line 216, in load_package
return _load(spec)
File «  », line 693, in _load
File «  », line 673, in _load_unlocked
File «  », line 673, in exec_module
File «  », line 222, in _call_with_frames_removed
File « /home/kresus/.kresus/weboob-data/modules/1.6/bp/init.py », line 20, in
from .module import BPModule
File « /home/kresus/.kresus/weboob-data/modules/1.6/bp/module.py », line 34, in
from .browser import BPBrowser, BProBrowser
File « /home/kresus/.kresus/weboob-data/modules/1.6/bp/browser.py », line 32, in
from weboob.exceptions import (
ImportError: cannot import name ‹ AppValidationCancelled ›

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File « /home/kresus/app_20200202/build/server/weboob/main.py », line 874, in main
weboob_connector.create_backend(bank_module, params, session)
File « /home/kresus/app_20200202/build/server/weboob/main.py », line 502, in create_backend
storage=self.storage
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/ouiboube.py », line 430, in build_backend
return super(Weboob, self).build_backend(module_name, params, storage, name, nofail)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/ouiboube.py », line 116, in build_backend
module = self.modules_loader.get_or_load_module(module_name)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/modules.py », line 117, in get_or_load_module
self.load_module(module_name)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/core/modules.py », line 159, in load_module
raise ModuleLoadError(module_name, e)
weboob.exceptions.ModuleLoadError: cannot import name ‹ AppValidationCancelled ›

Error
at new KError (/home/kresus/app_20200202/build/server/helpers.js:49:18)
at ChildProcess.script.on.code (/home/kresus/app_20200202/build/server/lib/sources/weboob.js:122:31)
at ChildProcess.emit (events.js:198:13)
at maybeClose (internal/child_process.js:982:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
[2020-02-02T19:36:35.292] [INFO] accounts-manager - Retrieve all accounts from access bnporc with login *******xxx
[2020-02-02T19:36:35.296] [INFO] sources/weboob - Calling weboob: command accounts…
[2020-02-02T19:36:35.297] [INFO] sources/weboob - Weboob will be updated prior to command « accounts »
[2020-02-02T19:36:39.497] [INFO] sources/weboob - exited with code 1.
[2020-02-02T19:36:39.498] [INFO] sources/weboob - Command returned an error code.
[2020-02-02T19:36:39.499] [INFO] sources/weboob - Checking that weboob is installed and can actually be called…
[2020-02-02T19:36:39.500] [INFO] sources/weboob - Calling weboob: command test…
[2020-02-02T19:36:40.507] [INFO] sources/weboob - exited with code 0.
[2020-02-02T19:36:40.508] [INFO] sources/weboob - OK: weboob exited normally with non-empty JSON content.
[2020-02-02T19:36:40.509] [ERROR] sources/weboob - Got error while running command « accounts »: Unknown error: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0).

Merci

Il s’est bien passé quelque chose lors de la migration.

Je suis revenu sur une version précédente de kresus (15.1) avec mon ancienne base et j’avais encore cette erreur de BOM.

J’avais fait une archive de ma base avant la migration et j’ai restauré cette archive. Depuis je n’ai plus cette erreur même après resynchro.

Je vais réinstaller à part la nouvelle version de kresus et faire d’autres essai sans toucher à ma version actuelle.

Merci.

Ce que je ne comprends pas c’est qu’entre 19h21 et 19h24 il n’y a rien. À 19h21 l’appli ne devrait plus du tout tourner, ne pas répondre aux requêtes http ni rien. Je n’explique pas que tu aies quelque chose à 19h24.
Est-ce que tu as supprimé une partie des logs entre ces deux-là ?

Sinon il y a deux soucis weboob : un d’import de module, et un concernant le BOM.

Pour le BOM est-ce qu’en repartant sur la 0.15 tu n’aurais pas aussi remis une ancienne version des modules weboob ou du core weboob par hasard ?

Quand tu dis « même après synchro » ça comporte une mise à jour des modules weboob et/ou du côté ?

Merci pour tes précieux retours

J’avais lancé kresus dans une console et pas dans un service et entre les 2 j’ai du arrêter. Donc c’est normal qu’il y ait eu interruption.

J’ai plusieurs soucis sur les modules weboob, un soucis sur module la banque postal, un soucis sur un module american express et enfin un soucis de BOM sur le module hellobank.

Désolé pour le terme de « synchro », je parle de la récupération des opérations bancaires de mon compte.

Pour le BOM, peut être que je suis repartis sur une vieille version de weboob. Il faut que je refasse un nouvel essai avec mon archive.

Actuellement la version 0.151 que j’ai marche (à par les 2 problèmes sur les modules amex et la banque postal )

Merci pour ton temps pour ce soir, je reprendrais mes tests pour demain.

D’accord merci.

On va y aller par étapes… Pour le souci avec bp et le weboob.exceptions.ModuleLoadError: cannot import name "AppValidationCancelled", je suspecte que le core weboob n’est pas à jour. Peux-tu vérifier que dans /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/exceptions.py tu as bien une classe AppValidationCancelled comme ici : https://git.weboob.org/weboob/weboob/blob/master/weboob/exceptions.py#L84 ? Ça a été ajouté il y a deux mois https://git.weboob.org/weboob/weboob/commit/fdacdae83f5e5a9e8b5178321d921aaf49db2cce

Concernant le module bp, je ne devais pas avoir weboob à jour. J’ai mis à jour et maintenant j’ai une nouvelle erreur.

[2020-02-04T21:52:35.205] [ERROR] sources/weboob - (error code: GENERIC_EXCEPTION)
[2020-02-04T21:52:35.246] [ERROR] helpers - when fetching operations: Unknown error: invalid syntax (converter.py, line 120).
Traceback (most recent call last):
File « /home/kresus/app_20191112/build/server/weboob/main.py », line 669, in fetch
results[‹ values ›] = self.get_operations(from_date)
File « /home/kresus/app_20191112/build/server/weboob/main.py », line 561, in get_operations
for account in list(self.backend.iter_accounts()):
File « /home/kresus/kresus_db/weboob-data/modules/1.6/bp/module.py », line 74, in iter_accounts
return self.browser.get_accounts_list()
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/browsers.py », line 824, in inner
return func(browser, *args, **kwargs)
File « /home/kresus/kresus_db/weboob-data/modules/1.6/bp/browser.py », line 363, in get_accounts_list
for account in self.page.iter_accounts(name=owner_name):
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/elements.py », line 214, in iter
for obj in item:
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/elements.py », line 357, in iter
self.handle_attr(attr, getattr(self, ‹ obj_%s › % attr))
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/elements.py », line 374, in handle_attr
value = self.use_selector(func, key=key)
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/browser/elements.py », line 128, in use_selector
value = func()
File « /home/kresus/kresus_db/weboob-data/modules/1.6/bp/pages/accountlist.py », line 142, in obj_iban
return response.page.get_iban()
File « /home/kresus/kresus_db/weboob-data/modules/1.6/bp/pages/accountlist.py », line 421, in get_iban
m = re.search(self.iban_regexp, extract_text(self.data))
File « /home/kresus/.local/lib/python3.5/site-packages/weboob-1.6-py3.5.egg/weboob/tools/pdf.py », line 512, in extract_text
from pdfminer.converter import TextConverter
File « /usr/local/lib/python3.5/dist-packages/pdfminer/converter.py », line 120
return f’(cid:{cid})’
^
SyntaxError: invalid syntax

[2020-02-04T21:52:35.246] [INFO] helpers - Error
at new KError (/home/kresus/app_20191112/build/server/helpers.js:82:16)
at ChildProcess.script.on.code (/home/kresus/app_20191112/build/server/lib/sources/weboob.js:182:23)
at ChildProcess.emit (events.js:198:13)
at maybeClose (internal/child_process.js:982:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
[2020-02-04T21:52:35.253] [ERROR] HTTP - GET /api/v1/accesses/*****************************0f7/fetch/operations - 500 (5631 ms)
[2020-02-04T21:53:03.509] [INFO] sources/weboob - Calling weboob: command version…
[2020-02-04T21:53:04.603] [INFO] sources/weboob - exited with code 0.
[2020-02-04T21:53:04.604] [INFO] sources/weboob - OK: weboob exited normally with non-empty JSON content.
[2020-02-04T21:53:04.608] [INFO] HTTP - GET /api/v1/settings/weboob - 304 (1101 ms)
[2020-02-04T21:53:06.187] [INFO] HTTP - GET /api/v1/logs - 200 (481 ms)

j’ai essayé de refaire une nouvelle migration avec ma base archivée et j’ai encore la même erreur de BOM.

Lorsque tu restaures ta base archivée, est-ce que tu restauras également weboob et/ou ses modules ?
As-tu essayé avec weboob à jour + les modules à jour (tu peux mettre à jour les modules depuis l’interface dans « Administration ») ?

Peux tu me donner le résultat de :

pip show pdfminer

et

pip show pdfminer-six

Je suspecte le problème de bp d’être lié à une version de pdfminer non à jour (si possible utilise pdfminer-six, et à jour).

oups mon message précédent est resté dans mon brouillon

Je n’en était pas sur vu que par défaut les modules sont dans le répertoire de la base.

J’ai créé une nouvelle archive après avoir mis à jour mes modules sur ma version actuelle de kresus où je n’ai pas ce problème de BOM, puis j’ai relancé une nouvelle migration en repartant d’une base vide sur postgre avec cette nouvelle archive en source.
J’ai le même problème.

pour pdf miner j’ai :

$ pip show pdfminer
Name: pdfminer
Version: 20191016
Summary: PDF parser and analyzer
Home-page: http://github.com/euske/pdfminer
Author: Yusuke Shinyama
Author-email: yusuke@shinyama.jp
License: MIT
Location: /usr/local/lib/python3.5/dist-packages
Requires: pycryptodome
Required-by:

je n’ai pas pdfminer-six mais aprés instalation

$ pip show pdfminer-six
Name: pdfminer.six
Version: 20200124
Summary: PDF parser and analyzer
Home-page: https://github.com/pdfminer/pdfminer.six
Author: Yusuke Shinyama + Philippe Guglielmetti
Author-email: pdfminer@goulu.net
License: MIT/X
Location: /home/kresus/.local/lib/python3.5/site-packages
Requires: sortedcontainers, chardet, pycryptodome
Required-by:

comment remplacer pdfminer par pdfminer-six ?

Je vais m’absenter pendant 1 semaine ou j’aurais peu d’accès à internet.
D’ici là je vais essayer de faire une migration vers sqllite pour voir ce que ça donne.

Je vais essayer aussi de partir d’un kresus avec une base vierge et importer un backup JSON.

Merci encore pour ton aide.

Je dirais que pip uninstall pdfminer devrait suffire.

Bonne idée pour SQLite, je suis curieux du résultat.
La migration est faite via un outil npm, kresus-export-cozydb, si tu le souhaites tu peux aussi voir le JSON qui est créé avant d’être importé dans la nouvelle base de données avec cette commande qui crée un fichier dans /tmp appelé output.json à partir du fichier config.ini de ton kresus :

npm install --production --prefix=/tmp kresus-export-cozydb && /tmp/node_modules/kresus-export-cozydb/bin/export.js -c config.ini -o /tmp/output.json