From 4a3e4b375796a1707df57956ccd1a5de1d1b957e Mon Sep 17 00:00:00 2001 From: Gwendal Date: Wed, 8 Aug 2018 00:34:00 +0200 Subject: [PATCH] Add README --- README.md | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 53 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d000771..2a2c511 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,54 @@ -# bandcamp-collection-downloader +# Bandcamp collection downloader +A command-line tool to automatically download all albums of a Bandcamp collection. + + +``` +Usage:
[-h] -c= [-d=] [-f=] + The bandcamp user account from which all albums must be downloaded. + -c, --cookies-file= + A JSON file with valid bandcamp credential cookies. + "Cookie Quick Manager" can be used to obtain this file after logging into bandcamp. + (visit https://addons.mozilla.org/en-US/firefox/addon/cookie-quick-manager/). + -d, --download-folder= + The folder in which downloaded albums must be extracted. + The following structure is considered: // - . + -f, --audio-format= + The chosen audio format of the files to download (default: vorbis). + Possible values: flac, wav, aac-hi, mp3-320, aiff-lossless, vorbis, mp3-v0, alac. + -h, --help Display this help message. + +``` + +### Usage + +This tool does not manage authentication with Bandcamp servers, as they require a valid token from Google Captcha. +Hence, authentication must first be achieved using Firefox, then Bandcamp cookies must be exported in JSON using the Firefox Addon [Cookie Quick Manager](https://addons.mozilla.org/en-US/firefox/addon/cookie-quick-manager/). +This JSON file can then be used using the mandatory parameter `--cookies-file`: + +### Usage + +Example of command: + +```dtd +$ java -jar bandcamp-collection-downloader-all.jar --cookies-file=cookies.json --download-folder=~/Music myBandcampIdentifier +``` + +This will download all albums ever bought by the Bandcamp account *myBandcampIdentifier*, +and extract the music in the folder `~/Music`, +The tool always creates one folder per artist, each containing one folder per album (with the format ` - `). + +### Compiling + +Compilation is handled by Gradle. +A task `fatJar` is available to build a standalone executable jar with all dependencies: + +``` +$ git clone https://framagit.org/Gwendal/bandcamp-collection-downloader.git +$ cd bandcamp-collection-downloader +$ gradle fatjar +``` + +The resulting binary can then be found in `build/libs/bandcamp-collection-downloader-all.jar`. + + \ No newline at end of file