def get_tracks_by_days(): try: tracks = [] days = request.args.get('days') assert(days.isnumeric()) query = f"""SELECT spotifyid, title, valence, play_date FROM tracks WHERE play_date >= date('now','-{days} days') ORDER BY play_date ASC; """ with sqlite3.connect(dbFile) as connection: cur = connection.cursor() cur.execute(query) queriedTracks = cur.fetchall() print(queriedTracks) for (spotifyid, title, valence, date) in queriedTracks: current_track = Track( id=spotifyid, title=title, valence=valence, playDate=date ) tracks.append(current_track.asJSON()) except Exception as e: print(e) return Response(status=500, mimetype='application/json') if len(tracks) == 0: return jsonify(tracks), 204 else: return jsonify(tracks), 200
def get_tracks_by_date(): try: tracks = [] startDate = request.args.get('startDate') endDate = request.args.get('endDate') assert(isDate(startDate)) assert(isDate(endDate)) query = f"""SELECT title, valence, play_date, spotifyid FROM tracks WHERE date(play_date) BETWEEN '{startDate}' and '{endDate}' ORDER BY play_date ASC;""" with sqlite3.connect(dbFile) as connection: connection.set_trace_callback(print) cur = connection.cursor() cur.execute(query) queriedTracks = cur.fetchall() for (title, valence, date, spotifyid) in queriedTracks: current_track = Track( id=spotifyid, title=title, valence=valence, playDate=date ) tracks.append(current_track.asJSON()) except Exception as e: print(e) return Response(status=500, mimetype='application/json') if len(tracks) == 0: return jsonify(tracks) else: return jsonify(tracks)