aboutsummaryrefslogtreecommitdiff
path: root/youtube_dlc/extractor/mtv.py
diff options
context:
space:
mode:
authorpukkandan <pukkandan@gmail.com>2020-11-20 00:52:59 +0530
committerpukkandan <pukkandan@gmail.com>2020-11-20 13:03:32 +0530
commit8bdd16b4993b8d546b4cbbdbe4710db0bc2f971b (patch)
treec5ba0d26e17bb3102c0b24886853d9a818e875c6 /youtube_dlc/extractor/mtv.py
parent228385340e9a976f52735078218a9b8ecfe7ae7a (diff)
Merge 'ytdl-org/youtube-dl/master' release 2020.11.19
Old Extractors left behind: VLivePlaylistIE YoutubeSearchURLIE YoutubeShowIE YoutubeFavouritesIE If removing old extractors, make corresponding changes in docs/supportedsites.md youtube_dlc/extractor/extractors.py Not merged: .github/ISSUE_TEMPLATE/1_broken_site.md .github/ISSUE_TEMPLATE/2_site_support_request.md .github/ISSUE_TEMPLATE/3_site_feature_request.md .github/ISSUE_TEMPLATE/4_bug_report.md .github/ISSUE_TEMPLATE/5_feature_request.md test/test_all_urls.py youtube_dlc/version.py Changelog
Diffstat (limited to 'youtube_dlc/extractor/mtv.py')
-rw-r--r--youtube_dlc/extractor/mtv.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/youtube_dlc/extractor/mtv.py b/youtube_dlc/extractor/mtv.py
index 04cc95b6a..d31f53137 100644
--- a/youtube_dlc/extractor/mtv.py
+++ b/youtube_dlc/extractor/mtv.py
@@ -403,6 +403,18 @@ class MTVIE(MTVServicesInfoExtractor):
'only_matching': True,
}]
+ @staticmethod
+ def extract_child_with_type(parent, t):
+ children = parent['children']
+ return next(c for c in children if c.get('type') == t)
+
+ def _extract_mgid(self, webpage):
+ data = self._parse_json(self._search_regex(
+ r'__DATA__\s*=\s*({.+?});', webpage, 'data'), None)
+ main_container = self.extract_child_with_type(data, 'MainContainer')
+ video_player = self.extract_child_with_type(main_container, 'VideoPlayer')
+ return video_player['props']['media']['video']['config']['uri']
+
class MTVJapanIE(MTVServicesInfoExtractor):
IE_NAME = 'mtvjapan'