mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-26 20:20:46 +00:00 
			
		
		
		
	 e756f45ba0
			
		
	
	e756f45ba0
	
	
	
		
			
			* Extractors replaced with plugin extractors now show in debug output * Better testcase handling * Added documentation Authored by: coletdjnz, pukkandan
		
			
				
	
	
		
			29 lines
		
	
	
		
			842 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			842 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| import contextlib
 | |
| import os
 | |
| 
 | |
| from ..plugins import load_plugins
 | |
| 
 | |
| # NB: Must be before other imports so that plugins can be correctly injected
 | |
| _PLUGIN_CLASSES = load_plugins('extractor', 'IE')
 | |
| 
 | |
| _LAZY_LOADER = False
 | |
| if not os.environ.get('YTDLP_NO_LAZY_EXTRACTORS'):
 | |
|     with contextlib.suppress(ImportError):
 | |
|         from .lazy_extractors import *  # noqa: F403
 | |
|         from .lazy_extractors import _ALL_CLASSES
 | |
|         _LAZY_LOADER = True
 | |
| 
 | |
| if not _LAZY_LOADER:
 | |
|     from ._extractors import *  # noqa: F403
 | |
|     _ALL_CLASSES = [  # noqa: F811
 | |
|         klass
 | |
|         for name, klass in globals().items()
 | |
|         if name.endswith('IE') and name != 'GenericIE'
 | |
|     ]
 | |
|     _ALL_CLASSES.append(GenericIE)  # noqa: F405
 | |
| 
 | |
| globals().update(_PLUGIN_CLASSES)
 | |
| _ALL_CLASSES[:0] = _PLUGIN_CLASSES.values()
 | |
| 
 | |
| from .common import _PLUGIN_OVERRIDES  # noqa: F401
 |