aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormanav_chaudhary <100396248+manavchaudhary1@users.noreply.github.com>2024-11-12 04:11:56 +0530
committerGitHub <noreply@github.com>2024-11-11 23:41:56 +0100
commita9f85670d03ab993dc589f21a9ffffcad61392d5 (patch)
tree24aaa3261b3ba19f52026bf7f45e998c14fbfb40
parent6b43a8d84b881d769b480ba6e20ec691e9d1b92d (diff)
[ie/Chaturbate] Support alternate domains (#10595)
Closes #10594 Authored by: manavchaudhary1
-rw-r--r--yt_dlp/extractor/chaturbate.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/yt_dlp/extractor/chaturbate.py b/yt_dlp/extractor/chaturbate.py
index b49f741ef..864d61f9c 100644
--- a/yt_dlp/extractor/chaturbate.py
+++ b/yt_dlp/extractor/chaturbate.py
@@ -9,7 +9,7 @@ from ..utils import (
class ChaturbateIE(InfoExtractor):
- _VALID_URL = r'https?://(?:[^/]+\.)?chaturbate\.com/(?:fullvideo/?\?.*?\bb=)?(?P<id>[^/?&#]+)'
+ _VALID_URL = r'https?://(?:[^/]+\.)?chaturbate\.(?P<tld>com|eu|global)/(?:fullvideo/?\?.*?\bb=)?(?P<id>[^/?&#]+)'
_TESTS = [{
'url': 'https://www.chaturbate.com/siswet19/',
'info_dict': {
@@ -29,15 +29,24 @@ class ChaturbateIE(InfoExtractor):
}, {
'url': 'https://en.chaturbate.com/siswet19/',
'only_matching': True,
+ }, {
+ 'url': 'https://chaturbate.eu/siswet19/',
+ 'only_matching': True,
+ }, {
+ 'url': 'https://chaturbate.eu/fullvideo/?b=caylin',
+ 'only_matching': True,
+ }, {
+ 'url': 'https://chaturbate.global/siswet19/',
+ 'only_matching': True,
}]
_ROOM_OFFLINE = 'Room is currently offline'
def _real_extract(self, url):
- video_id = self._match_id(url)
+ video_id, tld = self._match_valid_url(url).group('id', 'tld')
webpage = self._download_webpage(
- f'https://chaturbate.com/{video_id}/', video_id,
+ f'https://chaturbate.{tld}/{video_id}/', video_id,
headers=self.geo_verification_headers())
found_m3u8_urls = []