From 49bd8c66d3d7b6038b62d091e2dec1d599fdb90a Mon Sep 17 00:00:00 2001 From: coletdjnz Date: Thu, 15 Jul 2021 11:24:42 +1200 Subject: [PATCH] [youtube:comments] Improve comment vote count parsing (fixes #506) (#508) Authored by: colethedj --- yt_dlp/extractor/youtube.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py index 1b4f3960b2..a2abdc5036 100644 --- a/yt_dlp/extractor/youtube.py +++ b/yt_dlp/extractor/youtube.py @@ -40,6 +40,7 @@ intlist_to_bytes, mimetype2ext, parse_codecs, + parse_count, parse_duration, qualities, remove_start, @@ -1992,12 +1993,13 @@ def _extract_comment(self, comment_renderer, parent=None): text = self._join_text_entries(comment_text_runs) or '' comment_time_text = try_get(comment_renderer, lambda x: x['publishedTimeText']['runs']) or [] time_text = self._join_text_entries(comment_time_text) + # note: timestamp is an estimate calculated from the current time and time_text timestamp = calendar.timegm(self.parse_time_text(time_text).timetuple()) author = try_get(comment_renderer, lambda x: x['authorText']['simpleText'], compat_str) author_id = try_get(comment_renderer, lambda x: x['authorEndpoint']['browseEndpoint']['browseId'], compat_str) - votes = str_to_int(try_get(comment_renderer, (lambda x: x['voteCount']['simpleText'], - lambda x: x['likeCount']), compat_str)) or 0 + votes = parse_count(try_get(comment_renderer, (lambda x: x['voteCount']['simpleText'], + lambda x: x['likeCount']), compat_str)) or 0 author_thumbnail = try_get(comment_renderer, lambda x: x['authorThumbnail']['thumbnails'][-1]['url'], compat_str)