mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	Delay initialization of InfoExtractors until they are needed
This commit is contained in:
		| @@ -82,7 +82,7 @@ from .utils import ( | ||||
|     YoutubeDLHandler, | ||||
| ) | ||||
| from .cache import Cache | ||||
| from .extractor import get_info_extractor, gen_extractors | ||||
| from .extractor import get_info_extractor, gen_extractor_classes | ||||
| from .downloader import get_suitable_downloader | ||||
| from .downloader.rtmp import rtmpdump_version | ||||
| from .postprocessor import ( | ||||
| @@ -378,8 +378,9 @@ class YoutubeDL(object): | ||||
|     def add_info_extractor(self, ie): | ||||
|         """Add an InfoExtractor object to the end of the list.""" | ||||
|         self._ies.append(ie) | ||||
|         self._ies_instances[ie.ie_key()] = ie | ||||
|         ie.set_downloader(self) | ||||
|         if not isinstance(ie, type): | ||||
|             self._ies_instances[ie.ie_key()] = ie | ||||
|             ie.set_downloader(self) | ||||
|  | ||||
|     def get_info_extractor(self, ie_key): | ||||
|         """ | ||||
| @@ -397,7 +398,7 @@ class YoutubeDL(object): | ||||
|         """ | ||||
|         Add the InfoExtractors returned by gen_extractors to the end of the list | ||||
|         """ | ||||
|         for ie in gen_extractors(): | ||||
|         for ie in gen_extractor_classes(): | ||||
|             self.add_info_extractor(ie) | ||||
|  | ||||
|     def add_post_processor(self, pp): | ||||
| @@ -661,6 +662,7 @@ class YoutubeDL(object): | ||||
|             if not ie.suitable(url): | ||||
|                 continue | ||||
|  | ||||
|             ie = self.get_info_extractor(ie.ie_key()) | ||||
|             if not ie.working(): | ||||
|                 self.report_warning('The program functionality for this site has been marked as broken, ' | ||||
|                                     'and will probably not work.') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jaime Marquínez Ferrándiz
					Jaime Marquínez Ferrándiz