4 from ..plugins
import load_plugins
6 # NB: Must be before other imports so that plugins can be correctly injected
7 _PLUGIN_CLASSES
= load_plugins('extractor', 'IE')
10 if not os
.environ
.get('YTDLP_NO_LAZY_EXTRACTORS'):
11 with contextlib
.suppress(ImportError):
12 from .lazy_extractors
import * # noqa: F403
13 from .lazy_extractors
import _ALL_CLASSES
17 from ._extractors
import * # noqa: F403
18 _ALL_CLASSES
= [ # noqa: F811
20 for name
, klass
in globals().items()
21 if name
.endswith('IE') and name
!= 'GenericIE'
23 _ALL_CLASSES
.append(GenericIE
) # noqa: F405
25 globals().update(_PLUGIN_CLASSES
)
26 _ALL_CLASSES
[:0] = _PLUGIN_CLASSES
.values()
28 from .common
import _PLUGIN_OVERRIDES
# noqa: F401