Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pixelmelt/scsuck
Downloads and keeps large soundcloud artist libraries up to date.
https://github.com/pixelmelt/scsuck
library-management music music-downloader music-library soundcloud soundcloud-downloader
Last synced: about 2 months ago
JSON representation
Downloads and keeps large soundcloud artist libraries up to date.
- Host: GitHub
- URL: https://github.com/pixelmelt/scsuck
- Owner: PixelMelt
- Created: 2024-10-28T03:00:03.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-28T03:04:15.000Z (3 months ago)
- Last Synced: 2024-10-28T06:44:54.865Z (3 months ago)
- Topics: library-management, music, music-downloader, music-library, soundcloud, soundcloud-downloader
- Language: JavaScript
- Homepage:
- Size: 18.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SCSuck
#### Sucks down songs so you dont have to!SCSuck is a SoundCloud library downloader that helps you automatically download your entire SoundCloud music collection. Think of it like [Deemon](https://github.com/digitalec/deemon) but for soundcloud.
This tool lets you plug in an artist name and bulk download everything they've produced, it adds them to a database so that you can download new songs from every artist you've collected with a single command without needing to manually enter names, all with with proper metadata and album artwork.
Perfect for backing up your SoundCloud following lists, and artist collections.\> scsuck
\> look inside
\> sucksThis program was made for linux and may get hung up on crazy filenames on other OS's
probably? maybe? I havent tested it# Features
- encodes hifi downloads to .flac
- download specific artists
- held together with duck tape
- download any new releases from all artists you added
- tags downloaded files with correct metadata and covers
- uses a ridiculus amount of disk space
- full album folders, every song is tagged as a single or album
- no checks to stop it from using all of your disk space
- download all the people a user is following# Requirements
`ffmpeg` must be accessable via CLIFor debian based systems:
```BASH
sudo apt install ffmpeg
```You must provide a soundcloud user api key and put it in config.json
From: [Soundcloud.ts](https://github.com/Moebits/soundcloud.ts):
> Soundcloud has closed down their API applications, but you are still able to get your client id and oauth token by inspecting the network traffic.
> - Go to soundcloud.com and login (skip if you are already logged in)
> - Open up the dev tools (Right click -> inspect) and go to the Network tab
> - Go to soundcloud.com, and you should see a bunch of requests in the network tab
> - Find the request that has the name `session` (you can filter by typing `session` in the filter box) and click on it
> - Go to the Payload tab
> - You should see your client id in the Query String Parameters section, and your oauth token (`access_token`) in the Request Payload section# How to use
```BASH
git clone https://github.com/PixelMelt/SCSuck
cd SCSuck
npm i
npm i https://github.com/PixelMelt/soundcloud.ts # make sure you have the latest api lib
*edit config.json in the src folder*
node src/index.js --help
```# Roadmap
- backups probably
- detect deleted tracks/artists
- download bandcamp too? maybe out of scope
- dont use child process
- command to remove artists from list
- a hard exclusion list so you dont re add someone by accident?# Thanks
- to [Moebits](https://github.com/Moebits/) for their project [Soundcloud.ts](https://github.com/Moebits/soundcloud.ts)