Selenium: Automação de Navegador com Python

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

O que é Selenium e para que serve

Selenium é um poderoso framework de código aberto projetado para automatizar ações em navegadores web. Esta biblioteca permite que desenvolvedores controlem navegadores programaticamente, simulando ações reais do usuário: navegação entre páginas, preenchimento de formulários, cliques em elementos, interação com listas suspensas e muitas outras operações.

O Selenium é amplamente utilizado em diversas áreas de desenvolvimento e testes. Os principais casos de uso incluem testes automatizados de interfaces de usuário, web scraping de sites dinâmicos, automação de tarefas repetitivas no navegador e verificação da funcionalidade de aplicações web.

Principais recursos e vantagens do Selenium

Suporte multiplataforma a navegadores

O Selenium oferece compatibilidade total com todos os navegadores populares, incluindo Google Chrome, Mozilla Firefox, Microsoft Edge, Safari e Opera. Isso significa que o mesmo código pode funcionar em diferentes navegadores com alterações mínimas.

Simulação realista de ações do usuário

O framework é capaz de reproduzir com precisão praticamente qualquer ação do usuário: cliques com botão esquerdo e direito do mouse, arrastar e soltar elementos, rolagem de páginas, digitação de texto, interação com janelas modais e muito mais.

Métodos flexíveis de localização de elementos

O Selenium oferece diversas formas de localizar elementos na página: por ID, classe, nome da tag, seletores CSS, expressões XPath, texto de links e outros atributos. Isso garante máxima flexibilidade ao trabalhar com diferentes tipos de páginas web.

Suporte ao modo headless

A capacidade de executar o navegador em modo headless (sem interface gráfica) torna o Selenium a ferramenta ideal para automação em servidores, contêineres e pipelines de CI/CD.

Recursos avançados

O Selenium permite trabalhar com múltiplas abas e janelas, lidar com alertas JavaScript, gerenciar cookies e sessões, configurar servidores proxy, capturar screenshots e salvar o código HTML das páginas.

Instalação e configuração do Selenium

Instalação da biblioteca principal

Para começar a usar o Selenium, instale a biblioteca principal via pip:

pip install selenium

Download e configuração dos drivers de navegador

Cada navegador exige um driver específico. O mais popular é o ChromeDriver para o navegador Chrome. A partir da versão 115 do Chrome, recomenda-se usar o Chrome for Testing, disponível no site oficial do Google.

É importante garantir que a versão do driver corresponda à versão do navegador instalado. Para automatizar esse processo, use ferramentas como o webdriver-manager:

pip install webdriver-manager

Gerenciamento automático de drivers

A abordagem moderna para gerenciar drivers envolve o uso de um gerenciador de drivers:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service

service = Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service)

Fundamentos do trabalho com Selenium

Iniciando o navegador e operações básicas

Exemplo básico de como iniciar o navegador e navegar entre páginas:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# Configuração das opções do navegador
options = Options()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')

# Inicialização do driver
driver = webdriver.Chrome(options=options)

# Navegação entre páginas
driver.get("https://example.com")
print(f"Título da página: {driver.ti                    

Recommendations