aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor/__init__.py
diff options
context:
space:
mode:
authorUnknown <blackjack4494@web.de>2020-09-02 23:33:41 +0200
committerUnknown <blackjack4494@web.de>2020-09-02 23:33:41 +0200
commit3ca3f77f9ce9dd504dc6af4ef605c245c31ff860 (patch)
tree6bd9c9352327148a78b8c46227c8d526f1447b03 /youtube_dl/extractor/__init__.py
parent4cd6add62b54721eeb3bf76bd9c0b4d676dc4d68 (diff)
[skip travis] adding automerge support
basically copying content of youtube_dl folder to youtube_dlc and excluding the youtube_dl folder when compiling
Diffstat (limited to 'youtube_dl/extractor/__init__.py')
-rw-r--r--youtube_dl/extractor/__init__.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py
new file mode 100644
index 000000000..18d8dbcd6
--- /dev/null
+++ b/youtube_dl/extractor/__init__.py
@@ -0,0 +1,46 @@
+from __future__ import unicode_literals
+
+try:
+ from .lazy_extractors import *
+ from .lazy_extractors import _ALL_CLASSES
+ _LAZY_LOADER = True
+except ImportError:
+ _LAZY_LOADER = False
+ from .extractors import *
+
+ _ALL_CLASSES = [
+ klass
+ for name, klass in globals().items()
+ if name.endswith('IE') and name != 'GenericIE'
+ ]
+ _ALL_CLASSES.append(GenericIE)
+
+
+def gen_extractor_classes():
+ """ Return a list of supported extractors.
+ The order does matter; the first extractor matched is the one handling the URL.
+ """
+ return _ALL_CLASSES
+
+
+def gen_extractors():
+ """ Return a list of an instance of every supported extractor.
+ The order does matter; the first extractor matched is the one handling the URL.
+ """
+ return [klass() for klass in gen_extractor_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']