X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fnhl.py;h=d3a4fc51387a8e1a1b56718ba9dafabf1d9a7db5;hb=e65566a9cc13d13bef3dc70eebfc9bda2e302b78;hp=72dcbf4243d71f60e80a48bbe13b962451945744;hpb=62d8b56655eceb763fe0150866092ef99ec6fb84;p=youtube-dl diff --git a/youtube_dl/extractor/nhl.py b/youtube_dl/extractor/nhl.py index 72dcbf424..d3a4fc513 100644 --- a/youtube_dl/extractor/nhl.py +++ b/youtube_dl/extractor/nhl.py @@ -2,6 +2,7 @@ from __future__ import unicode_literals import re import json +import os from .common import InfoExtractor from ..compat import ( @@ -26,9 +27,8 @@ class NHLBaseInfoExtractor(InfoExtractor): initial_video_url = info['publishPoint'] if info['formats'] == '1': parsed_url = compat_urllib_parse_urlparse(initial_video_url) - path = parsed_url.path - extension_index = path.rfind('.') - path = path[:extension_index] + '_sd' + path[extension_index:] + filename, ext = os.path.splitext(parsed_url.path) + path = '%s_sd%s' % (filename, ext) data = compat_urllib_parse.urlencode({ 'type': 'fvod', 'path': compat_urlparse.urlunparse(parsed_url[:2] + (path,) + parsed_url[3:]) @@ -54,7 +54,7 @@ class NHLBaseInfoExtractor(InfoExtractor): class NHLIE(NHLBaseInfoExtractor): IE_NAME = 'nhl.com' - _VALID_URL = r'https?://video(?P\.[^.]*)?\.nhl\.com/videocenter/console(?:\?(?:.*?[?&])?)id=(?P[0-9a-z-]+)' + _VALID_URL = r'https?://video(?P\.[^.]*)?\.nhl\.com/videocenter/console(?:\?(?:.*?[?&])?)id=(?P[-0-9a-zA-Z]+)' _TESTS = [{ 'url': 'http://video.canucks.nhl.com/videocenter/console?catid=6?id=453614', @@ -106,7 +106,7 @@ class NHLIE(NHLBaseInfoExtractor): class NHLVideocenterIE(NHLBaseInfoExtractor): IE_NAME = 'nhl.com:videocenter' IE_DESC = 'NHL videocenter category' - _VALID_URL = r'https?://video\.(?P[^.]*)\.nhl\.com/videocenter/(console\?.*?catid=(?P[0-9]+)(?![&?]id=).*?)?$' + _VALID_URL = r'https?://video\.(?P[^.]*)\.nhl\.com/videocenter/(console\?[^(id=)]*catid=(?P[0-9]+)(?![&?]id=).*?)?$' _TEST = { 'url': 'http://video.canucks.nhl.com/videocenter/console?catid=999', 'info_dict': {