[ytdl] ignore SyntaxErrors when trying to import a module

This commit is contained in:
Mike Fährmann
2024-08-29 19:28:08 +02:00
parent cf8e04d999
commit 127aa45834
3 changed files with 5 additions and 4 deletions

View File

@@ -42,8 +42,9 @@ class YoutubeDLDownloader(DownloaderBase):
if not ytdl_instance:
try:
module = ytdl.import_module(self.config("module"))
except ImportError as exc:
self.log.error("Cannot import module '%s'", exc.name)
except (ImportError, SyntaxError) as exc:
self.log.error("Cannot import module '%s'",
getattr(exc, "name", ""))
self.log.debug("", exc_info=True)
self.download = lambda u, p: False
return False

View File

@@ -18,7 +18,7 @@ def import_module(module_name):
if module_name is None:
try:
return __import__("yt_dlp")
except ImportError:
except (ImportError, SyntaxError):
return __import__("youtube_dl")
return __import__(module_name.replace("-", "_"))