compat_str,
determine_ext,
ExtractorError,
+ update_url_query,
)
class DisneyIE(InfoExtractor):
_VALID_URL = r'''(?x)
- https?://(?P<domain>(?:[^/]+\.)?(?:disney\.[a-z]{2,3}(?:\.[a-z]{2})?|disney(?:(?:me|latino)\.com|turkiye\.com\.tr)|(?:starwars|marvelkids)\.com))/(?:(?:embed/|(?:[^/]+/)+[\w-]+-)(?P<id>[a-z0-9]{24})|(?:[^/]+/)?(?P<display_id>[^/?#]+))'''
+ https?://(?P<domain>(?:[^/]+\.)?(?:disney\.[a-z]{2,3}(?:\.[a-z]{2})?|disney(?:(?:me|latino)\.com|turkiye\.com\.tr|channel\.de)|(?:starwars|marvelkids)\.com))/(?:(?:embed/|(?:[^/]+/)+[\w-]+-)(?P<id>[a-z0-9]{24})|(?:[^/]+/)?(?P<display_id>[^/?#]+))'''
_TESTS = [{
# Disney.EmbedVideo
'url': 'http://video.disney.com/watch/moana-trailer-545ed1857afee5a0ec239977',
}, {
'url': 'http://disneyjunior.en.disneyme.com/dj/watch-my-friends-tigger-and-pooh-promo',
'only_matching': True,
+ }, {
+ 'url': 'http://disneychannel.de/sehen/soy-luna-folge-118-5518518987ba27f3cc729268',
+ 'only_matching': True,
}, {
'url': 'http://disneyjunior.disney.com/galactech-the-galactech-grab-galactech-an-admiral-rescue',
'only_matching': True,
continue
tbr = int_or_none(flavor.get('bitrate'))
if tbr == 99999:
- formats.extend(self._extract_m3u8_formats(
+ # wrong ks(Kaltura Signature) causes 404 Error
+ flavor_url = update_url_query(flavor_url, {'ks': ''})
+ m3u8_formats = self._extract_m3u8_formats(
flavor_url, video_id, 'mp4',
- m3u8_id=flavor_format, fatal=False))
+ m3u8_id=flavor_format, fatal=False)
+ for f in m3u8_formats:
+ # Apple FairPlay
+ if '/fpshls/' in f['url']:
+ continue
+ formats.append(f)
continue
format_id = []
if flavor_format: