mirror of
https://github.com/mikf/gallery-dl.git
synced 2024-11-22 10:42:34 +01:00
new method to import downloaders
This commit is contained in:
parent
21a6416737
commit
352950eebe
@ -1 +1,27 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# Copyright 2015 Mike Fährmann
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License version 2 as
|
||||||
|
# published by the Free Software Foundation.
|
||||||
|
|
||||||
|
import importlib
|
||||||
|
|
||||||
|
def find(scheme):
|
||||||
|
"""Return downloader class suitable for handling the given scheme"""
|
||||||
|
try:
|
||||||
|
return _cache[scheme]
|
||||||
|
except KeyError:
|
||||||
|
try:
|
||||||
|
module = importlib.import_module("."+scheme, __package__)
|
||||||
|
klass = getattr(module, "Downloader")
|
||||||
|
_cache[scheme] = klass
|
||||||
|
return klass
|
||||||
|
except ImportError:
|
||||||
|
return None
|
||||||
|
|
||||||
|
# --------------------------------------------------------------------
|
||||||
|
# internals
|
||||||
|
|
||||||
|
_cache = {}
|
||||||
|
Loading…
Reference in New Issue
Block a user