Web scraping com BeautifulSoup
Entenda como extrair dados de sites usando Python.
Web scraping com BeautifulSoup é uma aula grátis de Python Academy no CoddyKit. Esta é a aula 5 de 5. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Python Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Python Academy inclui 5 aulas no total.
Introdução à extração de dados da web
Introdução à extração de dados da web
A extração de dados da web é o processo de obter dados de sites. A biblioteca BeautifulSoup do Python facilita a análise e a navegação por documentos HTML ou XML.
Nesta lição, você aprenderá a usar o BeautifulSoup para extrair dados da web.

Instalação do BeautifulSoup
Instalação do BeautifulSoup
Para instalar o BeautifulSoup e a biblioteca requests necessária, use os seguintes comandos:
pip install beautifulsoup4pip install requests
Depois de instalados, você poderá importá-los nos seus scripts Python:
# Importing BeautifulSoup
from bs4 import BeautifulSoup
import requests
print("BeautifulSoup imported successfully")Obtendo uma página da web
Obtendo uma página da web
Você pode obter uma página da web usando a biblioteca requests:
# Fetching a web page
response = requests.get("https://example.com")
print(response.text) # Outputs the HTML contentAnalisando HTML com BeautifulSoup
Analisando HTML com BeautifulSoup
O BeautifulSoup oferece métodos para analisar e navegar por documentos HTML:
# Parsing HTML
html_content = "<html><body><h1>Hello, World!</h1></body></html>"
soup = BeautifulSoup(html_content, "html.parser")
print(soup.h1.text) # Outputs: Hello, World!Encontrando elementos
Encontrando elementos
O BeautifulSoup oferece métodos como find() e find_all() para localizar elementos:
# Finding elements
soup = BeautifulSoup("<html><body><p class='content'>Hello!</p><p>World!</p></body></html>", "html.parser")
element = soup.find("p", class_="content")
print(element.text) # Outputs: Hello!Extraindo links
Extraindo links
Você pode extrair todos os links (etiquetas <a>) de uma página da web:
# Extracting links
html = "<html><body><a href='https://example.com'>Example</a></body></html>"
soup = BeautifulSoup(html, "html.parser")
links = soup.find_all("a")
for link in links:
print(link['href']) # Outputs: https://example.comExtraindo tabelas
Extraindo tabelas
O BeautifulSoup facilita a extração de dados de tabelas HTML:
# Extracting table data
html = "<table><tr><td>Row 1</td></tr><tr><td>Row 2</td></tr></table>"
soup = BeautifulSoup(html, "html.parser")
rows = soup.find_all("tr")
for row in rows:
print(row.text) # Outputs: Row 1, Row 2Lidando com elementos ausentes
Lidando com elementos ausentes
O BeautifulSoup oferece métodos para lidar com segurança com elementos ausentes:
# Handling missing elements
soup = BeautifulSoup("<html><body></body></html>", "html.parser")
element = soup.find("p")
print(element) # Outputs: NoneErros comuns com o BeautifulSoup
Erros comuns com o BeautifulSoup
Veja alguns erros que devem ser evitados:
- Não usar um analisador de HTML adequado, como
html.parseroulxml. - Obter conteúdo de sites bloqueados ou protegidos sem os cabeçalhos adequados.
- Fazer extrações com frequência excessiva, o que pode fazer com que seu IP seja bloqueado.
O que aprendemos?
O que aprendemos?
Nesta lição, você aprendeu:
- Como instalar e importar o BeautifulSoup e o requests.
- Como obter, analisar e navegar pelo conteúdo HTML.
- Como extrair elementos específicos, como links e tabelas.
- Como lidar com segurança com elementos ausentes.
Muito bem! Vamos passar ao próximo tópico.

Perguntas Frequentes
A aula “Web scraping com BeautifulSoup” é grátis?
Sim — o texto completo de “Web scraping com BeautifulSoup” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Python Academy, atualize para CoddyKit PRO. O curso de Python Academy inclui 5 aulas no total.
O que vou aprender em “Web scraping com BeautifulSoup”?
Entenda como extrair dados de sites usando Python. Você pratica Python Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Python Academy?
Nenhuma experiência prévia é necessária. Python Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 5 de 5.
Quanto tempo leva a aula “Web scraping com BeautifulSoup”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Python Academy?
Sim. Cada aula de Python Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Análise de dados com Pandas
- Visualização de dados com Matplotlib
- NumPy para cálculos numéricos
- Trabalhando com APIs usando requests
- Web scraping com BeautifulSoup