O #dataholicMatheus Nascimento escreveu um artigo sobre a linguagem Python. Bora aprender!
Olá pessoal! Hoje venho apresentar uma solução utilizando Python para quem gosta de aplicar a linguagem na automação de processos, em especial, softwares instalados no computador.
A linguagem de programação Python tem se tornado a mais popular entre as diversas linguagens do mercado, muito disso se dá pela diversidade de soluções que ela propõe e a facilidade de aprendizado.
A automação de processos é um dos mundos onde o Python se destaca, com bibliotecas como selenium e pyautogui, onde é possível criar scripts que imitam a ação humana na execução de atividades em um computador.
Neste artigo falarei sobre a utilização da biblioteca PyAutoGui para interagir com interfaces de usuário e clicar em botões por meio de imagens em png (prometo trazer um artigo sobre automação do navegador utilizando selenium rsrs).
A biblioteca PyAutoGui tem o poder de controlar o mouse e o teclado, com comandos para clicar, digitar, arrastar elementos, dar duplo clique, identificar campos na tela, tirar screenshots, entre diversas outras possibilidades.
Primeiramente, vamos instalar a biblioteca, no prompt de comando ou no terminal da ferramenta (utilizo o VS Code com a extensão do Jupyter Notebook), digite pip install pyautogui, também instale o módulo OpenCV para aplicar o argumento “confidence”, digite pip install opencv-python.
Depois, importe a biblioteca no código e aplique as seguintes configurações:
import pyautogui as p
p.PAUSE = 3
p.FAILSAFE = False
O comando PAUSE é utilizado para definir o intervalo em segundos de cada execução da linha de código, neste caso, a execução de uma etapa a outra possui um intervalo de três segundos.
FAILSAFE é habilitado por padrão para que você possa facilmente interromper a execução de seu programa movendo manualmente o mouse para o canto superior esquerdo da tela. Assim que o mouse estiver neste local, pyautogui lançará uma exceção e sairá, portanto, aplicamos False para desativar.
O comando locateCenterOnScreen é o responsável por identificar elementos na tela por meio da utilização de imagens.
O exemplo que irei utilizar irá focar a área de trabalho e identificar o ícone do Google Chrome por meio do print retirado.
Utilizando a ferramenta de captura do Windows, registre o ícone (ou botão) em um arquivo png, certifique-se de deixá-lo bem centralizado na imagem, e para prevenir erros, mantenha o nome do arquivo sempre em minúsculo (chrome.png).
Salve o print na mesma pasta onde o script está sendo desenvolvido.
Então, assim ficará a construção da etapa do código que identifica a imagem e faz a interação com o ícone.
p.hotkey(‘win’,’m’)
chrome = p.locateCenterOnScreen(‘chrome.png’, confidence = 0.9)
p.doubleClick(chrome)
Apliquei hotkey para focar a área de trabalho, e por meio do comando locateCenterOnScreen adicionando uma confiança de 0.9, armazenei a posição do ícone em uma variável chamada chrome, e por fim, com o doubleClick o navegador é aberto. Veja o código funcionando no vídeo abaixo.
Utilizei o ícone do Google Chrome apenas para exemplificação, porém, esta solução pode ser aplicada para botões em sistemas, campos que você precisa clicar e escrever um texto, exportar arquivos e assim por diante.
Espero que tenham gostado do conteúdo e fico à disposição para conversarmos mais sobre como utilizar o python na automação de processos!
Curta, comente e compartilhe com os amigos. 💙