Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TBS Free (Japan) extractor #7765

Merged
merged 12 commits into from Aug 14, 2023
Merged

TBS Free (Japan) extractor #7765

merged 12 commits into from Aug 14, 2023

Conversation

garret1317
Copy link
Collaborator

@garret1317 garret1317 commented Aug 3, 2023

IMPORTANT: PRs without the template will be CLOSED

Description of your pull request and other information

This PR adds extractors for Japanese TBS TV's catch-up site, TBS FREE.
It supports individual episodes of a programme, whole programme playlists, and category playlists that can contain both episodes and whole programmes.
TBS FREE is only available in Japan, but some metadata can be extracted internationally. The geoblock can be bypassed with a VPN.

Subtitle downloading won't work unless #7681 is merged.

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:

  • I am the original author of this code and I am willing to release it under Unlicense
  • I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

Copilot Summary

🤖 Generated by Copilot at 9cd12f7

Summary

🇯🇵📺🐍

This pull request adds support for downloading videos from the Japanese streaming service TBS. It introduces a new module tbsjp.py that defines three extractors for different types of TBS webpages. It also imports these extractors in _extractors.py to register them with yt-dlp.

yt-dlp can now
download from TBS Japan
autumn leaves streaming

Walkthrough

  • Add support for downloading videos from TBS, a Japanese streaming service (link, link)
  • Import TBS extractor classes from tbsjp.py in _extractors.py (link)
  • Define TBS extractor classes in tbsjp.py that inherit from InfoExtractor and implement _real_extract (link)
  • Handle geo-restriction, JSON parsing, and URL construction in the TBS extractor classes (link)

yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
@bashonly bashonly added site-request Request to support a new website pending-fixes PR has had changes requested labels Aug 3, 2023
garret1317 and others added 2 commits August 4, 2023 07:28
Co-Authored-By: bashonly <88596187+bashonly@users.noreply.github.com>
the metadata for the episode i used seems to have been changed a bit
not sure what to make of that, to be honest
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
i made the episode thing .get('is_phonetic'), the is_phonetic isnt always present
so with ['is_phonetic'] it fails and we get a generic 'Episode x' value

Co-Authored-By: bashonly <88596187+bashonly@users.noreply.github.com>
yt_dlp/extractor/tbsjp.py Show resolved Hide resolved
@bashonly bashonly added pending-review PR needs a review and removed pending-fixes PR has had changes requested labels Aug 4, 2023
Co-Authored-By: bashonly <88596187+bashonly@users.noreply.github.com>
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
@bashonly bashonly removed the pending-review PR needs a review label Aug 9, 2023
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
yt_dlp/extractor/tbsjp.py Outdated Show resolved Hide resolved
@bashonly bashonly merged commit 876b70c into yt-dlp:master Aug 14, 2023
13 checks passed
aalsuwaidi pushed a commit to aalsuwaidi/yt-dlp that referenced this pull request Apr 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
site-request Request to support a new website
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants