[Plugins] Prioritize plugins over standard extractors
and prevent plugins from overwriting the standard extractor classes Closes #304
This commit is contained in:
parent
000ee7ef34
commit
2f567473c6
2 changed files with 7 additions and 5 deletions
|
|
@ -6081,7 +6081,7 @@ def get_executable_path():
|
|||
return os.path.abspath(path)
|
||||
|
||||
|
||||
def load_plugins(name, type, namespace):
|
||||
def load_plugins(name, suffix, namespace):
|
||||
plugin_info = [None]
|
||||
classes = []
|
||||
try:
|
||||
|
|
@ -6089,7 +6089,9 @@ def load_plugins(name, type, namespace):
|
|||
name, [os.path.join(get_executable_path(), 'ytdlp_plugins')])
|
||||
plugins = imp.load_module(name, *plugin_info)
|
||||
for name in dir(plugins):
|
||||
if not name.endswith(type):
|
||||
if name in namespace:
|
||||
continue
|
||||
if not name.endswith(suffix):
|
||||
continue
|
||||
klass = getattr(plugins, name)
|
||||
classes.append(klass)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue