roughly finished search for youtube music
This commit is contained in:
parent
a52c441322
commit
a5b76648f5
@ -65,10 +65,20 @@ def music_responsive_list_item_renderer(renderer: dict) -> List[DatabaseObject]:
|
|||||||
|
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
|
||||||
|
def music_shelf_renderer(renderer: dict) -> List[DatabaseObject]:
|
||||||
|
result = []
|
||||||
|
for subrenderer in renderer.get("contents"):
|
||||||
|
result.extend(parse_renderer(subrenderer))
|
||||||
|
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
RENDERER_PARSERS = {
|
RENDERER_PARSERS = {
|
||||||
"musicCardShelfRenderer": music_card_shelf_renderer,
|
"musicCardShelfRenderer": music_card_shelf_renderer,
|
||||||
"musicResponsiveListItemRenderer": music_responsive_list_item_renderer,
|
"musicResponsiveListItemRenderer": music_responsive_list_item_renderer,
|
||||||
"musicResponsiveListItemFlexColumnRenderer": music_responsive_list_item_flex_column_renderer
|
"musicResponsiveListItemFlexColumnRenderer": music_responsive_list_item_flex_column_renderer,
|
||||||
|
"musicShelfRenderer": music_card_shelf_renderer,
|
||||||
}
|
}
|
||||||
|
|
||||||
def parse_renderer(renderer: dict) -> List[DatabaseObject]:
|
def parse_renderer(renderer: dict) -> List[DatabaseObject]:
|
||||||
|
@ -268,7 +268,16 @@ class YoutubeMusic(Page):
|
|||||||
dump_to_file(f"{i}-renderer.json", json.dumps(content), is_json=True, exit_after_dump=False)
|
dump_to_file(f"{i}-renderer.json", json.dumps(content), is_json=True, exit_after_dump=False)
|
||||||
|
|
||||||
results = []
|
results = []
|
||||||
|
|
||||||
|
"""
|
||||||
|
TODO
|
||||||
|
cant use fixed indices, because if something has no entries, the list dissappears
|
||||||
|
instead I have to try parse everything, and just reject community playlists and profiles.
|
||||||
|
"""
|
||||||
results.extend(parse_renderer(renderer_list[1]))
|
results.extend(parse_renderer(renderer_list[1]))
|
||||||
|
results.extend(parse_renderer(renderer_list[2]))
|
||||||
|
results.extend(parse_renderer(renderer_list[4]))
|
||||||
|
results.extend(parse_renderer(renderer_list[6]))
|
||||||
|
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user