From c8d6553595dd60f581b1970c8de848abd63c9b4c Mon Sep 17 00:00:00 2001 From: jwinterm Date: Sat, 28 Jul 2018 07:43:56 -0700 Subject: [PATCH] Remove alt currency stuff --- price.py | 378 +++++++--------------------------------------------- trifling.py | 218 +++++++----------------------- 2 files changed, 94 insertions(+), 502 deletions(-) diff --git a/price.py b/price.py index 1c70f96..4578955 100644 --- a/price.py +++ b/price.py @@ -13,7 +13,6 @@ prevamnt, prevtime = 0, 0 trexurl = "https://bittrex.com/api/v1.1/public/getmarketsummary?market=btc-" cryptopiaurl = "https://www.cryptopia.co.nz/api/GetMarkets" bitsquareurl = "https://market.bitsquare.io/api/ticker/?market=xmr_btc" -fixerurl = 'http://api.fixer.io/latest?base=USD' finexbtc = 'https://api.bitfinex.com/v1/pubticker/XMRBTC' finexusd = 'https://api.bitfinex.com/v1/pubticker/XMRUSD' krakbtc = 'https://api.kraken.com/0/public/Ticker?pair=XMRXBT' @@ -44,10 +43,10 @@ def forksum(bot, trigger): if i['id'] == 'bitcoin-gold': bgoldprice = float(i['price_usd']) except: pass - bot.say("The sum of USD price of BTC, BCH, and BTG is ${:.2f}".format(btcprice+bcashprice+bgoldprice)) + bot.say("The sum of USD price of BTC, BCH, and BTG is ${:.2f}".format(btcprice+bcashprice+bgoldprice)) except: bot.say("Error parsing ticker") - + @sopel.module.commands('ath') def ath(bot, trigger): with open('/root/.sopel/modules/ath.log', 'r') as f: @@ -120,7 +119,7 @@ def krak(bot, trigger): try: bot.say(stringtosay) except: - bot.say("Error getting data") + bot.say("Error getting data") else: coin = trigger.group(2).upper() try: @@ -165,7 +164,7 @@ def chart(bot, trigger): @sopel.module.commands('polo', 'poloniex', 'marco') @sopel.module.interval(3600) def polo(bot, trigger): - if not trigger.group(2): + if not trigger.group(2): try: r=requests.get(polourl) j=r.json() @@ -173,7 +172,7 @@ def polo(bot, trigger): last=float(xmr['last']) change=float(xmr['percentChange']) vol=float(xmr['baseVolume']) - if change >= 0: + if change >= 0: sign = '+' else: sign = '' @@ -190,7 +189,7 @@ def polo(bot, trigger): face = u'\u2639'.encode('utf8') if -0.05 >= change > -0.1: face = u'\u2620'.encode('utf8') - if change < -0.1: + if change < -0.1: face = u'\u262d'.encode('utf8') bot.say("Poloniex at {0:.8f} BTC; {1}{2:.2f}% over 24 hours on {3:.3f} BTC volume {4}".format(last, sign, change*100, vol, face)) except: @@ -217,7 +216,7 @@ def polo(bot, trigger): last=float(ticker['last']) change=float(ticker['percentChange']) vol=float(ticker['baseVolume']) - if change >= 0: + if change >= 0: sign = '+' else: sign = '' @@ -228,7 +227,7 @@ def polo(bot, trigger): @sopel.module.commands('lending') def lending(bot, trigger): try: - r=requests.get(poloxmrlendurl) + r=requests.get(poloxmrlendurl) j=r.json() amnt=0 currenttime=time.time() @@ -241,11 +240,11 @@ def lending(bot, trigger): prevtime=currenttime except: bot.say("Something bad happened :o") - + @sopel.module.commands('btclending') def btclending(bot, trigger): try: - r=requests.get(polobtclendurl) + r=requests.get(polobtclendurl) j=r.json() amnt=0 amnt10=0 @@ -263,13 +262,13 @@ def btclending(bot, trigger): bot.say("Minimum rate is {0:.3f}%. To borrow {1:,.2f} BTC need up to rate {2:.3f}%. To borrow {3:,.2f} BTC need up to rate {4:.3f}%. Total amount is {5:,.2f} BTC at max rate {6:.3f}%".format(float(j['offers'][0]['rate'])*100, amnt10, rate10*100, amnt100, rate100*100, amnt, float(j['offers'][-1]['rate'])*100)) except: bot.say("Something bad happened :o") - + @sopel.module.commands('trex', 'bittrex') def trex(bot, trigger): if not trigger.group(2): geturl = trexurl+'xmr' - else: + else: geturl = trexurl + trigger.group(2) try: r = requests.get(geturl) @@ -300,7 +299,7 @@ def binance(bot, trigger): if not trigger.group(2): coin = 'XMR' pair = 'BTC' - else: + else: coin = trigger.group(2).split(' ')[0].upper() try: if len(trigger.group(2).split(' ')[1]) > 1: @@ -330,7 +329,7 @@ def cryptopia(bot, trigger): if not trigger.group(2): coin = 'XMR' pair = 'BTC' - else: + else: coin = trigger.group(2).split(' ')[0].upper() try: if len(trigger.group(2).split(' ')[1]) > 1: @@ -360,7 +359,7 @@ def cmc(bot, trigger): # if trigger.group(2).lower() == 'trx': # bot.say("Fuck off with your scams scammer") # return - # except: + # except: # pass try: r = requests.get('https://api.coinmarketcap.com/v1/ticker?limit=1500') @@ -391,7 +390,7 @@ def cmc(bot, trigger): if i['rank'] == str(rank): coin = i except: pass - symbol = coin['symbol'] + symbol = coin['symbol'] name = coin['name'] rank = coin['rank'] price_usd = float(coin['price_usd']) @@ -401,7 +400,7 @@ def cmc(bot, trigger): available_supply = float(coin['available_supply']) total_supply = float(coin['total_supply']) percent_change_24h = float(coin['percent_change_24h']) - bot.say("{0} ({1}) is #{2}. Last price ${3:.2f} / ฿{4:.8f}. 24h volume ${5:,.0f} changed {6}%. Market cap ${7:,.0f}. Available / total coin supply {8:,.0f} / {9:,.0f}.".format(name, symbol, rank, price_usd, price_btc, volume_usd, percent_change_24h, market_cap_usd, available_supply, total_supply)) + bot.say("{0} ({1}) is #{2}. Last price ${3:.2f} / ฿{4:.8f}. 24h volume ${5:,.0f} changed {6}%. Market cap ${7:,.0f}. Available / total coin supply {8:,.0f} / {9:,.0f}.".format(name, symbol, rank, price_usd, price_btc, volume_usd, percent_change_24h, market_cap_usd, available_supply, total_supply)) else: for i in j: try: @@ -410,8 +409,8 @@ def cmc(bot, trigger): if i['symbol'] == c2: c2coin = i except: pass - symbol = coin['symbol'] - c2symbol = c2coin['symbol'] + symbol = coin['symbol'] + c2symbol = c2coin['symbol'] name = coin['name'] rank = coin['rank'] price_usd = float(coin['price_usd']) @@ -422,10 +421,10 @@ def cmc(bot, trigger): available_supply = float(coin['available_supply']) total_supply = float(coin['total_supply']) percent_change_24h = float(coin['percent_change_24h']) - bot.say("{0} ({1}) is #{2}. Last price ${3:.2f} / {4:.8f} {1}/{5}. 24h volume ${6:,.0f}. Market cap ${7:,.0f}. Available / total coin supply {8:,.0f} / {9:,.0f}.".format(name, symbol, rank, price_usd, price_btc/c2price_btc, c2symbol, volume_usd, market_cap_usd, available_supply, total_supply)) + bot.say("{0} ({1}) is #{2}. Last price ${3:.2f} / {4:.8f} {1}/{5}. 24h volume ${6:,.0f}. Market cap ${7:,.0f}. Available / total coin supply {8:,.0f} / {9:,.0f}.".format(name, symbol, rank, price_usd, price_btc/c2price_btc, c2symbol, volume_usd, market_cap_usd, available_supply, total_supply)) except: bot.say("Error parsing ticker") - try: + try: if c1 == 'XMR': with open('/root/.sopel/modules/ath.log', 'r') as f: text = f.read() @@ -472,7 +471,7 @@ def top(bot, trigger): r = requests.get('https://api.coinmarketcap.com/v1/ticker?limit={}'.format(limit)) j = r.json() for i in j: - symbol = i['symbol'] + symbol = i['symbol'] name = i['name'] rank = i['rank'] price_usd = float(i['price_usd']) @@ -487,7 +486,7 @@ def top(bot, trigger): else: rounded_mcap = "tiny" topXstring += "{0}. {1} ${2} | ".format(rank, symbol, rounded_mcap) #TODO: add price_usd, rounded - bot.say(topXstring[:-2]) + bot.say(topXstring[:-2]) except: bot.say("The use is 'top' and then a digit 1 - 20") @@ -552,57 +551,32 @@ def pepexmr(bot, trigger): @sopel.module.commands('tall') def tall(bot, trigger): stringtosend = '' - fixerurl = 'http://api.fixer.io/latest?base=USD' stampurl = 'https://www.bitstamp.net/api/ticker/' - btceurl = 'https://btc-e.com/api/3/ticker/btc_usd' finexurl = 'https://api.bitfinex.com/v1/pubticker/BTCUSD' - # btccurl = 'https://pro-data.btcc.com/data/pro/ticker?symbol=XBTCNY' btccurl = 'https://data.btcchina.com/data/ticker?market=btccny' - huobiurl = 'http://api.huobi.com/staticmarket/ticker_btc_json.js' gemiurl = 'https://api.gemini.com/v1/pubticker/btcusd' - # gdaxurl = 'https://api.coinbase.com/v2/exchange-rates?currency=BTC' gdaxurl = 'https://api.gdax.com/products/BTC-USD/ticker' - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdcny = fixerjson['rates']['CNY'] - usdeur = fixerjson['rates']['EUR'] - usdjpy = fixerjson['rates']['JPY'] - usdkrw = fixerjson['rates']['KRW'] - except: - usdcny = 7 - usdkrw = 1100 - usdjpy = 112 # Bitstamp - try: + try: stampresult = requests.get(stampurl) stampjson = stampresult.json() except: stampjson = False if stampjson: - stringtosend += "Bitstamp last: {0:,.2f}, vol: {1:,.1f} | ".format(float(stampjson['last']), float(stampjson['volume'])) - # BTC-E - # try: - # btceresult = requests.get(btceurl) - # btcejson = btceresult.json() - # except: - # btcejson = False - # if btcejson: - # stringtosend += "BTC-E last: {0:,.2f}, vol: {1:,.1f} | ".format(float(btcejson['btc_usd']['last']), float(btcejson['btc_usd']['vol_cur'])) + stringtosend += "Bitstamp last: ${0:,.2f}, vol: {1:,.1f} | ".format(float(stampjson['last']), float(stampjson['volume'])) # Gemini - try: + try: gemiresult = requests.get(gemiurl) gemijson = gemiresult.json() except: gemijson = False if gemijson: try: - stringtosend += "Gemini last: {0:,.2f}, vol: {1:,.1f} | ".format(float(gemijson['last']), float(gemijson['volume']['BTC'])) + stringtosend += "Gemini last: ${0:,.2f}, vol: {1:,.1f} | ".format(float(gemijson['last']), float(gemijson['volume']['BTC'])) except: pass # Gdax - try: + try: gdaxresult = requests.get(gdaxurl) gdaxjson = gdaxresult.json() gdaxprice = float(gdaxjson['price']) @@ -610,20 +584,20 @@ def tall(bot, trigger): except: gdaxjson = False if gdaxjson: - stringtosend += "GDAX price: {0:,.2f}, vol: {1:,.1f} | ".format(gdaxprice, gdaxvolume) + stringtosend += "GDAX last: ${0:,.2f}, vol: {1:,.1f} | ".format(gdaxprice, gdaxvolume) # Bitfinex - try: + try: finexresult = requests.get(finexurl) finexjson = finexresult.json() except: finexjson = False try: if finexjson: - stringtosend += "Bitfinex last: {0:,.2f}, vol: {1:,.1f} | ".format(float(finexjson['last_price']), float(finexjson['volume'])) + stringtosend += "Bitfinex last: ${0:,.2f}, vol: {1:,.1f} | ".format(float(finexjson['last_price']), float(finexjson['volume'])) except: stringtosend += "Finex sucks | " # Bitthumb - try: + try: thumbresult = requests.get(thumbbtcurl) thumbjson = thumbresult.json() if thumbjson['data']: @@ -631,34 +605,18 @@ def tall(bot, trigger): except: thumbjson = False if thumbjson: - stringtosend += "Bithumb last: {0:,.2f}, vol: {1:,.1f} | ".format(float(thumbjson['data']['buy_price'])/float(usdkrw), float(thumbjson['data']['volume_1day'])) - # BTCC - # try: - # btccresult = requests.get(btccurl) - # btccjson = btccresult.json() - # except: - # btccjson = False - # if btccjson: - # stringtosend += "BTCC last: {0:,.2f}, vol: {1:,.1f} | ".format(float(btccjson['ticker']['last'])/usdcny, float(btccjson['ticker']['vol'])) - # Huobi - # try: - # huobiresult = requests.get(huobiurl) - # huobijson = huobiresult.json() - # except: - # huobijson = False - # if huobijson: - # stringtosend += "Huobi last: {0:,.2f}, vol: {1:,.1f} | ".format(float(huobijson['ticker']['last'])/usdcny, float(huobijson['ticker']['vol'])) + stringtosend += "Bithumb last: ₩{0:,.2f}, vol: {1:,.1f} | ".format(float(thumbjson['data']['buy_price']), float(thumbjson['data']['volume_1day'])) # Bitflyer - try: + try: bitflyerresult = requests.get(bitflyerurl) bitflyerjson = bitflyerresult.json() except: bitflyerjson = False if bitflyerjson: - stringtosend += "Bitflyer last: {0:,.2f}, vol: {1:,.1f} | ".format(float(bitflyerjson['ltp'])/usdjpy, float(bitflyerjson['volume_by_product'])) + stringtosend += "Bitflyer last: ¥{0:,.2f}, vol: {1:,.1f} | ".format(float(bitflyerjson['ltp']), float(bitflyerjson['volume_by_product'])) # Send the tickers to IRC bot.say(stringtosend[:-2]) - + @sopel.module.commands('xmrtall', 'xmr') def xmrtall(bot, trigger): @@ -684,19 +642,19 @@ def xmrtall(bot, trigger): stringtosend = "Bithumb last: {0:.6f} BTC on {1:.2f} XMR volume | ".format(thumbBTCxmr,thumbXMRVol) except: bot.say("Error - bithumb korea is worst korea.") - + # Polo try: r=requests.get(polourl) j=r.json() xmr=j["BTC_XMR"] last=float(xmr['last']) -# change=float(xmr['percentChange']) - vol=float(xmr['baseVolume']) +# change=float(xmr['percentChange']) + vol=float(xmr['baseVolume']) stringtosend += "Poloniex last: {0:.6f} BTC on {1:.2f} BTC volume | ".format(last, vol) except: - bot.say("Something borked ¯\(º_o)/¯") - + bot.say("Something borked ¯\(º_o)/¯") + # bfx try: r = requests.get(finexbtc) @@ -712,7 +670,7 @@ def xmrtall(bot, trigger): stringtosend += "Kraken last: {0:.6f} on {1:.2f} XMR volume | ".format(float(j['result']['XXMRXXBT']['c'][0]), float(j['result']['XXMRXXBT']['v'][1])) except: bot.say("Something borked ¤\( `⌂´ )/¤") - + # Binance try: r = requests.get(binanceurl) @@ -726,7 +684,7 @@ def xmrtall(bot, trigger): found = True except: bot.say("Borka borka ┌∩┐(◣_◢)┌∩┐") - + # Trex geturl = trexurl+'xmr' try: @@ -739,7 +697,7 @@ def xmrtall(bot, trigger): stringtosend += "Bittrex last: {0:.6f} BTC on {1:.2f} BTC volume | ".format(last, vol) except: bot.say("Something borked -_-") - + # Cryptopia try: coin = 'XMR' @@ -758,7 +716,7 @@ def xmrtall(bot, trigger): bot.say("WTF?!?") except: bot.say("Something borked ( -.-)ノ-=≡≡卍") - + # Tux # try: # r = requests.get('https://tuxexchange.com/api?method=getticker') @@ -788,224 +746,6 @@ def usd(bot, trigger): except: bot.say("Failed to retrieve price.") -@sopel.module.commands('aud') -def aud(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdaud = fixerjson['rates']['AUD'] - except: - usdaud = 1.35 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdaud - bot.say("Monero price in AUD = ${0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('cny') -def cny(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdcny = fixerjson['rates']['CNY'] - except: - usdjpy = 6.8 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdcny - bot.say("Monero price in CNY = ¥{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('jpy') -def jpy(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdjpy = fixerjson['rates']['JPY'] - except: - usdjpy = 110 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdjpy - bot.say("Monero price in JPY = ¥{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('eur') -def eur(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdeur = fixerjson['rates']['EUR'] - except: - usdeur = 0.95 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdeur - bot.say("Monero price in EUR = €{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('cad') -def cad(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdcad = fixerjson['rates']['CAD'] - except: - usdcad = 1.35 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdcad - bot.say("Monero price in CAD = ${0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('gbp') -def gbp(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdgbp = fixerjson['rates']['GBP'] - except: - usdgbp = 0.81 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdgbp - bot.say("Monero price in GBP = £{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('inr') -def inr(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdthb = fixerjson['rates']['INR'] - except: - usdthb = 64 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdthb - bot.say("Monero price in INR = ₹{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('thb') -def thb(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdthb = fixerjson['rates']['THB'] - except: - usdthb = 1.35 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdthb - bot.say("Monero price in THB = ฿{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('zar') -def zar(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdzar = fixerjson['rates']['ZAR'] - except: - usdzar = 13.05 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdzar - bot.say("Monero price in ZAR = R{0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('nzd') -def nzd(bot, trigger): - # Get conversion rate - try: - fixerresult = requests.get(fixerurl) - fixerjson = fixerresult.json() - usdnzd = fixerjson['rates']['NZD'] - except: - usdnzd = 1.405 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdnzd - bot.say("Monero price in NZD = ${0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('ntd') -def ntd(bot, trigger): - # Get conversion rate - try: - ntdurl = r'https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20("USDTWD")&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=' - fixerresult = requests.get(ntdurl) - fixerjson = fixerresult.json() - usdntd = float(fixerjson['query']['results']['rate']['Rate']) - except: - bot.say("Failed to get NTD value") - usdntd = 32 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdntd - bot.say("Monero price in NTD = ${0:,.2f}".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('ugx') -def ugx(bot, trigger): - # Get conversion rate - try: - ugxurl = r'https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20("USDUGX")&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=' - fixerresult = requests.get(ntdurl) - fixerjson = fixerresult.json() - usdugx = florat(fixerjson['query']['results']['rate']['Rate']) - except: - usdugx = 3200 - try: - r=requests.get('https://api.coinmarketcap.com/v1/ticker/monero/') - j=r.json() - price=float(j[0]['price_usd'])*usdugx - bot.say("Monero price in UGX = {0:,.2f} shillings".format(price)) - except: - bot.say("Failed to retrieve price.") - -@sopel.module.commands('log') -def log(bot, trigger): - volurl='https://c-cex.com/t/volume_btc.json' - try: - r=requests.get(volurl) - j=r.json() - last=float(j['ticker']['log']['last']) - vol=float(j['ticker']['log']['vol']) - bot.say("Last price on c-cex for LOG at {0:.8f} BTC on {1:.3f} BTC volume.".format(last, vol)) - except: - bot.say("C-cex sucks") @sopel.module.commands('price') def price(bot, trigger): @@ -1014,30 +754,6 @@ def price(bot, trigger): except: bot.say("C-cex sucks") -@sopel.module.commands('commodity', 'com') -def commodity(bot, trigger): - commodity_key = 'B1ZnykTmG6_A1vkwzt9u' - input_com = trigger.group(2).upper() - if input_com == ('AU' or 'GOLD' or 'XAU'): - commodity = 'AU_EIB' - unit = 'oz' - elif input_com == ('AG' or 'SILVER' or 'XAG'): - commodity = 'AG_USD' - unit = 'oz' - elif input_com == ('PT' or 'PLATINUM' or 'XPT'): - commodity = 'WLD_PLATINUM' - unit = 'oz' - elif input_com == ('COFFEE'): - commodity = 'COFFEE_BRZL' - unit = 'lb' - try: - r=requests.get("https://www.quandl.com/api/v3/datasets/COM/{0}.json?&api_key={1}".format(commodity, commodity_key)) - j=r.json() - last=j['dataset']['data'][0][1] - bot.say("Last price on {0} was ${1:.3f} per {2}.".format(commodity, last, unit)) - except: - bot.say("Monerobux fails again...") - @sopel.module.commands('xmy') def xmy(bot, trigger): try: @@ -1056,7 +772,7 @@ def xmy(bot, trigger): if i['rank'] == str(rank): coin = i except: pass - symbol = coin['symbol'] + symbol = coin['symbol'] name = coin['name'] rank = coin['rank'] price_usd = float(coin['price_usd']) @@ -1066,7 +782,7 @@ def xmy(bot, trigger): available_supply = float(coin['available_supply']) total_supply = float(coin['total_supply']) percent_change_24h = float(coin['percent_change_24h']) - bot.say("{0} ({1}) is #{2}. Last price ${3:.2f} / ฿{4:.8f}. 24h volume ${5:,.0f} changed {6}%. Market cap ${7:,.0f}. Available / total coin supply {8:,.0f} / {9:,.0f}.".format(name, symbol, rank, price_usd, price_btc, volume_usd, percent_change_24h, market_cap_usd, available_supply, total_supply)) + bot.say("{0} ({1}) is #{2}. Last price ${3:.2f} / ฿{4:.8f}. 24h volume ${5:,.0f} changed {6}%. Market cap ${7:,.0f}. Available / total coin supply {8:,.0f} / {9:,.0f}.".format(name, symbol, rank, price_usd, price_btc, volume_usd, percent_change_24h, market_cap_usd, available_supply, total_supply)) except: bot.say("Error parsing ticker") diff --git a/trifling.py b/trifling.py index 8b95560..6539051 100644 --- a/trifling.py +++ b/trifling.py @@ -53,11 +53,11 @@ def brothers(bot, trigger): def buyorsell(bot, trigger): draw = random.random() if draw < 0.33: - silly_string = "Sell, sell, sell!" + silly_string = "Sell, sell, sell!" elif 0.66 > draw >= 0.33: - silly_string = "Hodl!" + silly_string = "Hodl!" elif 1 > draw >= 0.66: - silly_string = "Buy, buy, buy!" + silly_string = "Buy, buy, buy!" bot.say(silly_string) @sopel.module.commands('cheerup') @@ -76,14 +76,14 @@ def cryptosid(bot, trigger): def cursive(bot, trigger): instring = trigger.group(2) outstring = u'' - normals = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] + normals = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] curses = [u'𝓪',u'𝓫',u'𝓬',u'𝓭',u'𝓮',u'𝓯',u'𝓰',u'𝓱',u'𝓲',u'𝓳',u'𝓴',u'𝓵',u'𝓶',u'𝓷',u'𝓸',u'𝓹',u'𝓺',u'𝓻',u'𝓼',u'𝓽',u'𝓾',u'𝓿',u'𝔀',u'𝔁',u'𝔂',u'𝔃',u'𝓐',u'𝓑',u'𝓒',u'𝓓',u'𝓔',u'𝓕',u'𝓖',u'𝓗',u'𝓘',u'𝓙',u'𝓚',u'𝓛',u'𝓜',u'𝓝',u'𝓞',u'𝓟',u'𝓠',u'𝓡',u'𝓢',u'𝓣',u'𝓤',u'𝓥',u'𝓦',u'𝓧',u'𝓨',u'𝓩'] for idx, val in enumerate(instring): if val in normals: outstring += curses[normals.index(val)] else: outstring += val - bot.say(outstring) + bot.say(outstring) @sopel.module.commands('dash') def dash(bot, trigger): @@ -92,7 +92,7 @@ def dash(bot, trigger): @sopel.module.commands('dealwithit') def dealwithit(bot, trigger): bot.say(u'(•_•) ( •_•)>⌐■-■ (⌐■_■)'.encode('utf8')) - + @sopel.module.commands('Deathtobitcoin', 'Deathtobitcoin2') def deathtobitcoin2(bot, trigger): bot.say('Devs, moderators, whoever you fucking are, please put my money back with interest. Or make my money appear in my wallet with interest!') @@ -161,7 +161,7 @@ def gui(bot, trigger): hitleroptions = [ 'https://www.youtube.com/watch?v=L2WfedZG7bo', -r"There's always Aeon", +r"There's always Aeon", 'http://adolfcoin.camp/' ] @sopel.module.commands('hitler', 'adolf') @@ -200,7 +200,7 @@ def hotline(bot, trigger): @sopel.module.commands('news') def news(bot, trigger): bot.say("https://www.youtube.com/watch?v=Gr_WtFW0a8Y") - + @sopel.module.commands('invest') def invest(bot, trigger): bot.say('i think invest in bitcoin is much more safe and profitable because bitcoin price rising to higher value and we do not face to any risk when we invest our money in bitcoin and i if we invest our money in bitcoin we will be get a good profit from bitcoin in the future so i think bitcoin is much more profitable currency than altcoins.') @@ -209,11 +209,11 @@ def invest(bot, trigger): def isittrue(bot, trigger): draw = random.random() if draw < 0.33: - silly_string = "True as the day is long." + silly_string = "True as the day is long." elif 0.66 > draw >= 0.33: - silly_string = "Irrelevant question in this post-truth world." + silly_string = "Irrelevant question in this post-truth world." elif 1 > draw >= 0.66: - silly_string = "Lies! Damn Lies! It's statitistics!" + silly_string = "Lies! Damn Lies! It's statitistics!" bot.say(silly_string) @sopel.module.commands('jaxx') @@ -238,11 +238,11 @@ def jwinterm(bot, trigger): @sopel.module.commands('kid', 'rehrar') def kid(bot, trigger): bot.say(u'What up kid?') - + @sopel.module.commands('koan') def koan(bot, trigger): bot.say("The use cases are many and varied") - + @sopel.module.commands('kramer') def kramer(bot, trigger): bot.say("Waiting for a retrace to 0.007") @@ -257,8 +257,8 @@ def lenny(bot, trigger): @sopel.module.commands('lietome') def lietome(bot, trigger): - bot.say(u'https://www.youtube.com/watch?v=R5AsQbLHWbw'.encode('utf8')) - + bot.say(u'https://www.youtube.com/watch?v=R5AsQbLHWbw'.encode('utf8')) + @sopel.module.commands('livermore') def livermore(bot, trigger): bot.say(u'https://en.wikipedia.org/wiki/Reminiscences_of_a_Stock_Operator'.encode('utf8')) @@ -323,7 +323,7 @@ def orff(bot, trigger): @sopel.module.commands('pamp') def pamp(bot, trigger): bot.say("Pamp o clock yet?") - + perooptions = [ 'https://www.youtube.com/watch?v=QqreRufrkxM', 'https://www.youtube.com/watch?v=ZnPrtiLy0uU', @@ -336,19 +336,19 @@ def pero(bot, trigger): @sopel.module.commands('pivx') def pivc(bot, trigger): bot.say("Masternodes + PoS...what could possibly go wrong?") - + @sopel.module.commands('pony') def pony(bot, trigger): bot.say("https://www.youtube.com/watch?v=O3rpmctmC_M") - + @sopel.module.commands('primer') def primer(bot, trigger): bot.say("The point is not how much i made, point is fluffy did this on purpose, more than 10 people were in on it. His commit access needs to be revoked asap!") - + @sopel.module.commands('pubg') def pubg(bot, trigger): bot.say("https://i.redd.it/o6o5gqmetacz.jpg") - + confirmoptions = [ "I can confirm that it is true", "This is true", @@ -387,7 +387,7 @@ def rarepepe(bot, trigger): bot.say("{0} is the #{1} card in series {2} of which {3} exist {4}".format(name, pepe['order'], pepe['series'], pepe['quantity'], pepe['img_url'].replace('\\', ''))) except: bot.say("{0} rare pepe doesn't seem to exist".format(trigger.group(2))) - + @sopel.module.commands('rip') def rip(bot, trigger): @@ -401,13 +401,13 @@ def risto(bot, trigger): def romerito(bot, trigger): draw = random.random() if draw < 0.25: - silly_string = "O Romerito, Romerito! wherefore art thou Romerito?" + silly_string = "O Romerito, Romerito! wherefore art thou Romerito?" elif 0.5 > draw >= 0.25: - silly_string = "To buy or not to buy: that is the question" + silly_string = "To buy or not to buy: that is the question" elif 0.75 > draw >= 0.5: - silly_string = "Cowards die many times before their deaths; the Romerito never taste of death" + silly_string = "Cowards die many times before their deaths; the Romerito never taste of death" elif 1 > draw >= 0.75: - silly_string = "Et tu, Romerito!" + silly_string = "Et tu, Romerito!" bot.say(silly_string) @sopel.module.commands('scam') @@ -497,22 +497,22 @@ def unflip(bot, trigger): bot.say(u'┬─┬ノ( º _ ºノ)'.encode('utf8')) urmomoptions = [ -"ur mom is so stupid she bought all the dash", +"ur mom is so stupid she bought all the dash", "ur momma got a peg leg with a kickstand", -"ur mom is so fat it looks like she's just gliding across the floor", -"your mother is so obese she would have mass whether or not the Higgs boson exists", -"ur mom is so fat that her blood type is nutella", -"ur mama is so fat she wears neck deoderant", -"ur mom's middle name is Mudbone", -"ur momma has a glass eye with a fish in it", -"ur mama is so stupid she sold her romero for bitcoins", +"ur mom is so fat it looks like she's just gliding across the floor", +"your mother is so obese she would have mass whether or not the Higgs boson exists", +"ur mom is so fat that her blood type is nutella", +"ur mama is so fat she wears neck deoderant", +"ur mom's middle name is Mudbone", +"ur momma has a glass eye with a fish in it", +"ur mama is so stupid she sold her romero for bitcoins", "ur momma look like a Simpsons character", "ur mom is so ugly Donald Trump wouldn't even grab her by the pussy", "ur momma is so stupid she listens to rpietila", "ur mom is Amanda B Johnson", "US ur mom if u want to U!", "ur mom is so stupid she thinks Craig Wright is Satoshi" -] +] @sopel.module.commands('urmom', 'yourmom', 'yomom', 'yomomma') def urmom(bot, trigger): bot.say(random.choice(urmomoptions)) @@ -520,7 +520,7 @@ def urmom(bot, trigger): @sopel.module.commands('verge', 'xvg', 'wraith') def verge(bot, trigger): bot.say(u"👻🐕 Don't wraith my dark doge bro! 👻🐕".encode('utf8')) - + vitalikoptions = [ "https://pbs.twimg.com/media/CrWjczJXgAExF2S.jpg", "mETH, not even once: https://cdn-az.allevents.in/banners/e7df519e0808bac49fa3aaf503aff87d", @@ -534,17 +534,21 @@ def vitalik(bot, trigger): @sopel.module.commands('wat') def wat(bot, trigger): bot.say("https://www.destroyallsoftware.com/talks/wat") - + +@sopel.module.commands('wow') +def wow(bot, trigger): + bot.say("Let he who is without win cast the first 💎: http://wownero.org") + @sopel.module.commands('yoda') def yoda(bot, trigger): bot.say("The optimism is strong in this one") - + @sopel.module.commands('xrp') def xrp(bot, trigger): bot.say("We have the best C++ dev team in the world!") zcashoptions = [ -"Trust us guys, we totally smashed that computer up, with like...magnetic baseball bats.", +"Trust us guys, we totally smashed that computer up, with like...magnetic baseball bats.", "https://youtu.be/A51Bl3jkF0c" ] @sopel.module.commands('zec', 'zcash') @@ -566,134 +570,6 @@ def wave(bot, trigger): @sopel.module.rule('.*1Dj34exPs3S9qAV1aiGAAADzbashsSVKVP*.') def scamdouble(bot, trigger): bot.say("{} is a scammer and bitcoin is a scam".format(trigger.nick)) - -@sopel.module.commands('asp') -def asp(bot, trigger): - polourl = "https://poloniex.com/public?command=returnTicker" - stampurl = 'https://www.bitstamp.net/api/ticker/' - cmcurl = "https://api.coinmarketcap.com/v1/ticker/monero/" - trexurl = "https://bittrex.com/api/v1.1/public/getmarketsummary?market=btc-ans" - - try: - r=requests.get(cmcurl) - j=r.json() - xmrbtc_price=float(j[0]['price_btc']) - except: - bot.say("Error connecting to CoinMarketCap") - try: - r = requests.get(trexurl) - j = r.json() - ans=j['result'][0] - last=float(ans['Last']) - value_ans = float(last*231.6) - except: - print ("Error retrieving data from Bittrex") - try: - r=requests.get(polourl) - j=r.json() - except: - bot.say("Error connecting to Poloniex") - - label_dash="BTC_DASH" - label_decred="BTC_DCR" - label_factom="BTC_FCT" - label_golem="BTC_GNT" - label_maidsafecoin="BTC_MAID" - label_augur="BTC_REP" - label_stellar="BTC_STR" - label_nem="BTC_XEM" - label_ripple="BTC_XRP" - label_zcash="BTC_ZEC" - label_nxt="BTC_NXT" - label_sia="BTC_SC" - label_dgb="BTC_DGB" - label_sys="BTC_SYS" - - # Bitstamp - try: - stampresult = requests.get(stampurl) - stampjson = stampresult.json() - except: - stampjson = False - if stampjson: - stamp_price = float(stampjson['last']) - # Poloniex - try: - ticker_dash=j[label_dash] - ticker_decred=j[label_decred] - ticker_factom=j[label_factom] - ticker_golem=j[label_golem] - ticker_maidsafecoin=j[label_maidsafecoin] - ticker_augur=j[label_augur] - ticker_stellar=j[label_stellar] - ticker_nem=j[label_nem] - ticker_ripple=j[label_ripple] - ticker_zcash=j[label_zcash] - ticker_nxt=j[label_nxt] - ticker_sia=j[label_sia] - ticker_dgb=j[label_dgb] - ticker_sys=j[label_sys] - last_dash=float(ticker_dash['last']) - last_decred=float(ticker_decred['last']) - last_factom=float(ticker_factom['last']) - last_golem=float(ticker_golem['last']) - last_maidsafecoin=float(ticker_maidsafecoin['last']) - last_augur=float(ticker_augur['last']) - last_stellar=float(ticker_stellar['last']) - last_nem=float(ticker_nem['last']) - last_ripple=float(ticker_ripple['last']) - last_zcash=float(ticker_zcash['last']) - last_nxt=float(ticker_nxt['last']) - last_sia=float(ticker_sia['last']) - last_dgb=float(ticker_dgb['last']) - last_sys=float(ticker_sys['last']) - value_dash = float(last_dash*18.84760476) - value_decred = float(last_decred*93.74095377) - value_factom = float(last_factom*207.78912373) - value_golem = float(last_golem*7374.44608569) - value_maidsafecoin = float(last_maidsafecoin*5973.05389222) - value_augur = float(last_augur*94.01892768) - value_stellar = float(last_stellar*318974.81202454) - value_stellar_h = float(8.34800202) - value_nem = float(last_nem*29892.11866946) - value_ripple = float(last_ripple*27962.37965895) - value_ripple_h = float(3.17485452) - value_zcash = float(last_zcash*16.47649534) - value_nxt = float(last_nxt*14932.63473053) - value_sia = float(last_sia*129377.43190662) - value_dgb = float(last_dgb*84177.21518989) - value_sys = float(last_sys*10523.26194748) - - total = value_dash + value_decred + value_factom + value_golem + value_maidsafecoin + value_augur + value_stellar + value_nem + value_ripple + value_zcash - total_h = value_dash + value_decred + value_factom + value_golem + value_maidsafecoin + value_augur + value_stellar_h + value_nem + value_ripple_h + value_zcash - total_june = value_nxt + value_sia + value_dgb + value_sys + value_ans - xmr_totalvalue = float(total / xmrbtc_price) - asppercent = ((((stamp_price * total) / 14950)-1)*100) + ((((stamp_price * total_june) / 13240)-1)*100) - if asppercent >= 0: - aspsign = '+' - else: - aspsign = '-' - xmrpercent = ((((650*(xmrbtc_price*stamp_price)/14950)-1)*100)) + (((250*(xmrbtc_price*stamp_price)/13240)-1)*100) - if xmrpercent >= 0: - xmrsign = '+' - else: - xmrsign = '-' - asppercent_h = ((((stamp_price * total_h) / 14950)-1)*100) + ((((stamp_price * total_june) / 13240)-1)*100) - if asppercent_h >= 0: - aspsign_h = '+' - else: - aspsign_h = '-' - bot.say("{0} {1:.2f}BTC; {2} {3:.2f}BTC; {4} {5:.2f}BTC; {6} {7:.2f}BTC; {8} {9:.2f}BTC; {10} {11:.2f}BTC; {12} {13:.2f}[{14:.2f}]BTC; {15} {16:.2f}BTC; {17} {18:.2f}[{19:.2f}]BTC; {20} {21:.2f}BTC; {22} {23:.2f}BTC; {24} {25:.2f}BTC; {26} {27:.2f}BTC; {28} {29:.2f}BTC; {30} {31:.2f}BTC; ASP Total:{32:.2f}[{33:.2f}]BTC/{34:,.0f}USD/{35:,.1f}XMR (02-May+20-Jun outlay, 10BTC+5BTC/14,950USD+13,240USD/650XMR+250XMR) (Since begin ASP:{36}{37:.2f}[{38}{39:.2f}]% XMR:{40}{41:.2f}%, Harvested 11.52BTC)".format("DASH", value_dash, "DCR", value_decred, "FCT", value_factom, "GNT", value_golem, "MAID", value_maidsafecoin, "REP", value_augur, "STR", value_stellar, value_stellar_h, "XEM", value_nem, "XRP", value_ripple, value_ripple_h, "ZEC", value_zcash, "NXT", value_nxt, "SIA", value_sia, "DGB", value_dgb, "SYS", value_sys, "ANS", value_ans, total+total_june, total_h+total_june, stamp_price * (total + total_june), xmr_totalvalue, aspsign, asppercent, aspsign_h, asppercent_h, xmrsign, xmrpercent)) - except: - bot.say("ERROR!") - -@sopel.module.commands('wtfisasp') -def wtfisasp(bot, trigger): - bot.say("ASP means the Angry Shitcoin Portfolio, a list of the top 15 coins that piss me off as people mindlessly pour money into them.") - -@sopel.module.commands('asprules') -def asprules(bot, trigger): - bot.say("1. Shitcoins only, eg. a premine, ICO, Corporate, APPCoin, Buzzwordy, Copycat, etc. . 2. Must have high volume, it needs staying power to be considered as the ASP is a longterm thing. 3. 1 BTC gets bought of each coin on the list, as this list is not fictional, laughable as that is. 4. No trading, buy and hold only. 5. Can be liquidated at my discretion, but preferably once it's fleeced users of 4> BTC in value or more, or almost nothing is left (<0.1 BTC in value). 5. Each shitcoin should preferably should have a poor/toxic community, and or dev group shilling, censoring, etc. . 6. I must literally hate the idea of this coins existence.") @sopel.module.commands('whaleornot') def whaleornot(bot, trigger): @@ -704,13 +580,13 @@ def whaleornot(bot, trigger): try: xmr_size = float(trigger.group(2)) if xmr_size <= 0: - fish_string = "amoeba" + fish_string = "amoeba" elif xmr_size < 0.1: - fish_string = "plankton" + fish_string = "plankton" elif xmr_size >= 0.1 and xmr_size < 0.2: - fish_string = "Paedocypris" + fish_string = "Paedocypris" elif xmr_size >= 0.2 and xmr_size < 0.5: - fish_string = "Dwarf Goby" + fish_string = "Dwarf Goby" elif xmr_size >= 0.5 and xmr_size < 1: fish_string = "European Pilchard" elif xmr_size >= 1 and xmr_size < 2: @@ -754,5 +630,5 @@ def whaleornot(bot, trigger): bot.say("Try a base ten representation of a number") @sopel.module.commands('trebuchet') -def trebuchet(bot, trigger): +def trebuchet(bot, trigger): bot.say("Can YOU use a counterweight to launch a 90 kg projectile over 300 meters? Yeah, I thought not.")