Podemos utilizar duas formas de IFs para verificar se a URL é válida ou não. Um considerando que o retorno do comando find() é -1 ao não encontrar a substring, conforme o código abaixo.
url = "https://bytebank.com/cambio?moedaOrigem=real"
print(url)
if url.find('?') != -1: #encontrando qualquer posição válida
print('URL válida.')
indice_interrogacao = url.find('?')
url_base=url[:indice_interrogacao]
print(url_base)
url_parametros = url[indice_interrogacao+1:]
print(url_parametros)
else:
print("URL inválida.")
A segunda forma consiste em utilizar o seguinte IF:
if '?' in url: