Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — INSTITUTO AOCP 2025

ProgramaçãoLinguagens de programação
Código
qg542696
Banca
INSTITUTO AOCP
Órgão
SANESUL
Ano
2025
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Durante o levantamento dos processos da Sanesul, identificou-se que um servidor precisava interagir repetidamente com um site para clicar em diversos botões e baixar arquivos PDF. Para otimizar essa tarefa, o analista de tecnologia da informação decidiu desenvolver um RPA (Robotic Process Automation) utilizando a linguagem Python para automatizar a interação com o site e realizar os downloads de forma programada. Diante desse cenário, qual biblioteca do Python o profissional deve usar para automatizar navegadores e permitir a interação programada com páginas da web?
  1. APillow.
  2. BPandas.
  3. CNumpy.
  4. DOS.
  5. ESelenium.
Revelar gabarito e comentário

GabaritoE — Selenium.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Python: Automação de Navegadores com Selenium

Gabarito: letra E. O Selenium é a biblioteca do Python projetada especificamente para automatizar navegadores, permitindo interação programada com páginas web — clicar em botões, preencher formulários e baixar arquivos — exatamente o cenário descrito no enunciado. As demais alternativas (Pillow, Pandas, Numpy e OS) são bibliotecas com finalidades distintas, como processamento de imagens, análise de dados e interação com o sistema operacional.

O Selenium é um framework de automação de testes e de navegadores que fornece uma API para controlar navegadores como Chrome, Firefox e Edge de forma programática. Ele permite simular ações de um usuário real, como clicar em elementos, digitar texto, navegar entre páginas e fazer downloads. No contexto de RPA (Robotic Process Automation), o Selenium é amplamente utilizado para automatizar tarefas repetitivas em interfaces web, como o cenário descrito: um servidor que precisa clicar em botões e baixar arquivos PDF de um site.

A biblioteca funciona através de um WebDriver, que é um componente que estabelece a comunicação entre o código Python e o navegador. O WebDriver recebe os comandos do script e os executa no navegador, retornando os resultados. Essa arquitetura permite que o Selenium controle o navegador de forma nativa, simulando interações reais do usuário.

É importante distinguir o Selenium de outras bibliotecas de automação web, como o Requests ou o BeautifulSoup. Enquanto o Selenium controla um navegador real (com JavaScript, cookies e sessões), o Requests faz requisições HTTP diretas e o BeautifulSoup faz parsing de HTML. Para tarefas que exigem interação com elementos dinâmicos ou JavaScript, o Selenium é a escolha adequada.

A pegadinha desta questão está em confundir bibliotecas de propósito geral com a biblioteca específica para automação de navegadores. O candidato que não conhece o ecossistema Python pode ser tentado a escolher uma biblioteca de análise de dados (Pandas, Numpy) ou de processamento de imagens (Pillow), mas nenhuma delas tem a capacidade de controlar um navegador. O critério decisivo é: a tarefa exige interação com uma página web → Selenium.

1Selenium
Automação de navegador
Clicar, preencher, baixar
Usa WebDriver
2Pillow
Processamento de imagens
3Pandas
Dados tabulares (DataFrame)
4Numpy
Cálculo numérico (arrays)
5OS
Sistema operacional (arquivos, diretórios)
Bibliotecas Python
LEVELsoulevel.com.br
Bibliotecas Python: Selenium (Automação de navegador, Clicar, preencher, baixar, Usa WebDriver); Pillow (Processamento de imagens); Pandas (Dados tabulares (DataFrame)); Numpy (Cálculo numérico (arrays)); OS (Sistema operacional (arquivos, diretórios))

Alternativa A — ❌ Incorreta

A Pillow (PIL) é uma biblioteca para processamento e manipulação de imagens, como redimensionar, cortar, filtrar e converter formatos. Ela não possui funcionalidades para controlar navegadores ou interagir com páginas web. A confusão pode surgir porque o cenário envolve baixar arquivos PDF, mas a Pillow não lida com PDFs nem com automação de navegadores.

Alternativa B — ❌ Incorreta

O Pandas é uma biblioteca para manipulação e análise de dados, oferecendo estruturas como DataFrame e Series. É amplamente usada para processamento de dados tabulares, mas não tem capacidade de automatizar navegadores ou interagir com páginas web. A confusão pode ocorrer porque o Pandas é uma das bibliotecas mais populares do Python, mas sua finalidade é completamente diferente.

Alternativa C — ❌ Incorreta

O Numpy é uma biblioteca para computação numérica e científica, fornecendo suporte para arrays multidimensionais e funções matemáticas. É fundamental para cálculos científicos, mas não possui funcionalidades de automação de navegadores. A confusão pode surgir porque o Numpy é frequentemente usado em conjunto com o Pandas, mas nenhum deles é adequado para o cenário descrito.

Alternativa D — ❌ Incorreta

O módulo OS (os) é uma biblioteca padrão do Python que fornece funcionalidades para interagir com o sistema operacional, como manipular arquivos, diretórios e variáveis de ambiente. Embora possa ser usado para gerenciar arquivos baixados, ele não tem capacidade de controlar um navegador ou interagir com páginas web. A confusão pode ocorrer porque o módulo OS é usado para tarefas de sistema, mas não para automação de navegadores.

Alternativa E — ✅ Correta ⟵ GABARITO

O Selenium é a biblioteca do Python projetada especificamente para automatizar navegadores. Ele permite controlar navegadores como Chrome, Firefox e Edge, simulando ações de um usuário real: clicar em botões, preencher formulários, navegar entre páginas e baixar arquivos. No cenário descrito, o analista precisa interagir com um site para clicar em botões e baixar PDFs, o que é exatamente a função do Selenium. Ele é amplamente utilizado em RPA e testes automatizados de aplicações web.

PEGA ESSA DICA!

Para identificar a biblioteca correta em questões de automação web, pergunte-se: "a tarefa exige controlar um navegador real?" Se sim, a resposta é Selenium. Se a tarefa for apenas fazer requisições HTTP ou extrair dados de HTML estático, outras bibliotecas como Requests e BeautifulSoup seriam mais adequadas. Memorize as finalidades principais: Selenium (automação de navegador), Pillow (imagens), Pandas (dados tabulares), Numpy (cálculo numérico) e OS (sistema operacional).

Gabarito: letra E

Link permanente: /questoes/qg542696