43 lines
1.1 KiB
Python
Executable File
43 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
# API description: http://www.zpool.ca/site/api
|
|
# estimates: values in mBTC/MH/day,
|
|
# mBTC/PH/day for sha256
|
|
# mBTC/GH/day for scrypt, blake, decred, x11, quark, qubit
|
|
# mBTC/kS/day for equihash
|
|
|
|
import pprint
|
|
import json
|
|
import urllib.request
|
|
import urllib.parse
|
|
import sys
|
|
import datetime
|
|
import time
|
|
import subprocess
|
|
import os
|
|
import socket
|
|
|
|
currency="USD"
|
|
|
|
# IPv4 address lookup
|
|
|
|
def addr(host):
|
|
return [addr[4][0] for addr in socket.getaddrinfo(host, None) if addr[0] == socket.AF_INET][0]
|
|
|
|
# grab something from a website
|
|
|
|
def fetch(prot, host, path, forceipv4=False):
|
|
if (forceipv4):
|
|
url=prot+"://"+addr(host)+"/"+path
|
|
else:
|
|
url=prot+"://"+host+"/"+path
|
|
r=urllib.request.Request(url, None, {"User-Agent": "Lynx/2.8.8dev.3 libwww-FM/2.14 SSL-MM/1.4.1", "Pragma": "no-cache", "Host": host})
|
|
return urllib.request.urlopen(r).read().decode("utf-8")
|
|
|
|
# main
|
|
|
|
exchrate=float(json.loads(fetch("https", "api.coinbase.com", "/v2/exchange-rates?currency=BTC"))["data"]["rates"][currency])
|
|
data=json.loads(fetch("http", "www.zpool.ca", "/api/currencies", True))
|
|
|
|
pprint.pprint(exchrate)
|