From e565cf6048739fdfdfbab19e4b35c37a53865807 Mon Sep 17 00:00:00 2001 From: remitamine Date: Thu, 31 Dec 2015 22:47:18 +0100 Subject: [PATCH] [nextmovie] Add new extractor --- youtube_dl/extractor/__init__.py | 1 + youtube_dl/extractor/nextmovie.py | 30 ++++++++++++++++++++++++++++++ youtube_dl/extractor/nick.py | 2 +- 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 youtube_dl/extractor/nextmovie.py diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 120ed9340..b3f7059e4 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -434,6 +434,7 @@ NextMediaActionNewsIE, AppleDailyIE, ) +from .nextmovie import NextMovieIE from .nfb import NFBIE from .nfl import NFLIE from .nhl import ( diff --git a/youtube_dl/extractor/nextmovie.py b/youtube_dl/extractor/nextmovie.py new file mode 100644 index 000000000..657ae77a0 --- /dev/null +++ b/youtube_dl/extractor/nextmovie.py @@ -0,0 +1,30 @@ +# coding: utf-8 +from __future__ import unicode_literals + +from .mtv import MTVServicesInfoExtractor +from ..compat import compat_urllib_parse + + +class NextMovieIE(MTVServicesInfoExtractor): + IE_NAME = 'nextmovie.com' + _VALID_URL = r'https?://(?:www\.)?nextmovie\.com/shows/[^/]+/\d{4}-\d{2}-\d{2}/(?P[^/?#]+)' + _FEED_URL = 'http://lite.dextr.mtvi.com/service1/dispatch.htm' + _TESTS = [{ + 'url': 'http://www.nextmovie.com/shows/exclusives/2013-03-10/mgid:uma:videolist:nextmovie.com:1715019/', + 'md5': '09a9199f2f11f10107d04fcb153218aa', + 'info_dict': { + 'id': '961726', + 'ext': 'mp4', + 'title': 'The Muppets\' Gravity', + }, + }] + + def _get_feed_query(self, uri): + return compat_urllib_parse.urlencode({ + 'feed': '1505', + 'mgid': uri, + }) + + def _real_extract(self, url): + mgid = self._match_id(url) + return self._get_videos_info(mgid) diff --git a/youtube_dl/extractor/nick.py b/youtube_dl/extractor/nick.py index 4840368ac..b62819ae5 100644 --- a/youtube_dl/extractor/nick.py +++ b/youtube_dl/extractor/nick.py @@ -56,7 +56,7 @@ class NickIE(MTVServicesInfoExtractor): def _get_feed_query(self, uri): return compat_urllib_parse.urlencode({ 'feed': 'nick_arc_player_prime', - 'mgid': uri + 'mgid': uri, }) def _extract_mgid(self, webpage):