diff options
author | Dennis Eriksen <d@ennis.no> | 2023-02-01 20:32:11 +0100 |
---|---|---|
committer | Dennis Eriksen <d@ennis.no> | 2023-02-01 20:32:11 +0100 |
commit | 8d186d39483beff64a1c11f80c6ca5e56dd7bbc5 (patch) | |
tree | 2c5a64ace4bd8eabd4d65014c5313bd7edd76191 /nb2pgsql.py | |
parent | run queue in batches (diff) | |
download | energyscripts-8d186d39483beff64a1c11f80c6ca5e56dd7bbc5.tar.gz |
moving and renaming/breaking everything
Diffstat (limited to 'nb2pgsql.py')
-rwxr-xr-x | nb2pgsql.py | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/nb2pgsql.py b/nb2pgsql.py deleted file mode 100755 index 1901182..0000000 --- a/nb2pgsql.py +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/python3 - -import os -import sys -import csv -import json -import requests -import tempfile - -from datetime import datetime -from datetime import timedelta -from tzlocal import get_localzone - -from common import dbi - -# 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_table = "nbex" - -startTime = datetime.now(get_localzone()) - timedelta(days = 10) -startTime = startTime.strftime('%Y-%m-%d') - -endTime = datetime.now(get_localzone()).strftime('%Y-%m-%d') - -temp = tempfile.NamedTemporaryFile() - -### Get the data -try: - url = apiUrl + "&startPeriod=" + startTime + "&endPeriod=" + endTime - - response = requests.get(url) - if response.status_code != 200: - print(response.status_code) - print("Oh shit") - response.raise_for_status() - - with open(temp.name,'w') as fd: - fd.write(response.text) - -except Exception as e: - print("oh lol") - sys.exit(e) - - -### insert data into database - -values = [] -with open(temp.name) as csvfile: - csvReader = csv.DictReader(csvfile, delimiter=';') - - for item in csvReader: - values.append((item["TIME_PERIOD"],item["BASE_CUR"],item["QUOTE_CUR"],item["OBS_VALUE"])) -temp.close() - - -dbi("INSERT INTO " + pg_table + " VALUES(%s,%s,%s,%s) ON CONFLICT (startdate,base_cur,quote_cur) DO NOTHING", values,verbose=True) |