diff options
Diffstat (limited to 'scripts/nb.py')
-rw-r--r-- | scripts/nb.py | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/scripts/nb.py b/scripts/nb.py index 2e2a7f9..d00b0d2 100644 --- a/scripts/nb.py +++ b/scripts/nb.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -''' Get exchange rates from nb ''' +""" Get exchange rates from nb """ import csv import os @@ -14,15 +14,15 @@ from tzlocal import get_localzone # I'm not sure I understand Norges Banks json-model. It seems a lot easier to just get the CSV, and convert it to JSON. apiUrl = "https://data.norges-bank.no/api/data/EXR/B.EUR.NOK.SP?format=csv&locale=en" -pg_db = os.environ['el_pg_db'] -pg_host = os.environ['el_pg_host'] +pg_db = os.environ["el_pg_db"] +pg_host = os.environ["el_pg_host"] pg_table = "nbex" -startTime = datetime.now(get_localzone()) - timedelta(days = 10) -startTime = startTime.strftime('%Y-%m-%d') -#startTime = '2023-05-23' # <- edit for manual starttime. Like when filling in missing info. +startTime = datetime.now(get_localzone()) - timedelta(days=10) +startTime = startTime.strftime("%Y-%m-%d") +# startTime = '2023-05-23' # <- edit for manual starttime. Like when filling in missing info. -endTime = datetime.now(get_localzone()).strftime('%Y-%m-%d') +endTime = datetime.now(get_localzone()).strftime("%Y-%m-%d") temp = tempfile.NamedTemporaryFile() @@ -36,7 +36,7 @@ try: print("Oh shit") response.raise_for_status() - with open(temp.name,'w', encoding="utf-8") as fd: + with open(temp.name, "w", encoding="utf-8") as fd: fd.write(response.text) except requests.exceptions.RequestException as e: @@ -48,19 +48,22 @@ except requests.exceptions.RequestException as e: values = [] with open(temp.name, encoding="utf-8") as csvfile: - csvReader = csv.DictReader(csvfile, delimiter=';') + csvReader = csv.DictReader(csvfile, delimiter=";") for item in csvReader: - values.append(( - item["TIME_PERIOD"], - item["BASE_CUR"], - item["QUOTE_CUR"], - item["OBS_VALUE"])) + values.append( + ( + item["TIME_PERIOD"], + item["BASE_CUR"], + item["QUOTE_CUR"], + item["OBS_VALUE"], + ) + ) temp.close() # SQL -sql = """INSERT INTO nbex +sql = """INSERT INTO nbex VALUES(%s, %s, %s, %s) ON CONFLICT (startdate,base_cur,quote_cur) DO NOTHING""" |