Coder Social home page Coder Social logo

Comments (9)

Otiel avatar Otiel commented on May 23, 2024 3

I've released a new version with @ajsnyde changes.

from bandcampdownloader.

Otiel avatar Otiel commented on May 23, 2024 1

I could add that as an option. I don't feel confident setting infinite retries by default because that would induce a lot of network requests for nothing if for some reason you let the program work and Bandcamp is blocking you.

from bandcampdownloader.

beatcracker avatar beatcracker commented on May 23, 2024 1

Thanks!

P.S> Something like exponential backoff could be used for infinite retires, so we don't flood Bandcamp with requests.

from bandcampdownloader.

ajsnyde avatar ajsnyde commented on May 23, 2024 1

I've created a partial workaround here:
25bb3e9
In summary, you can change the number of retries indirectly through the json settings file. Good luck, and let me know if that works.
I'm plan to add the retry strategy soon.

from bandcampdownloader.

ajsnyde avatar ajsnyde commented on May 23, 2024 1

See comments and changes here: ajsnyde@73bc604

"Added retry cooldown settings. DownloadRetryCooldown can be set, which puts the application to sleep after each failed attempt to download (in seconds). DownloadRetryExponential Can be set to increase the cooldown with each successive failed attempt. Default values of 0.0 and 1.0 should leave the application running as it does without this commit. After a little experimentation, I found that using 0.2 seconds and 2.0 exponential factor, and 7 DownloaddMaxTries prevents all failures. I am unable to "spam out" the service and not get my album/songs. All of these settings must be set using the json settings file. master"

I've added two more properties to the settings file. As a quick reminder, you will need to re-save your settings file and then edit the values for these changes to take effect.

from bandcampdownloader.

Otiel avatar Otiel commented on May 23, 2024

The thing is, I don't know how the Bandcamp anti-spam filter works. I'll have to do some tests in order to see if waiting between retries would be enough (maybe they're blocking the download of the particular song until you try to download another one... there's a lot of possibilities here).

from bandcampdownloader.

beatcracker avatar beatcracker commented on May 23, 2024

If you could provide me with test case (request log or something), I probably could make simple PowerShell script that will d/l files with configurable delays. This'll make it easier to run tests with reproducible results.

from bandcampdownloader.

ajsnyde avatar ajsnyde commented on May 23, 2024

@Otiel Mind if I give this feature a go? I'd use a spinner for retries, with a combobox for exponential backoff strategy. Alternatively, I can create a little option bar/window on the top rail if needed.

from bandcampdownloader.

Otiel avatar Otiel commented on May 23, 2024

@ajsnyde If you can work something out, be my guest.

from bandcampdownloader.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.