Browse Source

lazy extractors: Initialize the real info extractor

According to the docs '__init__' is only called automatically if '__new__' returns an instance of the original class.
totalwebcasting
Jaime Marquínez Ferrándiz 9 years ago
parent
commit
8a5dc1c1e1
1 changed files with 4 additions and 2 deletions
  1. +4
    -2
      devscripts/lazy_load_template.py

+ 4
- 2
devscripts/lazy_load_template.py View 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

Loading…
Cancel
Save