-
Notifications
You must be signed in to change notification settings - Fork 0
/
data_diff.py
103 lines (78 loc) · 3.42 KB
/
data_diff.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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
import csv
import pandas as pd
import time
from os import system
from GetTrackInfo import getTrackInfo, limpa_info
import colorama
from datetime import datetime
colorama.init(autoreset=True)
def data_diff(NewData, LastData):
data = pd.read_csv(NewData, encoding='cp1252')
old_data = pd.read_csv(LastData, encoding='cp1252')
add = []
removidas = []
qtd_musicas1 = len(data.index)
qtd_musicas2 = len(old_data.index)
total_execucoes = qtd_musicas1 + qtd_musicas2
execucoes_concluidas = 0
inicio1 = time.time()
#------------------- ADD -----------------------------------------------
for indexa,rowa in data.iterrows():
system('cls')
print("\033[36m" + '| Comparando Dados... |')
print('\033[36m'+'-------------------------------')
print(f'{round((execucoes_concluidas/total_execucoes), 2)*100}% concluido - {indexa} - {rowa["id"]}')
for indexb,rowb in old_data.iterrows():
if (rowa['id'] == rowb['id']):
igual = True
break
else:
igual = False
if not igual:
add.append(rowa['id'])
execucoes_concluidas += 1
fim1 = time.time()
dif1 = fim1 - inicio1
#------------------- REMOVIDOS --------------------------------------------
inicio2 = time.time()
for indexa,rowa in old_data.iterrows():
system('cls')
print('\033[36m'+'| Comparando Dados... |')
print('-------------------------------')
print(f'{round((execucoes_concluidas/total_execucoes), 2)*100}% concluido - {indexa} - {rowa["id"]}')
for indexb,rowb in data.iterrows():
if (rowa['id'] == rowb['id']):
igual = True
break
else:
igual = False
if not igual:
removidas.append(rowa['id'])
execucoes_concluidas += 1
system('cls')
print('| \033[32mAnalise concluida \033[39m|')
print('-----------------------------\n\n')
fim2 = time.time()
dif2 = fim2 - inicio2
#------------------- PRINT DIFF --------------------------------------------
for t in add:
print(f'a musicas de id ={t} foi \033[32mADICIONADA \033[39mà playlist')
# print(f'https://open.spotify.com/track/{t}?si=bDqZwsabTy2QAS6fPoxUXQ')
for t in removidas:
print(f'a musicas de id ={t} foi \033[31mREMOVIDA \033[39mda playlist')
totaltempo = dif1+dif2
#------------------- tweets txt --------------------------------------------
with open('diff_data.csv', 'w', newline='') as f:
escritor = csv.writer(f)
escritor.writerow(['id','diff'])
for sid in add:
escritor.writerow([sid,'added'])
for sid in removidas:
escritor.writerow([sid,'removed'])
#------------------- TEMPO DE EXECUCAO --------------------------------------
print(f'tempo de execucao 1 = {round(dif1, 2)} segundos')
print(f'tempo de execucao 2 = {round(dif2, 2)} segundos')
print(f'tempo de execucao total = {round(totaltempo, 2)} segundos')
print(f'fim da execucao em: {datetime.now()}')
if __name__ == "__main__":
data_diff('full_tracklist.csv', 'last_tracklist.csv')