iheanyi / bandcamp-dl

Simple python script to download Bandcamp albums

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Use less verbose output when finish album download

nrlquaker opened this issue · comments

Is your feature request related to a problem? Please describe.
More like a UI tweak than feature request.
When album is downloaded, the app shows last finished track.

bandcamp-dl https://sivyjyar.bandcamp.com/album/golden-threads
(6/6) [==================================================] :: Finished:  Footsteps Shimmer Silver in the Dew...

Describe the solution you'd like
Completely remove output after progress indicator. To be like:

bandcamp-dl https://sivyjyar.bandcamp.com/album/golden-threads
(6/6) [==================================================]

It makes no sense for me to show latest track stats. The other way around is to show album name:

bandcamp-dl https://sivyjyar.bandcamp.com/album/golden-threads
(6/6) [==================================================] :: Finished:  Golden Threads

But its to verbose because album name is part of the link in this case.
I prefer first solution.

Describe alternatives you've considered
Use it like it is)

Additional context
None.

Don't see how this would be an improvement, instead you would have no idea what track its on (Without comparing track number against track list on the site) or what stage of the download and metadata embedding process its on. It does show more than what track finished downloading last, it also tells you if its downloading, embedding the metadata, renaming, finished, or being skipped as it already exists in the directory, it just happens fairly fast on most peoples systems.

Unless you mean specifically as an album finishes downloading and not as its downloading tracks, even then I don't see a reason to change it, people using it are either going to start another download in which case the terminal will wipe the output or close their terminal entirely.

Best possible change in this scenario would be:

bandcamp-dl https://sivyjyar.bandcamp.com/album/golden-threads
(6/6) [==================================================] :: Complete!

Or something to make it obvious the entire process is done, though simply seeing (6/6) (or however many tracks) and "Finished" should make that immediately obvious.

If it bothers anyone enough simply add:

print_clean(f'\r({self.track_num}/{self.num_tracks}) [{"=" * done}{" " * (50 - done)}] :: Complete!')

Above:

if os.path.isfile(f"{self.directory}/{__version__}.not.finished"):

As the print_clean() function wipes the output then prints.

If you are attempting to do something with bandcamp-dl that relies on the output being a certain way let me know and maybe I can help you.

Don't see how this would be an improvement, instead you would have no idea what track its on (Without comparing track number against track list on the site) or what stage of the download and metadata embedding process its on.

My point is if all tracks downloaded successfully just show that album download if complete. Without info about last track.

I got your point. But at user perspective when you download an album you are interested of the status of the album - is it downloaded or not. Not sure if individual track status makes makes sense. In case it says that full album is downloaded and last track is downloaded as well.
I don't want to make changes in the local script. Updating it using brew or such will remove all local changes.
If you don't want to make any changes please close the issue.

Bandcamp-dl supports more than whole album downloads, it does individual tracks as well and once I get around to it music videos so I would prefer to display the status of each type of item in the download queue.