From b6955293ac8bacbe3f735731e0c4f44e0211e5d7 Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Thu, 5 Sep 2024 17:41:08 +0200 Subject: [PATCH] add countries to screener --- app/restart_json.py | 10 +++++++++- .../__pycache__/country_code.cpython-310.pyc | Bin 0 -> 7487 bytes .../__pycache__/country_list.cpython-310.pyc | Bin 0 -> 7487 bytes app/utils/country_list.py | 1 + 4 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 app/utils/__pycache__/country_code.cpython-310.pyc create mode 100644 app/utils/__pycache__/country_list.cpython-310.pyc create mode 100644 app/utils/country_list.py diff --git a/app/restart_json.py b/app/restart_json.py index f0dde65..ac3f8cc 100755 --- a/app/restart_json.py +++ b/app/restart_json.py @@ -15,6 +15,7 @@ import re import hashlib import glob from tqdm import tqdm +from utils.country_list import country_list from dotenv import load_dotenv import os @@ -25,6 +26,7 @@ api_key = os.getenv('FMP_API_KEY') berlin_tz = pytz.timezone('Europe/Berlin') + # Replace NaN values with None in the resulting JSON object def replace_nan_inf_with_none(obj): if isinstance(obj, list): @@ -165,6 +167,12 @@ def get_financial_statements(item, symbol): return item +def get_country_name(country_code): + for country in country_list: + if country['short'] == country_code: + return country['long'] + return None + async def get_stock_screener(con): #Stock Screener Data cursor = con.cursor() @@ -235,7 +243,7 @@ async def get_stock_screener(con): res = orjson.loads(file.read())[0] item['employees'] = int(res['fullTimeEmployees']) item['sharesOutStanding'] = int(res['sharesOutstanding']) - item['country'] = res['country'] + item['country'] = get_country_name(res['country']) item['sector'] = res['sector'] except: item['employees'] = None diff --git a/app/utils/__pycache__/country_code.cpython-310.pyc b/app/utils/__pycache__/country_code.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c85b6e606b7827c6671e055b86ca2584919b7ab6 GIT binary patch literal 7487 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 y`r4mwvep`RX`c1_^LXoY2lJ