rec-spotify


Namerec-spotify JSON
Version 1.8 PyPI version JSON
download
home_pagehttps://github.com/oSeeLight/rec-spotify
Summary📻 Record and sync Spotify tracks, albums, and playlists.
upload_time2023-08-10 15:54:39
maintainer
docs_urlNone
authorJacov Rainz
requires_python>=3.11,<4.0
licenseMIT
keywords spotify record
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 📻 Rec-Spotify

![](etc/screen.png)

The program allows you to record Spotify tracks, albums, and playlists with a single simple command. It is also able to fully synchronize your Spotify playlists to a local folder and keep them up-to-date. For now it works **only** on Windows.

Video Guide: [Watch](https://mega.nz/file/nV8XlKzT#yJhTn7TrQR_6TH3J-26-W2hBHL4W_auAAR0nkzwDsgs)

## Requirements

- Python3
- Spotify Premium (no ad blocking functionality)
- [Virtual Audio Cable](https://vb-audio.com/Cable) (recommended, read below)

## Install

```sh
pip install rec-spotify
```

## Usage

First, you need to create a Spotify app to obtain the credentials. You can create an app at the Spotify Developer Dashboard: https://developer.spotify.com/dashboard

Also change Spotify Output Device to Virtual Audio Cable: [Guide](https://youtu.be/EH-VzIpX7e0?t=86)

```sh
# Perform a full synchronization.
rec-spotify --sync

# Record single track/album/playlist.
# Spotify URL format example: https://open.spotify.com/track/42vwak6ZIFMscDhzz3S52f
# Output path format example: C:\Users\<username>\Desktop or just "." to save in current directory
rec-spotify --url <url> --path <where_to_save>

______                 _____             _   _  __       
| ___ \               /  ___|           | | (_)/ _|      
| |_/ /___  ___ ______\ `--. _ __   ___ | |_ _| |_ _   _ 
|    // _ \/ __|______|`--. \ '_ \ / _ \| __| |  _| | | |
| |\ \  __/ (__       /\__/ / |_) | (_) | |_| | | | |_| |
\_| \_\___|\___|      \____/| .__/ \___/ \__|_|_|  \__, |
                            | |                     __/ |
                            |_|                    |___/ 

usage: rec-spotify [-h] [-c] [-s] [-u URL] [-p PATH] [-v]

options:
  -h, --help            show this help message and exit
  -c, --check           Run database cleanup.
  -s, --sync            Synchronize all of your Spotify playlists with local music library.
  -r, --recreate        Create all tracks and playlists stored in the local database to the user`s Spotify account. (Useful for newly created account.)
  -u URL, --url URL     Spotify link or ID for a separate track, playlist, or album.
  -p PATH, --path PATH  The output directory for saving recorded files
  -v, --version         show program's version number and exit
```

## Configration

On the first run, the program will launch a setup wizard. This will prompt you to enter your Spotify app credentials and other required information.

The config file is located at: ```C:\Users\<username>\.rec_spotify\config.ini```

Config example:

```ini
[SPOTIFY]
CLIENT_ID = <SPOTIFY_CLIENT_ID>
CLIENT_SECRET = <SPOTIFY_CLIENT_SECRET>
REDIRECT_URL = <REDIRECT_URL>

[SETTINGS]
MUSIC_DIR = D:\Music
AUDIO_FORMAT = mp3
AUDIO_QUALITY = 320
TRIM_SILENCE = False
```

## FAQ

### 1. What is the purpose of this program?

The answer is simple: I want to have local copies of all my Spotify tracks and playlists in original quality. Because who knows maybe one day i will lose access to my account or something else will happen.

### 2. Why do I need Virtual Audio Cable?

Virtual Audio Cable installation is optional but highly recommended for improved recording quality. It also allows listening to other audio while recording.


## TODO

- [ ] Linux support.
- [x] Trim silence from beginning and end of track.
- [ ] Command-line interface for database management of tracks and playlists.
- [ ] Ad blocking.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/oSeeLight/rec-spotify",
    "name": "rec-spotify",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.11,<4.0",
    "maintainer_email": "",
    "keywords": "spotify,record",
    "author": "Jacov Rainz",
    "author_email": "oSeeLight@proton.me",
    "download_url": "https://files.pythonhosted.org/packages/6c/0d/7ac8154f1e30553e5a21b6a0a3d51cf07c1592949f89b6fda70e3ba7438d/rec_spotify-1.8.tar.gz",
    "platform": null,
    "description": "# \ud83d\udcfb Rec-Spotify\n\n![](etc/screen.png)\n\nThe program allows you to record Spotify tracks, albums, and playlists with a single simple command. It is also able to fully synchronize your Spotify playlists to a local folder and keep them up-to-date. For now it works **only** on Windows.\n\nVideo Guide: [Watch](https://mega.nz/file/nV8XlKzT#yJhTn7TrQR_6TH3J-26-W2hBHL4W_auAAR0nkzwDsgs)\n\n## Requirements\n\n- Python3\n- Spotify Premium (no ad blocking functionality)\n- [Virtual Audio Cable](https://vb-audio.com/Cable) (recommended, read below)\n\n## Install\n\n```sh\npip install rec-spotify\n```\n\n## Usage\n\nFirst, you need to create a Spotify app to obtain the credentials. You can create an app at the Spotify Developer Dashboard: https://developer.spotify.com/dashboard\n\nAlso change Spotify Output Device to Virtual Audio Cable: [Guide](https://youtu.be/EH-VzIpX7e0?t=86)\n\n```sh\n# Perform a full synchronization.\nrec-spotify --sync\n\n# Record single track/album/playlist.\n# Spotify URL format example: https://open.spotify.com/track/42vwak6ZIFMscDhzz3S52f\n# Output path format example: C:\\Users\\<username>\\Desktop or just \".\" to save in current directory\nrec-spotify --url <url> --path <where_to_save>\n\n______                 _____             _   _  __       \n| ___ \\               /  ___|           | | (_)/ _|      \n| |_/ /___  ___ ______\\ `--. _ __   ___ | |_ _| |_ _   _ \n|    // _ \\/ __|______|`--. \\ '_ \\ / _ \\| __| |  _| | | |\n| |\\ \\  __/ (__       /\\__/ / |_) | (_) | |_| | | | |_| |\n\\_| \\_\\___|\\___|      \\____/| .__/ \\___/ \\__|_|_|  \\__, |\n                            | |                     __/ |\n                            |_|                    |___/ \n\nusage: rec-spotify [-h] [-c] [-s] [-u URL] [-p PATH] [-v]\n\noptions:\n  -h, --help            show this help message and exit\n  -c, --check           Run database cleanup.\n  -s, --sync            Synchronize all of your Spotify playlists with local music library.\n  -r, --recreate        Create all tracks and playlists stored in the local database to the user`s Spotify account. (Useful for newly created account.)\n  -u URL, --url URL     Spotify link or ID for a separate track, playlist, or album.\n  -p PATH, --path PATH  The output directory for saving recorded files\n  -v, --version         show program's version number and exit\n```\n\n## Configration\n\nOn the first run, the program will launch a setup wizard. This will prompt you to enter your Spotify app credentials and other required information.\n\nThe config file is located at: ```C:\\Users\\<username>\\.rec_spotify\\config.ini```\n\nConfig example:\n\n```ini\n[SPOTIFY]\nCLIENT_ID = <SPOTIFY_CLIENT_ID>\nCLIENT_SECRET = <SPOTIFY_CLIENT_SECRET>\nREDIRECT_URL = <REDIRECT_URL>\n\n[SETTINGS]\nMUSIC_DIR = D:\\Music\nAUDIO_FORMAT = mp3\nAUDIO_QUALITY = 320\nTRIM_SILENCE = False\n```\n\n## FAQ\n\n### 1. What is the purpose of this program?\n\nThe answer is simple: I want to have local copies of all my Spotify tracks and playlists in original quality. Because who knows maybe one day i will lose access to my account or something else will happen.\n\n### 2. Why do I need Virtual Audio Cable?\n\nVirtual Audio Cable installation is optional but highly recommended for improved recording quality. It also allows listening to other audio while recording.\n\n\n## TODO\n\n- [ ] Linux support.\n- [x] Trim silence from beginning and end of track.\n- [ ] Command-line interface for database management of tracks and playlists.\n- [ ] Ad blocking.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "\ud83d\udcfb Record and sync Spotify tracks, albums, and playlists.",
    "version": "1.8",
    "project_urls": {
        "Homepage": "https://github.com/oSeeLight/rec-spotify",
        "Repository": "https://github.com/oSeeLight/rec-spotify"
    },
    "split_keywords": [
        "spotify",
        "record"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "19ec3a1b4fa652e1aa533f995060c4049cef2ee2188e87bddc2db0a95c2599e0",
                "md5": "14115f606c0f2b19661820da6d54718a",
                "sha256": "780b7544421bdb11fea165da2154c21fbf0d31ebf3af2f7d5cb7a9fef31da1f2"
            },
            "downloads": -1,
            "filename": "rec_spotify-1.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "14115f606c0f2b19661820da6d54718a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11,<4.0",
            "size": 20947,
            "upload_time": "2023-08-10T15:54:37",
            "upload_time_iso_8601": "2023-08-10T15:54:37.865060Z",
            "url": "https://files.pythonhosted.org/packages/19/ec/3a1b4fa652e1aa533f995060c4049cef2ee2188e87bddc2db0a95c2599e0/rec_spotify-1.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6c0d7ac8154f1e30553e5a21b6a0a3d51cf07c1592949f89b6fda70e3ba7438d",
                "md5": "869a87118a6e6d0f76af93530b7ccd38",
                "sha256": "3788c7937862897ac2b85d40beeaeacb06d9cafea1bbe233f4f5ec07e0ab27e1"
            },
            "downloads": -1,
            "filename": "rec_spotify-1.8.tar.gz",
            "has_sig": false,
            "md5_digest": "869a87118a6e6d0f76af93530b7ccd38",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11,<4.0",
            "size": 56057,
            "upload_time": "2023-08-10T15:54:39",
            "upload_time_iso_8601": "2023-08-10T15:54:39.574320Z",
            "url": "https://files.pythonhosted.org/packages/6c/0d/7ac8154f1e30553e5a21b6a0a3d51cf07c1592949f89b6fda70e3ba7438d/rec_spotify-1.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-10 15:54:39",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "oSeeLight",
    "github_project": "rec-spotify",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "rec-spotify"
}
        
Elapsed time: 1.24760s