def stock_price(self, *args): #metodo que busca preço de ação por palavra chave if len(args) != 1: return "para ver o preço de ações deve ser passado o nome de uma \ exemplo: \\veracao AAPL" h = HttpRequest() try: temp = h.make_request(self.external_files.stock_link + args[0], self.external_files.stock_server, port=443) except: #caso de erro no servidor print(self.external_files.stock_server.encode()) return "impossível conectar ao servidor de terceiro\n" try: d = json.loads(temp)["price"] except KeyError: #caso seja uma ação errada return "Ação {} não encontrada\n".format(args[0]) except json.JSONDecodeError: return "Recebemos uma mensagem estranha do servidor externo, nossos engenheiros estão trabalhando nisso".format( args[0]) except Exception as e: print(temp) return "Problema com o servidor externo\n" return "preço da ação " + args[0] + ": " + str( d) + "\n" #preço formatado da ação
def dollar2real( self, *args ): #metodo que converte 1 dolar em real em um servidor externo e retona try: h = HttpRequest() dollar_string = h.make_request(self.external_files.dollar_link, self.external_files.dollar_server) d = json.loads(dollar_string.decode())["USD"] message = "preço de baixo: {}\npreço de alta: {}\npreço de bid: {}\npreço de ask: {}\n".format( d["low"], d["high"], d["bid"], d["ask"]) except: message = "impossivel alcançar servidor {}".format( self.external_files.dollar_server) return message