I wrote a quick script so that I can automate adding my discover weekly to another playlist so it can be saved
import os
import spotipy
from spotipy.oauth2 import SpotifyOAuth
from dotenv import load_dotenv
import datetime
load_dotenv()
SCOPE = "playlist-modify-public,playlist-read-private"
clientID = os.getenv('SPOTIPY_CLIENT_ID')
clientSecret = os.getenv('SPOTIPY_CLIENT_SECRET')
redirectURI = os.getenv('SPOTIPY_REDIRECT_URI')
discoverWeeklyID = os.getenv('SPOTIPY_DISCOVER_WEEKLY_PLAYLIST_ID')
targetPlaylistID = os.getenv('SPOTIPY_TARGET_PLAYLIST_ID')
spotifyClient = spotipy.Spotify(auth_manager=SpotifyOAuth(
scope=SCOPE, client_id=clientID, client_secret=clientSecret,
redirect_uri=redirectURI, cache_handler='.cache'))
res = spotifyClient.playlist_tracks(discoverWeeklyID, limit=30)
trackIDs = [track['track']['uri'] for track in res['items']]
spotifyClient.playlist_add_items(targetPlaylistID, trackIDs)
print(f"{len(trackIDs)} songs added to playlist on {datetime.date.today()}")
When I manually run the script python main.py
it works, but when I try setting up a cronjob for automating the script 0 16 * * 2 cd /Users/name/Desktop/Code WorkSpace/auto-discover-weekly && python main.py >> spotipy.log
it never seems to run
In my terminal, I type crontab -e
and my initial cron script was 0 16 * * 2 ../../opt/anaconda3/bin/python /Users/name/Desktop/Code WorkSpace/auto-discover-weekly/main.py >> /tmp/cron_output
but this also did not work