[ie/theatercomplextown] Add extractors #8560
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
theater-complex.town is a subscription/PPV service that streams Japanese theater productions. Its web API is identical to that of StaCommu, another Japanese subscription-based streaming service.
(The G Play store says that both sites' Android apps are developed by "CyberAgent Inc.", which is likely the same company as "CyberFight Inc." that develops the Wrestle-Universe app.)
Because of the carbon copy API, I didn't have to do much here: just moved some methods to the Stacommu baseclass and plugged in a different API key and hostname
Closes #8491
Template
Before submitting a pull request make sure you have:
In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:
What is the purpose of your pull request?
Copilot Summary
馃 Generated by Copilot at f7dbeb7
Summary
馃幁馃幀鈾伙笍
Refactor and add extractors for stacommu and theater-complex.town. The change improves the code structure and reusability of the stacommu extractors and adds support for a new site that offers theater streaming. The change affects the files
yt_dlp/extractor/stacommu.py
,yt_dlp/extractor/theatercomplextown.py
, andyt_dlp/extractor/_extractors.py
.Walkthrough
TheaterComplexTownVODIE
for video on demand content andTheaterComplexTownPPVIE
for pay-per-view content (link)StacommuBaseIE
fromyt_dlp/extractor/stacommu.py
toyt_dlp/extractor/_extractors.py
to avoid circular imports and enable inheritance by the new classes (link)_extract_vod
method ofStacommuBaseIE
in the_real_extract
method ofStacommuVODIE
(link)_extract_ppv
method ofStacommuBaseIE
in the_real_extract
method ofStacommuLiveIE
(link)