summaryrefslogtreecommitdiffstats
path: root/yt_dlp/extractor/spreaker.py
diff options
context:
space:
mode:
Diffstat (limited to 'yt_dlp/extractor/spreaker.py')
-rw-r--r--yt_dlp/extractor/spreaker.py23
1 files changed, 11 insertions, 12 deletions
diff --git a/yt_dlp/extractor/spreaker.py b/yt_dlp/extractor/spreaker.py
index 36a9bd2..d1df459 100644
--- a/yt_dlp/extractor/spreaker.py
+++ b/yt_dlp/extractor/spreaker.py
@@ -1,7 +1,6 @@
import itertools
from .common import InfoExtractor
-from ..compat import compat_str
from ..utils import (
float_or_none,
int_or_none,
@@ -16,26 +15,26 @@ def _extract_episode(data, episode_id=None):
title = data['title']
download_url = data['download_url']
- series = try_get(data, lambda x: x['show']['title'], compat_str)
- uploader = try_get(data, lambda x: x['author']['fullname'], compat_str)
+ series = try_get(data, lambda x: x['show']['title'], str)
+ uploader = try_get(data, lambda x: x['author']['fullname'], str)
thumbnails = []
for image in ('image_original', 'image_medium', 'image'):
- image_url = url_or_none(data.get('%s_url' % image))
+ image_url = url_or_none(data.get(f'{image}_url'))
if image_url:
thumbnails.append({'url': image_url})
def stats(key):
return int_or_none(try_get(
data,
- (lambda x: x['%ss_count' % key],
- lambda x: x['stats']['%ss' % key])))
+ (lambda x: x[f'{key}s_count'],
+ lambda x: x['stats'][f'{key}s'])))
def duration(key):
return float_or_none(data.get(key), scale=1000)
return {
- 'id': compat_str(episode_id or data['episode_id']),
+ 'id': str(episode_id or data['episode_id']),
'url': download_url,
'display_id': data.get('permalink'),
'title': title,
@@ -97,7 +96,7 @@ class SpreakerIE(InfoExtractor):
def _real_extract(self, url):
episode_id = self._match_id(url)
data = self._download_json(
- 'https://api.spreaker.com/v2/episodes/%s' % episode_id,
+ f'https://api.spreaker.com/v2/episodes/{episode_id}',
episode_id)['response']['episode']
return _extract_episode(data, episode_id)
@@ -116,7 +115,7 @@ class SpreakerPageIE(InfoExtractor):
(r'data-episode_id=["\'](?P<id>\d+)',
r'episode_id\s*:\s*(?P<id>\d+)'), webpage, 'episode id')
return self.url_result(
- 'https://api.spreaker.com/episode/%s' % episode_id,
+ f'https://api.spreaker.com/episode/{episode_id}',
ie=SpreakerIE.ie_key(), video_id=episode_id)
@@ -133,8 +132,8 @@ class SpreakerShowIE(InfoExtractor):
def _entries(self, show_id):
for page_num in itertools.count(1):
episodes = self._download_json(
- 'https://api.spreaker.com/show/%s/episodes' % show_id,
- show_id, note='Downloading JSON page %d' % page_num, query={
+ f'https://api.spreaker.com/show/{show_id}/episodes',
+ show_id, note=f'Downloading JSON page {page_num}', query={
'page': page_num,
'max_per_page': 100,
})
@@ -169,5 +168,5 @@ class SpreakerShowPageIE(InfoExtractor):
show_id = self._search_regex(
r'show_id\s*:\s*(?P<id>\d+)', webpage, 'show id')
return self.url_result(
- 'https://api.spreaker.com/show/%s' % show_id,
+ f'https://api.spreaker.com/show/{show_id}',
ie=SpreakerShowIE.ie_key(), video_id=show_id)