diff options
Diffstat (limited to 'python/markit')
| -rw-r--r-- | python/markit/cds.py | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/python/markit/cds.py b/python/markit/cds.py index 7fede498..b25c2df0 100644 --- a/python/markit/cds.py +++ b/python/markit/cds.py @@ -4,6 +4,7 @@ import os import requests
import shutil
import zipfile
+import time
from common import root
from pandas.tseries.offsets import BDay
@@ -33,14 +34,18 @@ def download_composite_data(payload, historical=False): for report in ['COMPOSITES', 'TRANCHE_COMPOSITES']:
for family in ['CDX', 'ITRAXX-EUROPE']:
payload.update({'family': family, 'report': report})
- r = requests.get('https://www.markit.com/export.jsp', params=payload)
- try:
- with zipfile.ZipFile(io.BytesIO(r.content)) as z:
- for f in z.namelist():
- if "csv" in f:
- path = z.extract(f, path=os.path.join(root, "Tranche_data", "Composite_reports"))
- if historical:
- os.utime(path, (ts, ts))
- except zipfile.BadZipfile:
- logger.error(r.content)
- continue
+ while True:
+ r = requests.get('https://www.markit.com/export.jsp', params=payload)
+ try:
+ with zipfile.ZipFile(io.BytesIO(r.content)) as z:
+ for f in z.namelist():
+ if "csv" in f:
+ path = z.extract(f, path=os.path.join(root, "Tranche_data", "Composite_reports"))
+ if historical:
+ os.utime(path, (ts, ts))
+ except zipfile.BadZipfile:
+ logger.error(r.content)
+ time.sleep(5)
+ continue
+ else:
+ break
|
