| 
									
										
										
										
											2016-02-11 14:49:02 +01:00
										 |  |  | # encoding: utf-8 | 
					
						
							| 
									
										
										
										
											2016-02-10 14:01:31 +01:00
										 |  |  | from __future__ import unicode_literals | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import re | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class LazyLoadExtractor(object): | 
					
						
							|  |  |  |     _module = None | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     @classmethod | 
					
						
							|  |  |  |     def ie_key(cls): | 
					
						
							|  |  |  |         return cls.__name__[:-2] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-02-21 12:46:14 +01:00
										 |  |  |     def __new__(cls, *args, **kwargs): | 
					
						
							| 
									
										
										
										
											2016-02-10 14:01:31 +01:00
										 |  |  |         mod = __import__(cls._module, fromlist=(cls.__name__,)) | 
					
						
							|  |  |  |         real_cls = getattr(mod, cls.__name__) | 
					
						
							| 
									
										
										
										
											2016-02-21 12:46:14 +01:00
										 |  |  |         instance = real_cls.__new__(real_cls) | 
					
						
							|  |  |  |         instance.__init__(*args, **kwargs) | 
					
						
							|  |  |  |         return instance |