-# coding: utf-8
-from __future__ import unicode_literals
-
import json
-import re
from .common import InfoExtractor
from ..compat import compat_HTTPError
_APP_VERSION = '1.1'
_APP_PUBLICATION_ID = 'all_in_one'
_API_URL = 'http://clientapi.hrt.hr/client_api.php/config/identify/format/json'
+ _token = None
- def _initialize_api(self):
+ def _initialize_pre_login(self):
init_data = {
'application_publication_id': self._APP_PUBLICATION_ID
}
self._logout_url = modules['user']['resources']['logout']['uri']
- def _login(self):
- username, password = self._get_login_info()
- # TODO: figure out authentication with cookies
- if username is None or password is None:
- self.raise_login_required()
-
+ def _perform_login(self, username, password):
auth_data = {
'username': username,
'password': password,
self._token = auth_info['secure_streaming_token']
def _real_initialize(self):
- self._initialize_api()
- self._login()
+ if not self._token:
+ # TODO: figure out authentication with cookies
+ self.raise_login_required(method='password')
class HRTiIE(HRTiBaseIE):
}]
def _real_extract(self, url):
- mobj = re.match(self._VALID_URL, url)
+ mobj = self._match_valid_url(url)
video_id = mobj.group('short_id') or mobj.group('id')
display_id = mobj.group('display_id') or video_id
formats = self._extract_m3u8_formats(
m3u8_url, display_id, 'mp4', entry_protocol='m3u8_native',
m3u8_id='hls')
- self._sort_formats(formats)
description = clean_html(title_info.get('summary_long'))
age_limit = parse_age_limit(video.get('parental_control', {}).get('rating'))
}]
def _real_extract(self, url):
- mobj = re.match(self._VALID_URL, url)
+ mobj = self._match_valid_url(url)
category_id = mobj.group('id')
display_id = mobj.group('display_id') or category_id