aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/nb.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/nb.py')
-rw-r--r--scripts/nb.py33
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"""