From e0af117805c7220571f478a3b3fd493a3ecdee27 Mon Sep 17 00:00:00 2001 From: krateng Date: Mon, 4 Apr 2022 16:18:18 +0200 Subject: [PATCH] Added export functionality --- maloja/proccontrol/control.py | 1 + maloja/proccontrol/tasks/__init__.py | 1 + maloja/proccontrol/tasks/export.py | 17 +++++++++++++++++ 3 files changed, 19 insertions(+) create mode 100644 maloja/proccontrol/tasks/export.py diff --git a/maloja/proccontrol/control.py b/maloja/proccontrol/control.py index 52f1090..61130c2 100644 --- a/maloja/proccontrol/control.py +++ b/maloja/proccontrol/control.py @@ -121,6 +121,7 @@ def main(*args,**kwargs): "import":tasks.import_scrobbles, # maloja import /x/y.csv "backup":tasks.backup, # maloja backup --targetfolder /x/y --include_images "generate":tasks.generate, # maloja generate 400 + "export":tasks.export, # maloja export # aux "info":print_info } diff --git a/maloja/proccontrol/tasks/__init__.py b/maloja/proccontrol/tasks/__init__.py index 8768afb..eda907d 100644 --- a/maloja/proccontrol/tasks/__init__.py +++ b/maloja/proccontrol/tasks/__init__.py @@ -1,3 +1,4 @@ from .import_scrobbles import import_scrobbles from .backup import backup from .generate import generate +from .export import export # read that line out loud diff --git a/maloja/proccontrol/tasks/export.py b/maloja/proccontrol/tasks/export.py new file mode 100644 index 0000000..f4cf700 --- /dev/null +++ b/maloja/proccontrol/tasks/export.py @@ -0,0 +1,17 @@ +import json +import os +import time + +from doreah.io import col + +from ...database.sqldb import get_scrobbles + +def export(targetfolder="."): + + outputfile = os.path.join(targetfolder,f"maloja_export_{time.strftime('%Y%m%d')}.json") + + data = {'scrobbles':get_scrobbles()} + with open(outputfile,'w') as outfd: + json.dump(data,outfd,indent=3) + + print(f"Exported {len(data['scrobbles'])} Scrobbles to {col['yellow'](outputfile)}")