2021-02-01 01:37:22 +00:00
|
|
|
import datetime
|
|
|
|
import os
|
|
|
|
from dotenv import load_dotenv
|
|
|
|
|
|
|
|
from fmframework.net.network import Network as FMNet
|
|
|
|
from spotframework.net.network import Network as SpotNet, NetworkUser
|
|
|
|
from spotframework.model.uri import Uri
|
|
|
|
|
|
|
|
from analysis.prep.scrobble import prepare_scrobbles, populated_scrobbles
|
|
|
|
from analysis.cache import load_cache_from_storage, write_cache_to_storage
|
|
|
|
from analysis import init_log
|
|
|
|
|
|
|
|
load_dotenv()
|
|
|
|
init_log()
|
|
|
|
|
|
|
|
spotnet = SpotNet(NetworkUser(client_id=os.environ['SPOT_CLIENT'],
|
|
|
|
client_secret=os.environ['SPOT_SECRET'],
|
|
|
|
refresh_token=os.environ['SPOT_REFRESH'])).refresh_access_token()
|
|
|
|
fmnet = FMNet(username='sarsoo', api_key=os.environ['FM_CLIENT'])
|
|
|
|
cache = load_cache_from_storage()
|
|
|
|
|
|
|
|
try:
|
2021-05-07 01:03:08 +01:00
|
|
|
for year in range(2017, 2022):
|
2021-02-01 01:37:22 +00:00
|
|
|
from_date = datetime.datetime(year=year, month=1, day=1)
|
|
|
|
to_date = datetime.datetime(year=year + 1, month=1, day=1)
|
|
|
|
|
|
|
|
print(f"Getting {year}")
|
|
|
|
|
|
|
|
prepare_scrobbles(spotnet, fmnet, cache, from_date, to_date)
|
|
|
|
except Exception as e:
|
|
|
|
print(f"Error Occured: {e}")
|
|
|
|
finally:
|
|
|
|
write_cache_to_storage(cache)
|