[cleanup] Fix flake8 and minor refactor

Issues from ab029d7e92, 1fb53b946c
This commit is contained in:
pukkandan 2022-09-27 08:32:57 +05:30
parent 709ee21417
commit 7a32c70d13
No known key found for this signature in database
GPG Key ID: 7EEE9E1E817D0A39
2 changed files with 20 additions and 29 deletions

View File

@ -30,6 +30,7 @@ from ..utils import (
clean_html,
datetime_from_str,
dict_get,
filter_dict,
float_or_none,
format_field,
get_first,
@ -617,7 +618,7 @@ class YoutubeBaseInfoExtractor(InfoExtractor):
if auth is not None:
headers['Authorization'] = auth
headers['X-Origin'] = origin
return {h: v for h, v in headers.items() if v is not None}
return filter_dict(headers)
def _download_ytcfg(self, client, video_id):
url = {
@ -672,20 +673,10 @@ class YoutubeBaseInfoExtractor(InfoExtractor):
if next_continuation:
return next_continuation
contents = []
for key in ('contents', 'items', 'rows'):
contents.extend(try_get(renderer, lambda x: x[key], list) or [])
for content in contents:
if not isinstance(content, dict):
continue
continuation_ep = try_get(
content, (lambda x: x['continuationItemRenderer']['continuationEndpoint'],
lambda x: x['continuationItemRenderer']['button']['buttonRenderer']['command']),
dict)
continuation = cls._extract_continuation_ep_data(continuation_ep)
if continuation:
return continuation
return traverse_obj(renderer, (
('contents', 'items', 'rows'), ..., 'continuationItemRenderer',
('continuationEndpoint', ('button', 'buttonRenderer', 'command'))
), get_all=False, expected_type=cls._extract_continuation_ep_data)
@classmethod
def _extract_alerts(cls, data):
@ -4553,7 +4544,7 @@ class YoutubeTabBaseInfoExtractor(YoutubeBaseInfoExtractor):
uploader['uploader_url'] = urljoin(
'https://www.youtube.com/',
try_get(owner, lambda x: x['navigationEndpoint']['browseEndpoint']['canonicalBaseUrl'], str))
return {k: v for k, v in uploader.items() if v is not None}
return filter_dict(uploader)
def _extract_from_tabs(self, item_id, ytcfg, data, tabs):
playlist_id = title = description = channel_url = channel_name = channel_id = None