Spotify playlist/track information to json, mp4 and mp3 converter, written in GoLang.
! FFMPEG is required for this project to work !
-
SongMan will take playlist or track link from spotify and make sure its a valid link.
-
Content will be turned into blueprint and exported in
blueprintsdirectory withplaylist/trackname and.jsonfile extension -
If specified, blueprints will be used to find the corresponding video on Youtube and download it in
videosdirectory with.mp4file extension. -
If downloaded, mp3 will be extracted from mp4 videos into the
musicdirecotry with.mp3file extension.
-
Clone the project:
git clone https://github.com/FinnTheHero/SongMan.git && cd Songman
-
Create
.envfile:mkdir .env
-
Put your Spotify client id & secret and 2 of Youtube Data API keys in
.envfile:CLIENT_ID="" CLIENT_SECRET="" YOUTUBE_API_KEY_1="" YOUTUBE_API_KEY_2=""2 API keys for youtube is optional, you can use only one if you want so. However, you have to change it on your own in the code
src/download/youtube.gowhen calling functionGetVideo(). -
Run the project:
go run . -link "https://open.spotify.com/playlist/3cEYpjA9oz9GiPac4AsH4n"
Add
-download trueoption to attempt downloading. However, this requiresffmpegto be installed on the device. This method will also extract audio as an mp3 from downloaded videos.go run . -link "https://open.spotify.com/playlist/3cEYpjA9oz9GiPac4AsH4n" -download true
-
This is unethical and illegal in some cases.
-
Youtube Data API provides 100 API calls a day so you are limited to 100 downloads a day.
This does not affect blueprint extraction.
Author takes no responsibility of how you use this project!