Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import json
- import time
- import hmac
- import hashlib
- import time
- import math
- import random
- from datetime import datetime
- def microtime(get_as_float = False) :
- if get_as_float:
- return time.time()
- else:
- return '%f %d' % math.modf(time.time())
- try:
- import urllib.request as urllib2
- except ImportError:
- import urllib2
- class Coingather(object):
- def __init__(self, base_url='https://www.coingather.com/api/v1/'):
- self.publicKey = "PUBKEY"
- self.privateKey = "PRIVKEY"
- self.base_url = base_url
- self.opener = urllib2.build_opener()
- self.opener.addheaders.append(('Content-Type', 'application/x-www-form-urlencoded'))
- def _urljoin(self, *args):
- """ Internal urljoin function because urlparse.urljoin sucks """
- return "/".join(map(lambda x: str(x).rstrip('/'), args))
- def _get(self, api_call, query):
- url = self._urljoin(self.base_url, api_call)
- if query == None:
- postData = "nonce=" + self.getNonce();
- sign = self.signData(postData)
- self.opener.addheaders.append(('Key', self.publicKey))
- self.opener.addheaders.append(('Sign', sign))
- response = self.opener.open(url).read()
- else:
- response_url = self._urljoin(url, query)
- response = self.opener.open(response_url).read()
- return response
- def signData(self, postData):
- return hmac.new(postData, self.privateKey, hashlib.sha512).hexdigest()
- def getNonce(self):
- return str(random.randint(0, 100000000))
- def market(self, param=None):
- """ market() returns a dict containing all the market data
- """
- data = self._get('market', query=param)
- print data
- return data
- cg = Coingather()
- cgData = json.loads(cg.market())
- print cgData
- exit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement