3
respostas

html_teste retornando conteúdo da Alura Motors (Parent)

html_teste = """
    <html>
        <body>
            <div id="container-a">
                <h1>Título A</h1>
                <h2 class="ref-a">Sub título A</h2>
                <p>Texto de conteúdo A</p>
            </div>
            <div id="container-b">
                <h1>Título B</h1>
                <h2 class="ref-b">Sub título B</h2>
                <p>Texto de conteúdo B</p>
            </div>
        </body>
    </html>
"""

Após declarar o html_teste quando realizo o trata_html ele me retorna o html da Alura Motors...

Pensei que poderia ter atribuído o html da alura no trata_html porém quando insiro somente trata_html ele me retorna só a função.

3 respostas

Bom dia Franklyn, tudo bem? Espero que sim!

Após declarar o html_teste, você precisa passá-lo como argumento da função trata_html, da seguinte forma:

html_teste = trata_html(html_teste)

Caso contrário, se passar somente html para dentro da função, você estará utilizando o que já havia criado anteriormente com esse nome, que é o da Alura Motors.

Espero que tenha tirado sua dúvida.

Estou à disposição. Bons estudos!

Se eu declaro html_teste ele me retorna o html que declarei, quando faço html_teste = trata_html(html_teste) ele me retorna o html da alura motors, ainda não entendi...

Olá Franklyn,

Você pode verificar como está escrita sua função trata_html? Ela deverá estar da seguinte forma:

def trata_html(entrada):
    return " ".join(entrada.split()).replace('> <', '><')

Ela recebe uma entrada, e retorna a entrada com o tratamento. Caso você tenha definido a função e escrito no return html ao invés de entrada, a função sempre irá retornar a variável html que você criou anteriormente. Exemplo:

def trata_html(entrada):
    return " ".join(html.split()).replace('> <', '><')

Repare que o parâmetro entrada nunca é utilizado, e sempre irá retornar o html que é a variável que você já tinha atribuído anteriormente.

Se não for o caso, mande aqui sua função para que eu possa dar uma olhada.