https://github.com/saadz-khan/spotdown
Automated download tool for Spotify Playlists
https://github.com/saadz-khan/spotdown
download- downloader python python3 selenium spotify spotify-downloader spotipy youtube youtube-search
Last synced: 8 months ago
JSON representation
Automated download tool for Spotify Playlists
- Host: GitHub
- URL: https://github.com/saadz-khan/spotdown
- Owner: saadz-khan
- License: mit
- Created: 2021-08-21T18:52:21.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2021-09-14T11:59:04.000Z (almost 5 years ago)
- Last Synced: 2024-09-29T03:22:33.101Z (over 1 year ago)
- Topics: download-, downloader, python, python3, selenium, spotify, spotify-downloader, spotipy, youtube, youtube-search
- Language: Python
- Homepage:
- Size: 69.3 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# SpotDown
> Automated downloading tool for Spotify playlists.
[](https://www.python.org/)
[](https://www.selenium.dev/selenium/docs/api/py/api.html)
[](https://spotipy.readthedocs.io/en/2.19.0/)
[](https://developers.google.com/youtube/v3)
[]()
Selenium based tool to download spotify playlists automatically using:
- `Python 3.7-3.8 (tested)`
- `selenium==3.141.0`
- `Spotify-API`
- `spotipy==2.19.0`
- `Youtube Data-API v3`
## Table of content
- [Installation](#installation)
- [Cloning](#cloning)
- [Create Virtual Environment](#create-virtual-environment)
- [Activate Virtual Environment](#activate-virtual-environment)
- [Dependency Installation](#dependency-installation)
- [Prerequisite](#prerequisite)
- [Download Playlist](#download-playlist)
- [Contribute](#contribute)
- [License](#license)
## Dependencies
For a full list of dependencies check `requirements.txt`.
# Installation
## Windows
## Cloning
Clone this repository `git clone https://github.com/saadz-khan/SpotDown`
## Create Virtual Environment
- Change your current working directory by `cd SpotDown`
- Create virutal environment using `python -m venv env`
## Activate Virtual Environment
To activate the virtual environment run:
- `env\Scripts\activate.bat` for `Command Prompt`
- `env\Scripts\activate` in `Windows Powershell`
## Dependency Installation
Install the dependencies using `pip install -r requirements.txt`
## Prerequisite
**This part is a one time setup. Note down your API-keys and keep them to yourself**
- Sign in to the spotify developers dashboard [here](https://developer.spotify.com/dashboard/login) and create, name a project to get the `client_id` and `client_secret`.
**Demo below (client_keys generated below is deleted)**
- Sign in to the google-api developers console [here](https://console.cloud.google.com/apis).
- Go to the `Library` and search `Youtube Data API v3` and click `Enable this API`.
- Go to `Credential` on the left side-bar and click `Create Credentials` on top of the page then `API key`.
**Demo for above 3 steps below (API_Key generated below is deleted)**
- Edit the `variables.py` file and add the `client_id, client_secret, API key` to `spotify_client_id, spotify_client_secret, youtube_data_api_key` respectively.
## Download Playlist
**Please ensure that there is no directory named SpotDown/SpotDown/downloads after the first run or would give an error. (Will add some workaround later)**
Replace `https://open.spotify.com/playlist/link_to_playlist` with actual link by sharing the playlist and copying its link and Run:
```
python main.py https://open.spotify.com/playlist/link_to_playlist
```
## Contribute
Contributions, issues and feature requests are welcome.
Feel free to check issues page if you want to contribute.
Check the [contributing guide](https://github.com/saadz-khan/SpotDown/blob/master/CONTRIBUTING.md).
## License
Copyright (c) 2021 [Saad Zafar Khan](https://github.com/saadz-khan)
This project is [MIT](https://github.com/saadz-khan/SpotDown/blob/master/LICENSE) licensed.
## End Note
> Enjoy! A star would be appreciated. Issues and Pull Requests are open.