Fixed code to handle lists

This commit is contained in:
Bharat Kalluri
2017-10-10 11:27:40 +05:30
parent 25a05d4aa4
commit 2c7f76b683
2 changed files with 15 additions and 6 deletions

View File

@@ -81,7 +81,7 @@ class TestTickerPrices(TestCase):
def test_ticker_metadata_for_object(self):
data = self._client.get_ticker_metadata("GOOGL", fmt='object')
assert len(data.name) > 1
assert len(data[0].name) > 1
# tiingo/news

View File

@@ -94,9 +94,13 @@ class TiingoClient(RestClient):
if fmt == 'json':
return data
elif fmt == 'object':
# inspired by https://stackoverflow.com/a/15882054
return json.loads(json.dumps(data),
object_hook=lambda d: namedtuple('Ticker', d.keys())(*d.values()))
obj_arr = []
for el in data:
# inspired by https://stackoverflow.com/a/15882054
arr_el = json.loads(json.dumps(data),
object_hook=lambda d: namedtuple('Ticker', d.keys())(*d.values()))
obj_arr.append(arr_el)
return obj_arr
def get_ticker_price(self, ticker,
startDate=None, endDate=None,
@@ -168,8 +172,13 @@ class TiingoClient(RestClient):
if fmt == 'json':
return data
elif fmt == 'object':
return json.loads(json.dumps(data),
object_hook=lambda d: namedtuple('NewsArticle', d.keys())(*d.values()))
obj_arr = []
for el in data:
# inspired by https://stackoverflow.com/a/15882054
arr_el = json.loads(json.dumps(data),
object_hook=lambda d: namedtuple('NewsArticle', d.keys())(*d.values()))
obj_arr.append(arr_el)
return obj_arr
def get_bulk_news(self, file_id=None, fmt='json'):
"""Only available to institutional clients.