-# coding: utf-8
-from __future__ import unicode_literals
-
import re
from .common import InfoExtractor
from ..utils import (
- determine_ext,
+ NO_DEFAULT,
ExtractorError,
+ determine_ext,
float_or_none,
get_element_by_class,
int_or_none,
js_to_json,
- NO_DEFAULT,
parse_iso8601,
remove_start,
strip_or_none,
error = response.get('error')
if error:
raise ExtractorError(
- '%s said: %s' % (self.IE_NAME, error['message']), expected=True)
+ '{} said: {}'.format(self.IE_NAME, error['message']), expected=True)
video = response['result'].get('0')
'vbr': float_or_none(f.get('video_bitrate')),
})
formats.append(http_f)
- self._sort_formats(formats)
meta = video.get('meta', {})
}]
def _real_extract(self, url):
- mobj = re.match(self._VALID_URL, url)
+ mobj = self._match_valid_url(url)
display_id, video_id = mobj.group('display_id', 'id')
webpage = self._download_webpage(url, display_id)
video_id = remove_start(current_clip_info['ckmId'], 'mvp:')
video_name = url_basename(current_clip_info['url'])
- if self.get_param('noplaylist'):
- self.to_screen(
- 'Downloading just video %s because of --no-playlist' % video_name)
+ if not self._yes_playlist(channel_id, video_name, playlist_label='channel'):
return self._extract_from_id(video_id, webpage)
- self.to_screen(
- 'Downloading channel %s - add --no-playlist to just download video %s' % (
- channel_id, video_name))
matches = re.findall(
- r'<a[^>]+href=[\'"](%s[a-z]+/[0-9a-z-]+/[0-9a-z]+)' % self._URL_BASE_RE,
+ rf'<a[^>]+href=[\'"]({self._URL_BASE_RE}[a-z]+/[0-9a-z-]+/[0-9a-z]+)',
webpage)
entries = [
self.url_result(video_link, OnetIE.ie_key())
mvp_id = self._search_mvp_id(webpage)
return self.url_result(
- 'onetmvp:%s' % mvp_id, OnetMVPIE.ie_key(), video_id=mvp_id)
+ f'onetmvp:{mvp_id}', OnetMVPIE.ie_key(), video_id=mvp_id)