|
|
@ -3,6 +3,7 @@
|
|
|
|
# Allow direct execution
|
|
|
|
# Allow direct execution
|
|
|
|
import os
|
|
|
|
import os
|
|
|
|
import sys
|
|
|
|
import sys
|
|
|
|
|
|
|
|
import shutil
|
|
|
|
|
|
|
|
|
|
|
|
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
|
|
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
|
|
|
|
|
|
|
|
|
@ -50,12 +51,13 @@ def get_all_ies():
|
|
|
|
PLUGINS_DIRNAME = 'ytdlp_plugins'
|
|
|
|
PLUGINS_DIRNAME = 'ytdlp_plugins'
|
|
|
|
BLOCKED_DIRNAME = f'{PLUGINS_DIRNAME}_blocked'
|
|
|
|
BLOCKED_DIRNAME = f'{PLUGINS_DIRNAME}_blocked'
|
|
|
|
if os.path.exists(PLUGINS_DIRNAME):
|
|
|
|
if os.path.exists(PLUGINS_DIRNAME):
|
|
|
|
os.rename(PLUGINS_DIRNAME, BLOCKED_DIRNAME)
|
|
|
|
# os.rename cannot be used, e.g. in Docker. See https://github.com/yt-dlp/yt-dlp/pull/4958
|
|
|
|
|
|
|
|
shutil.move(PLUGINS_DIRNAME, BLOCKED_DIRNAME)
|
|
|
|
try:
|
|
|
|
try:
|
|
|
|
from yt_dlp.extractor.extractors import _ALL_CLASSES
|
|
|
|
from yt_dlp.extractor.extractors import _ALL_CLASSES
|
|
|
|
finally:
|
|
|
|
finally:
|
|
|
|
if os.path.exists(BLOCKED_DIRNAME):
|
|
|
|
if os.path.exists(BLOCKED_DIRNAME):
|
|
|
|
os.rename(BLOCKED_DIRNAME, PLUGINS_DIRNAME)
|
|
|
|
shutil.move(BLOCKED_DIRNAME, PLUGINS_DIRNAME)
|
|
|
|
return _ALL_CLASSES
|
|
|
|
return _ALL_CLASSES
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|