-
Notifications
You must be signed in to change notification settings - Fork 0
/
logic.py
68 lines (48 loc) · 2.18 KB
/
logic.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
from datetime import datetime, timedelta
from api_calls import *
from internet import *
class Logic:
i = Internet()
a = ApiCalls(i.give_valid_access_token())
print("logic object initialized")
# Fügt zum songdict den key "favorite" hinzu, um später leichter checken zu können, welche Songs entfernt werden
# und welchen nicht
def favorite_dict_adder(self, songdict):
favorite_list = self.a.is_track_favorite(songdict)
for i in range(0, len(songdict)):
songdict[i]["favorite"] = favorite_list[i]
# Funktion, die favorites aus song_dict entfernt
def unfavorite_shortener(self, songdict):
unfavorites = []
for song in songdict:
print(song)
if not song["favorite"]:
unfavorites.append(song)
return unfavorites
# Funktion, die im songdict die Zeitgrenze findet und es dann runterkürzt, auf die songs die im Entfern-Zeitraum liegen
def time_dict_shortener(self, songdict):
breakpoint = 0
for i in range(0, len(songdict)):
added_at = datetime.strptime(songdict[i]["added_at"], "%Y-%m-%dT%H:%M:%SZ")
difference = datetime.now() - added_at
dayDifference = difference.days
if dayDifference <= 91:
breakpoint = i
print(songdict[i]["name"])
break
short_song_dict = songdict[0:breakpoint]
return short_song_dict
# Funktion die zwei Playlists vergleicht und die fehlenden Songs (es wird angenommen, dass immer nur die
# gleiche Playlist neue Elemente bekommen wird und diese der anderen fehlen werden) dann als Liste mit uris ausgibt
def playlist_comparison(self, realplaylist, backupplaylist):
print("function playlist_comparison started")
addList = []
backupurilist = []
for song in backupplaylist:
backupurilist.append(song["uri"])
print("backupurilist created")
for song in realplaylist:
if song["uri"] not in backupurilist:
addList.append(song["uri"])
print("addList finished")
return addList