|
@ -37,7 +37,7 @@ class RTSIE(InfoExtractor): |
|
|
'url': 'http://www.rts.ch/emissions/passe-moi-les-jumelles/5624067-entre-ciel-et-mer.html', |
|
|
'url': 'http://www.rts.ch/emissions/passe-moi-les-jumelles/5624067-entre-ciel-et-mer.html', |
|
|
'md5': 'c197f0b2421995c63a64cc73d800f42e', |
|
|
'md5': 'c197f0b2421995c63a64cc73d800f42e', |
|
|
'info_dict': { |
|
|
'info_dict': { |
|
|
'id': '5738317', |
|
|
|
|
|
|
|
|
'id': '5624067', |
|
|
'ext': 'mp4', |
|
|
'ext': 'mp4', |
|
|
'duration': 55, |
|
|
'duration': 55, |
|
|
'title': 'Bande de lancement de Passe-moi les jumelles', |
|
|
'title': 'Bande de lancement de Passe-moi les jumelles', |
|
@ -98,17 +98,20 @@ class RTSIE(InfoExtractor): |
|
|
m = re.match(self._VALID_URL, url) |
|
|
m = re.match(self._VALID_URL, url) |
|
|
video_id = m.group('id') |
|
|
video_id = m.group('id') |
|
|
|
|
|
|
|
|
def download_json(video_id): |
|
|
|
|
|
|
|
|
def download_json(internal_id): |
|
|
return self._download_json( |
|
|
return self._download_json( |
|
|
'http://www.rts.ch/a/%s.html?f=json/article' % video_id, video_id) |
|
|
|
|
|
|
|
|
'http://www.rts.ch/a/%s.html?f=json/article' % internal_id, |
|
|
|
|
|
video_id) |
|
|
|
|
|
|
|
|
all_info = download_json(video_id) |
|
|
all_info = download_json(video_id) |
|
|
|
|
|
|
|
|
# video_id extracted out of URL is not always a real id |
|
|
# video_id extracted out of URL is not always a real id |
|
|
if 'video' not in all_info and 'audio' not in all_info: |
|
|
if 'video' not in all_info and 'audio' not in all_info: |
|
|
page = self._download_webpage(url, video_id) |
|
|
page = self._download_webpage(url, video_id) |
|
|
video_id = self._html_search_regex(r'<(?:video|audio) data-id="(\d+)"', page, 'video id') |
|
|
|
|
|
all_info = download_json(video_id) |
|
|
|
|
|
|
|
|
internal_id = self._html_search_regex( |
|
|
|
|
|
r'<(?:video|audio) data-id="([0-9]+)"', page, |
|
|
|
|
|
'internal video id') |
|
|
|
|
|
all_info = download_json(internal_id) |
|
|
|
|
|
|
|
|
info = all_info['video']['JSONinfo'] if 'video' in all_info else all_info['audio'] |
|
|
info = all_info['video']['JSONinfo'] if 'video' in all_info else all_info['audio'] |
|
|
|
|
|
|
|
|