@ -7,6 +7,7 @@ from .common import InfoExtractor
from . . compat import (
compat_urlparse ,
compat_urllib_parse ,
compat_urllib_parse_urlparse
)
from . . utils import (
unified_strdate ,
@ -24,9 +25,13 @@ 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 : ]
data = compat_urllib_parse . urlencode ( {
' type ' : ' fvod ' ,
' path ' : initial_video_url . replace ( ' .mp4 ' , ' _sd.mp4 ' ) ,
' path ' : compat_urlparse. urlunparse ( parsed_url [ : 2 ] + ( path , ) + parsed_url [ 3 : ] )
} )
path_url = ' http://video.nhl.com/videocenter/servlets/encryptvideopath? ' + data
path_doc = self . _download_xml (
@ -73,6 +78,17 @@ class NHLIE(NHLBaseInfoExtractor):
' duration ' : 0 ,
' upload_date ' : ' 20141011 ' ,
} ,
} , {
' url ' : ' http://video.mapleleafs.nhl.com/videocenter/console?id=58665&catid=802 ' ,
' md5 ' : ' c78fc64ea01777e426cfc202b746c825 ' ,
' info_dict ' : {
' id ' : ' 58665 ' ,
' ext ' : ' flv ' ,
' title ' : ' Classic Game In Six - April 22, 1979 ' ,
' description ' : ' It was the last playoff game for the Leafs in the decade, and the last time the Leafs and Habs played in the playoffs. Great game, not a great ending. ' ,
' duration ' : 400 ,
' upload_date ' : ' 20100129 '
} ,
} , {
' url ' : ' http://video.flames.nhl.com/videocenter/console?id=630616 ' ,
' only_matching ' : True ,