e
Find a file
2017-01-23 22:15:38 -08:00
irs Renamed from Ingenious to Ironic 2017-01-23 22:15:38 -08:00
.gitignore Laid down code for downloading of Spotify playlists. Nothing has actually changed yet. 2017-01-23 21:38:27 -08:00
LICENSE Initial commit 2016-07-07 18:24:47 -07:00
README.md Update README.md 2017-01-23 22:14:29 -08:00
setup.cfg Fixed bug with installing the package from pip 2016-12-10 22:56:50 -08:00
setup.py Laid down code for downloading of Spotify playlists. Nothing has actually changed yet. 2017-01-23 21:38:27 -08:00
test1.py Laid down code for downloading of Spotify playlists. Nothing has actually changed yet. 2017-01-23 21:38:27 -08:00

Ironic Redistribution System

License: GNU PyPI

Now with working album art!

Downloading of Spotify playlists coming soon!

An ironically named program to download audio from youtube and then parse metadata for the downloaded file.


Why the name?

As an acronym, it spells IRS. I think this is breathtakingly hilarious because the Internal Revenue Service (also the IRS) takes away, while my program gives. I'm so funny. You can tell that I'll get laid in college.

Usage and Examples

To download a specific song, you'll want to use the -s flag:

irs -a "David Bowie" -s "Ziggy Stardust"

To download an entire album, you'll want to use the -A flag:

irs -a "Milky Chance" -A "Sadnecessary"

If you want to download a playlist, you'll need to make a text file, such as Awesome Mix.txt. In the file, you'll want to write songs into it like this:

Hot Blood - Kaleo
Work Song - Hozier
Drop The Game - Flume & Chet Faker

Then, run a command like this where the playlist file resides:

irs -p "Awesome Mix.txt"

asciicast

asciicast

Full usage:

usage:
    irs (-h | -v)
    irs [-l]
    irs -p PLAYLIST [-ng] [-c COMMAND] [-l]
    irs -a ARTIST (-s SONG | -A ALBUM [-st SEARCH_TERMS]) [-c COMMAND] [-l]

Options:
  -h, --help            show this help message and exit
  -v, --version         Display the version and exit.
  -c COMMAND, --command COMMAND
                        Run a background command with each song's location.
                        Example: `-c "rhythmbox %(loc)s"`
  -a ARTIST, --artist ARTIST
                        Specify the artist name.
  -p PLAYLIST, --playlist PLAYLIST
                        Specify playlist filename. Each line in the file
                        should be formatted like so: `SONGNAME - ARTIST`
  -s SONG, --song SONG  Specify song name of the artist.
  -A ALBUM, --album ALBUM
                        Specify album name of the artist.
  -st SEARCH_TERMS, --search-terms SEARCH_TERMS
                        Only use if calling -A/--album. Acts as extra search
                        terms when looking for the album.
  -l, --choose-link     If supplied, will bring up a console choice for what
                        link you want to download based off a list of titles.
  -ng, --no-organize    Only use if calling -p/--playlist. Forces all files
                        downloaded to be organized normally.

Installation

Please note that it currently is only usable in Python 3.x. Almost all dependencies are automatically installed by pip, but youtube_dl still needs ffmpeg to convert video to audio, so for Windows, you can install Scoop and then just do:

$ scoop install ffmpeg

For OSX, you can use Brew to install ffmpeg:

$ brew install ffmpeg

And then for Ubuntu:

$ sudo apt-get install ffmpeg

Most other linux distros have ffmpeg or libav-tools in their package manager repos, so you can install one or the other for other distros.

Finally, install it!

$ pip install irs

Wishlist

  • Finds album based off of song name and artist
  • Full album downloading
  • Album art metadata correctly displayed
  • Playlist downloading
  • Spotify playlist downloading - Coming soon
  • GUI/Console interactive version - In progress
  • 100% success rate for automatic song choosing