|
@ -8,6 +8,7 @@ from ..utils import ( |
|
|
unescapeHTML, |
|
|
unescapeHTML, |
|
|
find_xpath_attr, |
|
|
find_xpath_attr, |
|
|
smuggle_url, |
|
|
smuggle_url, |
|
|
|
|
|
determine_ext, |
|
|
) |
|
|
) |
|
|
from .senateisvp import SenateISVPIE |
|
|
from .senateisvp import SenateISVPIE |
|
|
|
|
|
|
|
@ -87,6 +88,10 @@ class CSpanIE(InfoExtractor): |
|
|
return self.url_result(surl, 'SenateISVP', video_id, title) |
|
|
return self.url_result(surl, 'SenateISVP', video_id, title) |
|
|
|
|
|
|
|
|
files = data['video']['files'] |
|
|
files = data['video']['files'] |
|
|
|
|
|
try: |
|
|
|
|
|
capfile = data['video']['capfile']['#text'] |
|
|
|
|
|
except KeyError: |
|
|
|
|
|
capfile = None |
|
|
|
|
|
|
|
|
entries = [{ |
|
|
entries = [{ |
|
|
'id': '%s_%d' % (video_id, partnum + 1), |
|
|
'id': '%s_%d' % (video_id, partnum + 1), |
|
@ -97,6 +102,12 @@ class CSpanIE(InfoExtractor): |
|
|
'description': description, |
|
|
'description': description, |
|
|
'thumbnail': thumbnail, |
|
|
'thumbnail': thumbnail, |
|
|
'duration': int_or_none(f.get('length', {}).get('#text')), |
|
|
'duration': int_or_none(f.get('length', {}).get('#text')), |
|
|
|
|
|
'subtitles': { |
|
|
|
|
|
'en': [{ |
|
|
|
|
|
'url': capfile, |
|
|
|
|
|
'ext': determine_ext(capfile, 'dfxp') |
|
|
|
|
|
}], |
|
|
|
|
|
} if capfile else None, |
|
|
} for partnum, f in enumerate(files)] |
|
|
} for partnum, f in enumerate(files)] |
|
|
|
|
|
|
|
|
if len(entries) == 1: |
|
|
if len(entries) == 1: |
|
|