irs | ||
tests | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
setup.cfg | ||
setup.py |
Ironic Redistribution System
A music downloader that understands your metadata needs.
A tool to download your music with metadata. It uses Spotify for finding metadata and list contents and uses Youtube for the actual audio.
Works with Python 2 and 3.
Demo and Usages
This is a demo of the CLI displayling its features:
The usages can be found with the -h
or --help
flag:
usage: irs [-h] [(-a ARTIST -s SONG)] [-A ALBUM] [(-u USERNAME -p PLAYLIST)]
optional arguments:
-h, --help show this help message and exit
-a ARTIST, --artist ARTIST
Specify artist name. Must be used with -s/--song
-s SONG, --song SONG Specify song name. Must be used with -a/--artist
-A ALBUM, --album ALBUM
Specify album name
-u USERNAME, --username USERNAME
Specify username. Must be used with -p/--playlist
-p PLAYLIST, --playlist PLAYLIST
Specify playlist name. Must be used with -u/--username
So all of these are valid commands:
$ irs -a "Brandon Flowers" -s "Lonely Town"
$ irs -u "spotify" -p "Brain Food"
$ irs -A "Suicide Squad: The Album"
But these are not:
$ irs -s "Bohemian Rhapsody"
$ irs -p "Best Nirvana"
Metadata
Currently, the program attaches the following metadata to the downloaded files:
- Title
- Artist
- Album
- Album Art
- Genre
- Track Number
- Disc Number
- Compilation (iTunes only)
Philosophy
When I made this program I was pretty much broke and my music addiction wasn't really helping that problem. So, I did the obvious thing: make an uber-complicated program to steal download music for me! As for the name, its acronym spells IRS, which I found amusing, seeing as the IRS takes steals money while my program gives reimburses you with music.
Wishlist
- Finds album based off of song name and artist
- Full album downloading
- Album art metadata correctly displayed
- Spotify playlist downloading
- GUI/Console interactive version - in progress
- Lyric metadata
- 99% success rate for automatic song choosing