aboutsummaryrefslogtreecommitdiffstats
path: root/youtube/playlist.py
diff options
context:
space:
mode:
authorJames Taylor <user234683@users.noreply.github.com>2019-12-18 19:39:16 -0800
committerJames Taylor <user234683@users.noreply.github.com>2019-12-18 19:39:16 -0800
commit98777ee82561ae205f156a7f8497728aecfa080c (patch)
treeaaaf3e82dcdac00abda588b6cfb15e5382a49cd0 /youtube/playlist.py
parentee0a118a6c7ed0e371fed18dcdace1f18a3cabf6 (diff)
downloadyt-local-98777ee82561ae205f156a7f8497728aecfa080c.tar.lz
yt-local-98777ee82561ae205f156a7f8497728aecfa080c.tar.xz
yt-local-98777ee82561ae205f156a7f8497728aecfa080c.zip
Extraction: Rewrite item_extraction for better error handling and readability, rename extracted names for more consistency
Diffstat (limited to 'youtube/playlist.py')
-rw-r--r--youtube/playlist.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/youtube/playlist.py b/youtube/playlist.py
index bc2c417..ced0644 100644
--- a/youtube/playlist.py
+++ b/youtube/playlist.py
@@ -98,13 +98,19 @@ def get_playlist_page():
info['metadata'] = yt_data_extract.extract_playlist_metadata(first_page_json)
yt_data_extract.prefix_urls(info['metadata'])
- for item in info['items']:
+ for item in info.get('items', ()):
yt_data_extract.prefix_urls(item)
yt_data_extract.add_extra_html_info(item)
+ if 'id' in item:
+ item['thumbnail'] = '/https://i.ytimg.com/vi/' + item['id'] + '/default.jpg'
+
+ video_count = yt_data_extract.default_multi_get(info, 'metadata', 'video_count')
+ if video_count is None:
+ video_count = 40
return flask.render_template('playlist.html',
- video_list = info['items'],
- num_pages = math.ceil(info['metadata']['size']/20),
+ video_list = info.get('items', []),
+ num_pages = math.ceil(video_count/20),
parameters_dictionary = request.args,
**info['metadata']