2
respostas

Scraping com Python: Coleta de dados na web: beautifulsoup.find()

Aula:Scraping com Python: Coleta de dados na web item 05: Outros métodos de pesquisa objeto tipo beautifulsoup com função find('tag') ao invé de retornar o objeto da tag, está retornando o id da tag exemplo:

[in] soup.find(h2)
[out] 52

Não sei como fiz isso, sendo que no vídeo "Os métodos find() e findAll()" estava funcionando, como

[in] soup.find('img')
[out] <img alt="Alura" class="d-inline-block align-top" src="img/alura-logo.svg"/>

que doido XD

só para ajudar no primeiro exemplo está utilizando o exemplo 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>
"""
2 respostas

localizei XD esqueci de converter a string

soup = BeautifulSoup(html_teste, 'html.parser')
soup

fica como experiência XD

Oii Tiago!

Fico muito feliz que você tenha conseguido resolver! As vezes a gente esquece alguns detalhes que acabam atrapalhando o código todo. Mas como você mesmo disse: vivendo e aprendendo! ^^

É sempre importante, ao criar o objeto BeautifulSoup passarmos o "html-parser" para que o BeautifulSoup consiga interpretar o html e entender cada tipo de elemento presente no texto, como classes, tags e etc.

Qualquer dúvida estamos aqui pra te ajudar :)

Bons estudos!