-# coding: utf-8
-from __future__ import unicode_literals
-
-import datetime
+import datetime as dt
from .common import InfoExtractor
from ..utils import (
float_or_none,
jwt_encode_hs256,
try_get,
+ ExtractorError,
)
'url': source_url,
'format_id': protocol,
})
- self._sort_formats(formats)
return {
'id': clip_id,
content_ids = [{'id': id, 'subclip_start': content['start'], 'subclip_end': content['end']}
for id, content in enumerate(contentResource)]
- time_of_request = datetime.datetime.now()
- not_before = time_of_request - datetime.timedelta(minutes=5)
- expire = time_of_request + datetime.timedelta(minutes=5)
+ time_of_request = dt.datetime.now()
+ not_before = time_of_request - dt.timedelta(minutes=5)
+ expire = time_of_request + dt.timedelta(minutes=5)
payload = {
'content_ids': {
content_id: content_ids,
})
video_id, videos_data = list(videos['data'].items())[0]
+ error_msg = try_get(videos_data, lambda x: x['error']['title'])
+ if error_msg == 'Geo check failed':
+ self.raise_geo_restricted(error_msg)
+ elif error_msg:
+ raise ExtractorError(error_msg)
entries = [
self._extract_video_info(url, contentResource[video['id']], video)
for video in videos_data]