Giter VIP home page Giter VIP logo

zspotify's Introduction

zspotify

Docker Pulls Docker Stars Docker Image Size Github stars Github forks Github last-commit Github license

Find us at:

  • GitHub - GitHub of this repository.
  • DockerHub - DockerHub of this repository.
  • Discord - Discord of this repository.

Fork of https://github.com/Footsiefat/zspotify

Spotify song downloader without injecting into the windows client

Docker:

  docker run --rm -it -v $(pwd)/docker/config:/root/.config/ZSpotify -v $(pwd)/docker/download:/root/Music jsavargas/zspotify
  
  docker-compose run --rm zspotify

  docker-compose run --rm zspotify -ls

  docker-compose run --rm zspotify -p

  docker-compose run --rm zspotify "Queen"

  

Requirements:

Binaries
    - Python 3.9 or greater
    - ffmpeg*

Python packages:
    - pip install -r requirements.txt

*ffmpeg can be installed via apt for Debian-based distros or by downloading the binaries from ffmpeg.org and placing them in your %PATH% in Windows.

Command line usage:
  python zspotify.py                              Loads search prompt to find then download a specific track, album or playlist

Extra command line options:
  -p, --playlist          Downloads a saved playlist from your account
  -ls, --liked-songs      Downloads all the liked songs from your account
  -pid, --playlist-id [id] [folder_name]  Downloads a playlist from their id and saves in folder_name. This playlist can be created by other user, not only your playlists. 

Special hardcoded options:
  ROOT_PATH           Change this path if you don't like the default directory where ZSpotify saves the music

  SKIP_EXISTING_FILES Set this to False if you want ZSpotify to overwrite files with the same name rather than skipping the song

  MUSIC_FORMAT        Set this to "ogg" if you would rather that format audio over "mp3"
  RAW_AUDIO_AS_IS     Set this to True to only stream the audio to a file and do no re-encoding or post processing
  
  FORCE_PREMIUM       Set this to True if ZSpotify isn't automatically detecting that you are using a premium account

  LIMIT_ELEMENTS      Set limit of elements brought in the list, by default 50 elements in each category
  

Changelog:

v1.9.9 (03 Feb 2023)

  • Sort playlists by name / MauritzFunke

v1.9.8 (01 Feb 2023)

  • Fix album without image / jlsalvador/fix-album-without-image
  • Add egg name for librespot-python dependency (Fix) / scarlettekk

v1.9.7 (29 Dic 2022)

  • Sum the size of the images, compares and saves the index of the largest image size

v1.9.4 (14 Oct 2022)

  • add cover 640x640

v1.9.3 (30 Sep 2022)

  • add KeyboardInterrupt control - Control + C

v1.9.2 (19 Aug 2022)

v1.9.1 (19 Aug 2022)

  • Added extra option to download a playlist with the playlist-id. This playlist doesn't need be yours, it can be from other user.

v1.9 (20 Jun 2022):

  • Fix fails at 87%

v1.8 (23 Oct 2021):

  • exclude album_type single
  • Added progress bar for downloads.
  • Changed welcome banner and removed unnecessary debug print statements.
  • Show single progress bar for entire album.
  • Added a small delay between downloading each track when downloading in bulk to help with downloading issues and potential bans.

v1.7 (21 Oct 2021):

  • Added docker support
  • Added range download example 1-10 example: SELECT ITEM BY ID: 1-10
  • Added download all albums by artist
  • Added subfolders for each disc
  • Naming tracks: "artist - album - track-number. name"
  • Setting Limit in 50 items

v1.6 (20 Oct 2021):

  • Added Pillow to requirements.txt.
  • Removed websocket-client from requirements.txt because librespot-python added it to their dependency list.
  • Made it hide your password when you type it in.
  • Added manual override to force premium quality if zspotify cannot auto detect it.
  • Added option to just download the raw audio with no re-encoding at all.
  • Added Shebang line so it runs smoother on Linux.
  • Made it download the entire track at once now so it is more efficent and fixed a bug users encountered.

zspotify's People

Contributors

atahabaki avatar bionded avatar jlsalvador avatar joonas-fi avatar jsavargas avatar mauritzfunke avatar niclimcy avatar nopeless avatar ruhrscholz avatar scarlettekk avatar seut avatar vicdominguez 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.