Commit Graph

290 Commits (73f12119b52d98281804b0c072b2ed6aa841ec88)

Author SHA1 Message Date
Matthew e756f45ba0
Improve handling for overriding extractors with plugins ()
* Extractors replaced with plugin extractors now show in debug output
* Better testcase handling
* Added documentation
Authored by: coletdjnz, pukkandan
Matthew 8e40b9d1ec
Improve plugin architecture ()
to make plugins easier to develop and use:
* Plugins are now loaded as namespace packages.
* Plugins can be loaded in any distribution of yt-dlp (binary, pip, source, etc.).
* Plugin packages can be installed and managed via pip, or dropped into any of the documented locations.
* Users do not need to edit any code files to install plugins.
* Backwards-compatible with previous plugin architecture.

As a side-effect, yt-dlp will now search in a few more locations for config files.

Closes https://github.com/yt-dlp/yt-dlp/issues/1389

Authored by: flashdagger, coletdjnz, pukkandan, Grub4K
Co-authored-by: Marcel <flashdagger@googlemail.com>
Co-authored-by: pukkandan <pukkandan.ytdlp@gmail.com>
Co-authored-by: Simon Sawicki <accounts@grub4k.xyz>
pukkandan 2314b4d89f
Allow plugin extractors to replace the built-in ones
This allows easier plugin chaining; e.g.
- https://gist.github.com/pukkandan/24f13ff1ed385c5a390c1d7bd130d8f7
- https://gist.github.com/pukkandan/fcf5ca1785c80f64e471f0ee14f990fb
pukkandan 560738f34d
[extractor] Import `_ALL_CLASSES` lazily
This significantly speeds up `import yt_dlp` in the absence of `lazy_extractors`
pukkandan 99d10bf607
[cleanup, extractor] Rename `extractors.py` to `_extractors.py`
This should be considered part of the next commit,
but is separated so that `git` can detect the renaming better
Evan Spensley 145c5a83a8
[extractor/GoogleDrive] Add folder extractor ()
Closes 
Authored by: evansp, pukkandan
pukkandan 56ba69e4c9
[cleanup] Misc fixes
Closes 
ping 14c3a98049
[extractor/naver] Add `navernow` extractor ()
Authored by: ping
Elyse e0a4a3d5bf
[extractor/freetv] Add extractor ()
Closes 
Authored by: elyse0
Ashish Gupta c82a4a8fce
[extractor/atscaleconfevent] Add extractor ()
Closes 
Authored by: Ashish0804
Angel Toloza bde0132e15
[extractor/southpark] Add `southpark.lat` extractor ()
Authored by: darkxex
Lesmiscore 0bea4fd807
[extractor/0000studio] Add extractors ()
Authored by: Lesmiscore
ischmidt20 b5770743fe
[extractor/espn] Add `WatchESPN` extractor ()
Authored by: ischmidt20, pukkandan
gamer191 84131d0351
[extractor/animelab] Remove extractor ()
https://www.animelab.com/sunset

Authored by: gamer191
Lesmiscore 1cd6cba306
[extractor/PokemonSoundLibrary] Remove extractor ()
Authored by: Lesmiscore
Stefan Borer ee164987c7
[extractor/playsuisse] Add extractor ()
Authored by: sbor23, pukkandan
Dzmitry Neviadomski 3ac7b66047
[goodgame] Add extractor ()
Authored by: nevack
P-reducible c9b2b368b3
[rokfin:search] Add extractor ()
Authored by: P-reducible, pukkandan
Conner 4bf72cc1c9
[Podchaser] Add extractors ()
Authored by; connercsbn
Henrik Heimbuerger f3b3fe16af
[nebula] Add support for subscriptions ()
Closes  
Authored by: hheimbuerger
Ha Tien Loi 54044decd0
[ZingMp3] Add chart and user extractors ()
Authored by: hatienl0i261299
Ha Tien Loi 89f383c4ee
[gronkh] Add playlist extractors ()
Closes 
Authored by: hatienl0i261299
FestplattenSchnitzel 10fa2471fc
[VideocampusSachsen] Improve extractor ()
Authored by: FestplattenSchnitzel
i6t ff4d7860d5
[iwara] Add playlist extractors ()
Authored by: i6t
Ha Tien Loi f963b7ab18
[Likee] Add extractor ()
Closes 
Authored by: hatienl0i261299
m4tu4g 468f104ce7
[masters] Add extractor ()
Closes 
Authored by: m4tu4g
Bricio cbc6ee10da
[Fifa] Add Extractor ()
Closes 
Authored by: Bricio
HE7086 b4f536626a
[BilibiliLive] Add extractor ()
Authored by: HE7086, pukkandan
coletdev 6e634cbe42
[youtube] Add YoutubeStoriesIE ()
Get channel stories with `ytstories:<channel UCID>`

Authored-by: coletdjnz
Giedrius Statkevičius 4877f9055c
[lrt] Support livestreams ()
Authored by: GiedriusS
Teemu Ikonen 52c2af8298
[icareus] Add extractor ()
Authored by: tpikonen, pukkandan
pukkandan a1ddaa899c
[hotstar] Refactor extractors
Closes 
pukkandan 19a0394044
[cleanup] Misc cleanup and refactor ()
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
krichbanana ca5300c7ed
[youtube] Add `:ytnotifications` extractor ()
Authored by: krichbanana
mehq 4d57133095
[Jable] Add extractor ()
Closes 
Authored by: mehq
Alexander Seiler 9b8b7a7b5e
[Zattoo] Fix extractors ()
Closes: 
Authored by: goggle
Ha Tien Loi bd4073c535
[AfreecaTV] Add `AfreecaTVUserIE` ()
Closes 
Authored by: hatienl0i261299
panatexxa da1ffde15d
[Moviepilot] Add extractor ()
Authored by: panatexxa
Tim Schindler 12e022d074
[Cybrary] Add extractor ()
Authored by: aaearon
Bricio bb5a7cb8ad
[Craftsy] Add extractor ()
Authored by: Bricio
Ha Tien Loi 9139d2fae0
[WasdTV] Add extractor ()
Closes 
Authored by: un-def, hatienl0i261299
Tim Schindler 4628a3aa75
[ITProTV] Add extractor ()
Authored by: aaearon
mehq 5b4bb715e6
[BanBye] Add extractor ()
Closes 
Authored by: mehq
mehq b8f2f8f6b3
[LastFM] Add extractors ()
Closes 
Authored by: mehq
Ha Tien Loi 7e6a187096
[Huya] Add extractor ()
Closes 
Authored by: hatienl0i261299
Lesmiscore (Naoya Ozaki) 24e3d87431
[PokemonSoundLibrary] Add extractor ()
Authored by: Lesmiscore
coletdev e248be3319
[panopto] Add extractors ()
Based on https://github.com/ytdl-org/youtube-dl/pull/13449
Closes 
Authored by: coletdjnz, kmark
Ha Tien Loi c89bec262c
[xinpianchang] Add extractor ()
Authored by: hatienl0i261299
Ha Tien Loi 151f8f1c02
[fptplay] Add extractor ()
Closes 
Authored by: hatienl0i261299