aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'youtube_dl/extractor/__init__.py')
-rw-r--r--youtube_dl/extractor/__init__.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py
index b523e9644..0145e350d 100644
--- a/youtube_dl/extractor/__init__.py
+++ b/youtube_dl/extractor/__init__.py
@@ -560,6 +560,8 @@ from .zingmp3 import (
ZingMp3AlbumIE,
)
+from ..utils import age_restricted
+
_ALL_CLASSES = [
klass
for name, klass in globals().items()
@@ -575,6 +577,17 @@ def gen_extractors():
return [klass() for klass in _ALL_CLASSES]
+def list_extractors(age_limit):
+ """
+ Return a list of extractors that are suitable for the given age,
+ sorted by extractor ID.
+ """
+
+ return sorted(
+ filter(lambda ie: ie.is_suitable(age_limit), gen_extractors()),
+ key=lambda ie: ie.IE_NAME.lower())
+
+
def get_info_extractor(ie_name):
"""Returns the info extractor class with the given ie_name"""
return globals()[ie_name + 'IE']