Browse Source

Add README

master
Gwendal 7 years ago
parent
commit
4a3e4b3757
1 changed files with 53 additions and 1 deletions
  1. +53
    -1
      README.md

+ 53
- 1
README.md View File

@ -1,2 +1,54 @@
# bandcamp-collection-downloader
# Bandcamp collection downloader
A command-line tool to automatically download all albums of a Bandcamp collection.
```
Usage: <main class> [-h] -c=<pathToCookiesFile> [-d=<pathToDownloadFolder>] [-f=<audioFormat>] <bandcampUser>
<bandcampUser> The bandcamp user account from which all albums must be downloaded.
-c, --cookies-file=<pathToCookiesFile>
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=<pathToDownloadFolder>
The folder in which downloaded albums must be extracted.
The following structure is considered: <pathToDownloadFolder>/<artist>/<year> - <album>.
-f, --audio-format=<audioFormat>
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 `<year> - <album name>`).
### 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`.

Loading…
Cancel
Save