From 7acb9f63a3acb7be79f29653283649ef93207721 Mon Sep 17 00:00:00 2001 From: "Ethan J. Hadley" Date: Sat, 19 Sep 2026 01:21:14 -0600 Subject: [PATCH] Fixed small artists --- happy_ripper.py | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/happy_ripper.py b/happy_ripper.py index 387740c..dbbcbd3 100644 --- a/happy_ripper.py +++ b/happy_ripper.py @@ -269,8 +269,11 @@ def rip_worker(rip_queue: list[str], status_callback: Callable): status_callback(f"Downloading content ({on_index})", False) download_content(tmp_path, url, MetadataPostProcessor(info, art_path, on_download_finish)) - if len(os.listdir(tmp_path)) == 0: - raise RipError("No content was downloaded") + + filelist = os.listdir(tmp_path) + filelist.remove("cover.jpg") + if len(filelist) == 0: + raise RipError("Nothing ripped, Try again") status_callback("Sorting content", False) destinations = sort_into_music(tmp_path, info) @@ -291,16 +294,24 @@ def get_all_playlists_from_channel(browseId: str) -> list[str]: yt = YTMusic() artist = yt.get_artist(browseId) albums_info = artist["albums"] - albums = yt.get_artist_albums( - albums_info["browseId"], - albums_info["params"], - limit=None, - ) - for album in albums: - playlist_id = album.get("playlistId") - if playlist_id: - urls.append(f"https://music.youtube.com/playlist?list={playlist_id}") + if "params" in albums_info: + albums = yt.get_artist_albums( + albums_info["browseId"], + albums_info["params"], + limit=None, + ) + + for album in albums: + playlist_id = album.get("playlistId") + if playlist_id: + urls.append(f"https://music.youtube.com/playlist?list={playlist_id}") + + else: + for album in artist["albums"]["results"]: + playlist_id = album.get("audioPlaylistId") + if playlist_id: + urls.append(f"https://music.youtube.com/playlist?list={playlist_id}") return urls