Skip to main content

Core library for movva tech aplications.

Project description

movva-tech-library

Uma biblioteca de automação desktop focada em Windows, encapsulando e simplificando as funcionalidades do pywinauto e pyautogui.

Como inicializar

Para utilizar a biblioteca, basta importar e instanciar a classe DesktopRobot:

from movva_tech_library import DesktopRobot
from pathlib import Path

# Instanciando o robô
robot = DesktopRobot()

## Referência de Métodos

### Gerenciamento de Aplicações e Janelas

- **Iniciar uma aplicação:**
  ```python
  robot.start_application(path=r"C:\Caminho\Para\App.exe", backend="uia")
  • Conectar a uma aplicação em execução:

    robot.connect_application(title="Meu App", backend="uia")
    
  • Esperar por uma janela específica:

    robot.wait_for_window(title="Janela Principal", timeout=10)
    
  • Definir janela ativa: (Útil para buscar locators apenas dentro dessa janela)

    robot.set_active_window(title="Janela Principal")
    
  • Encerrar aplicação:

    robot.kill()
    

Interação com Elementos da Interface (Locators pywinauto)

Os métodos abaixo aceitam qualquer critério do pywinauto (ex: title, auto_id, control_type).

  • Clicar por locator:

    robot.click_by_locator(title="Botão Confirmar")
    
  • Duplo clique por locator:

    robot.double_click_by_locator(auto_id="btnDetalhes")
    
  • Obter texto de um elemento:

    texto = robot.get_text(auto_id="labelStatus")
    print(texto)
    

Interação por Imagens na Tela (pyautogui)

Recomenda-se o uso de caminhos absolutos para as imagens.

  • Clicar em uma imagem:

    # Opcional: usar offset_x e offset_y para clicar deslocado do centro da imagem
    image_path = str(BASE_DIR / "assets" / "botao.png")
    robot.click_by_image(image_path, confidence=0.9, timeout=10)
    
  • Esperar por uma imagem aparecer na tela:

    coordenadas = robot.wait_for_image(image_path, confidence=0.9, timeout=10)
    

Teclado e Digitação

  • Digitar texto: Pode focar em um elemento específico antes de digitar caso forneça um locator.

    # Digita livremente onde o cursor estiver
    robot.type_text("Olá Mundo", interval=0.05)
    
    # Foca no input primeiro e depois digita
    robot.type_text("Meu texto direto no campo", locator={"auto_id": "inputTexto"})
    
  • Pressionar teclas isoladas:

    robot.press_key("enter")
    robot.press_key("tab", presses=2)
    
  • Pressionar atalhos (hotkeys):

    robot.hotkey("ctrl", "c")
    robot.hotkey("alt", "f4")
    

Esperas (Timeouts e Pausas)

  • Pausa estática (não recomendado, use waits dinâmicos quando possível):
    robot.wait(2.5) # Aguarda 2.5 segundos
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

movva_tech_library-0.1.2.tar.gz (51.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

movva_tech_library-0.1.2-py3-none-any.whl (120.5 kB view details)

Uploaded Python 3

File details

Details for the file movva_tech_library-0.1.2.tar.gz.

File metadata

  • Download URL: movva_tech_library-0.1.2.tar.gz
  • Upload date:
  • Size: 51.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for movva_tech_library-0.1.2.tar.gz
Algorithm Hash digest
SHA256 e9582fc286ddb71980da75793fa30caba5c2e75308293e2a5ce27a847ad4c1da
MD5 d7fd08fa0deb647db39195082f6522b5
BLAKE2b-256 10778be0223aaf228fdc03813f9a4cc029a957433e4cd6577cad81f0f01d717f

See more details on using hashes here.

Provenance

The following attestation bundles were made for movva_tech_library-0.1.2.tar.gz:

Publisher: release.yml on movva-tech/movva-tech-library

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file movva_tech_library-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for movva_tech_library-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d44cf9b65f1e956d2d34098c95dee77c9271e0be3e3c06f6fab73f3bcf9f4b49
MD5 594a55a3d26558745f8d0de39684c9a5
BLAKE2b-256 3f8f8ae800e31167dc154eae09e5e9778f9dabdf2a2ba568bd5980ac5d5f44ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for movva_tech_library-0.1.2-py3-none-any.whl:

Publisher: release.yml on movva-tech/movva-tech-library

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page