import requests import json from tkinter import * root = Tk() root.wm_title("Mining Calc") diff = StringVar() hashpower = StringVar() hashpower.set("100") hashtype = StringVar() hashtype.set("GH/s") btcprice = StringVar() answer = StringVar() def calculate(w, x, y, z): x = float(x) w = float(w) z = float(z) if y == 'H/s': pass elif y == 'KH/s': x = x * 1000 elif y == 'MH/s': x = (x * 1000) * 1000 elif y == 'GH/s': x = ((x * 1000) * 1000) * 1000 else: x = (((x * 1000) * 1000) * 1000) * 1000 mine = ((86400 * x * 25) / ((2**32) * w)) mine = float(mine) mine = ("%.6f" % mine) mine = float(mine) mine_usd = mine * z mine_usd = ("%.2f" % mine_usd) labeltext = [mine, ' or ',mine_usd,' USD'] labeltext = ''.join(str(v) for v in labeltext) answer.set(labeltext) return label1 = Label(root, text="Difficulty:") label1.pack() difficulty_entry = Entry(root, textvariable=diff) difficulty_entry.pack() label2 = Label(root, text="GH/s:") label2.pack() hash_entry = Entry(root, textvariable=hashpower) hash_entry.pack() label3 = Label(root, text="BTC Price:") label3.pack() price_entry = Entry(root, textvariable=btcprice) price_entry.pack() label4 = Label(root, text="BTC/day:") label4.pack() ans = Entry(root, textvariable=answer) ans.pack() hashtype_select = OptionMenu(root, hashtype, "H/s", "KH/s", "MH/s", "GH/s", \ "TH/s") hashtype_select.pack() button1 = Button(root, text="Calculate", command= lambda: calculate(diff.get(), hashpower.get(), hashtype.get(), btcprice.get())) button1.pack() url = requests.get("https://blockchain.info/stats?format=json").json() diff.set("%.1f" % (url['difficulty'])) btcprice.set("%.2f" % (url['market_price_usd'])) mainloop()