Fiz de forma diferente e obtive resultados iguais... Separei a URL em quatro pontos : protocolo, domain, path... e a query que é onde vamos tratar cada valor.
from lemuriatools import Console, echo, require
token = require("random").randint(1111,9999)
URL = "http://bytebank.com/cambio?moedaOrigem=real&moedaDestino=dolar&quantidade=100"
prot = URL[0:7]
doma = URL[7:19]
path = URL[19:26]
_oOo_ = URL.find('?')
quer = URL[_oOo_:]
echo("\n[ URL ANALIST ]\n")
Console.WriteLine('protocol : ', prot)
Console.WriteLine('domain : ', doma)
Console.WriteLine('path : ', path)
Console.WriteLine('query : ', quer)
Console.WriteLine('token : ', token)
'{ Query }'
#explodeString___
_OoO_ = quer.split('&')
# m_or = moeda origem, m_de = moeda destino, m_qa = quantidade'
m_or = _OoO_[0]; m_de = _OoO_[1]; m_qa = _OoO_[2]
origem = str(m_or); destin = str(m_de); quanti = str(m_qa)
echo("\n[ QUERY DETAILS ]\n")
Console.WriteLine('moeda origem: ', origem)
Console.WriteLine('moeda destino: ', destin)
Console.WriteLine('quantidade: ', quanti)