diff options
Diffstat (limited to 'beleggen_to_csv.py')
-rw-r--r-- | beleggen_to_csv.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/beleggen_to_csv.py b/beleggen_to_csv.py new file mode 100644 index 0000000..e59922c --- /dev/null +++ b/beleggen_to_csv.py @@ -0,0 +1,39 @@ +import csv +import json +import sys + +# Script om ASN Beleggen vermogensontwikkeling om te zetten naar het CSV +# formaat van spaar- en betaalrekeningen, zodat het door plotasn.py meegenomen +# kan worden. +# +# Om de data te krijgen: +# +# 1. Ga naar https://www.asnbank.nl/online/web/onlinebankieren/beleggen/11812158 +# 2. Er wordt een request gedaan naar .../api/datapunten +# 3. Dit script converteert zulke data op stdin naar een CSV bestand op stdout + +def parse_date(s): + y, m, d = s.split('-') + return '{}-{}-{}'.format(d, m, y) + +def beleggen_to_csv(json): + prev = 0 + + for e in json['grafiekdata']: + value = float(e['waarde']) + if value == prev: + continue + + diff = round(value - prev, 2) + date = parse_date(e['vastgelegd_op']) + yield '', '', '', '', '', '', '', 'EUR', prev, 'EUR', diff, date + + prev = value + +if __name__ == '__main__': + for line in sys.stdin: + obj = json.loads(line) + + wr = csv.writer(sys.stdout) + for line in beleggen_to_csv(obj): + wr.writerow(line) |