Fix clips (#108)
This commit is contained in:
parent
6d1c08e9c7
commit
9f4bba446a
@ -309,7 +309,7 @@ class ContentApi:
|
|||||||
result = regex_video_data.search(page)
|
result = regex_video_data.search(page)
|
||||||
if result:
|
if result:
|
||||||
video_id = json.loads(unescape(result.group(1)))['id']
|
video_id = json.loads(unescape(result.group(1)))['id']
|
||||||
video_json_data = self._get_url('%s/api/video/%s' % (self.SITE_URL, video_id))
|
video_json_data = self._get_url('%s/web/v1/videos/short-form/%s' % (self.API_GOPLAY, video_id))
|
||||||
video_json = json.loads(video_json_data)
|
video_json = json.loads(video_json_data)
|
||||||
return dict(video=video_json)
|
return dict(video=video_json)
|
||||||
|
|
||||||
@ -336,7 +336,7 @@ class ContentApi:
|
|||||||
|
|
||||||
if 'video' in data and data['video']:
|
if 'video' in data and data['video']:
|
||||||
# We have found detailed episode information
|
# We have found detailed episode information
|
||||||
episode = self._parse_episode_data(data['video'])
|
episode = self._parse_clip_data(data['video'])
|
||||||
return episode
|
return episode
|
||||||
|
|
||||||
if 'program' in data and 'episode' in data and data['program'] and data['episode']:
|
if 'program' in data and 'episode' in data and data['program'] and data['episode']:
|
||||||
@ -696,6 +696,19 @@ class ContentApi:
|
|||||||
)
|
)
|
||||||
return episode
|
return episode
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _parse_clip_data(data):
|
||||||
|
""" Parse the Clip JSON.
|
||||||
|
:type data: dict
|
||||||
|
:rtype Episode
|
||||||
|
"""
|
||||||
|
episode = Episode(
|
||||||
|
uuid=data.get('videoUuid'),
|
||||||
|
program_title=data.get('title'),
|
||||||
|
title=data.get('title'),
|
||||||
|
)
|
||||||
|
return episode
|
||||||
|
|
||||||
def _get_url(self, url, params=None, authentication=None):
|
def _get_url(self, url, params=None, authentication=None):
|
||||||
""" Makes a GET request for the specified URL.
|
""" Makes a GET request for the specified URL.
|
||||||
:type url: str
|
:type url: str
|
||||||
|
@ -55,7 +55,7 @@ class TestApi(unittest.TestCase):
|
|||||||
self.assertIsInstance(program.episodes[0], Episode)
|
self.assertIsInstance(program.episodes[0], Episode)
|
||||||
|
|
||||||
def test_clips(self):
|
def test_clips(self):
|
||||||
for program in ['gert-late-night']:
|
for program in ['de-tafel-van-vier']:
|
||||||
program = self._api.get_program(program, extract_clips=True, cache=CACHE_PREVENT)
|
program = self._api.get_program(program, extract_clips=True, cache=CACHE_PREVENT)
|
||||||
|
|
||||||
self.assertIsInstance(program.clips, list)
|
self.assertIsInstance(program.clips, list)
|
||||||
|
Loading…
Reference in New Issue
Block a user