def exchange(self, name):
"""Obtain data from a exchange passed as argument
Example:
exchange('poloniex')
Args:
name (str): Exchange to retrieve data
Returns:
list: Data from all markets in a exchange
"""
url = urljoin(self.urls["web"], 'exchanges/%s/' % name)
html = self._html(url)
marks = html.find('table').find_all('tr')
response = []
for m in marks[1:]:
_childs, childs = (m.contents, [])
for c in _childs:
if c != '\n':
childs.append(c)
for n, c in enumerate(childs):
if n == 0:
rank = self.parse_int(c.getText())
elif n == 1:
name = str(c.getText())
elif n == 2:
market = str(c.getText().replace(
'/', self.pair_separator
))
elif n == 3:
_volume_24h_usd = sub(r'\$|,', '', c.getText())
volume_24h_usd = self.parse_int(_volume_24h_usd)
elif n == 4:
_price_usd = sub(r'\$| |\*', '', c.getText())
price_usd = self.parse_float(_price_usd)
elif n == 5:
_perc_volume = c.getText().replace('%', '')
perc_volume = self.parse_float(_perc_volume)
indicators = {'rank': rank,
'name': name,
'market': market,
'volume_24h_usd': volume_24h_usd,
'price_usd': price_usd,
'perc_volume': perc_volume}
response.append(indicators)
return response
评论列表
文章目录