Commit Graph

17 Commits (247c8dd4f548436e2cf0f2e55a80aa37ec62555a)

Author SHA1 Message Date
pukkandan 6368e2e639
[cleanup] Misc
Closes 
pukkandan e5458d1d88
Fix lazy extractor bug in fe7866d0ed
and add test

Fixes https://github.com/yt-dlp/yt-dlp/pull/3234#issuecomment-1225347071
pukkandan 8f97a15d1c [extractor] Framework for embed detection ()
pukkandan 2414649192
[cleanup] Misc cleanup
pukkandan 82d020804d
[extractor] Use classmethod/property where possible
and refactor lazy extractors accordingly.

This reduces the need to create extractor instances
pukkandan 1d485a1a79
[cleanup] Misc fixes
Closes , https://github.com/yt-dlp/yt-dlp/issues/3514#issuecomment-1105944364
pukkandan 86e5f3ed2e
[cleanup] Upgrade syntax
Using https://github.com/asottile/pyupgrade

1. `__future__` imports and `coding: utf-8` were removed
2. Files were rewritten with `pyupgrade --py36-plus --keep-percent-format`
3. f-strings were cherry-picked from `pyupgrade --py36-plus`

Extractors are left untouched (except removing header) to avoid unnecessary merge conflicts
pukkandan e6f21b3d92
[docs,cleanup] Some minor refactoring and improve docs
pukkandan 251ae04e6a
[lazy_extractor] Create instance only after pre-checking archive
pukkandan 5bc4a65eea
[lazy_extractor] Import actual class if an attribute is accessed
Now all core tests pass with lazy extraction enabled
pukkandan 3fb4e21b38
[lazy_extractors] Fix `suitable` and add flake8 test
felix cc52de4356
[cleanup] Point all shebang to `python3` ()
Authored by: fstirlitz
Déstin Reed dcdb292fdd
Unify coding cookie
Jaime Marquínez Ferrándiz 8a5dc1c1e1 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.
Jaime Marquínez Ferrándiz 6b97ca96fc lazy extractors: Style fixes
* Sort extractors alphabetically
* Add newlines when needed (youtube_dl/extractors/lazy_extractors.py pass the flake8 test now)
Jaime Marquínez Ferrándiz 0d778b1db9 lazy extractors: specify the encoding
When building with python3 the unicode characters are not escaped, python2 needs to know the encoding.
Jaime Marquínez Ferrándiz 779822d945 Add experimental support for lazy loading the info extractors
'make lazy-extractors' creates the youtube_dl/extractor/lazy_extractors.py (imported by youtube_dl/extractor/__init__.py), which contains simplified classes that only have the 'suitable' class method and that load the appropiate class with the '__new__' method when a instance is created.