Miserlou / Miserlou/SoundScrape

[Suggestions] Avoid redownloads even without "-f" and add "-r" to allow redownloads

Open
#43 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
1.4k
Forks
143
PR merge metrics
No merged PRs in 30d

Description

I intend to implement these suggestions in the future, but I'm opening this "issue" to serve as a reminder and also to gather opinions about them.

First suggestion

In commit ee3f12a3c769185d6097f4c853ac7a1ddc1d0bea, I've set the Bandcamp scraper to never redownload songs, even if the "-f" flag is not specified. Simply put, I think this should be the default behaviour and should be replicated to all other scrapers. The specific code can currently be found between lines 294 and 311: https://github.com/Miserlou/SoundScrape/blob/master/soundscrape/soundscrape.py#L294-L311

Second suggestion

As I've also noted in commit ee3f12a3c769185d6097f4c853ac7a1ddc1d0bea, implementing the first suggestion could raise the idea of adding a "-r" flag, so the user may actually allow redownloads.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with soundscrape/soundscrape.py lines 294-311 and the referenced commit to understand the Bandcamp scraper's current no-redownload behavior. Trace how the other scrapers handle downloads and how command-line flags are defined; done means all scrapers avoid existing downloads by default and -r explicitly permits redownloading.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.