aboutsummaryrefslogtreecommitdiff
path: root/datasets/ratner_stock/get_ratner_stock.py
diff options
context:
space:
mode:
Diffstat (limited to 'datasets/ratner_stock/get_ratner_stock.py')
-rw-r--r--datasets/ratner_stock/get_ratner_stock.py31
1 files changed, 23 insertions, 8 deletions
diff --git a/datasets/ratner_stock/get_ratner_stock.py b/datasets/ratner_stock/get_ratner_stock.py
index 4559608..61fed1f 100644
--- a/datasets/ratner_stock/get_ratner_stock.py
+++ b/datasets/ratner_stock/get_ratner_stock.py
@@ -18,8 +18,11 @@ import hashlib
import json
import os
import yfinance
+import sys
+import time
from functools import wraps
+from urllib.error import URLError
MD5_CSV = "db7406dc7d4eb480d73b4fe6c4bb00be"
MD5_JSON = "f7086ff916f35b88463bf8fd1857815e"
@@ -68,14 +71,26 @@ def validate(checksum):
def write_csv(target_path=None):
- sig = yfinance.download(
- "SIG",
- start="1988-07-14",
- end="1995-08-23",
- progress=False,
- rounding=False,
- )
- sig.round(6).to_csv(target_path, float_format="%.6f")
+ count = 0
+ while count < 5:
+ count += 1
+ try:
+ sig = yfinance.download(
+ "SIG",
+ start="1988-07-14",
+ end="1995-08-23",
+ progress=False,
+ rounding=False,
+ )
+ sig.round(6).to_csv(target_path, float_format="%.6f")
+ return
+ except URLError as err:
+ print(
+ "Error occurred (%r) when trying to download csv. Retrying in 5 seconds"
+ % err,
+ sys.stderr,
+ )
+ time.sleep(5)
@validate(MD5_JSON)