mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	Allow plugin extractors to replace the built-in ones
This allows easier plugin chaining; e.g. - https://gist.github.com/pukkandan/24f13ff1ed385c5a390c1d7bd130d8f7 - https://gist.github.com/pukkandan/fcf5ca1785c80f64e471f0ee14f990fb
This commit is contained in:
		| @@ -3,6 +3,9 @@ import os | ||||
| 
 | ||||
| from ..utils 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): | ||||
| @@ -19,5 +22,5 @@ if not _LAZY_LOADER: | ||||
|     ] | ||||
|     _ALL_CLASSES.append(GenericIE)  # noqa: F405 | ||||
| 
 | ||||
| _PLUGIN_CLASSES = load_plugins('extractor', 'IE', globals()) | ||||
| _ALL_CLASSES = list(_PLUGIN_CLASSES.values()) + _ALL_CLASSES | ||||
| globals().update(_PLUGIN_CLASSES) | ||||
| _ALL_CLASSES[:0] = _PLUGIN_CLASSES.values() | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 pukkandan
					pukkandan