[internazionale] Fix extraction of non-available-abroad videos
Some videos can have a `data-video-available_abroad' attribute that can be "0" or "1" depending if the video is available abroad (if not present it is available abroad). For not available abroad videos (all the ones with data-video-available_abroad="1") video-ita.internazionale.it is used instead of video.internazionale.it. Adjust Internazionale extractor to reflect that and add a test for a not available abroad video.
This commit is contained in:
parent
9e21e6d96b
commit
839d9a85c0
@ -7,7 +7,7 @@ from ..utils import unified_timestamp
|
||||
|
||||
class InternazionaleIE(InfoExtractor):
|
||||
_VALID_URL = r'https?://(?:www\.)?internazionale\.it/video/(?:[^/]+/)*(?P<id>[^/?#&]+)'
|
||||
_TEST = {
|
||||
_TESTS = [{
|
||||
'url': 'https://www.internazionale.it/video/2015/02/19/richard-linklater-racconta-una-scena-di-boyhood',
|
||||
'md5': '3e39d32b66882c1218e305acbf8348ca',
|
||||
'info_dict': {
|
||||
@ -23,7 +23,23 @@ class InternazionaleIE(InfoExtractor):
|
||||
'params': {
|
||||
'format': 'bestvideo',
|
||||
},
|
||||
}
|
||||
}, {
|
||||
'url': 'https://www.internazionale.it/video/2018/08/29/telefono-stare-con-noi-stessi',
|
||||
'md5': '9db8663704cab73eb972d1cee0082c79',
|
||||
'info_dict': {
|
||||
'id': '761344',
|
||||
'display_id': 'telefono-stare-con-noi-stessi',
|
||||
'ext': 'mp4',
|
||||
'title': 'Usiamo il telefono per evitare di stare con noi stessi',
|
||||
'description': 'md5:75ccfb0d6bcefc6e7428c68b4aa1fe44',
|
||||
'timestamp': 1535528954,
|
||||
'upload_date': '20180829',
|
||||
'thumbnail': r're:^https?://.*\.jpg$',
|
||||
},
|
||||
'params': {
|
||||
'format': 'bestvideo',
|
||||
},
|
||||
}]
|
||||
|
||||
def _real_extract(self, url):
|
||||
display_id = self._match_id(url)
|
||||
@ -40,8 +56,15 @@ class InternazionaleIE(InfoExtractor):
|
||||
DATA_RE % 'job-id', webpage, 'video id', group='value')
|
||||
video_path = self._search_regex(
|
||||
DATA_RE % 'video-path', webpage, 'video path', group='value')
|
||||
video_available_abroad = bool(int(self._search_regex(
|
||||
DATA_RE % 'video-available_abroad', webpage,
|
||||
'video available aboard', default='1', group='value')))
|
||||
|
||||
video_base = 'https://video.internazionale.it/%s/%s.' % (video_path, video_id)
|
||||
if video_available_abroad:
|
||||
video_base = 'https://video.internazionale.it/'
|
||||
else:
|
||||
video_base = 'https://video-ita.internazionale.it/'
|
||||
video_base = video_base + '%s/%s.' % (video_path, video_id)
|
||||
|
||||
formats = self._extract_m3u8_formats(
|
||||
video_base + 'm3u8', display_id, 'mp4',
|
||||
|
Loading…
x
Reference in New Issue
Block a user