Skip to main content

Robocorp Windows Automation (API to automate Windows)

Project description

robocorp-windows is a library which can be used for Windows desktop automation.

The basic idea of the library is enabling windows and controls to be found by leveraging locators (i.e.: strings which identify how to reach some window or control) and then interacting with such elements.

There are 3 basic abstractions in the library:

  • Desktop: enables finding WindowElements and interacting directly with the desktop (so, actions which aren't tied to a Window or Control can be used directly through the Desktop).
  • WindowElement: enables finding ControlElements and interacting with a Window.
  • ControlElement: enables finding child ControlElements and interacting with a specific Control.

Note: these classes are always created by the library itself and are not expected to be subclassed or instanced directly.

Usage

The library concepts revolve around the idea that the window of interest will be initially found using find_window and then, with that window reference, other controls can be queried and interacted with (for clicking, entering text, etc).

Below is an example using the windows calculator:

from robocorp import windows

# Get the calculator window
calc = windows.find_window("name:Calculator")

# Press button 0 (the locator is dependent on the windows version).
button0 = calc.find('(name:Zero or name:0) and class:Button')
button0.click()

# Clear the calculator (the locator is dependent on the windows version).
calc.click("id:clearButton or name:Clear")

# Send the keys directly to the calculator
calc.send_keys(keys="96+4=")

Guides

API Reference

Information on specific functions or classes: robocorp.windows

Changelog

A list of releases and corresponding changes can be found in the changelog.

Versioning

This library uses semantic versioning, so, when a breaking change is done a new major version is published, but beware that modules starting with an underscore _ in robocorp.windows are not considered part of the public API and should not be imported directly (so, only objects/classes reached from the robocorp.windows namespace should be used -- if access to some other method/class is needed, please create a feature request to address it).

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

robocorp_windows-1.0.1.tar.gz (202.5 kB view hashes)

Uploaded Source

Built Distribution

robocorp_windows-1.0.1-py3-none-any.whl (210.9 kB view hashes)

Uploaded Python 3

Supported by

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