Este blog é um complemento do nosso canal no YouTube. Clique em @CanalQb para seguir e acompanhar nossos vídeos!

Sugestões de pesquisas

Como usar psutil em Python para monitorar processos chromedriver

#Python; #psutil; #Automação
@CanalQb

Python - Utilizando a biblioteca psutil para monitorar processos

@CanalQb

Monitorando processos chromedriver com psutil em Python

A biblioteca psutil é uma ferramenta poderosa para acessar informações sobre processos e recursos do sistema operacional, diretamente pelo Python. Com ela, é possível listar, monitorar e manipular processos em execução, o que é especialmente útil para desenvolvedores que trabalham com automação de navegadores usando ChromeDriver.

O que faz o comando apresentado

O código apresentado lista todos os processos ativos no sistema que contêm "chromedriver" no nome e coleta informações detalhadas sobre eles, como PID, nome, tempo de criação e argumentos de execução.

Esse monitoramento é essencial para quem deseja controlar processos automatizados, evitar múltiplas instâncias desnecessárias ou diagnosticar problemas relacionados ao ChromeDriver.

Exemplo de uso do psutil para listar processos chromedriver

import psutil

# Lista todos os processos cujo nome contém "chromedriver"
webdriver_processes = [p.info for p in psutil.process_iter(['pid', 'name', 'create_time', 'cmdline']) if p.info['name'] and 'chromedriver' in p.info['name'].lower()]

# Exibe informações detalhadas de cada processo encontrado
for process in webdriver_processes:
    print("PID: ", process['pid'])
    print("Nome: ", process['name'])
    print("Tempo de execução: ", process['create_time'])
    print("Argumentos: ", process['cmdline'])
    print("--------------------------")

Explicação do código

  • psutil.process_iter(['pid', 'name', 'create_time', 'cmdline']): percorre todos os processos ativos retornando as informações indicadas para otimizar performance.
  • Filtragem pelo nome: verifica se o nome do processo contém "chromedriver" (case-insensitive) para garantir que somente processos relacionados sejam listados.
  • Impressão dos dados: exibe PID, nome, tempo de criação (em timestamp Unix) e argumentos da linha de comando usados para iniciar o processo.

Contexto técnico e histórico

O psutil (Python system and process utilities) é uma biblioteca multiplataforma que facilita o acesso a informações do sistema operacional, incluindo uso de CPU, memória, discos, redes e processos. Criada para simplificar tarefas complexas de monitoramento e gerenciamento, é amplamente utilizada para automação, análise de desempenho e troubleshooting.

Na automação de navegadores, como em testes com Selenium WebDriver, o controle dos processos do ChromeDriver é fundamental para evitar conflitos e garantir o encerramento correto das sessões, especialmente em ambientes de integração contínua ou servidores.

Recomendações de uso e segurança

  • Execute scripts de monitoramento com privilégios adequados para acessar informações completas dos processos.
  • Evite interromper processos críticos sem validação, pois isso pode afetar a estabilidade do sistema ou de aplicações em execução.
  • Para ambientes produtivos, implemente logs e alertas para gerenciar processos automaticamente.

Conclusão

O uso do psutil em Python é uma solução eficiente para monitorar processos específicos, como o chromedriver, fornecendo dados úteis para automação, controle e diagnóstico. Com o exemplo fornecido, você pode adaptar o código para suas necessidades, garantindo maior controle sobre seus processos e evitando problemas comuns em automações de navegador.

Postar um comentário

Comente só assim vamos crescer juntos!
CanalQb mais próximo Quer falar com o CanalQb?
Em que posso te ajudar?
Fale comigo