1
resposta

A saída para o código abaixo foi diferente da mostrada no vídeo. Não consegui encontrar meu erro.

for item in soup.findAll('h2'):
    print (item.find_parent('div'))

output:

<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 id="container-a-1"><h1>Título A.1</h1><h2 class="ref-a">Sub título A.1</h2><p>Texto de conteúdo A.1</p></div></div>
<div id="container-a-1"><h1>Título A.1</h1><h2 class="ref-a">Sub título A.1</h2><p>Texto de conteúdo A.1</p></div>
1 resposta

Oi Silvana, como vai?

Peço perdão pela demora em obter um retorno.

Confira por gentileza se sua variável html_teste possui o conteúdo igual ao código abaixo:

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>
"""

Provavelmente a sua variável html_teste está com algum conteúdo diferente do apresentado acima, por isso a diferença nos outputs.

Qualquer dúvida estou por aqui.

Abraços e bons estudos!