diff options
Diffstat (limited to 'youtube')
-rw-r--r-- | youtube/channel.py | 4 | ||||
-rw-r--r-- | youtube/common.py | 13 |
2 files changed, 14 insertions, 3 deletions
diff --git a/youtube/channel.py b/youtube/channel.py index f04ac45..96e85c8 100644 --- a/youtube/channel.py +++ b/youtube/channel.py @@ -80,8 +80,8 @@ def get_channel_tab(channel_id, page="1", sort=3, tab='videos', view=1): content = common.fetch_url(url, headers_1) print("Finished recieving channel tab response") - '''with open('debug/channel_debug', 'wb') as f: - f.write(content)''' + with open('debug/channel_debug', 'wb') as f: + f.write(content) info = json.loads(content) return info diff --git a/youtube/common.py b/youtube/common.py index 6994064..d9429a2 100644 --- a/youtube/common.py +++ b/youtube/common.py @@ -360,7 +360,18 @@ def renderer_info(renderer): info['views'] = get_text(renderer['viewCountText']) elif 'shortViewCountText' in renderer: info['views'] = get_text(renderer['shortViewCountText']) - + try: + overlays = renderer['thumbnailOverlays'] + except KeyError: + pass + else: + for overlay in overlays: + try: + info['duration'] = get_text(overlay['thumbnailOverlayTimeStatusRenderer']['text']) + except KeyError: + pass + else: + break for key, node in renderer.items(): if key in ('longBylineText', 'shortBylineText'): info['author'] = get_text(node) |