lazy extractors: Initialize the real info extractor
authorJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Sun, 21 Feb 2016 11:46:14 +0000 (12:46 +0100)
committerJaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Fri, 8 Apr 2016 19:50:54 +0000 (21:50 +0200)
According to the docs '__init__' is only called automatically if '__new__' returns an instance of the original class.

devscripts/lazy_load_template.py

index b984aab9b1e34cee7895f3655502ffeff66e3c29..2e6e6641b8e385beba9a9b742125eb1a4d1e0cc3 100644 (file)
@@ -11,7 +11,9 @@ class LazyLoadExtractor(object):
     def ie_key(cls):
         return cls.__name__[:-2]
 
-    def __new__(cls):
+    def __new__(cls, *args, **kwargs):
         mod = __import__(cls._module, fromlist=(cls.__name__,))
         real_cls = getattr(mod, cls.__name__)
-        return real_cls.__new__(real_cls)
+        instance = real_cls.__new__(real_cls)
+        instance.__init__(*args, **kwargs)
+        return instance