Giter Site home page Giter Site logo

scdl's Introduction

Soundcloud Music Downloader PyPI version

Description

This script is able to download music from SoundCloud and set id3tag to the downloaded music. Compatible with Windows, OS X, Linux.

System requirements

  • Python3

Instructions

Installation

pip3 install scdl

or

git clone https://github.com/flyingrub/scdl.git && cd scdl
python3 setup.py install

or

Gentoo

layman -fa glicOne
sudo emerge -av net-misc/scdl

(Optional) Setup your path and your auth_token in $HOME/.config/scdl/scdl.cfg

Authentication

Soundcloud has banned all our client_id so we cannot use authentication for now.

  • This allows scdl to access to your user profile data.
  • You need to have this set to be able to use the me option

Help

Examples:

# Download track & repost of the user QUANTA
scdl -l https://soundcloud.com/quanta-uk -a

# Download likes of the user Blastoyz
scdl -l https://soundcloud.com/kobiblastoyz -f

# Download one track
scdl -l https://soundcloud.com/jumpstreetpsy/low-extender

# Download one playlist
scdl -l https://soundcloud.com/pandadub/sets/the-lost-ship

# Download only new tracks from a playlist
scdl -l https://soundcloud.com/pandadub/sets/the-lost-ship --download-archive archive.txt -c

# Download your likes (with authentification token)
scdl me -f

Options:

    -h --help                   Show this screen
    --version                   Show version
    me                          Use the user profile from the auth_token
    -l [url]                    URL can be track/playlist/user
    -s                          Download the stream of a user (token needed)
    -a                          Download all tracks of user (including reposts)
    -t                          Download all uploads of a user (no reposts)
    -f                          Download all favorites of a user
    -C                          Download all commented by a user
    -p                          Download all playlists of a user
    -m                          Download all liked and owned playlists of user
    -c                          Continue if a downloaded file already exists
    -o [offset]                 Begin with a custom offset
    --addtimestamp              Add track creation timestamp to filename, which allows for chronological sorting
    --addtofile                 Add artist to filename if missing
    --debug                     Set log level to DEBUG
    --download-archive [file]   Keep track of track IDs in an archive file, and skip already-downloaded files
    --error                     Set log level to ERROR
    --extract-artist            Set artist tag from title instead of username
    --hide-progress             Hide the wget progress bar
    --hidewarnings              Hide Warnings. (use with precaution)
    --max-size [max-size]       Skip tracks larger than size (k/m/g)
    --min-size [min-size]       Skip tracks smaller than size (k/m/g)
    --no-playlist-folder        Download playlist tracks into main directory, instead of making a playlist subfolder
    --onlymp3                   Download only the streamable mp3 file, even if track has a Downloadable file
    --path [path]               Use a custom path for downloaded files
    --remove                    Remove any files not downloaded from execution

Features

  • Automatically detect the type of link provided
  • Download all songs from a user
  • Download all songs and reposts from a user
  • Download all songs from one playlist
  • Download all songs from all playlists from a user
  • Download all songs from a user's favorites
  • Download only new tracks from a list (playlist, favorites, etc.)
  • Set the tags with mutagen (Title / Artist / Album / Artwork)
  • Create playlist files when downloading a playlist

License

GPL v2, original author flyingrub

scdl's People

Contributors

davidfischer-ch avatar justintm avatar andreasnuesslein avatar zunayed avatar e2del avatar gs11 avatar devalnor avatar ppwfx avatar walshie4 avatar bradenbest avatar dutradda avatar gpchelkin avatar glitch-is avatar jatenate avatar madssj avatar nablaa avatar rozzy avatar rpryzant avatar spotlight0xff avatar vboufleur avatar romaniukvadim avatar r00t- avatar redfast00 avatar tpenguinltg avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.