SpotPlay2YouPlay - Converts new additions to a Spotify playlist to a matching Youtube playlist

Overview

SpotPlay2YouPlay

Converts new additions to a Spotify playlist to a matching Youtube playlist, can also be configured to converting whole playlists with the refresh function. Requires 3 youtube/google credentials to operate at full capacity, and needs 1 spotify api

HOW TO USE DETAILED IN STEPS IN THE DIRECTIONS.TXT FILE

I built my first messy but functional Python script that converts a Spotify playlist to a YouTube playlist, while storing the song IDs locally to avoid adding the same songs twice. The default is that every time the program is run, the YouTube playlist is cleared and only the new songs are added, but this can be controlled by calling a function called refresh. You can imagine the uses, and any advice would be greatly appreciated!

As for the workings, here's the breakdown in steps:

  1. It asks the user for a Spotify playlist
  2. The user inputs the "share this playlist" link
  3. The program will fetch all the songs in the playlist and simplify the info to their unique ID, artist names and song name. (The Spotify song object is LOADED with useless info for this application)
  4. The program creates a file called Depot.txt (if it's not already present) and stores in every new unique song ID, checking the Depot file every time to ensure the ID isn't already there to avoid repeated Spotify songs. (The song ID is still unique even if it's found in different playlists)
  5. The known songs get ignored, and the new songs get added to a list variable called 'queue'. (To avoid songs from getting ignored, you can uncomment the refresh() function in the main code page - refresh() just deletes the Depot.txt file every time it starts)
  6. The YouTubeAPI kicks in its first function and starts deleting all the songs on the YouTube playlist using the API functions list and delete, doing this by video ID to save usage points (so you don't DL them twice) but this function can also be removed by just commenting out any instance of the delete_ all_in_playlist() function on the main page and the structural code around them.
  7. With a fresh and empty YouTube playlist, the previously mentioned queue variable filled with the new songs will use the YouTubeAPI to search the first instance of that song using the song title and artists. It will then add that song to the YouTube playlist immediately.
  8. YoutubeAPI's have a ridiculously small daily use limit, which is why it switches between 3 pages of credentials. It has a total capacity of around 200 delete and add operations. When an API reaches its limit, it will catch the server error and swap to another API after removing every song that didn't download from Depot (so that it's considered a new song again) To remove these songs it will use the Song_Removal() function.
  9. If the total capacity of all three of the YouTubeAPI is met, it will remove the unadded songs from Depot for the last time and show the time (in EST) and date that the process can be repeated. (Keep in mind the same playlist can be reused and only the missed songs will be added.
  10. If the total capacity isn't met, then the program will just stop without error and the YouTube playlist will be filled with the playlists' songs. I might've missed small details so be sure to keep looking through the code comments at the top of the pages and throughout to fully grasp the idea
Bot developed in python, 100% open-source, compatible with Windows and Linux.

Bombcrypto Bot [Family JOW] Bot desenvolvido em python, 100% do código é aberto, para aqueles que tenham conhecimento validarem que não existe nenhum

Renato Maia 71 Dec 20, 2022
TonplaceApi - Ton.place api wrapper

tonplaceApi ton.place/tonplaceApi Обертка для ton.place Установка pip install ht

Nickolay Samedov 3 Feb 21, 2022
Discord.py Bot Series With Python

Discord.py Bot Series YouTube Playlist: https://www.youtube.com/playlist?list=PL9nZZVP3OGOAx2S75YdBkrIbVpiSL5oc5 Installation pip install -r requireme

Step 1 Dec 17, 2021
Whatsapp-APi Wrapper From rzawapi.my.id

Whatsapp-APi Wrapper From rzawapi.my.id

Rezza Priatna 2 Apr 19, 2022
A super awesome Twitter API client for Python.

birdy birdy is a super awesome Twitter API client for Python in just a little under 400 LOC. TL;DR Features Future proof dynamic API with full REST an

Inueni 259 Dec 28, 2022
A Pluggable And Powerful Telegram Manager Bot

FRIDAY-USERBOT 🇮🇳 A Powerful, Smart And Simple Userbot In Pyrogram. Support 🚑 Inspiration & Credits Userge-X Userge Pokurt Pyrogram Code Owners Chs

DevsExpo 371 Mar 26, 2022
Bot to notify when vaccine appointments are available

Vaccine Watch Bot to notify when vaccine appointments are available. Supports checking Hy-Vee, Walgreens, CVS, Walmart, Cosentino's stores (KC), and B

Peter Carnesciali 37 Aug 13, 2022
Compares and analyzes GCP IAM roles.

gcp-iam-analyzer I wrote this to help in my day to day working in GCP. A lot of the time I am doing role comparisons to see which role has more permis

Jason Dyke 37 Dec 28, 2022
DevSecOps pipeline for Python based web app using Jenkins, Ansible, AWS, and open-source security tools and checks.

DevSecOps pipeline for Python Web App A Jenkins end-to-end DevSecOps pipeline for Python web application, hosted on AWS Ubuntu 20.04 Note: This projec

Devanshu Vashishtha 4 Aug 15, 2022
A Bot Upload file|video To Telegram using given Links.

A Bot Upload file|video To Telegram using given Links.

Hash Minner 19 Jan 02, 2023
Repository for the IPvSeeYou talk at Black Hat 2021

IPvSeeYou Geolocation Lookup Tool Overview IPvSeeYou.py is a tool to assist with geolocating EUI-64 IPv6 hosts. It takes as input an EUI-64-derived MA

57 Nov 08, 2022
A simple language translator with python and google translate api

Language translator with python A simple language translator with python and google translate api Install pip and python 3.9. All the required depende

0 Nov 11, 2021
A tool written in Python used to instalock agents in VALORANT using the local API.

Valorant Instalock Tool v2.1.0 by Mr. SOSA A tool written in Python used to instalock agents in VALORANT using the local API. This is NOT a hotkey pro

Mr. SOSA 3 Nov 18, 2021
Telegram Link Shortener Bot (With 20 Shorteners)

Telegram ShortenerBot ShortenerBot: 🇬🇧 Telegram Link Shortener Bot (11 + 9 Shorteners) 🇹🇷 Telegram Link Kısaltıcı Bot (11 + 9 Kısaltıcı) All suppo

Hüzünlü Artemis [HuzunluArtemis] 10 May 24, 2022
Auto Filter Bot V2 With Python

How To Deploy Video Subscribe YouTube Channel Added Features Imdb posters for autofilter. Imdb rating for autofilter. Custom captions for your files.

Milas 2 Mar 25, 2022
Backend.AI Client Library for Python

Backend.AI Client The official API client library for Backend.AI Usage (KeyPair mode) You should set the access key and secret key as environment vari

Lablup 10 Feb 10, 2022
Python3 script to dump employee information from XING API

XingDumper Python 3 script to dump company employees from XING API. Perfect OSINT tool ;-) The results contain firstname, lastname, position, gender,

LRVT 11 Dec 26, 2022
A Telegram Bot to manage your music channel with some cool features.

Music Channel Manager V2 A Telegram Bot to manage your music channel with some cool features like appending your predefined username to the musics tag

11 Oct 21, 2022
A telegram bot written in Python to fetch random SFW & NSFW anime images

Tsuzumi A telegram bot written in python to fetch both random SFW & NSFW Anime images using nekos.life & waifu.pics API Commands SFW Commands : /

Nisarga Adhikary 3 Oct 12, 2022
An advanced telegram movie information finder bot

An advanced telegram movie information finder bot

Fayas Noushad 22 Aug 23, 2022