Skip to main content

An automated music downloading service

Project description


version number: 0.1.0

author: Daniel Schwabacher

The short version: Cranberry is a command line solution to easily batch download music from youtube. It sits atop youtube-dl and allows you to upload plaintext files containing song names, which are then downloaded to a directory of your choosing.

The longer one: Cranberry is a complete rewrite of a former project of mine known as autoSong. Like Cranberry, autoSong was a solution to batch download music, however, autoSong had a number of design shortcomings and, as such, is no longer supported in favor of Cranberry. Cranberry is MUCH more user friendly, secure, maintainable and extensible. The ultimate goal of Cranberry is to provide a versatile and customizable music downloading experience through a simple and universal medium (plaintext files).


Cranberry is pip-installable
(the tar distros are here:

To install it, run:
```sudo pip install cranberry```

The cranberry user guide/workflow:

###### Cranberry really only needs two things:

1.) A plaintext file (.txt) which contains a list of songs that cranberry should download. The default is songsList.txt located in the user's home directory.

2.) A directory which cranberry will download the songs to. The default is CranberryMusic/ again located in the user's home directory.

First, we'll run cranberry with the default settings (no flags):
Simple. This will cause cranberry to look for the file: **~/songsList.txt**. If it is there, cranberry will download all of the songs located in **songsList.txt** to the directory: **~/CranberryMusic/**.
**Note: Cranberry will automatically create the download directory if it doesn't exist.**

Second, we'll specify different song files and directories to download from and to, respectively.

cranberry -o ~/OtherMusicFiles/ -s ~/other_song_file.txt
Cool, don't be alarmed by these flags. The first flag (-o) is followed by a directory that cranberry will download to. The second flag (-s) is followed by a plaintext file called other_song_file that cranberry will parse songs from.

The built-in cranberry help menu details all the possible flags cranberry accepts, to show it, simply run:
cranberry -h

A few notes
This is a very early version of cranberry (v0.0.3). As such, you can expect significant changes to it in the future (for example, I plan to remove the defaults before the next release to simplify things). There are also probably lots of bugs, I haven't even written tests yet. Hopefully, these docs are enough to get you started using cranberry.

A final disclaimer
It's no secret that cranberry could potentially be used to download copyrighted work off of youtube (you shouldn't use it for this though). By using this software, you agree that I will not be held responsible for any implications of you downloading or distributing copyrighted work through cranberry.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for cranberry, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size cranberry-0.1.0.tar.gz (7.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page