diff --git a/weboob/core/modules.py b/weboob/core/modules.py index 4baa31465ed62883a743656e805a9a04e89de950..ce1cf288c125143592ac6c9169c499ee5695635a 100644 --- a/weboob/core/modules.py +++ b/weboob/core/modules.py @@ -104,12 +104,12 @@ def __init__(self): self.logger = getLogger('modules') def get_or_load_module(self, module_name): + """ + Can raise a ModuleLoadError exception. + """ if module_name not in self.loaded: self.load_module(module_name) - if module_name in self.loaded: - return self.loaded[module_name] - else: - return None + return self.loaded[module_name] def iter_existing_module_names(self): try: @@ -134,7 +134,7 @@ def load_module(self, module_name): try: package_name = 'weboob.backends.%s' % module_name module = Module(__import__(package_name, fromlist=[str(package_name)])) - except ImportError, e: + except Exception, e: if self.logger.level == logging.DEBUG: self.logger.exception(e) raise ModuleLoadError(module_name, e)