diff options
| author | Gertjan van den Burg <gertjanvandenburg@gmail.com> | 2020-08-17 20:44:42 +0100 |
|---|---|---|
| committer | Gertjan van den Burg <gertjanvandenburg@gmail.com> | 2020-08-17 20:44:42 +0100 |
| commit | 9480e00023b1315609000cf256c59425e9efdccd (patch) | |
| tree | 53259b8ed39a6e9d9b39cb894a2e45780c666f42 /datasets/apple/get_apple.py | |
| parent | Add retries to the get_measles script (diff) | |
| download | TCPD-9480e00023b1315609000cf256c59425e9efdccd.tar.gz TCPD-9480e00023b1315609000cf256c59425e9efdccd.zip | |
Add retries to all download scripts
Diffstat (limited to 'datasets/apple/get_apple.py')
| -rw-r--r-- | datasets/apple/get_apple.py | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/datasets/apple/get_apple.py b/datasets/apple/get_apple.py index 89f8483..76d8e27 100644 --- a/datasets/apple/get_apple.py +++ b/datasets/apple/get_apple.py @@ -21,8 +21,11 @@ import hashlib import json import os import yfinance +import sys +import time from functools import wraps +from urllib.error import URLError MD5_CSV = "9021c03bb9fea3f16ecc812d77926168" MD5_JSON = "22edb48471bd3711f7a6e15de6413643" @@ -71,15 +74,27 @@ def validate(checksum): def write_csv(target_path=None): - aapl = yfinance.download( - "AAPL", - start="1996-12-12", - end="2004-05-15", - progress=False, - rounding=False, - threads=False - ) - aapl.round(6).to_csv(target_path, float_format="%.6f") + count = 0 + while count < 5: + count += 1 + try: + aapl = yfinance.download( + "AAPL", + start="1996-12-12", + end="2004-05-15", + progress=False, + rounding=False, + threads=False, + ) + aapl.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) |
