Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

está ocorrendo um error e n sei o que fiz de errado

class ExtratorURL:
    def __init__(self, url):
        self.url = self.sanitiza_url(url)
        self.sanitiza_url(url)

    def sanitiza_url(self, url):
        return url.strip()

    def valida_url(self):
        if self.url == "":
            raise ValueError("A URL está vazia")


    def get_url_base(self):
        indice_interrogacao = self.url.find('?')
        url_base = self.url[:indice_interrogacao]
        return url_base

    def get_url_parametros(self):
        indice_interrogacao = self.url.find('?')
        url_parametros = self.url[indice_interrogacao + 1:]
        return url_parametros

    def get_valor_parametro(self, parametro_busca):
        parametro_busca = 'quantidade'
        indice_parametro = self.get_url_parametros().find(parametro_busca)
        indice_valor = indice_parametro + len(parametro_busca) + 1
        indice_e_comercial = self.get_url_parametros().find('&', indice_valor)
        if (indice_valor == -1):
            valor = self.get_url_parametros()[indice_valor:]
        else:
            valor = self.get_url_parametros()[indice_valor: indice_e_comercial]
        return valor


extrator_url = ExtratorURL("bytebak.com/cambio?quantidade=100&moedaOrigem=real&moedaDestino=dolar")
valor_quantidade = extrator.url.get_valor_parametro("quantidade")
print(valor_quantidade)

O erro que aparece é esse: valor_quantidade = extrator.url.get_valor_parametro("quantidade") NameError: name 'extrator' is not defined

2 respostas
solução!

Está retornando erro porque a variável 'extrator' não foi definida, não existe.

Repare que na linha valor_quantidade = extrator.url.get_valor_parametro("quantidade"), foi atribuído à variável valor_quantidade o seguinte extrator.url.get_valor_parametro("quantidade"), mas extrator não foi definido para usar .url, o que fizemos foi definir um valor para a variável extrator_url.

Um . no lugar de um _ está impedindo seu código de rodar.

nossa muito obrigado mesmo